public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] proj/portage:repoman commit in: pym/repoman/modules/vcs/cvs/, pym/repoman/, pym/repoman/modules/vcs/
@ 2016-03-07 21:53 Brian Dolbec
  0 siblings, 0 replies; only message in thread
From: Brian Dolbec @ 2016-03-07 21:53 UTC (permalink / raw
  To: gentoo-commits

commit:     0a1c62dcf051dae85cac185673abcec686a12052
Author:     Brian Dolbec <dolsen <AT> gentoo <DOT> org>
AuthorDate: Sun Feb  7 18:46:27 2016 +0000
Commit:     Brian Dolbec <dolsen <AT> gentoo <DOT> org>
CommitDate: Mon Mar  7 21:21:35 2016 +0000
URL:        https://gitweb.gentoo.org/proj/portage.git/commit/?id=0a1c62dc

repoman:  Move clear_attic() code to the modules

 pym/repoman/actions.py                 | 24 +-----------------------
 pym/repoman/modules/vcs/changes.py     |  4 ++++
 pym/repoman/modules/vcs/cvs/changes.py | 21 +++++++++++++++++++++
 3 files changed, 26 insertions(+), 23 deletions(-)

diff --git a/pym/repoman/actions.py b/pym/repoman/actions.py
index 20116db..e045295 100644
--- a/pym/repoman/actions.py
+++ b/pym/repoman/actions.py
@@ -152,7 +152,7 @@ class Actions(object):
 		# inside the $Header path. This code detects the problem and corrects it
 		# so that the Manifest will generate correctly. See bug #169500.
 		# Use binary mode in order to avoid potential character encoding issues.
-		self.clear_attic(myheaders)
+		self.vcs_settings.changes.clear_attic(myheaders)
 
 		if self.scanner.repolevel == 1:
 			utilities.repoman_sez(
@@ -571,28 +571,6 @@ class Actions(object):
 				pass
 
 
-
-
-	def clear_attic(self, myheaders):
-		cvs_header_re = re.compile(br'^#\s*\$Header.*\$$')
-		attic_str = b'/Attic/'
-		attic_replace = b'/'
-		for x in myheaders:
-			f = open(
-				_unicode_encode(x, encoding=_encodings['fs'], errors='strict'),
-				mode='rb')
-			mylines = f.readlines()
-			f.close()
-			modified = False
-			for i, line in enumerate(mylines):
-				if cvs_header_re.match(line) is not None and \
-					attic_str in line:
-					mylines[i] = line.replace(attic_str, attic_replace)
-					modified = True
-			if modified:
-				portage.util.write_atomic(x, b''.join(mylines), mode='wb')
-
-
 	def sign_manifest(self, myupdates, myremoved, mymanifests):
 		try:
 			for x in sorted(vcs_files_to_cps(

diff --git a/pym/repoman/modules/vcs/changes.py b/pym/repoman/modules/vcs/changes.py
index 77d7dc1..1745a65 100644
--- a/pym/repoman/modules/vcs/changes.py
+++ b/pym/repoman/modules/vcs/changes.py
@@ -74,3 +74,7 @@ class ChangesBase(object):
 		'''Create a thick manifest'''
 		pass
 
+	@staticmethod
+	def clear_attic(myheaders):
+		'''Old CVS leftover'''
+		pass

diff --git a/pym/repoman/modules/vcs/cvs/changes.py b/pym/repoman/modules/vcs/cvs/changes.py
index 6accd4a..061486f 100644
--- a/pym/repoman/modules/vcs/cvs/changes.py
+++ b/pym/repoman/modules/vcs/cvs/changes.py
@@ -41,6 +41,27 @@ class Changes(ChangesBase):
 			return self._unadded
 		self._unadded = portage.cvstree.findunadded(self._tree, recursive=1, basedir="./")
 		return self._unadded
+
+	@staticmethod
+	def clear_attic(myheaders):
+		cvs_header_re = re.compile(br'^#\s*\$Header.*\$$')
+		attic_str = b'/Attic/'
+		attic_replace = b'/'
+		for x in myheaders:
+			f = open(
+				_unicode_encode(x, encoding=_encodings['fs'], errors='strict'),
+				mode='rb')
+			mylines = f.readlines()
+			f.close()
+			modified = False
+			for i, line in enumerate(mylines):
+				if cvs_header_re.match(line) is not None and \
+					attic_str in line:
+					mylines[i] = line.replace(attic_str, attic_replace)
+					modified = True
+			if modified:
+				portage.util.write_atomic(x, b''.join(mylines), mode='wb')
+
 	def thick_manifest(self, myupdates, myheaders, no_expansion, expansion):
 		headerstring = "'\$(Header|Id).*\$'"
 


^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2016-03-07 21:53 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-03-07 21:53 [gentoo-commits] proj/portage:repoman commit in: pym/repoman/modules/vcs/cvs/, pym/repoman/, pym/repoman/modules/vcs/ Brian Dolbec

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox