Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
That is "" or '', and not the unbalanced `' pair.
|
|
|
|
|
|
Place 'use' strict and warnings first, then Exporter 'our' declarations,
then Test module imports, then system module imports, then Dpkg module
imports, then 'use' parent and overload pragmas, separated by a blank
line for each block.
Split each exported symbol declaration into its own line to ease
modifications.
|
|
|
|
The old function name was inconsistent with the other gettext family
of short aliases which has already caused some code typos, and functions
starting with underscore are considered by convention private in Perl.
|
|
This is to try to make sure, that even if documented, people will not
accidentally rely on private modules, that have not API stability
guarantees.
|
|
This makes it clear what is the current version of the module, and that
it is a public interface.
|
|
Addresses Subroutines::RequireArgUnpacking.
Warned-by: perlcritic
|
|
Addresses RegularExpressions::ProhibitFixedStringMatches.
Warned-by: perlcritic
|
|
Fixes BuiltinFunctions::ProhibitUselessTopic
and RegularExpressions::ProhibitUselessTopic.
Warned-by: perlcritic
|
|
Switch code that uses roughly more explicit instances of the topic
variable than implicit ones.
Addresses BuiltinFunctions::ProhibitUselessTopic.
Warned-by: perlcritic
|
|
When we meant the standard (and not the tool) we should have been saying
OpenPGP.
|
|
This makes the code more clear and does not require to explicitly list
the variables on output.
|
|
Regression introduced in commit c2ee90f92ab6c915db774403414b2ea70c967c3e.
We need to check if the value is empty, not if it's false. Add a
regression test.
|
|
This spurious space is unnecessary and takes a non-insignificant amount
of disk space on archive index files for example.
Update dpkg-dev Breaks on devscripts to version << 2.14.4, as previous
versions of debchange expect a trailing space from dpkg-parsechangelog
output.
Closes: #749044
Based-on-patch-by: Johannes Schauer <j.schauer@email.de>
|
|
Do not use actual POD =item, just normal paragraphs. Split items in
different paragraphs. Sort versions in decreasing order. Document
missing changes in public interfaces. Qualify methods with the
variable.
|
|
These are false positives, as when there's no match perl will leave
the subpattern variables untouched. We'll just use the opportunity to
unconfuse perlcritic, making some of those variable usages more clear
by using intermediate variables.
Fixes RegularExpressions::ProhibitUnusedCapture.
Warned-by: perlcritic
|
|
Add two new optional values to the Packages-List field, with
architecture and build-profiles information. These values have the
form «name=value1,value2», and might appear in any order after the
mandatory values.
This allows to run bootstrapping analysis over the Sources package
indices.
Requested-by: Johannes Schauer <j.schauer@email.de>
Suggested-by: Raphaël Hertzog <hertzog@debian.org>
|
|
Closes: #735975
|
|
This way we make sure we don't affect the $_ value for the caller,
in case it was being used.
|
|
This field is used to specify what type of test suite is present
in the source package. The values within are comma separated.
|
|
|
|
This adds the basic infrastructure support for a new class of generic
build-time dependency restrictions, and in particular implements the
specific build profiles, which will allow to cull build dependencies
depending on the profile being used. There's several things this can
be used for, like new port bootstrapping, reduced package builds, and
similar. In the future other kinds of restrictions could be added as
the build profiles are namespaced with “profile.”. An example field
could be:
Build-Depends: exotic-compiler, libneeded-dev, tool-tiny,
tool-huge (>= 1.0) [linux-any] <!profile.embedded !profile.bootstrap>
or even stuff like:
Depends: net-tools <profile.network>, plugin-curl <!profile.no-plugins>
The generated binary packages and .changes files will get a new
Built-For-Profiles field containing the active profiles during the build.
In addition the build profile can be selected using the environment
variable DEB_BUILD_PROFILES, with space separated values, such as:
DEB_BUILD_PROFILES="embedded bootstrap"
The management and possible registration in the profile namespace is
currently out of scope in dpkg, this should probably be handled by a
distribution specific process.
See draft <http://www.hadrons.org/~guillem/debian/docs/embedded.proposal>.
Closes: #661538
Based-on-patch-by: Patrick "P. J." McDermott <pjm@nac.net>
Based-on-patch-by: Wookey <wookey@debian.org>
Based-on-patch-by: Johannes Schauer <j.schauer@email.de>
Signed-off-by: Guillem Jover <guillem@debian.org>
|
|
Accepting such field names as valid, would make the parsers accept
control stanzas that have not been properly sanitized from OpenPGP
dash-escaping. Just refuse these field names, as there's really no
reason to accept them.
|
|
Fixes InputOutput::RequireBracedFileHandleWithPrint.
Warned-by: perlcritic
|
|
Remove now unused internerr() function, replaced by croak which does a
way better job.
Addresses ErrorHandling::RequireCarping.
Warned-by: perlcritic
|
|
Addresses ErrorHandling::RequireCarping.
Warned-by: perlcritic
|
|
This will make it safe to remove parenthesis around builtins.
|
|
Using boolean operators after predicates for error checking makes the
code flow slightly confusing, do that only after actions, to check if
they succeeded and error out otherwise.
|
|
This places the function where it belongs.
|
|
|
|
The code was pre-scanning the control file looking for a PGP signature,
and the parser was doing a more thorough check later on. Just remove the
double parsing, and rely on the more accurate one from the parser.
|
|
Use the new information to properly apply substvars when outputting
control stanzas, and avoid doing text cleanups on field values where
those changes are not relevant.
Closes: #659814
|
|
This information helps when needing to handle the field values
semantically.
|
|
Because Dpkg::Vendor is not entangled with Dpkg::Control::FieldsCore
anymore, Dpkg::Control::HashCore will be able to use it and
Dpkg::Control::HashCore::Tie can use it now instead of duplicating
field_capitalize().
|
|
Move the bulk of the code into two new vendor-neutral Core sub-modules
Dpkg::Control::FieldsCore and Dpkg::Control::HashCore, that get
imported by Dpkg::Control::Fields and Dpkg::Control::Hash respectively;
so that modules like Dpkg::Control::HashCore can make use of
Dpkg::Control::FieldsCore w/o getting into a circular import due
to Dpkg::Vendor previously using Dpkg::Control::Hash.
The old dependency graph would have been:
Control::Hash → Control::Fields
↑ ↓
Vendor
The new one would be:
Control::Hash → Control::Fields
↓ ↓ ↓
↓ Vendor ↓
↓ ↓ ↓
Control::HashCore → Control::FieldsCore
|
|
|
|
Addresses Modules::RequireVersionVar.
|
|
Use the lightweight parent instead of the bloated base.
|
|
Do not use base which is bloated, and we don't need any other of
Exporter's inherited methods anyway.
|
|
Rename, uppercase and do not export new variables by default, to avoid
cluttering the caller namespace, and to give them consistent names. We'll
keep the old variables for a while, to not break uses from external
modules.
Addresses Variables::ProhibitPackageVars.
|
|
This will make life easier for downstreams using different paths. Allow
overriding pkgconfdir at configure time.
|
|
|
|
|
|
This fixes the function to behave as documented, and expected from the
name itself.
|
|
Using double-quotes imposes a small performance penalty as the perl
parser needs to check if any interpolation is needed. Use double-quotes
only when the string contains single-quotes. Ideally we'd use
double-quotes too for escaped meta-characters that might otherwise be
confusing to immediately see if they need interpolation or not, but the
policy does not (currently) allow to ignore these.
Fixes ValuesAndExpressions::ProhibitInterpolationOfLiterals.
Warned-by: perlcritic
|
|
Addresses ValuesAndExpressions::ProhibitInterpolationOfLiterals.
Warned-by: perlcritic
|
|
Do not quote the keys for any hash which will always use simple
identifiers, as that is taken care of by the => operator. So this does
not apply to overload pragmas, version operators, field names, substvars,
command line options or filenames.
Addresses ValuesAndExpressions::ProhibitInterpolationOfLiterals.
Warned-by: perlcritic
|