summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2019-02-23debian: Bump Standards-Version to 4.3.0 (no changes required)Guillem Jover2-1/+2
2019-02-23debian: Clarify autopkgtest behavior on root/non-root requirementGuillem Jover4-2/+5
Mark the not-root test as skippable, and skip it if running as root, as there is no restriction currently to represent that. For the root test clarify the failing exit code with a comment.
2019-02-23debian: Add file to autopkgtest Depends fieldsGuillem Jover2-2/+4
libtool generated scripts make use of file(1) to detect the executable types.
2019-02-23debian: Fix bug closuresGuillem Jover1-2/+3
2019-02-23build: Check whether this dist is a release based only on the version formatGuillem Jover2-3/+7
Using the .dist-version file implies that we need to do a two staged release process. First a «make dist», unpack the generated tarball distribution, and run that again. When the deciding factor is the format of the version. Switch to use that exclusively.
2019-01-30debian: Fix impromperly indented line in debian/changelogSven Joachim1-1/+1
2019-01-30German dpkg translation updateSven Joachim2-110/+42
Update to 1128t.
2019-01-23Update German translation of manual pagesHelge Kreutzmann2-165/+84
Update to 2970t1f.
2019-01-23Update German scripts translationHelge Kreutzmann2-11/+9
Update to 603t.
2019-01-23Bump version to 1.19.5Guillem Jover1-0/+6
2019-01-23Release 1.19.4Guillem Jover1-2/+2
2019-01-23debian: Change autopkgtest Depends to «build-essential, autoconf, pkg-config»Guillem Jover2-2/+3
This fixes the Depends to what is really required by the configure script.
2019-01-23debian: Pass --disable-nls and --disable-dselect to configure in autopkgtestsGuillem Jover3-2/+4
This reduces the required dependencies to a minimum.
2019-01-23s-s-d: Remove bogus comment about Linux user namespaces vs /dev/nullGuillem Jover2-4/+2
The /dev/null device always has world-writable permissions, so it would always fail anyway. Spotted-by: James Clarke <jrtc27@debian.org> (on IRC)
2019-01-23s-s-d: Do not sanity check the pidfile when it is specified as /dev/nullGuillem Jover2-2/+12
Several projects use this to bypass the requirement for a matching option so that they can start a program no matter what. Even though the check should not fail on this condition, it does on some scenarios, such as when using Linux user namespaces. Closes: #920242
2019-01-23s-s-d: Move SO_PASSCRED setting into its own functionGuillem Jover1-4/+11
This way we have the entire logic in one place, and can more cleanly conditionalize on SO_PASSCRED availability.
2019-01-23s-s-d: Only use SO_PASSCRED if definedGuillem Jover2-1/+5
Fixes build failure at least on GNU/Hurd.
2019-01-22Bump version to 1.19.4Guillem Jover1-0/+6
2019-01-22Release 1.19.3Guillem Jover1-2/+2
2019-01-22po: Regenerate .pot files and merge .po files with themGuillem Jover94-2202/+8007
2019-01-22po: Update Simplified Chinese programs translationZhou Mo2-123/+57
Closes: #919040 Signed-off-by: Guillem Jover <guillem@debian.org>
2019-01-22po: Update Portuguese programs translationMiguel Figueiredo2-314/+297
Closes: #917813 Signed-off-by: Guillem Jover <guillem@debian.org>
2019-01-22po: Update Dutch translationsFrans Spiesschaert3-310/+421
Closes: #912023, #912024 Signed-off-by: Guillem Jover <guillem@debian.org>
2019-01-22po: Update Italian programs translationMilo Casagrande2-188/+155
Closes: #915610 Signed-off-by: Guillem Jover <guillem@debian.org>
2019-01-22test: Update cppcheck supressionsGuillem Jover2-5/+21
Supress false positives and intended code usage.
2019-01-22test: Add descriptions for the shellcheck exclude codesGuillem Jover2-5/+6
Having to refer to the documentation to know what these are about is annoying, inline a brief description.
2019-01-22libdpkg: Add new db-fsys:Files and db-fsys:Last-Modified virtual fieldsGuillem Jover5-2/+69
This will make it possible to access the filesystem entries per package from anything that queries the database, such as «dpkg-query --show».
2019-01-22libdpkg: Detect unsupported tar entry types to give better error messagesGuillem Jover3-0/+33
We know what we do not support, let's detect and give better diagnostics so that users get even less confused.
2019-01-22libdpkg: Add proper tar error handlingGuillem Jover7-65/+104
This makes the tar extractor track and report back parse errors, so that we can give more descriptive messages.
2019-01-22libdpkg: Add new DPKG_ERROR_OBJECT macroGuillem Jover2-0/+3
2019-01-22libdpkg: Add new warning printer setter functionGuillem Jover4-3/+28
This will make it possible for library users to specify alternative warning printers. Prompted-by: Julian Andres Klode <jak@debian.org>
2019-01-22libdpkg: Rename pkg_db symbols to pkg_hashGuillem Jover30-201/+215
These are handling a package hash, and db seems to imply some kind of on-disk storage. Rename the pkgiterator too to pkg_hash_iter to make it consistent.
2019-01-22libdpkg: Cleanup fsys module symbol namesGuillem Jover31-460/+476
2019-01-22libdpkg: Rename ret variable to nextGuillem Jover2-3/+4
2019-01-22libdpkg, dpkg: Rename r variables to fnnGuillem Jover3-14/+12
2019-01-22dselect: Rename variable r to pkgbinGuillem Jover2-4/+6
This makes it clear what the variable is all about.
2019-01-22When allocating use the variable instead of the type in sizeof()Guillem Jover22-40/+41
This makes it easier to guarantee we use the correct size for the involved variable.
2019-01-22dpkg-query: Rename variable to avoid shadowing a local functionGuillem Jover2-4/+5
Warned-by: cppcheck
2019-01-22dpkg: Fix --help output to clarify optional argumentsGuillem Jover2-15/+16
2019-01-22dpkg: Fix typo in commentGuillem Jover1-1/+1
2019-01-22dpkg: Introduce a new dependency try level for trigger processingGuillem Jover4-23/+41
The introduction of dependency satisfiability for trigger processing, which was in the original spec but not the implementation, there has been countless problems with bogus detection of trigger cycles. The problem is that whenever we try to process triggers for a package, we might not be able to due to dependency unsatisfiaiblity, which means we have to put the package back into the queue. If we add the state into the cycle detection tracker, then multiple visits to these packages will hit the cycle detection for artificially generated cycles. But we cannot avoid performing the checks because that will miss dynamic cycles coming from maintainer scripts, for example. To avoid most of these problems (while possibly not fixing all potential ones), we should delay trigger processsing entirely until we have emptied the processing queue as much as possible. We do that by introducing a new dependency try level, after the dependency cycle breaking one. We will also make the trigger cycle detection unconditional of the dependency try, because for the trigproc try-queued it will not matter anymore as we will only ented on higher dependency tries, and for the other trigproc types we should not care about any queue-specific dependency try level. Closes: #810724, #854478, #911620
2019-01-22dpkg: Move trigproc cycle reset inside try-deferred conditionalGuillem Jover2-11/+14
We should only reset the cycle detection in case we are not bailing out from the processing with an error, otherwise we could come back to this package and detect an artificial trigger cycle.
2019-01-22dpkg: Convert one trigger processing required type into the new try-queuedGuillem Jover2-1/+3
This makes the code stop skipping unsatisfiable dependency checks.
2019-01-22dpkg: Split trigger processing types into required, try-queued and try-deferredGuillem Jover3-4/+8
Each of these reasons for processing triggers have different requirements and attributes: - The required one, must perform all checks as it is done as part of a simple loop to guarantee Pre-Depends satisfiability. - The try-deferred one, must not fail on unsatisfiable dependencies, as we are doing opportunistic trigger processing, after a normal processing queue run. - The try-queued one, must perform all checks and fail hard if any unsatisfiable scenario occurs.
2019-01-22dpkg: Reset progress_bytrigproc once we have injected into the current iterationGuillem Jover2-0/+5
We should not leave the package that could be used to make progress by way of trigger processing in this variable, because it might not have its dependencies satisfied, which means we'll be trying to process it on every next loop, and get into artificialy detected trigger cycles.
2019-01-22dpkg: Move dependtry description from deferred_configure() to its declarationGuillem Jover3-24/+29
This moves the description closer to the type defining its values, which makes more sense than in the configure function.
2019-01-21dpkg: Switch dependtry from an int to an enumGuillem Jover6-11/+34
Thiw makes the code way easier to understand as there no magic numbers anymore. It will also make it trivial to add new levels in-between.
2019-01-15dpkg: Mark the package we are giving up on a trigger cycle as istobe normalGuillem Jover2-0/+7
Once we are giving up on a package that we will stop processing, we need to mark it as PKG_ISTOBE_NORMAL so that the dependency checks know they cannot expect this package to be processed anymore. Otherwise we might end up never detecting that we are not making progress, as we expect to process this package at a later point, when that will never happen anymore. This then would end up causing asserts in the process queue loop. Closes: #901127, #910819
2019-01-15dpkg: Factor trigproc_new_cyclenode() out from check_trigger_cycle()Guillem Jover2-12/+26
2019-01-15dpkg: Use common pattern of assigning as an iteratorGuillem Jover2-1/+2
Assign hare->next to hare instead of using the temporary variable, so that it's quicker to spot as an iterator assignment.