Chris Lamb pushed to branch stretch-backports at lintian / lintian

Commits:
6fb83a9d by Chris Lamb at 2018-12-07T09:41:15Z
Open new changelog entry for 2.5.117.

- - - - -
e52119d1 by Chris Lamb at 2018-12-09T16:26:06Z
Correct grammar of the debian-watch-does-not-check-gpg-signature tag 
description.

- - - - -
2052a06a by Chris Lamb at 2018-12-09T17:16:57Z
debian/changelog: Strip vim modeline.

- - - - -
f07916d7 by Chris Lamb at 2018-12-09T22:05:23Z
Don't emit uses-dpkg-database-directly for d-i components.

- - - - -
18d6c1ca by Chris Lamb at 2018-12-09T22:06:11Z
Reopen new changelog entry for 2.5.117; was accidentally removed in e52119d1fc5.

- - - - -
b662341a by Paul Wise at 2018-12-10T08:58:00Z
spelling: Add several corrections

- - - - -
39677e34 by Chris Lamb at 2018-12-11T07:30:35Z
Use the output from file(1) when determining whether to emit the 
package-contains-no-arch-dependent-files tag. (Closes: #916023)

- - - - -
7896e342 by Felix Lechner at 2018-12-11T16:42:27Z
Delete variables not needed.

Two variable not needed were left over from a previous edit. This commit
removes them.

Signed-off-by: Chris Lamb <[email protected]>

- - - - -
e5d06e5c by Felix Lechner at 2018-12-11T16:42:33Z
Remove code for executing post-template command from t/runtests.

The active templates implemented here do not work with the test runner
that is part of Lintian. The reasons are unknown; they could be
related to close() not working properly in a threaded environment.

In reaction to #916087, this code was removed. In the suite 'tests'
the watch file will now be supplied by an extra template.

Signed-off-by: Chris Lamb <[email protected]>

- - - - -
db5331c1 by Felix Lechner at 2018-12-11T16:42:37Z
Remove default Post-Skeleton-Command from t/defaults/desc.

In reaction to #916087, this removes the default command to be
executed for an active template.

Signed-off-by: Chris Lamb <[email protected]>

- - - - -
403e4710 by Felix Lechner at 2018-12-11T16:42:40Z
Delete post-template script from template set tests-make-builder.

In reaction to #916087, this removes the script removing the watch
file for native packages.

Signed-off-by: Chris Lamb <[email protected]>

- - - - -
e0ca5eb7 by Felix Lechner at 2018-12-11T16:42:42Z
Move watch file to separate template set (for suite tests).

In reaction to #916087, the watch file needed for non-native packages
will now be provided by its own template set.

Signed-off-by: Chris Lamb <[email protected]>

- - - - -
b22aa98c by Felix Lechner at 2018-12-11T16:42:44Z
Add non-native skeleton that includes a watch file, for suite 'tests'.

The default skeleton serves a native template set that lacks the watch
file needed for non-native packages. This commit adds a skeleton that
will also serve a watch file.

Signed-off-by: Chris Lamb <[email protected]>

- - - - -
1072d7a0 by Felix Lechner at 2018-12-11T16:42:46Z
Add Skeleton: non-native to all tests that need it.

This commit adds a skeleton selector "Skeleton: non-native" to all
tests that produce non-native packages, and thus need it.

Signed-off-by: Chris Lamb <[email protected]>

- - - - -
7fb46f4b by Felix Lechner at 2018-12-11T16:42:48Z
Turn skeleton into a suite-based default.

Skeletons describe just the file layout of a test's working directory.
With this commit, other values may be added. At this point, they
override the values in each test's 'desc'. That behaviour may change
in the future.

Signed-off-by: Chris Lamb <[email protected]>

- - - - -
c3ffc234 by Felix Lechner at 2018-12-11T16:42:51Z
Add Type: non-native to skeleton 'non-native'.

The package type declaration is closely tied to the templates being
served. This commit means that all tests relying on the non-native
skeleton will automatically declare a non-native type. They no longer
need to provide their own declarations.

Signed-off-by: Chris Lamb <[email protected]>

- - - - -
7730a99e by Felix Lechner at 2018-12-11T16:42:54Z
Add Type: non-native to skeleton 'builder-only'.

The package type declaration is closely tied to the templates being
served. This commit means that all tests relying on the 'builder-only'
skeleton will automatically declare a non-native type.

At the time of writing, that skeleton was only used by two tests for
historical debhelper templates, generic-dh-make-2005 and
generic-dh-make-2008.  Those two tests no longer need to provide their
own declarations.

Signed-off-by: Chris Lamb <[email protected]>

- - - - -
23f93320 by Felix Lechner at 2018-12-11T16:42:56Z
Removed declared Type: from all tests in t/tests; now served via skeleton.

The type designates whether a test is intended to build native or
non-native packages. This declaration is closely tied to the templates
served. Most significantly, non-native packages require a watch file,
while native packages will not tolerate one. This declaration is also
found in the default settings or the skeleton definitions and thus no
longer needed for each test. This commit removes all such statements
from the tests in t/tests.

Some tests declared Type: native even though that was the default.
Those statements were likewise removed.

Signed-off-by: Chris Lamb <[email protected]>

- - - - -
15642271 by Chris Lamb at 2018-12-11T16:43:06Z
Apply a patch series from Felix Lechner to use "skeletons" as test 
templates. (Closes: #916087)

- - - - -
39c2c363 by Felix Lechner at 2018-12-12T16:56:32Z
Fix a mismatched formatting tag.

Signed-off-by: Chris Lamb <[email protected]>

- - - - -
56e3b5f4 by Felix Lechner at 2018-12-12T17:02:36Z
Export LINTIAN_ROOT to the environment.

This enviroment variable is needed in Test::Lintian::Filter.pm and is
also useful when running tests via TAP::Harness.

Signed-off-by: Chris Lamb <[email protected]>

- - - - -
d28a4305 by Felix Lechner at 2018-12-12T17:02:44Z
Use absolute reference to TESTSET.

An absolute reference to the testset is needed to safely calculate the
suite from a test's specification path.

Signed-off-by: Chris Lamb <[email protected]>

- - - - -
33f1c613 by Felix Lechner at 2018-12-12T17:02:48Z
Calculate suite from path on the fly.

This commit provides a direct way for a test to infer its suite from
its own path. A test no longer has to rely on a variable that was
passed down from the test selection mechanism.

Signed-off-by: Chris Lamb <[email protected]>

- - - - -
a353471f by Felix Lechner at 2018-12-12T17:02:51Z
Add lib/Test/Lintian/Filter.pm to get testpaths from 'onlyrun'.

This module provides an alternative way to select tests to run. The
syntax is very similar except for one detail: Commas now separate
fully styled selectors such as "tag:some-tag,suite:changes" (which are
combined via a logical OR). It is no longer advisable to use something
like "suite:tests,changes".

As a new feature, one can now select all tests connected to particular
Lintian check with 'check:'. It is designed to more or less make the
tag selector 'tag:' obsolete in everyday use, although it will remain
available.

Otherwise, tests are selected very much the way they were before,
except one may find it useful to specify the desired category in
onlyrun=.  (Reasonable attempts are made to guess what was meant.)
Please choose from:

* test: runs the named test (or tests) in any of the suites
* suite: runs all tests in the named suite
* tag: runs all tests regarding the named tag
* check: runs all tests regarding the named Lintian check

Signed-off-by: Chris Lamb <[email protected]>

- - - - -
097c34ff by Felix Lechner at 2018-12-12T17:02:54Z
Use lib/Test/Lintian/Filter.pm to determine testpaths from 'onlyrun'.

This commit uses the new test selection mechanism in favor over the
present one.

Signed-off-by: Chris Lamb <[email protected]>

- - - - -
e818d7eb by Felix Lechner at 2018-12-12T17:02:56Z
debian/tests/testsuite: Adjust autopkgtest command to new onlyrun syntax

This commit adjusts the autopkgtest command to the new way commas in
'onlyrun' now separate fully styled selectors.

Signed-off-by: Chris Lamb <[email protected]>

- - - - -
d1496121 by Chris Lamb at 2018-12-12T17:02:58Z
Apply a patch series from Felix Lechner to improve the "onlyrun=" 
test selection feature. (MR: !90)

Signed-off-by: Chris Lamb <[email protected]>

- - - - -
8bf0bdf8 by Felix Lechner at 2018-12-12T17:05:01Z
Add null pointer check to avoid exception.

Sometimes file_info is unsafe to call. The recommended call to
is_open_ok did not solve the issue, so checking directly.

Signed-off-by: Chris Lamb <[email protected]>

- - - - -
09360504 by Felix Lechner at 2018-12-12T17:05:10Z
Add newly emitted tag to generic_dh_make_2008; per author's wishes.

In accordance with the author's wishes as received in orig/README,
this tag is added without modifications to other files.

Signed-off-by: Chris Lamb <[email protected]>

- - - - -
7934ae5a by Felix Lechner at 2018-12-12T17:05:17Z
Change to Arch:all to avoid package-contains-no-arch-dependent-files.

The detection of arch-dependent files in checks/files.pm now excludes
executable ASCII files. For this test package holding an app, it
seemed appropriate to change the Architecture to 'all'.

Signed-off-by: Chris Lamb <[email protected]>

- - - - -
24a88445 by Felix Lechner at 2018-12-12T17:05:42Z
Add newly emitted 'package-contains-no-arch-dependent-files' to tests.

The detection of arch-dependent files in checks/files.pm now excludes
executable ASCII files. For these tests, changing the Architecture to
'all' resulted in the tag 'not-binnmuable-all-depends-any'. A 
trade
off was made to add the tag instead.

Signed-off-by: Chris Lamb <[email protected]>

- - - - -
21d264e0 by Felix Lechner at 2018-12-12T17:07:17Z
Add gpg and gpg-agent to Build-Depends.

Both are available in stretch-backports. /usr/bin/gpg-agent was also
available in the original stretch. Both package names have changed
since then but the present names were already available in stretch via
virtual packages. This commit uses the current package name from
unstable.

Signed-off-by: Chris Lamb <[email protected]>

- - - - -
9231e6da by Felix Lechner at 2018-12-12T17:07:21Z
Modify the 'make' builder to automatically sign upstream packages.

This commit causes upstream packages of the form orig.tar.gz to be
signed if a private key is found at upstream/private-key.asc. For now,
this works only in suite 'tests'.

Signed-off-by: Chris Lamb <[email protected]>

- - - - -
a7922a08 by Felix Lechner at 2018-12-12T17:07:27Z
Add test verifing new facility to sign upstream packages.

This is a test to verify orig tarball signing. It is thus also a test
for false positives of 'orig-tarball-missing-upstream-signature'

Signed-off-by: Chris Lamb <[email protected]>

- - - - -
7bec938e by Chris Lamb at 2018-12-12T17:07:29Z
Apply a patch set from Felix Lechner to sign test packages. when a 
upstream/private-key.asc is present. (MR: !93)

- - - - -
101dd9ef by Felix Lechner at 2018-12-13T04:43:33Z
Run perltidy on checks/files.pm after edit. (MR: !94)

The test results were produced independent messages, and this one was
missed.

Signed-off-by: Chris Lamb <[email protected]>

- - - - -
69d31855 by Chris Lamb at 2018-12-13T14:00:04Z
Mark debian-watch-does-not-check-gpg-signature as "experimental". 
(Closes: #916207)

- - - - -
a950a964 by Chris Lamb at 2018-12-13T14:04:51Z
Fix a test definition/output from previous commit.

- - - - -
271956b4 by Chris Lamb at 2018-12-13T14:32:31Z
Refactor, tidy and optimise various checks for the contents of files.

- - - - -
4aaab6b1 by Chris Lamb at 2018-12-13T15:06:49Z
Check files for references to the build path if specified in a .buildinfo. 
(Closes: #916021

- - - - -
3f8a4d88 by Chris Lamb at 2018-12-13T17:49:29Z
Don't emit systemd-service-file-missing-hardening-features for Type=oneshot 
"services" such as mdadm(8).

- - - - -
c3b702f0 by Felix Lechner at 2018-12-13T21:19:10Z
Adjust expected tags for debian-watch-does-not-check-gpg-signature.

This commit adjusts the expected tags for tests after tag
'debian-watch-does-not-check-gpg-signature' was marked experimental
(in commit 69d31855e).

- - - - -
d485fca6 by Felix Lechner at 2018-12-13T21:19:10Z
Add missing argument $build_path to function.

The variable $build_path introduced in commit 4aaab6b1 is being passed
as an argument but not being processed as such.  This commit adds the
variable as an argument in the function declaration.

Signed-off-by: Chris Lamb <[email protected]>

- - - - -
b9739ebc by Chris Lamb at 2018-12-13T22:28:26Z
Clarify that symbols-file-missing-build-depends-package-field is emitted 
per-package in its long description, not based on a file.

- - - - -
b1f78551 by Chris Lamb at 2018-12-13T22:28:26Z
debian/changelog: Fix order.

- - - - -
ea1357ea by Felix Lechner at 2018-12-13T22:28:26Z
Move Test::State into a separate module.

This module was previously attached to the bottom of t/runtests. It is
now separate.

Signed-off-by: Chris Lamb <[email protected]>

- - - - -
50d56341 by Felix Lechner at 2018-12-13T22:28:26Z
Split test runner into two phases; prepare and run.

This commit splits the test runner into two phases. The preparation
phase copies all necessary files to the work directory in
debian/test-out and fills the templates. The run phase builds packages
and runs the test.

Signed-off-by: Chris Lamb <[email protected]>

- - - - -
f91da51e by Felix Lechner at 2018-12-13T22:28:26Z
Move prepare functionality to Test::Lintian::Prepare.

This commit makes the runner more modular by splitting the preparation
phase into its own module.

Signed-off-by: Chris Lamb <[email protected]>

- - - - -
112c9046 by Felix Lechner at 2018-12-13T22:28:26Z
Move runner functionality to Test::Lintian::Run.

This commit moves the actual test phase (i.e. the package building and
the all-important call to Lintian) into a separate module.

Signed-off-by: Chris Lamb <[email protected]>

- - - - -
b07e34df by Felix Lechner at 2018-12-13T22:30:19Z
Replace a number of variables in the test runner.

  'testdata' -> 'testcase'
  'test_data' -> 'testcase'
  'testdir' -> 'specpath'
  'targetdir' -> 'runpath'
  'TESTSET' -> 'testset'
  'RUNDIR' -> 'outpath'
  'test_filter' -> 'onlyrun'
  'ALWAYS_REBUILD' -> 'force_rebuild'
  'JOBS' -> 'numjobs'
  'DUMP_LOGS' -> 'dump_logs'
  'VERBOSE' -> 'verbose'

Signed-off-by: Chris Lamb <[email protected]>

- - - - -
8592ca1d by Felix Lechner at 2018-12-13T22:30:24Z
Export 'STANDARDS_VERSION' as 'ENV{POLICY_VERSION}' in test 
runner.

Signed-off-by: Chris Lamb <[email protected]>

- - - - -
d0d63564 by Felix Lechner at 2018-12-13T22:30:24Z
Export 'RUNNER_TS' as 'ENV{HARNESS_EPOCH}' in test runner.

Signed-off-by: Chris Lamb <[email protected]>

- - - - -
74aaa947 by Felix Lechner at 2018-12-13T22:30:24Z
Export 'ARCHITECTURE' as 'ENV{DEB_HOST_ARCH}' in test runner.

Signed-off-by: Chris Lamb <[email protected]>

- - - - -
ac1111a6 by Felix Lechner at 2018-12-14T08:07:13Z
Remove unnecessary Debian diffs from two tests.

The test set contains two tests that are designed to test the
performance of file sets produced by historical versions of dh-make.
Both tests use a special feature designed to excercise debian diff
performance, or the related patch that is automatically generated for
package format 3.0 (quilt). In both cases, however, the files in
./diff and ./orig are identical. There is no diff. Furthermore,
dh-make never dealt with such diff sets. The files were probably
duplicated by accident at some point. All such files in ./diff were
removed.

Signed-off-by: Chris Lamb <[email protected]>

- - - - -
4ab5cefa by Felix Lechner at 2018-12-14T17:28:39Z
Add basic POD for Test::State. (Closes: #916444)

This is not enforced by code quality scripts but needed for release.

Signed-off-by: Chris Lamb <[email protected]>

- - - - -
c09a01e4 by Chris Lamb at 2018-12-14T17:57:03Z
Release lintian/2.5.117 into unstable.

- - - - -
185a3848 by Chris Lamb at 2018-12-21T15:38:33Z
Merge tag '2.5.117' into stretch-backports

Release lintian/2.5.117 into unstable.

Format: 1.8
Date: Fri, 14 Dec 2018 17:56:27 +0000
Source: lintian
Binary: lintian
Architecture: source all
Version: 2.5.117
Distribution: unstable
Urgency: medium
Maintainer: Debian Lintian Maintainers <[email protected]>
Changed-By: Chris Lamb <[email protected]>
Description:
 lintian    - Debian package checker
Closes: 916021 916023 916087 916207
Changes:
 lintian (2.5.117) unstable; urgency=medium
 .
   * Summary of tag changes:
     + Added:
       - file-references-package-build-path
 .
   * checks/files.pm:
     + [CL] Don't emit uses-dpkg-database-directly for d-i components; they
       likely know what they are doing with no alternatives.
     + [CL] Use the output from file(1) when determining whether to emit
       the package-contains-no-arch-dependent-files tag to catch packages
       that ship (for example) just a Python script under /usr/bin in an
       architecture-dependent package.  This reverts 6f4bd2fee2 in order to
       distinguish between "data" and such scripts.  Thanks to Dmitry
       Bogatov for investigating.  (Closes: #916023)
     + [CL] Refactor, tidy and optimise various checks for the contents of
       files.
     + [CL] Check files for references to the build path if specified in a
       .buildinfo.  (Closes: #916021
   * checks/shared-libs.desc:
     + [CL] Clarify that symbols-file-missing-build-depends-package-field is
       emitted per-package in its long description, not based on a file.
   * checks/systemd.pm:
     + [CL] Don't emit systemd-service-file-missing-hardening-features for
       Type=oneshot "services" such as mdadm(8).
   * checks/watch-file.desc:
     + [CL] Correct grammar of the debian-watch-does-not-check-gpg-signature
       tag description.
     + [CL] Mark debian-watch-does-not-check-gpg-signature as 
"experimental"
       as it is not actionable in the vast majority of cases and is in
       danger of diluting the output of Lintian.  (Closes: #916207)
 .
   * data/spelling/corrections:
     + [PW] Add a number of corrections.
 .
   * t/*:
     + [CL] Apply a patch series from Felix Lechner to use 
"skeletons" as
       test templates, fixing a "exec failed: Text file busy" 
regression
       when running tests by tag name.  (Closes: #916087)
     + [CL] Apply a patch series from Felix Lechner to improve the
       "onlyrun=" test selection feature.  One can now select all 
tests
       connected to particular Lintian check with "check:foo".  (MR: 
!90)
     + [CL] Apply a patch set from Felix Lechner to sign test packages.
       when a upstream/private-key.asc is present.  (MR: !93)
Checksums-Sha1:
 df680b9458d843f0ef3ce71fa73147e9420f62cf 2742 lintian_2.5.117.dsc
 25d25b87771aae7d6f944e75f3cc75e4271f2202 1622804 lintian_2.5.117.tar.xz
 407107338c832d83f875f62881b065d317d8d7b8 1170904 lintian_2.5.117_all.deb
 3af2219ca123086f5ff91759f206222fa56b4ea1 16717 lintian_2.5.117_amd64.buildinfo
Checksums-Sha256:
 d111ea450623c2746229280338c2c2c243b5a87b748f3d5296daa81b673dece5 2742 
lintian_2.5.117.dsc
 9dd665703c6af57557447dcf5a9e8aa5acd159eeb7cd6f3de49b0d72d7a884b7 1622804 
lintian_2.5.117.tar.xz
 51057fecea6ab6896d7b25ceb37eca596d3ad32ea0ed84aef7d707a348ae9096 1170904 
lintian_2.5.117_all.deb
 4491a67d0e60011823411752037e195aeb1698cd54f74b772af091f042d06417 16717 
lintian_2.5.117_amd64.buildinfo
Files:
 035e65c0abd1cfd3896999f156b03ab8 2742 devel optional lintian_2.5.117.dsc
 6ba7b8521f344c3c45c7a098adbbfd77 1622804 devel optional lintian_2.5.117.tar.xz
 ec10d9e6b8c66d5a0cfed78e1a68b3ad 1170904 devel optional lintian_2.5.117_all.deb
 487ffc9064ea19aed1e9a9bb85e83efe 16717 devel optional 
lintian_2.5.117_amd64.buildinfo

* tag '2.5.117': (56 commits)
  Release lintian/2.5.117 into unstable.
  Add basic POD for Test::State. (Closes: #916444)
  Remove unnecessary Debian diffs from two tests.
  Export 'ARCHITECTURE' as 'ENV{DEB_HOST_ARCH}' in test runner.
  Export 'RUNNER_TS' as 'ENV{HARNESS_EPOCH}' in test runner.
  Export 'STANDARDS_VERSION' as 'ENV{POLICY_VERSION}' in test 
runner.
  Replace a number of variables in the test runner.
  Move runner functionality to Test::Lintian::Run.
  Move prepare functionality to Test::Lintian::Prepare.
  Split test runner into two phases; prepare and run.
  Move Test::State into a separate module.
  debian/changelog: Fix order.
  Clarify that symbols-file-missing-build-depends-package-field is emitted 
per-package in its long description, not based on a file.
  Add missing argument $build_path to function.
  Adjust expected tags for debian-watch-does-not-check-gpg-signature.
  Don't emit systemd-service-file-missing-hardening-features for 
Type=oneshot "services" such as mdadm(8).
  Check files for references to the build path if specified in a .buildinfo. 
(Closes: #916021
  Refactor, tidy and optimise various checks for the contents of files.
  Fix a test definition/output from previous commit.
  Mark debian-watch-does-not-check-gpg-signature as "experimental". 
(Closes: #916207)
  ...

- - - - -
779beac3 by Chris Lamb at 2018-12-21T15:39:04Z
Rebuild for stretch-backports.

- - - - -


30 changed files:

- checks/files.desc
- checks/files.pm
- checks/shared-libs.desc
- checks/systemd.pm
- checks/watch-file.desc
- collection/file-info
- data/spelling/corrections
- debian/changelog
- debian/control
- debian/tests/testsuite
- lib/Lintian/Collect/Package.pm
- + lib/Test/Lintian/Filter.pm
- + lib/Test/Lintian/Prepare.pm
- + lib/Test/Lintian/Run.pm
- + lib/Test/State.pm
- t/defaults/desc
- t/runtests
- t/skeletons/tests/builder-only
- + t/skeletons/tests/non-native
- t/templates/tests-make-builder/Makefile.in
- − t/templates/tests-make-builder/post_template.in
- t/templates/tests-pedantic/watch → t/templates/tests-watchfile/watch
- t/tests/basic-non-native-with-epoch/desc
- t/tests/basic-non-native/desc
- t/tests/basic-quilt-updeb/desc
- t/tests/basic-quilt/desc
- t/tests/binaries-static-lib/desc
- t/tests/changelog-file-consecutive-debian-revision-unrel/desc
- t/tests/changelog-file-consecutive-debian-revision-unrel/tags
- t/tests/changelog-file-dch-wrong-name/desc


The diff was not included because it is too large.


View it on GitLab: 
https://salsa.debian.org/lintian/lintian/compare/0184fc19aebf5e251eeb00cc93dbdbadf66f4eb9...779beac3684899710a61503ae0c97920a58d4d48

-- 
View it on GitLab: 
https://salsa.debian.org/lintian/lintian/compare/0184fc19aebf5e251eeb00cc93dbdbadf66f4eb9...779beac3684899710a61503ae0c97920a58d4d48
You're receiving this email because of your account on salsa.debian.org.

Reply via email to