Accepted linda 0.3.0 (all source)
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Format: 1.7
Date: Wed, 21 Apr 2004 22:39:58 +1000
Source: linda
Binary: linda
Architecture: source all
Version: 0.3.0
Distribution: unstable
Urgency: low
Maintainer: Steve Kowalik <stevenk@debian.org>
Changed-By: Steve Kowalik <stevenk@debian.org>
Description:
linda - Debian package checker, not unlike lintian
Closes: 196121 196968 200424 202433 206461 218839 223021 224422 224671 226519 226713 226927 227162 229899 230589 231189 231244 232503 234607 244773
Changes:
linda (0.3.0) unstable; urgency=low
.
* Rethink, and redesign the core of Linda.
- Have 4 objects as the core.
+ Linda object, which initizalies, and calls everything else.
+ CLParser object, which parses the command line.
+ Checker object, which unpacks and checks the files.
+ Output object, which spits out the errors and warnings.
- Use gettext to look up from tags to descriptions.
This has the benefit that I no longer care about $LANG, and as such,
can just let Linda worry about the Gettext binddomain. This also means
the .desc format has changed, which will be warned about.
- The above also means I have renamed .desc files to .data files, and
have also made them install underneath /usr/share/linda/data instead.
* Documentation:
- Document the (previously undocumented) quiet (-q) option.
+ Specifying it will stop Linda crying about checks or output methods
failing.
* Control file:
- Build-Depend and Depend on python (>> 2.3.1), python (<< 2.4); I use
some features only found in 2.3.1.
- Conflict against file 4.04, since it incorrectly identifies scripts
as 'ASCII English text'.
- Remove po-debconf from the Build-Depends, I don't use it in the build
process any longer.
- Remove fixincludes from Depends.
* Option parsing:
- No longer use opt{ik,parse}.
- Added a config file (in ~/.linda/config), so you can specify long options
in there instead of always on the command line.
- Drop -I, --information.
- Move --show-tag away from -t, to -s. Actually document it.
- Add -t, --types, which allows you to specify which types to show.
* Remove the common module. Its continued existance was really getting to
me.
* Move around some code, or create afresh:
- Checker: Is now responsible for unpacking and running the checks, rather
than the main linda script.
- Collector: Mainly ripped out of Unpack, it runs file, ldd and objdump.
Has also been rewritten.
- ErrPrint: Ripped out of Checks, since running the checks, and printing
what you found are two seperate problems.
- Debug: Contains some debug functions. Moved from common.
- Funcs: Contains useful functions. Moved from common.
- Libchecks: Rename from checks.
- MyGettext: Builds on the gettext module, so I can fall back to en.po
with very little fuss.
- Parsers:
+ parser.arch - Parses out the supported arches from dpkg-architecture.
+ parser.changes - .changes file parser
+ parser.clparser - Command line parser.
+ parser.config - Config file parser.
+ parser.control - Debian control file parser.
+ parser.data - .data file parser.
+ parser.datavalidator - Replaces the badly named aps_not_valid function
provided by common.
+ parser.dsc - .dsc file parser.
+ parser.makefile - Makefile parser. (Closes: #202433)
+ parser.rfc822parser - Generalized RFC822 file parser.
+ parser.template - Templates file parser.
+ parser.unixperm - Moved from convert_perms in common, parses unix
permissions into an object so checks can call is_* methods on them.
* Add automated testing to Linda.
- It has been a long time coming, but it should hopefully allow me to
stop introducing stupid bugs. (BEING DONE)
* DpkgVer:
- Fix a bug where it thought that DpkgVersion objects with the same version
were equal, and didn't bother comparing the revisions.
* All Checks:
- Reorganised to call functions of themselves, rather than doing all the
work in the main functions, and apply a layer of "polish".
- Added support for a hook in the initialzation of a checks class. Adding
an init() method to a check class will enable it to do some setup that is
normally required in __init__().
* Output Formats:
- Add support for a initialzation hook, like for checks.
* XML Output Format:
- Remove; it never really worked anyway.
* Binary Check:
- Greatly reorganise code flow, and group like checks together.
- Drop binary-in-usr-share-doc, it's handled by binary-in-doc-dir.
- Actually check if a file is considered to be for debugging before
bitching in binary-libc6, static-binary and shared-binary.
(Closes: #230589)
* CDBS Check:
- New; check how a package uses CDBS. (Closes: #196968, #200424, #229899)
* Changelog Check:
- Make use of the DataValidator object.
- Drop native-changelog-not-compressed, it's handled by
non-compressed-changelog.
- Stop duplicating code when setting the changelog.
- Deal with NMU versions. (Closes: #223021)
* Changes Check:
- Use init() to create variables.
- Make use of ChangesParser, rather than doing it all by hand.
- Also use DataValidator.
- Rename obselete-dist to obsolete-dist.
* Control Check:
- Also use DataValidator.
- Don't check Build-Depends in a binary check.
- Drop description-ends-with-fullstop, the check is not mandated by
Policy. (thanks, Manoj Srivastava)
- Also drop build-dep-with-no-dep-pkgs. Build-Depends are needed for the
clean target. (Closes: #224422)
- Reference Policy, section 3.4 for ex-desc-contains-desc.
(Closes: #244773)
* ControlFiles Check:
- Act more like a class, use init() to create variables.
- Stop chdir'ing into ./control, and just use self.information['dir']
like normal checks do.
- Use run_external_cmd, instead of commands.getstatusoutput().
- Rewrite the things_found part to dynamically look for things in
maintainer scripts, rather than using 8 if constructs.
- Drop some checks to just using some regexs, rather than 2 or 3
string.find() methods.
- Only look for strings in the maintainer scripts if they are a script.
- Shift the update-rc.d checking to things_found, so that the maintainer
scripts are only parsed once.
* Copyright Check:
- New; pulled out of Files Check, and rewritten into shape.
* Debconf Check:
- Stop parsing templates manually, and use DebconfTemplateParser.
- Rename unsufficent-version-multi to debconf-insufficient-version.
- Generalize the check for multiselect, and extend it to work with checking
for a recent enough dependancy on debconf for the title field. Also
accept that Title is a valid field. (Closes: #226927, #234607)
- Only complain about not purging answers from the debconf database if
control/templates exists. (Closes: #226519, #226713)
* Debhelper Check:
- Substantially rewrite.
- Use the new MakefileParser.
- Use Sets, rather than comparing arrays.
- Use a class-level hash, rather than local variables everywhere.
* Documentation Check:
- Call lexgrog instead of groff.
- Handle 'groff-symlinks'. (Closes: #231189)
- Add two new checks, for doc-base files. (Closes: #196121)
+ Verify that the file exists for the Index field.
+ Verify that the shell pattern for the Files field expands to a
non-empty list.
+ Complain if the Format is HTML, and there is no Files field. (thanks,
Angus Lees)
* Dpkg Check:
- Use run_external_cmd.
* Files Check:
- Also use run_external_cmd.
- Drop interp-minus-n-fails and script-not-executable, I really don't see
what benefit running dash -n, or checking whether or not a script is
executable gains us. (Closes: #206461)
- Check that the permissions of .ali files are -r--r--r--.
(Closes: #227162)
- Deal with symlinks for zero-length-file. (Closes: #224671)
- Drop upstream install documentation check. (Closes: #231244)
* Includes Check:
- Remove. Any case to reinstate this check should explain why, and also
give some actual examples that cause it to bitch.
* Library Check:
- Substantially rewrite to not act completly and utterly brain-dead.
- When I get enough testcases for package-notlike-soname, it's type will
be raised to Warning.
* Perl Check:
- Rewrite to be a class-y check, and to use an object-wide self.info.
- Drop arch-indep-no-dep, and rename arch-dep-no-dep to
module-pkg-no-perl-dep.
- Rename perl-dep-no-great-enough to perl-dep-not-great-enough.
- Correct spelling of arch-dep-should-be-u-l-p. (Closes: #218839)
- Deal with (and warn about) unversioned dependancies on perl{,-base}.
(Closes: #232503)
* Shebang Check:
- Rewrite to actually look sane.
- Rewrite code around script-depends to look and act sane.
- Correct spelling of 'detrimental' in csh-harmful.
* StandardsVersion Check:
- Rewrite to work dynamically around a self.standards_versions dict which
contains the 3 border values.
- Use Sets to check for the existance of the Build-{Depends,Conflicts}
fields.
* UDebBinary Check:
- Add a doc-string.
- Rewrite the directory tests to be dynamic.
* UDebControl Check:
- Implement invalid-control-header and invalid-control-file from #231292.
This doesn't close the bug, since it requires knowing if a field in
the control file uses a pipe symbol, which the parser can't currently
handle.
Files:
a2a6eafb9ec6b798c0d37cd96ca40a1c 528 devel optional linda_0.3.0.dsc
d6bcb6bd20e38c80387a97e411f1f183 608235 devel optional linda_0.3.0.tar.gz
d9459b4e46db2ece26dcbff0c6266bf2 124450 devel optional linda_0.3.0_all.deb
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (GNU/Linux)
iD8DBQFAhm2uCfB0CMh//C8RAqt1AJ0dN8BrUjcD5a2H1REPeWVYhO0UmwCfahfR
NlGC4SeWtOu+qkDl0A6ijuc=
=49Hz
-----END PGP SIGNATURE-----
Accepted:
linda_0.3.0.dsc
to pool/main/l/linda/linda_0.3.0.dsc
linda_0.3.0.tar.gz
to pool/main/l/linda/linda_0.3.0.tar.gz
linda_0.3.0_all.deb
to pool/main/l/linda/linda_0.3.0_all.deb
--
To UNSUBSCRIBE, email to debian-devel-changes-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org