summaryrefslogtreecommitdiff
path: root/scripts
AgeCommit message (Collapse)AuthorFilesLines
2019-01-15perl: Fix POD for Dpkg::Interface::Storable derived method implementationsGuillem Jover8-74/+79
Document inherited methods. Document the return values. Note which arguments are optional. Reorder methods by their position in the stack.
2018-10-10build: Set locale for CPAN tests to CGuillem Jover1-0/+2
The test suite expects to run under the C locale. Fixes: https://rt.cpan.org/Ticket/Display.html?id=127314
2018-10-10build: Set environment variables only for CPAN testsGuillem Jover1-6/+8
All these environment variables are only relevant while running the test suite. Do not pollute the rest of the environment.
2018-10-10shell: Quote variablesGuillem Jover1-2/+2
Reported-by: Johannes Schauer <josch@debian.org> Warned-by: shellcheck
2018-10-10dpkg-maintscript-helper: Use explicit escape instead of literal backslashGuillem Jover1-2/+2
Warned-by: shellcheck
2018-10-09Update German scripts translationHelge Kreutzmann1-5/+4
Update to 603t.
2018-10-08po: Regenerate .pot files and merge .po files with themGuillem Jover8-255/+307
2018-10-08Dpkg::Source::Package::V2: Move binary file detection to BinaryFiles moduleGuillem Jover2-44/+59
This makes it possible to reuse the code by other modules.
2018-10-08Dpkg::Source::Package::V2: Split BinaryFiles module into its own fileGuillem Jover4-84/+113
2018-10-08Dpkg::Source::Functions: Reimplement is_binary() w/o using diff(1)Guillem Jover1-23/+8
The check is very simple, and can be done w/o requiring calling diff(1) for each input file. This makes the code shorter, more portable, and should be faster in the non-binary cases.
2018-10-08Dpkg: Add documentation about the module hierarchy and APIGuillem Jover1-0/+165
2018-10-08Dpkg::OpenPGP: Do not read the gpg user configuration fileGuillem Jover1-1/+3
2018-10-08Dpkg::OpenPGP: Ignore Version field in enarmored outputGuillem Jover1-0/+1
This will contain different data depending on the program used. We do not really care about that, later versions of GnuPG have stopped emitting it, and it makes the test suite fail when using GnuPG 1.x. Fixes: https://rt.cpan.org/Public/Bug/Display.html?id=127217
2018-10-08test: Skip version checks involving «dpkg --compare-versions» if not availableGuillem Jover1-2/+15
For the CPAN distribution or a non-dpkg-based distribution we cannot assume that dpkg will be installed, or even available at build time. Skip these tests if the tools is missing.
2018-10-08build: Improve test and author CPAN dependenciesGuillem Jover1-2/+20
Split the test recommends from the requires and add develop recommends into a prereqs metadata hierarchy.
2018-10-08build: Fix typo in CPAN recommends keyGuillem Jover1-1/+1
2018-10-08build: Add a release_status key to the CPAN metadataGuillem Jover1-0/+2
This will enable the -TRIAL versioning that CPAN uses to avoid indexing such releases.
2018-10-08build: Generalize PACKAGE_CPAN_SIGN by setting PACKAGE_DIST_IS_RELEASE insteadGuillem Jover1-1/+1
Set the more generic name from within DPKG_DIST_IS_RELEASE, and use that directly in the Build.PL.in file.
2018-09-26po: Regenerate .pot files and merge .po files with themGuillem Jover8-355/+805
2018-09-26test: Make po checks cope with missing po files in CPAN distributionGuillem Jover1-1/+1
We do not distribute the PO files yet for CPAN, so the checks should not fail when they are missing, even when testing with AUTHOR_TESTING=1.
2018-09-26build: Distribute the data files from the CPAN Build.PL scriptGuillem Jover1-0/+4
When building the CPAN package, we need to also distribute the data files, otherwise the modules will not work correctly once installed.
2018-09-26build: Perform Dpkg module substitution during CPAN module buildingGuillem Jover1-0/+37
We had an empty do_perl_subst variable in the dist-cpan autotools target that resulted in copying an empty file, but that was shadowed by a subsequent copy of the original. So we were ending up with a pristine non-substituted file. We actually need to substitute the install paths during the CPAN module building to preserve system and user settings at that point. Otherwise the dpkg autotools configure settings might be completely out of touch with the settings from the system where the CPAN module gets built.
2018-09-19Update German scripts translationHelge Kreutzmann1-2/+5
Update to 602t.
2018-09-18perl: Replace all calls to Cwd::cwd with Cwd::getcwdJosh Triplett4-4/+4
The former calls /bin/pwd, while the latter uses the getcwd() syscall directly. Signed-off-by: Guillem Jover <guillem@debian.org>
2018-09-18dpkg-parsechangelog: Add new --reverse optionGuillem Jover4-6/+14
This option will make the output be in reverse order.
2018-09-18scripts: Track automatic packages using the new file attributeGuillem Jover2-6/+13
This should make it possible to ignore the warning w/o hardcoding any distribution specific package name pattern on the code.
2018-09-18Dpkg::Dist::Files: Add support for file attributesGuillem Jover3-14/+38
This will make it possible to track key/value attributes for each file, so that we can track interesting information and pass it to the various programs parsing the debian/files file.
2018-09-18Dpkg::Vendor::Debian: Add fixfilepath support to reproducible featureGuillem Jover2-4/+18
This is a superset of the fixdebugpath feature supported by gcc-8, but covering in addition mappings for macros such as __FILE__ and similar.
2018-09-18Dpkg::Deps::KnownFacts: Satisfy :native with arch:all packages tooGuillem Jover2-2/+22
Architecture:all packages are treated as native ones as part of the current multi-arch design, the only current exception is in build dependencies with the :native arch-qualifier. It looks like this was an oversight when implementing the :native support, as there's been no rationale found for the current behavior. Closes: #854438 Analysis-by: Johannes Schauer <josch@debian.org>
2018-09-03dpkg-maintscript-helper: Check that DPKG_MAINTSCRIPT_PACKAGE is definedGuillem Jover1-0/+8
When we need the environment variablem check that it is defined, and error out otherwise. Closes: #907772
2018-09-03Dpkg::Shlibs: Ignore nonexistent directories present in LD_LIBRARY_PATHGuillem Jover1-1/+3
We were trying to use realpath() on nonexistent directories, which means we'd get undef. Instead just completely ignore nonexistent directories from any processing. Fixes: commit 174a5bd2a080847d0ed901d269a2ba74476eba8b
2018-09-02Dpkg::Substvars: Fix typoGuillem Jover1-2/+1
2018-08-30Update German scripts translationHelge Kreutzmann1-6/+26
Update to 602t.
2018-08-30dpkg-shlibdeps: Split string at \n boundaryGuillem Jover1-2/+3
Having the string read as “\nTo” confuses codespell, as a typo for not. Just break the string at the newline to make it more clear for humans and spell checkers alike. Warned-by: codespell
2018-08-30scripts/t: Improve coverage of unit testsGuillem Jover7-16/+137
2018-08-30build: Only sign the perl distribution if we are doing an actual releaseGuillem Jover1-1/+1
Forcing the signing while not actually preparing a tarball for a release disitribution, that is due to a signed tag, means that any random «make distcheck» will trigger an annoying gpg prompt.
2018-08-30Dpkg::Control::Fields: Do not use & sigil for function callsGuillem Jover1-3/+6
Warned-by: perlcritic Fixes: Subroutines::ProhibitAmpersandSigils
2018-08-30Dpkg::OpenPGP: Return the destination path on successful ASCII armor conversionGuillem Jover1-2/+2
This way we can distinguish the failure from the success case.
2018-08-30Dpkg::Source::Package::V3::Quilt: Print series file used when applying patchesGuillem Jover1-0/+2
We might use a vendor specific series file, so we should print the one being used to notify if this fact.
2018-08-30Dpkg::Shlibs: Warn when using LD_LIBRARY_PATH with a descendent of cwdGuillem Jover1-0/+10
This makes the deprecation explicit, so that we can start noticing what is inappropriately setting this variable for a purpose it was not designed for.
2018-08-30dpkg-gensymbols: Add new -l optionGuillem Jover1-0/+3
This option will make it possible to stop using LD_LIBRARY_PATH when calling this script.
2018-08-30Dpkg::Substvars: Reword used/unused warnings to clarify their meaningGuillem Jover2-4/+6
Clarify the unknown and unused substitution variable warnings, to try to make them more clear as to what each implies. Closes: #904258
2018-08-30Fix some typosGuillem Jover3-7/+7
Thanks-to: Niels Thykier <niels@thykier.net> (for typo in dpkg(1))
2018-08-01dselect: Use override attribute for virtual methods in derived classesGuillem Jover1-1/+1
C++11 makes it possible to use these attributes so that errors can be avoided, by helping the compiler know when we mean methods to override the ones from the parent class. Warned-by: cppcheck
2018-08-01Dpkg::Source: Do not change patch permissions if not necessaryGuillem Jover4-6/+19
To be able to build a source tree, a user needs write permisions on it, but not necessarily ownership of those files. We check the existing file permissions and avoid changing them if not necessary, which helps in the case where the user does not have ownership of those files, and they were already present. Closes: #898010 Naming-by: Julian Andres Klode <jak@debian.org>
2018-07-30Dpkg::Deps: Split subpackagesGuillem Jover9-1349/+1646
This makes the structure easier to comprehend, and easier to read, otherwise it's difficutl to search for specific methods or functions and know immediately to what module they belong. It also makes for more structured POD.
2018-07-30Dpkg::Deps::KnownFacts: Rename _evaluate_simple_dep to evaluate_simple_depGuillem Jover1-2/+8
This method is currently used by Dpkg::Deps::Simple, and is marked as private by way of its underscore prefix. This will be a problem once we split the modules into different files, as then we are not supposed to be using private methods from external modules. Rename the method, and document it explicitly as being private, while only giving a partial prototype to deter its use.
2018-07-30Dpkg::Deps: Improve modules and method documentationGuillem Jover1-151/+377
Document each implemented method. This will make it easier to split the modules into their own files.
2018-07-30scripts/t: Improve Dpkg::Deps test casesGuillem Jover1-5/+37
Add new TODO tests for behavior that is not yet implemented, but should.
2018-07-30Dpkg::Deps: Clarify arch-qualified dependency simplificationGuillem Jover2-1/+24
Dependency simplification can only really be done for metadata for which we have all its context and information during the simplification process. Anything that relies on the state of the dependencies cannot be simplified. This means that any dependency that might change the satisfiability due to the value of Multi-Arch field of the depended on package cannot be simplified. Clarify this in the function commends, and add new test cases to cover this. Prompted-by: Stuart Prescott <stuart@debian.org>