summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2019-08-15doc: Add apt-patterns(7) manual pageJulian Andres Klode4-0/+90
This does not describe much yet, as there's not much to talk about.
2019-08-15Add initial support for parsing patterns into parse treesJulian Andres Klode3-0/+403
Introduce a parser for patterns that generates a parse tree. The language understood by the parser is: pattern = '?'TERM | '?'TERM '(' pattern (',' pattern)* ','? ')' | WORD | QUOTED-WORD TERM = [0-9a-zA-Z-] WORD = [0-9a-ZA-Z-.*^$\[\]_\\] QUOTED_WORD = "..." # you know what I mean This language is context free, which is a massive simplification from aptitude's language, where ?foo(bar) could have two different meanings depending on whether ?foo takes an argument or not.
2019-08-15Merge branch 'master' into 'master'Julian Andres Klode4-5/+33
Fix segfault in pkgAcquire::Enqueue() with Acquire::Queue-Mode=access See merge request apt-team/apt!73
2019-08-15test: Use valgrind to ensure Acquire::Queue-Mode=access does not crashJulian Andres Klode3-2/+25
Unfortunately for us, apt update with Acquire::Queue-Mode=access does not always crash on a real system, so run the whole thing in valgrind.
2019-08-15Fix segfault in pkgAcquire::Enqueue() with Acquire::Queue-Mode=accessJulian Andres Klode2-4/+9
In commit 79b1a8298, QueueName() was changed, amongst other things, to exit early when the queue mode was single access, as single access does not need any fancy queue name. The exit became too early though, as Config was not initialized anymore, but the caller was relying on it. Fix QueueName() to always initialize Config and in Enqueue() initialize Config with a nullptr, so if this regresses it's guaranteed to fail harder. Also add a test case - this is very simple, but the first and only test case for access queue mode. Regression-Of: 79b1a82983e737e74359bc306d9edb357c5bdd46 LP: #1839714
2019-08-05Release 1.9.21.9.2Julian Andres Klode48-49/+808
2019-08-05Merge branch 'pu/locking-msg' into 'master'Julian Andres Klode1-2/+53
Improve locking messaging - pid and name, "do not remove lock file" See merge request apt-team/apt!68
2019-07-10Fix typos reported by codespell in code commentsDavid Kalnischkies14-21/+22
Also in old changelogs, but nothing really user visible like error messages or alike so barely noteworthy. Reported-By: codespell Gbp-Dch: Ignore
2019-07-08Apply various suggestions by cppcheckDavid Kalnischkies29-72/+60
Reported-By: cppcheck
2019-07-08Show details about the package with bad ProvidesDavid Kalnischkies1-3/+4
The error messages say only which package it was trying to provide, but not which package & version tried it which can be misleading as to which package (version) is the offender. References: #930256
2019-07-08Distribute host-less work based on backlog of the queuesDavid Kalnischkies1-44/+66
Work like applying patches via rred can be performed by many concurrent rred processes, but we can't just spawn new ones forever: We limit us to the number of CPUs which can drive them and reuse existing ones if they have nothing to do at the moment. The problem arises if we have reached the limit of queues and all of them are busy which is more likely to happen on "slow" machines with few CPUs. In this case we opted for random distribution, but that can result in many big files (e.g. Contents) being added to one queue while the others get none or only small files. Ideally we would ask the methods how much they still have to do, but they only know that for the current item, not for all items in the queue, so we use the filesize of the expected result.
2019-06-24Merge branch 'patch-1' into 'master'Julian Andres Klode1-1/+1
Change a pronoun in the readme from `he` to `they` See merge request apt-team/apt!69
2019-06-23Change a pronoun in the readme from `he` to `they`Lynn Cyrin1-1/+1
Using gender neutral language in your documentation is a inclusion win! Here's some documents describing more context here: - https://en.wikipedia.org/wiki/Singular_they#Trend_toward_gender-neutral_language - https://open.buffer.com/inclusive-language-tech - https://www.grammarly.com/blog/use-the-singular-they/
2019-06-21Improve locking messaging - pid and name, "do not remove lock file"Julian Andres Klode1-2/+53
We want to tell users which process is holding the lock so they can easily understand what's going on, and we want to advise users not to remove the lock file, because ugh, that's bad. Re-initalize the flock structure, in case it got mangled by previous fcntl call.
2019-06-20Release 1.9.11.9.1Julian Andres Klode5-6/+13
2019-06-17Fix pkg-config-test autopkgtestJulian Andres Klode1-1/+2
2019-06-17RFC1123StrToTime: Accept const std::string& as first argumentJulian Andres Klode8-7/+21
We are converting to std::string anyway by passing to istringstream, and this removes the need for .c_str() in callers.
2019-06-17Release 1.9.0 to experimental1.9.0Julian Andres Klode65-7941/+7679
2019-06-14policy: Get rid of Pins arrayJulian Andres Klode2-20/+13
Gbp-Dch: ignore
2019-06-14policy: Remove GetMatch and GetPriority(pkgIterator)Julian Andres Klode2-22/+1
These functions do not produce any useful results anymore, so it's pointless to keep them around.
2019-06-14Remove deprecated cacheset methodsJulian Andres Klode4-46/+85
This mostly turns them private and then overrides the public version with the switch, as recommended.
2019-06-12Bump cache MajorVersion to 16Julian Andres Klode1-1/+1
1.6 was 13, so 1.7 has 14 reserved, and 1.8 has 15 reserved, so let's use 16 for 1.9 for now.
2019-06-12Merge branch 'pu/cleaner-headers'Julian Andres Klode54-276/+12
2019-06-12Adjust code for missing includes/using std::stringJulian Andres Klode5-6/+12
2019-06-12Run unifdef -DAPT_{8,9,10,15}_CLEANER_HEADERSJulian Andres Klode49-270/+0
2019-06-12doc/apt-get.8.xml: Fix typo in satisfy command descriptionJulian Andres Klode1-1/+1
Gbp-Dch: ignore
2019-06-11Merge branch 'depend-solutions' into 'master'Julian Andres Klode1-16/+16
apt-cache: only show solutions if displayed See merge request apt-team/apt!65
2019-06-11http: Fix Host header in proxied https connectionsSimon Körner2-3/+25
Currently CONNECT requests use the name of the proxy as Host value, instead of the origin server's name. According to RFC 2616 "The Host field value MUST represent the naming authority of the origin server or gateway given by the original URL." The current implementation causes problems with some proxy vendors. This commit fixes this. [jak: Adding a test case] See merge request apt-team/apt!66
2019-06-11Introduce apt satisfy and apt-get satisfyJulian Andres Klode8-7/+178
Allow to satisfy dependency strings supplied on the command line, optionally prefixed with "Conflicts:" to satisfy them like Conflicts. Build profiles and architecture restriction lists, as used in build dependencies, are supported as well. Compared to build-dep, build-essential is not installed automatically, and installing of recommended packages follows the global default, which defaults to yes. Closes: #275379 See merge request apt-team/apt!63
2019-06-11Do not include squashfs file systems in df output.Brian Murray1-1/+1
LP: #1756595 Fixes Debian/apt#94
2019-06-11Update symbols and hide some pkgTagSection ABIJulian Andres Klode2-24/+22
Gbp-Dch: ignore
2019-06-11Merge the ParseDepends functionsJulian Andres Klode3-68/+18
2019-06-11Allow comparing string to StringViewJulian Andres Klode1-0/+2
2019-06-11Make APT::StringView publicJulian Andres Klode14-242/+31
2019-06-11Merge tag '1.8.2'Julian Andres Klode9-71/+103
apt Debian release 1.8.2
2019-05-28Release 1.8.21.8.2Julian Andres Klode5-6/+28
2019-05-21Unlock dpkg locks in reverse locking orderJulian Andres Klode1-1/+1
We need to unlock in the reverse order of locking in order to get useful behavior. LP: #1829860
2019-05-21methods: https: handle requests for TLS re-handshakeMichael Zhivich1-28/+51
When accessing repository protected by TLS mutual auth, apt may receive a "re-handshake" request from the server, which must be handled in order for download to proceed. This situation arises when the server requests a client certificate based on the resource path provided in the GET request, after the inital handshake in UnwrapTLS() has already occurred, and a secure connection has been established. This issue has been observed with Artifactory-backed Debian repository. To address the issue, split TLS handshake code out into its own method in TlsFd, and call it when GNUTLS_E_REHANDSHAKE error is received. Signed-off-by: Michael Zhivich <mzhivich@akamai.com> (merged from Debian/apt#93) LP: #1829861
2019-05-21French manpages translation updateJean-Pierre Giraud1-34/+21
Closes: #929290
2019-05-21Portuguese manpages translation updateAmérico Monteiro1-895/+1333
Closes: #926614
2019-05-21Fix typo in German manpage translationTilmanK1-1/+1
Github-Fixes: #89 (cherry picked from commit 46ef1a3e8c8895c53ff1e4787dc96d4f6c5dba27)
2019-05-21Flip /: in documented default value of DPkg::PathAlwin Henseler1-1/+1
The value as shown in the NEWS file (not in the code) has a typo in which just a "/" and ":" are swapped. Closes: #917986 (cherry picked from commit 4c27ca80e2de06ab0fd058349f9813b60824cf04)
2019-05-13apt-cache: only show solutions if displayedStephen Kitt1-16/+16
Currently, apt-cache [r]depends always shows all solutions for a package, if appropriate, even if the package itself wasn’t displayed (e.g. “--installed” was specified). Thus, currently, with haskell-platform uninstalled and amd64 and i386 enabled, “apt-cache rdepends alex” shows alex Reverse Depends: haskell-platform alex:i386 haskell-platform alex:i386 and “apt-cache rdepends alex --installed” shows alex Reverse Depends: alex:i386 alex:i386 which is rather confusing. This patch changes the behaviour so that solutions are only displayed for packages which were themselves displayed; “apt-cache rdepends alex --installed” then shows alex Reverse Depends: Signed-off-by: Stephen Kitt <skitt@debian.org>
2019-05-10WIP: README.md: Minor editing to make it read easierJulian Andres Klode1-22/+22
Went as far as "A test case here is a shell script", this paragraph is _hard_.
2019-05-10More minor wording improvements in documentationJulian Andres Klode12-21/+21
2019-05-10apt-mark: Add hidden showheld alias for showholdJulian Andres Klode2-3/+3
For Unit193 and those who value grammar, I suppose.
2019-05-09README.md: Quote -j <count> as code with backticksJulian Andres Klode1-1/+1
The <count> did not appear in the html, render it as code instead so things work correctly. Fixes Debian/apt#91
2019-05-07debmetaindex: Use isspace_ascii() variant to normalize Signed-ByJulian Andres Klode1-1/+1
Using the locale-dependent isspace() function here opens us up to strange locale-dependent behavior.
2019-05-06CMake: Enforce "override" use on overriden methodsJulian Andres Klode3-2/+5
This ensures that we do not accidentally stop overriding a method because it's signature changed in an API break.
2019-05-06symbols: Remove invalid APTPKG@APTINST symbolJulian Andres Klode1-2/+0