Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 578516 Details for
Bug 666330
Repoman: Update for new copyright policy
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
repoman: Update header check for Gentoo repo policy.
0001-repoman-Update-header-check-for-Gentoo-repo-policy.patch (text/plain), 4.13 KB, created by
Ulrich Müller
on 2019-06-03 15:13:31 UTC
(
hide
)
Description:
repoman: Update header check for Gentoo repo policy.
Filename:
MIME Type:
Creator:
Ulrich Müller
Created:
2019-06-03 15:13:31 UTC
Size:
4.13 KB
patch
obsolete
>From a63c438474ec0dfe810e255ac83caf11dfe42a07 Mon Sep 17 00:00:00 2001 >From: =?UTF-8?q?Ulrich=20M=C3=BCller?= <ulm@kph.uni-mainz.de> >Date: Mon, 3 Jun 2019 17:02:02 +0200 >Subject: [PATCH] repoman: Update header check for Gentoo repo policy. >MIME-Version: 1.0 >Content-Type: text/plain; charset=UTF-8 >Content-Transfer-Encoding: 8bit > >By decision of the Gentoo Council in its 2019-01-13 meeting, ebuilds >in the Gentoo repository MUST use the simplified form of the copyright >attribution according to GLEP 76, i.e.: "Copyright YEARS Gentoo Authors". > >Update the header check accordingly, mostly by reverting to the >simpler single line check that was in place before commit c4096aff48. > >Signed-off-by: Ulrich Müller <ulm@kph.uni-mainz.de> >--- > repoman/cnf/linechecks/linechecks.yaml | 1 - > .../linechecks/gentoo_header/header.py | 45 +++++++------------ > 2 files changed, 15 insertions(+), 31 deletions(-) > >diff --git a/repoman/cnf/linechecks/linechecks.yaml b/repoman/cnf/linechecks/linechecks.yaml >index 32b1bf82f..c452af07d 100644 >--- a/repoman/cnf/linechecks/linechecks.yaml >+++ b/repoman/cnf/linechecks/linechecks.yaml >@@ -10,7 +10,6 @@ repoman_version: 2.3.3 > # scan module > errors: > COPYRIGHT_ERROR: 'Invalid Copyright on line: %d' >- COPYRIGHT_DATE_ERROR: 'No copyright for last modification date before line %d' > LICENSE_ERROR: 'Invalid Gentoo/GPL License on line: %d' > ID_HEADER_ERROR: 'Stale CVS header on line: %d' > NO_BLANK_LINE_ERROR: 'Non-blank line after header on line: %d' >diff --git a/repoman/lib/repoman/modules/linechecks/gentoo_header/header.py b/repoman/lib/repoman/modules/linechecks/gentoo_header/header.py >index c64674319..f94a8a50b 100644 >--- a/repoman/lib/repoman/modules/linechecks/gentoo_header/header.py >+++ b/repoman/lib/repoman/modules/linechecks/gentoo_header/header.py >@@ -17,46 +17,31 @@ class EbuildHeader(LineCheck): > > repoman_check_name = 'ebuild.badheader' > >- copyright_re = re.compile(r'^# Copyright ((1999|2\d\d\d)-)?(?P<year>2\d\d\d) \w') >+ gentoo_copyright = r'^# Copyright ((1999|2\d\d\d)-)?%s Gentoo Authors$' > gentoo_license = ( > '# Distributed under the terms' > ' of the GNU General Public License v2') > id_header_re = re.compile(r'.*\$(Id|Header)(:.*)?\$.*') >+ blank_line_re = re.compile(r'^$') > ignore_comment = False > > def new(self, pkg): > if pkg.mtime is None: >- self.modification_year = None >+ self.modification_year = r'2\d\d\d' > else: >- self.modification_year = time.gmtime(pkg.mtime)[0] >- self.last_copyright_line = -1 >- self.last_copyright_year = -1 >+ self.modification_year = str(time.gmtime(pkg.mtime)[0]) >+ self.gentoo_copyright_re = re.compile( >+ self.gentoo_copyright % self.modification_year) > > def check(self, num, line): >- if num > self.last_copyright_line + 2: >+ if num > 2: > return >- elif num == self.last_copyright_line + 1: >- # copyright can extend for a few initial lines >- copy_match = self.copyright_re.match(line) >- if copy_match is not None: >- self.last_copyright_line = num >- self.last_copyright_year = max(self.last_copyright_year, >- int(copy_match.group('year'))) >- # no copyright lines found? >- elif self.last_copyright_line == -1: >+ elif num == 0: >+ if not self.gentoo_copyright_re.match(line): > return self.errors['COPYRIGHT_ERROR'] >- else: >- # verify that the newest copyright line found >- # matches the year of last modification >- if (self.modification_year is not None >- and self.last_copyright_year != self.modification_year): >- return self.errors['COPYRIGHT_DATE_ERROR'] >- >- # copyright is immediately followed by license >- if line.rstrip('\n') != self.gentoo_license: >- return self.errors['LICENSE_ERROR'] >- elif num == self.last_copyright_line + 2: >- if self.id_header_re.match(line): >- return self.errors['ID_HEADER_ERROR'] >- elif line.rstrip('\n') != '': >- return self.errors['NO_BLANK_LINE_ERROR'] >+ elif num == 1 and line.rstrip('\n') != self.gentoo_license: >+ return self.errors['LICENSE_ERROR'] >+ elif num == 2 and self.id_header_re.match(line): >+ return self.errors['ID_HEADER_ERROR'] >+ elif num == 2 and not self.blank_line_re.match(line): >+ return self.errors['NO_BLANK_LINE_ERROR'] >-- >2.21.0 >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 666330
: 578516