]> err.no Git - dpkg/commitdiff
Implement support for Tag field
authorGuillem Jover <guillem@debian.org>
Fri, 31 Aug 2007 02:31:26 +0000 (05:31 +0300)
committerGuillem Jover <guillem@debian.org>
Fri, 31 Aug 2007 02:32:45 +0000 (05:32 +0300)
ChangeLog
TODO
debian/changelog
dpkg-deb/build.c
man/ChangeLog
man/deb-control.5
man/dpkg-query.1
scripts/dpkg-genchanges.pl
scripts/dpkg-gencontrol.pl
scripts/dpkg-scanpackages.pl
scripts/dpkg-source.pl

index fee3394b8bca94ac69ee11931ec456d7bc1133b1..ee02dd5a99f1bd1de885afca4f41cf42582b111e 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+2007-08-31  Guillem Jover  <guillem@debian.org>
+
+       * dpkg-deb/build.c (arbitrary_fields): Add Tag.
+       * scripts/dpkg-genchanges.pl: Ignore Tag field.
+       * scripts/dpkg-gencontrol.pl: Parse Tag from binary package stanza.
+       (@control_fields): Add Tag.
+       * scripts/dpkg-scanpackages.pl (@fieldpri): Add Tag.
+       * scripts/dpkg-source.pl: Ignore Tag field from binary package stanza.
+
 2007-08-31  Guillem Jover  <guillem@debian.org>
 
        * scripts/dpkg-genchanges.pl: Ignore Vcs-Browser, Vcs-Arch, Vcs-Bzr,
diff --git a/TODO b/TODO
index df8aa1bc55ff7fd6add56cd922fbd621efc842b4..5daf07db87da90786cc96d2cae6ab97e526f7383 100644 (file)
--- a/TODO
+++ b/TODO
@@ -18,8 +18,6 @@ lenny
    - Add field Package-Type and friends.
    - Generate proper Packages files. (#383916)
 
- * Support Tag field.
-
 1.14.y
 ------
 
index a644acd3879c434729f0bb7f672fc71dd928914c..e138304aec837db7e5daf307bc6d86f86680f5f2 100644 (file)
@@ -45,6 +45,7 @@ dpkg (1.14.6) UNRELEASED; urgency=low
   * Implement support for Vcs-Browser, Vcs-Arch, Vcs-Bzr, Vcs-Cvs, Vcs-Darcs,
     Vcs-Git, Vcs-Hg, Vcs-Mtn and Vcs-Svn fields in control file source
     package stanza.
+  * Implement support for Tag field.
 
   [ Updated scripts translations ]
   * French (Frédéric Bothamy, Christian Perrier).
index be851efedda6e0fd8526d43653779d48836230c9..5ee77995131c217308ec6e04e6c693a4eb49cc94 100644 (file)
@@ -58,6 +58,7 @@ struct _finfo {
 
 const char *arbitrary_fields[]= {
   "Homepage",
+  "Tag",
   NULL
 };
 
index ad4ba13e0ff3713bb599e8a1e6b199bc25568c56..fc4ca432100b6047c428a2d49ef8740dc03fb148 100644 (file)
@@ -1,3 +1,8 @@
+2007-08-31  Guillem Jover  <guillem@debian.org>
+
+       * deb-control.5: Document Tag field.
+       * dpkg-query.1: Document Tag as a recognized field.
+
 2007-08-25  Peter Karlsson  <peterk@debian.org>
 
        * po/sv.po: Updated to 1285t.
index c01c5b727aa900b37e39236d10ec244a31fe582a..dd4ea9699b5246104a2c241ad13e203e2e01b854 100644 (file)
@@ -1,6 +1,6 @@
 .\" Author: Raul Miller
 .\" Includes text from the debian Guidelines by Ian Jackson, Ian Murdock
-.TH deb\-control 5 "2007-05-15" "Debian Project" "Debian"
+.TH deb\-control 5 "2007-08-31" "Debian Project" "Debian"
 .SH NAME
 deb\-control \- Debian packages' master control file format
 .
@@ -88,6 +88,10 @@ of this are shell and Perl scripts, and documentation.
 .BR Homepage: " <url>"
 The upstream project home page URL.
 .TP
+.BR Tag: " <tag list>"
+List of tags describing the qualities of the package. The description and
+list of supported tags can be found in the \fBdebtags\fP package.
+.TP
 .BR Source: " <source name>"
 The name of the source package that this binary package came from, if
 different than the name of the package itself.
@@ -216,5 +220,6 @@ Description: GNU grep, egrep and fgrep.
 .
 .SH SEE ALSO
 .BR deb (5),
+.BR debtags (1),
 .BR dpkg (1),
 .BR dpkg-deb (1).
index 4f5bad7921e2a6c8e83f0b2cdc2661080af14d7c..ec7e6540b2f544f62b3d0a7e95e93d9492ef41af 100644 (file)
@@ -127,6 +127,7 @@ alignment will be used. The following \fIfield\fRs are recognised:
     \fBSource\fP
     \fBStatus\fP
     \fBSuggests\fP
+    \fBTag\fP
     \fBVersion\fP
 .fi
 
index 907af80ab76d04aa7763b7cdd0bd43c0b6e9b2ad..93e36aa3402e151a91162a685227756632ab3ee1 100755 (executable)
@@ -256,6 +256,7 @@ for $_ (keys %fi) {
                push(@archvalues,$v) unless !$v || $archadded{$v}++;
            } elsif (m/^(Package|Essential|Pre-Depends|Depends|Provides)$/ ||
                     m/^(Recommends|Suggests|Enhances|Optional|Conflicts|Breaks|Replaces)$/ ||
+                    m/^Tag$/i ||
                     m/^X[BS]+-/i) {
            } else {
                &unknown(_g("package's section of control info file"));
index 8ff8aee27910da429aaeac5c4438a2cf012d3339..92052fc83758875e5bb37fdda241a8b2690c5a0a 100755 (executable)
@@ -23,7 +23,7 @@ textdomain("dpkg-dev");
 
 my @control_fields = (qw(Package Source Version Architecture Essential Origin
                          Bugs Maintainer Installed-Size), @pkg_dep_fields,
-                      qw(Section Priority Homepage Description));
+                      qw(Section Priority Homepage Description Tag));
 
 my $controlfile = 'debian/control';
 my $changelogfile = 'debian/changelog';
@@ -161,7 +161,7 @@ for $_ (keys %fi) {
         else { $_ = "C $_"; &unknown(_g('general section of control info file')); }
     } elsif (s/^C$myindex //) {
 #print STDERR "P key >$_< value >$v<\n";
-        if (m/^(Package|Description|Homepage|Essential|Optional)$/) {
+        if (m/^(Package|Description|Homepage|Tag|Essential|Optional)$/) {
             $f{$_}= $v;
         } elsif (exists($pkg_dep_fields{$_})) {
            # Delay the parsing until later
index e1b35b507eb4cd4ce02d381348a184cb35c1c113..c7ece3577ca5618dcef8c75569fab9ecdb4b2d01 100755 (executable)
@@ -26,7 +26,7 @@ my %kmap= (optional         => 'suggests',
 
 my @fieldpri = (qw(Package Source Version Architecture Essential Origin Bugs
                    Maintainer Installed-Size), @pkg_dep_fields, qw(Filename
-                   Size MD5sum Section Priority Homepage Description));
+                   Size MD5sum Section Priority Homepage Description Tag));
 
 # This maps the fields into the proper case
 my %field_case;
index c0544d6db96589346b953d9286d4a996deea449c..70b4682cc262be82f2c24daa9d6eb8f26d602650 100755 (executable)
@@ -286,7 +286,7 @@ if ($opmode eq 'build') {
                 $f{$_}= $v;
             } elsif (m/^(Package|Essential|Pre-Depends|Depends|Provides)$/i ||
                      m/^(Recommends|Suggests|Optional|Conflicts|Replaces)$/i ||
-                     m/^(Breaks|Enhances|Description|Section|Priority)$/i ||
+                     m/^(Breaks|Enhances|Description|Tag|Section|Priority)$/i ||
                      m/^X[BC]+-/i) {
             } else {
                 &unknown(_g("package's section of control info file"));