diff options
author | Zac Medico <zmedico@gentoo.org> | 2010-06-15 10:53:36 -0700 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2010-06-15 10:53:36 -0700 |
commit | 04cdd7c9ecb92caacada00d78d80a9b159d7390c (patch) | |
tree | 870b1f5459d88ab8eb5f50ccf21090e86bf4418c | |
parent | 1a716a5f949b84cd8a84871ad7caa9d985fe91fc (diff) | |
download | portage-04cdd7c9ecb92caacada00d78d80a9b159d7390c.tar.gz portage-04cdd7c9ecb92caacada00d78d80a9b159d7390c.tar.bz2 portage-04cdd7c9ecb92caacada00d78d80a9b159d7390c.zip |
Bug #324075 - Avoid erroneous 'Invalid Gentoo Copyright' warnings when
the vcs (git) does not support mtime preservation. Also, fix the same
check to work for ebuilds wiht copyrigh beginning in 2011 and later.
-rwxr-xr-x | bin/repoman | 5 | ||||
-rw-r--r-- | pym/repoman/checks.py | 7 |
2 files changed, 10 insertions, 2 deletions
diff --git a/bin/repoman b/bin/repoman index 14d442dc7..6124f0408 100755 --- a/bin/repoman +++ b/bin/repoman @@ -494,6 +494,9 @@ elif os.path.isdir(os.path.join(portdir_overlay, ".hg")): # This is needed because we try to avoid merge collisions. check_changelog = vcs in ('CVS', 'SVN') +# Disable copyright/mtime check if vcs does not preserve mtime (bug #324075). +check_copyright_mtime = vcs not in ('git',) + vcs_local_opts = repoman_settings.get("REPOMAN_VCS_LOCAL_OPTS", "").split() vcs_global_opts = repoman_settings.get("REPOMAN_VCS_GLOBAL_OPTS") if vcs_global_opts is None: @@ -1769,6 +1772,8 @@ for x in scanlist: # Syntax Checks relative_path = os.path.join(x, y + ".ebuild") full_path = os.path.join(repodir, relative_path) + if not check_copyright_mtime: + pkg.mtime = None try: # All ebuilds should have utf_8 encoding. f = codecs.open(_unicode_encode(full_path, diff --git a/pym/repoman/checks.py b/pym/repoman/checks.py index 23f1267d9..4d12b07fd 100644 --- a/pym/repoman/checks.py +++ b/pym/repoman/checks.py @@ -67,14 +67,17 @@ class EbuildHeader(LineCheck): repoman_check_name = 'ebuild.badheader' - gentoo_copyright = r'^# Copyright ((1999|200\d)-)?%s Gentoo Foundation$' + gentoo_copyright = r'^# Copyright ((1999|2\d\d\d)-)?%s Gentoo Foundation$' # Why a regex here, use a string match # gentoo_license = re.compile(r'^# Distributed under the terms of the GNU General Public License v2$') gentoo_license = r'# Distributed under the terms of the GNU General Public License v2' cvs_header = re.compile(r'^#\s*\$Header.*\$$') def new(self, pkg): - self.modification_year = str(time.gmtime(pkg.mtime)[0]) + if pkg.mtime is None: + self.modification_year = r'2\d\d\d' + else: + self.modification_year = str(time.gmtime(pkg.mtime)[0]) self.gentoo_copyright_re = re.compile( self.gentoo_copyright % self.modification_year) |