Age | Commit message (Collapse) | Author |
|
To have a chance to keep the ABI for a while we need all three to team
up. One of them missing and we might loose, so ensuring that they are
available is a very tedious but needed task once in a while.
Git-Dch: Ignore
|
|
This is mainly visible in the policy, so that you can now pin by b= and
let it only effect Packages files of this architecture and hence the
packages coming from it (which do not need to be from this architecture,
but very likely are in a normal repository setup).
If you should pin by architecture in this way is a different question…
Closes: 687255
|
|
We used to read the Release file for each Packages file and store the
data in the PackageFile struct even through potentially many Packages
(and Translation-*) files could use the same data. The point of the
exercise isn't the duplicated data through. Having the Release files as
first-class citizens in the Cache allows us to properly track their
state as well as allows us to use the information also for files which
aren't in the cache, but where we know to which Release file they
belong (Sources are an example for this).
This modifies the pkgCache structs, especially the PackagesFile struct
which depending on how libapt users access the data in these structs can
mean huge breakage or no visible change. As a single data point:
aptitude seems to be fine with this. Even if there is breakage it is
trivial to fix in a backportable way while avoiding breakage for
everyone would be a huge pain for us.
Note that not all PackageFile structs have a corresponding ReleaseFile.
In particular the dpkg/status file as well as *.deb files have not. As
these have only a Archive property need, the Component property takes
over this duty and the ReleaseFile remains zero. This is also the reason
why it isn't needed nor particularily recommended to change from
PackagesFile to ReleaseFile blindly. Sticking with the earlier is
usually the better option.
|
|
We have a bunch of classes which are of no use for the outside world,
but were still exported and so needed to preserve ABI/API. Marking them
as hidden to not export them any longer is a big API break in theory,
but in practice nobody is using them – as if they would its a bug.
|
|
Git-Dch: Ignore
|
|
aptitude has a define for VERSION, so to not generate a FTBFS we just
rename our enum element to a slightly less generic name.
Git-Dch: Ignore
|
|
Reported-By: cppcheck
Git-Dch: Ignore
|
|
Strings like Section names or architectures are needed vary often.
Instead of writing them each time we need them, we deploy sharing for
these special strings. Until now, this was done with a linked list of
strings in which we would search, which was stored in the cache.
It turns out we can do this just as well in memory as well with a bunch
of std::map's.
In memory means here that it isn't available anymore if we have a partly
invalid cache, but that isn't much of a problem in practice as the
status file is compared to the other files we parse very small and includes
mostly duplicates, so the space we would gain by storing is more or less
equal to the size of the stored linked list…
|
|
We had a wild mixture of (unsigned) int, long and long long here without
much sense, so this commit adds a few typedefs to get some sense in the
typesystem and ensures that a ID isn't sometimes computed as int, stored
as long and compared with a long long… as this could potentially bite us
later on as the size of the archive only increases over time.
|
|
It seems unlikely for now that proper archives will carry multiple
Description-* stanzas in the Packages (or Translation-*) file, but
sometimes apt eats its own output as shown by the usage of the CD team
and it would be interesting to let apt output multiple translations
e.g. in 'apt-cache show'.
|
|
This methods should not be used by anyone expect the library itself as
they are helpers for the specific class and therefore perfect candidates
for hidding.
Git-Dch: Ignore
|
|
In #737085 we see that apt can be confused if informations about
versions only differ slightly. This commit adds a way of at least adding
a few more data points with the next abi break to help a bit with it.
Git-Dch: Ignore
|
|
Git-Dch: Ignore
Reported-By: gcc -Wsuggest-attribute={pure,const,noreturn}
|
|
Beside being a bit cleaner it hopefully also resolves oddball problems
I have with high levels of parallel jobs.
Git-Dch: Ignore
Reported-By: iwyu (include-what-you-use)
|
|
Reported-By: gcc -Wunused-parameter
Git-Dch: Ignore
|
|
to save some space and allow quick comparisions later on
|
|
version strings e.g. for implicit multi-arch dependencies
|
|
struct is created and not at the end of the cache generation
This allows us to be independent from the configured architectures for
these kind of conflicts, we get natural progress for free and
only the needed dependencies are in th respective binary cache.
|
|
- refactor MergeList by creating -Group, -Package and -Version specialist
|
|
|
|
|
|
- use ref-to-ptr semantic in NewDepends() to ensure that the
libapt does not segfault if the cache is remapped in between
(LP: #812862)
|
|
faster and still provides everything we need for the Cache generator
|
|
- add and document APT::Cache-{Start,Grow,Limit} options for mmap control
|
|
- make the used MMap moveable (and therefore dynamic resizeable) by
applying (some) mad pointer magic (Closes: #195018)
|
|
|
|
be able to react on condition changes later then we can move mmap
|
|
- split Open() into submethods to be able to build only parts
- make the OpProgress optional in the Cache buildprocess
|
|
|
|
the information from the parent package now
|
|
for creating the dependencies needed for our groups:
For now for all groups only one package can be installed at the same
time which conflicts with each other packages in the group.
The exceptions are architecture all package.
Also, the Multi-Arch field is now parsed, but not used for now.
|
|
infrastructor for packages.
APT is now aware of the fact that a package A in architecture X can't
satisfy a dependency on package A in architecture Y - to handle these
packages are now identified by name and architecture, so different
architectures of the same package are handled internally as completly
different packages. This is great for pinning, dependency checking and
in many other situations, but sometimes we need to know which archs are
available for a given package: Here Groups come to our rescue!
|
|
|
|
Daniel Burrows, closes: #429378)
* fix FTFBFS by changing build-depends to
libcurl4-gnutls-dev (closes: #428363)
|
|
|
|
|
|
Patches applied:
* apt@packages.debian.org/apt--sources-list-d--0--base-0
tag of apt@packages.debian.org/apt--main--0--patch-30
* apt@packages.debian.org/apt--sources-list-d--0--patch-1
Patch from apt-rpm via Michael Vogt to implement /etc/apt/sources.list.d
* bubulle@debian.org--2005/apt--main--0--patch-130
Galician translation completed
* bubulle@debian.org--2005/apt--main--0--patch-131
Simplified Chinese translation update
* bubulle@debian.org--2005/apt--main--0--patch-132
Completed Simplified Chinese translation
* bubulle@debian.org--2005/apt--main--0--patch-133
Merge with Michael AND update PO files
* michael.vogt@ubuntu.com--2005/apt--mvo--0--patch-90
* merged the sources.list.d patch
* michael.vogt@ubuntu.com--2005/apt--mvo--0--patch-91
* merged with bubulle
* michael.vogt@ubuntu.com--2005/apt--mvo--0--patch-92
* changelog update
* michael.vogt@ubuntu.com--2005/apt--mvo--0--patch-93
* sources.list.d documented
* michael.vogt@ubuntu.com--2005/apt--mvo--0--patch-94
* pkgDirStream has (slightly) better extract support now
* michael.vogt@ubuntu.com--2005/apt--mvo--0--patch-95
* merge fix for #339533
* michael.vogt@ubuntu.com--2005/apt--mvo--0--patch-96
* merged with bubulle
* michael.vogt@ubuntu.com--2005/apt--mvo--0--patch-97
* some more debug output
* michael.vogt@ubuntu.com--2005/apt--mvo--0--patch-98
* ABI change: merged more flexible pkgAcquireFile code
* michael.vogt@ubuntu.com--2005/apt--mvo--0--patch-99
* merged http download limit for apt (#146877)
* michael.vogt@ubuntu.com--2005/apt--mvo--0--patch-100
* applied parts of the string speedup patch from debian #319377 (ABI change)
* michael.vogt@ubuntu.com--2005/apt--mvo--0--patch-101
* fix for #340448
* michael.vogt@ubuntu.com--2005/apt--mvo--0--patch-102
* finalized this release
* michael.vogt@ubuntu.com--2005/apt--mvo--0--patch-103
* changelog updates
* michael.vogt@ubuntu.com--2005/apt--mvo--0--patch-104
* build-depend on libdb4.3 now, fix for kFreeBSD (#317718)
* michael.vogt@ubuntu.com--2005/apt--mvo--0--patch-105
* fix mailaddress
* michael.vogt@ubuntu.com--2005/apt--mvo--0--patch-106
* fix a string (thanks to bubulle)
* michael.vogt@ubuntu.com--2005/apt--mvo--0--patch-107
* merged with bubulle
|
|
|
|
|
|
Author: jgg
Date: 2002-07-08 03:13:30 GMT
Gustavo Niemeyer stuff for RPM file depends
|
|
Author: jgg
Date: 2001-02-20 07:03:16 GMT
Join with aliencode
|
|
Author: jgg
Date: 1999-07-26 17:46:07 GMT
Minor cleanups, fix for checksum lowercase bug
|
|
Author: jgg
Date: 1999-07-15 03:15:48 GMT
Added a depends option to apt-cache
|
|
Author: jgg
Date: 1999-05-23 22:55:54 GMT
Multiple different versions support
|
|
Author: jgg
Date: 1999-04-28 22:48:44 GMT
Fixed segfault in re-install/upgrade condition
|
|
Author: jgg
Date: 1999-04-18 06:36:36 GMT
Support for memory-only caching
|
|
Author: jgg
Date: 1999-02-23 06:46:24 GMT
performance tuning
|
|
Author: jgg
Date: 1998-12-14 02:23:46 GMT
Release support
|
|
Author: jgg
Date: 1998-08-09 00:51:33 GMT
Package Record parser
|
|
Author: jgg
Date: 1998-07-26 04:49:26 GMT
Progress and combined cache generator
|