public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] proj/portage:repoman commit in: pym/repoman/modules/scan/ebuild/, pym/repoman/
@ 2016-01-06  4:21 Brian Dolbec
  0 siblings, 0 replies; 5+ messages in thread
From: Brian Dolbec @ 2016-01-06  4:21 UTC (permalink / raw
  To: gentoo-commits

commit:     2c305a1e3fcfd9c0f46962af3a931a03ea2c5032
Author:     Brian Dolbec <dolsen <AT> gentoo <DOT> org>
AuthorDate: Sun Jan  3 17:33:26 2016 +0000
Commit:     Brian Dolbec <dolsen <AT> gentoo <DOT> org>
CommitDate: Wed Jan  6 04:08:21 2016 +0000
URL:        https://gitweb.gentoo.org/proj/portage.git/commit/?id=2c305a1e

repoman: Move ebuild_archs to the Ebuild class

 pym/repoman/modules/scan/ebuild/ebuild.py | 2 ++
 pym/repoman/scanner.py                    | 9 ++-------
 2 files changed, 4 insertions(+), 7 deletions(-)

diff --git a/pym/repoman/modules/scan/ebuild/ebuild.py b/pym/repoman/modules/scan/ebuild/ebuild.py
index b0e4996..d8f3118 100644
--- a/pym/repoman/modules/scan/ebuild/ebuild.py
+++ b/pym/repoman/modules/scan/ebuild/ebuild.py
@@ -26,6 +26,7 @@ class Ebuild(object):
 		self.eapi = None
 		self.inherited = None
 		self.keywords = None
+		self.archs = None
 
 	def _set_paths(self, **kwargs):
 		repolevel = kwargs.get('repolevel')
@@ -69,6 +70,7 @@ class Ebuild(object):
 		self.eapi = self.metadata["EAPI"]
 		self.inherited = self.pkg.inherited
 		self.keywords = self.metadata["KEYWORDS"].split()
+		self.archs = set(kw.lstrip("~") for kw in self.keywords if not kw.startswith("-"))
 		return {'continue': False}
 
 	def bad_split_check(self, **kwargs):

diff --git a/pym/repoman/scanner.py b/pym/repoman/scanner.py
index 20c6460..1f56c5c 100644
--- a/pym/repoman/scanner.py
+++ b/pym/repoman/scanner.py
@@ -332,13 +332,8 @@ class Scanner(object):
 
 			self.descriptioncheck.check(dynamic_data['pkg'], dynamic_data['ebuild'])
 
-
-
-			ebuild_archs = set(
-				kw.lstrip("~") for kw in dynamic_data['ebuild'].keywords if not kw.startswith("-"))
-
 			self.modules['KeywordChecks'].check(
-				dynamic_data['pkg'], xpkg, dynamic_data['ebuild'], y_ebuild, dynamic_data['ebuild'].keywords, ebuild_archs, self.changed,
+				dynamic_data['pkg'], xpkg, dynamic_data['ebuild'], y_ebuild, dynamic_data['ebuild'].keywords, dynamic_data['ebuild'].archs, self.changed,
 				dynamic_data['live_ebuild'], self.repo_metadata['kwlist'], self.profiles)
 
 			if self.options.ignore_arches:
@@ -618,7 +613,7 @@ class Scanner(object):
 					dynamic_data['pkg'], stable=dep_settings._parent_stable)
 
 				if not baddepsyntax:
-					ismasked = not ebuild_archs or \
+					ismasked = not dynamic_data['ebuild'].archs or \
 						dynamic_data['pkg'].cpv not in self.portdb.xmatch("match-visible",
 						Atom("%s::%s" % (dynamic_data['pkg'].cp, self.repo_settings.repo_config.name)))
 					if ismasked:


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [gentoo-commits] proj/portage:repoman commit in: pym/repoman/modules/scan/ebuild/, pym/repoman/
@ 2016-03-12 18:10 Brian Dolbec
  0 siblings, 0 replies; 5+ messages in thread
From: Brian Dolbec @ 2016-03-12 18:10 UTC (permalink / raw
  To: gentoo-commits

commit:     77c4da789a13f32b79e135085be4f0c6ca03f2bb
Author:     Brian Dolbec <dolsen <AT> gentoo <DOT> org>
AuthorDate: Fri Mar 11 00:11:13 2016 +0000
Commit:     Brian Dolbec <dolsen <AT> gentoo <DOT> org>
CommitDate: Sat Mar 12 17:57:42 2016 +0000
URL:        https://gitweb.gentoo.org/proj/portage.git/commit/?id=77c4da78

repoman: Move changelog_modified to dynamic_data for use in the scan/ebuild module

 pym/repoman/modules/scan/ebuild/ebuild.py | 3 ++-
 pym/repoman/scanner.py                    | 2 +-
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/pym/repoman/modules/scan/ebuild/ebuild.py b/pym/repoman/modules/scan/ebuild/ebuild.py
index 0ae416b..e9a2cdd 100644
--- a/pym/repoman/modules/scan/ebuild/ebuild.py
+++ b/pym/repoman/modules/scan/ebuild/ebuild.py
@@ -74,9 +74,10 @@ class Ebuild(ScanBase):
 		self.xpkg = kwargs.get('xpkg')
 		self.y_ebuild = kwargs.get('y_ebuild')
 		self.changed = kwargs.get('changed')
+		changelog_modified = kwargs.get('changelog_modified')
 		self._set_paths(**kwargs)
 
-		if self.checks['changelog'] and not self.changelog_modified \
+		if self.checks['changelog'] and not changelog_modified \
 			and self.ebuild_path in self.changed.new_ebuilds:
 			self.qatracker.add_error('changelog.ebuildadded', self.relative_path)
 

diff --git a/pym/repoman/scanner.py b/pym/repoman/scanner.py
index 3d23725..86e389a 100644
--- a/pym/repoman/scanner.py
+++ b/pym/repoman/scanner.py
@@ -263,7 +263,7 @@ class Scanner(object):
 				self.qatracker.add_error("changelog.missing", xpkg + "/ChangeLog")
 
 			changelog_path = os.path.join(checkdir_relative, "ChangeLog")
-			self.changelog_modified = changelog_path in self.changed.changelogs
+			dynamic_data["changelog_modified"] = changelog_path in self.changed.changelogs
 
 			self._scan_ebuilds(ebuildlist, dynamic_data)
 		return dynamic_data['can_force']


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [gentoo-commits] proj/portage:repoman commit in: pym/repoman/modules/scan/ebuild/, pym/repoman/
@ 2016-03-16 17:12 Brian Dolbec
  0 siblings, 0 replies; 5+ messages in thread
From: Brian Dolbec @ 2016-03-16 17:12 UTC (permalink / raw
  To: gentoo-commits

commit:     c8417ea452ed4e35b832cb21164bcd27b97595a3
Author:     Brian Dolbec <dolsen <AT> gentoo <DOT> org>
AuthorDate: Wed Mar 16 02:00:20 2016 +0000
Commit:     Brian Dolbec <dolsen <AT> gentoo <DOT> org>
CommitDate: Wed Mar 16 02:00:20 2016 +0000
URL:        https://gitweb.gentoo.org/proj/portage.git/commit/?id=c8417ea4

repoman: Migrate 'can_force' to the new Fuse class

 pym/repoman/main.py                         | 5 +++--
 pym/repoman/modules/scan/ebuild/isebuild.py | 5 +++--
 pym/repoman/scanner.py                      | 3 +--
 3 files changed, 7 insertions(+), 6 deletions(-)

diff --git a/pym/repoman/main.py b/pym/repoman/main.py
index 337e638..2ccda99 100755
--- a/pym/repoman/main.py
+++ b/pym/repoman/main.py
@@ -25,6 +25,7 @@ from portage.util import formatter
 
 from repoman.actions import Actions
 from repoman.argparser import parse_args
+from repoman.fuse import Fuse
 from repoman.qa_data import (
 	format_qa_output, format_qa_output_column, qahelp,
 	qawarnings, qacats)
@@ -75,7 +76,7 @@ def repoman_main(argv):
 	# Set this to False when an extraordinary issue (generally
 	# something other than a QA issue) makes it impossible to
 	# commit (like if Manifest generation fails).
-	can_force = True
+	can_force = Fuse()
 
 	portdir, portdir_overlay, mydir = utilities.FindPortdir(repoman_settings)
 	if portdir is None:
@@ -110,7 +111,7 @@ def repoman_main(argv):
 	# Perform the main checks
 	scanner = Scanner(repo_settings, myreporoot, config_root, options,
 					vcs_settings, mydir, env)
-	can_force = scanner.scan_pkgs(can_force)
+	scanner.scan_pkgs(can_force)
 
 	commitmessage = None
 

diff --git a/pym/repoman/modules/scan/ebuild/isebuild.py b/pym/repoman/modules/scan/ebuild/isebuild.py
index 474a874..514d23e 100644
--- a/pym/repoman/modules/scan/ebuild/isebuild.py
+++ b/pym/repoman/modules/scan/ebuild/isebuild.py
@@ -42,6 +42,7 @@ class IsEbuild(ScanBase):
 		checkdir = kwargs.get('checkdir')
 		xpkg = kwargs.get('xpkg')
 		fuse = kwargs.get('validity_fuse')
+		can_force = kwargs.get('can_force')
 		self.continue_ = False
 		ebuildlist = []
 		pkgs = {}
@@ -85,9 +86,9 @@ class IsEbuild(ScanBase):
 			# metadata leads to false positives for several checks, and false
 			# positives confuse users.
 			self.continue_ = True
+			can_force.pop()
 
-		return {'continue': self.continue_, 'pkgs': pkgs,
-			'can_force': not self.continue_}
+		return {'continue': self.continue_, 'pkgs': pkgs}
 
 	@property
 	def runInPkgs(self):

diff --git a/pym/repoman/scanner.py b/pym/repoman/scanner.py
index 9c6f5ac..a9f56e9 100644
--- a/pym/repoman/scanner.py
+++ b/pym/repoman/scanner.py
@@ -205,7 +205,6 @@ class Scanner(object):
 			self.modules[mod_class.__name__] = mod_class(**self.kwargs)
 
 	def scan_pkgs(self, can_force):
-		dynamic_data = {'can_force': can_force}
 		for xpkg in self.effective_scanlist:
 			xpkg_continue = False
 			# ebuilds and digests added to cvs respectively.
@@ -268,7 +267,7 @@ class Scanner(object):
 			dynamic_data["changelog_modified"] = changelog_path in self.changed.changelogs
 
 			self._scan_ebuilds(ebuildlist, dynamic_data)
-		return dynamic_data['can_force']
+		return
 
 
 	def _scan_ebuilds(self, ebuildlist, dynamic_data):


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [gentoo-commits] proj/portage:repoman commit in: pym/repoman/modules/scan/ebuild/, pym/repoman/
@ 2016-04-25 15:32 Brian Dolbec
  0 siblings, 0 replies; 5+ messages in thread
From: Brian Dolbec @ 2016-04-25 15:32 UTC (permalink / raw
  To: gentoo-commits

commit:     baa93beabed3da1186683c0a4ea9e6fed4d3fbda
Author:     Brian Dolbec <dolsen <AT> gentoo <DOT> org>
AuthorDate: Fri Mar 11 00:11:13 2016 +0000
Commit:     Brian Dolbec <dolsen <AT> gentoo <DOT> org>
CommitDate: Mon Apr 25 15:28:53 2016 +0000
URL:        https://gitweb.gentoo.org/proj/portage.git/commit/?id=baa93bea

repoman: Move changelog_modified to dynamic_data for use in the scan/ebuild module

 pym/repoman/modules/scan/ebuild/ebuild.py | 3 ++-
 pym/repoman/scanner.py                    | 2 +-
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/pym/repoman/modules/scan/ebuild/ebuild.py b/pym/repoman/modules/scan/ebuild/ebuild.py
index 0ae416b..e9a2cdd 100644
--- a/pym/repoman/modules/scan/ebuild/ebuild.py
+++ b/pym/repoman/modules/scan/ebuild/ebuild.py
@@ -74,9 +74,10 @@ class Ebuild(ScanBase):
 		self.xpkg = kwargs.get('xpkg')
 		self.y_ebuild = kwargs.get('y_ebuild')
 		self.changed = kwargs.get('changed')
+		changelog_modified = kwargs.get('changelog_modified')
 		self._set_paths(**kwargs)
 
-		if self.checks['changelog'] and not self.changelog_modified \
+		if self.checks['changelog'] and not changelog_modified \
 			and self.ebuild_path in self.changed.new_ebuilds:
 			self.qatracker.add_error('changelog.ebuildadded', self.relative_path)
 

diff --git a/pym/repoman/scanner.py b/pym/repoman/scanner.py
index 3d23725..86e389a 100644
--- a/pym/repoman/scanner.py
+++ b/pym/repoman/scanner.py
@@ -263,7 +263,7 @@ class Scanner(object):
 				self.qatracker.add_error("changelog.missing", xpkg + "/ChangeLog")
 
 			changelog_path = os.path.join(checkdir_relative, "ChangeLog")
-			self.changelog_modified = changelog_path in self.changed.changelogs
+			dynamic_data["changelog_modified"] = changelog_path in self.changed.changelogs
 
 			self._scan_ebuilds(ebuildlist, dynamic_data)
 		return dynamic_data['can_force']


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [gentoo-commits] proj/portage:repoman commit in: pym/repoman/modules/scan/ebuild/, pym/repoman/
@ 2016-04-26 14:47 Brian Dolbec
  0 siblings, 0 replies; 5+ messages in thread
From: Brian Dolbec @ 2016-04-26 14:47 UTC (permalink / raw
  To: gentoo-commits

commit:     695492024a9ca40fd14148a980a960a8551dab29
Author:     Brian Dolbec <dolsen <AT> gentoo <DOT> org>
AuthorDate: Tue Apr 26 14:08:41 2016 +0000
Commit:     Brian Dolbec <dolsen <AT> gentoo <DOT> org>
CommitDate: Tue Apr 26 14:08:41 2016 +0000
URL:        https://gitweb.gentoo.org/proj/portage.git/commit/?id=69549202

Repoman: Merge IsEbuild class into ebuild

This reduces the need to import the pkgs data, it is now an internal class instance variable.
'pkgs' is still needed, but only to assign it the new pkgs dictionary which the scanner
requires for the ebuild loop.

 pym/repoman/modules/scan/ebuild/__init__.py | 27 ++------
 pym/repoman/modules/scan/ebuild/ebuild.py   | 84 ++++++++++++++++++++++--
 pym/repoman/modules/scan/ebuild/isebuild.py | 99 -----------------------------
 pym/repoman/scanner.py                      |  4 +-
 4 files changed, 88 insertions(+), 126 deletions(-)

diff --git a/pym/repoman/modules/scan/ebuild/__init__.py b/pym/repoman/modules/scan/ebuild/__init__.py
index b243314..8666e78 100644
--- a/pym/repoman/modules/scan/ebuild/__init__.py
+++ b/pym/repoman/modules/scan/ebuild/__init__.py
@@ -10,25 +10,6 @@ module_spec = {
 	'name': 'ebuild',
 	'description': doc,
 	'provides':{
-		'isebuild-module': {
-			'name': "isebuild",
-			'sourcefile': "isebuild",
-			'class': "IsEbuild",
-			'description': doc,
-			'functions': ['check'],
-			'func_desc': {
-			},
-			'mod_kwargs': ['portdb', 'qatracker', 'repo_settings'
-			],
-			'func_kwargs': {
-				'can_force': (None, None),
-				'checkdir': (None, None),
-				'checkdirlist': (None, None),
-				'pkgs': ('Future', 'dict'),
-				'validity_future': ('Future', True),
-				'xpkg': (None, None),
-			},
-		},
 		'ebuild-module': {
 			'name': "ebuild",
 			'sourcefile': "ebuild",
@@ -37,16 +18,20 @@ module_spec = {
 			'functions': ['check'],
 			'func_desc': {
 			},
-			'mod_kwargs': ['qatracker', 'repo_settings', 'vcs_settings', 'checks',
+			'mod_kwargs': ['qatracker', 'repo_settings', 'vcs_settings',
+				'checks', 'portdb'
 			],
 			'func_kwargs': {
+				'can_force': (None, None),
 				'catdir': (None, None),
 				'changed': (None, None),
 				'changelog_modified': (None, None),
+				'checkdir': (None, None),
+				'checkdirlist': (None, None),
 				'ebuild': ('Future', 'UNSET'),
 				'pkg': ('Future', 'UNSET'),
 				'pkgdir': (None, None),
-				'pkgs': (None, None),
+				'pkgs': ('Future', 'dict'),
 				'repolevel': (None, None),
 				'validity_future': (None, None),
 				'xpkg': (None, None),

diff --git a/pym/repoman/modules/scan/ebuild/ebuild.py b/pym/repoman/modules/scan/ebuild/ebuild.py
index 92b1ea4..c247a7f 100644
--- a/pym/repoman/modules/scan/ebuild/ebuild.py
+++ b/pym/repoman/modules/scan/ebuild/ebuild.py
@@ -3,8 +3,13 @@
 from __future__ import print_function, unicode_literals
 
 import re
+import stat
+
+from _emerge.Package import Package
+from _emerge.RootConfig import RootConfig
 
 from repoman.modules.scan.scanbase import ScanBase
+from repoman.qa_data import no_exec, allvars
 # import our initialized portage instance
 from repoman._portage import portage
 from portage import os
@@ -19,16 +24,19 @@ class Ebuild(ScanBase):
 		'''Class init
 
 		@param qatracker: QATracker instance
+		@param portdb: portdb instance
 		@param repo_settings: repository settings instance
 		@param vcs_settings: VCSSettings instance
-		@param changed: changes dictionary
 		@param checks: checks dictionary
 		'''
 		super(Ebuild, self).__init__(**kwargs)
 		self.qatracker = kwargs.get('qatracker')
+		self.portdb = kwargs.get('portdb')
 		self.repo_settings = kwargs.get('repo_settings')
 		self.vcs_settings = kwargs.get('vcs_settings')
 		self.checks = kwargs.get('checks')
+		self.root_config = RootConfig(self.repo_settings.repoman_settings,
+			self.repo_settings.trees[self.repo_settings.root], None)
 		self.changed = None
 		self.xpkg = None
 		self.y_ebuild = None
@@ -37,6 +45,7 @@ class Ebuild(ScanBase):
 		self.eapi = None
 		self.inherited = None
 		self.keywords = None
+		self.pkgs = {}
 
 	def _set_paths(self, **kwargs):
 		repolevel = kwargs.get('repolevel')
@@ -93,11 +102,9 @@ class Ebuild(ScanBase):
 	def set_pkg_data(self, **kwargs):
 		'''Sets some classwide data needed for some of the checks
 
-		@param pkgs: the dynamic list of ebuilds
 		@returns: dictionary
 		'''
-		pkgs = kwargs.get('pkgs').get()
-		self.pkg = pkgs[self.y_ebuild]
+		self.pkg = self.pkgs[self.y_ebuild]
 		self.metadata = self.pkg._metadata
 		self.eapi = self.metadata["EAPI"]
 		self.inherited = self.pkg.inherited
@@ -148,6 +155,75 @@ class Ebuild(ScanBase):
 		dyn_pkg.set(self.pkg)
 		return False
 
+	def check_isebuild(self, **kwargs):
+		'''Test the file for qualifications that is is an ebuild
+
+		@param checkdirlist: list of files in the current package directory
+		@param checkdir: current package directory path
+		@param xpkg: current package directory being checked
+		@param validity_future: Future instance
+		@returns: dictionary, including {pkgs, can_force}
+		'''
+		checkdirlist = kwargs.get('checkdirlist').get()
+		checkdir = kwargs.get('checkdir')
+		xpkg = kwargs.get('xpkg')
+		fuse = kwargs.get('validity_future')
+		can_force = kwargs.get('can_force')
+		self.continue_ = False
+		ebuildlist = []
+		pkgs = {}
+		for y in checkdirlist:
+			file_is_ebuild = y.endswith(".ebuild")
+			file_should_be_non_executable = y in no_exec or file_is_ebuild
+
+			if file_should_be_non_executable:
+				file_is_executable = stat.S_IMODE(
+					os.stat(os.path.join(checkdir, y)).st_mode) & 0o111
+
+				if file_is_executable:
+					self.qatracker.add_error("file.executable", os.path.join(checkdir, y))
+			if file_is_ebuild:
+				pf = y[:-7]
+				ebuildlist.append(pf)
+				catdir = xpkg.split("/")[0]
+				cpv = "%s/%s" % (catdir, pf)
+				try:
+					myaux = dict(zip(allvars, self.portdb.aux_get(cpv, allvars)))
+				except KeyError:
+					fuse.set(False, ignore_InvalidState=True)
+					self.qatracker.add_error("ebuild.syntax", os.path.join(xpkg, y))
+					continue
+				except IOError:
+					fuse.set(False, ignore_InvalidState=True)
+					self.qatracker.add_error("ebuild.output", os.path.join(xpkg, y))
+					continue
+				if not portage.eapi_is_supported(myaux["EAPI"]):
+					fuse.set(False, ignore_InvalidState=True)
+					self.qatracker.add_error("EAPI.unsupported", os.path.join(xpkg, y))
+					continue
+				pkgs[pf] = Package(
+					cpv=cpv, metadata=myaux, root_config=self.root_config,
+					type_name="ebuild")
+
+		if len(pkgs) != len(ebuildlist):
+			# If we can't access all the metadata then it's totally unsafe to
+			# commit since there's no way to generate a correct Manifest.
+			# Do not try to do any more QA checks on this package since missing
+			# metadata leads to false positives for several checks, and false
+			# positives confuse users.
+			self.continue_ = True
+			can_force.set(False, ignore_InvalidState=True)
+		self.pkgs = pkgs
+		# set our updated data
+		dyn_pkgs = kwargs.get('pkgs')
+		dyn_pkgs.set(pkgs)
+		return self.continue_
+
+	@property
+	def runInPkgs(self):
+		'''Package level scans'''
+		return (True, [self.check_isebuild])
+
 	@property
 	def runInEbuilds(self):
 		'''Ebuild level scans'''

diff --git a/pym/repoman/modules/scan/ebuild/isebuild.py b/pym/repoman/modules/scan/ebuild/isebuild.py
deleted file mode 100644
index 7277ad0..0000000
--- a/pym/repoman/modules/scan/ebuild/isebuild.py
+++ /dev/null
@@ -1,99 +0,0 @@
-# -*- coding:utf-8 -*-
-
-import stat
-
-from _emerge.Package import Package
-from _emerge.RootConfig import RootConfig
-
-# import our initialized portage instance
-from repoman._portage import portage
-
-from portage import os
-
-from repoman.qa_data import no_exec, allvars
-from repoman.modules.scan.scanbase import ScanBase
-
-
-class IsEbuild(ScanBase):
-	'''Performs basic tests to confirm it is an ebuild'''
-
-	def __init__(self, **kwargs):
-		'''
-		@param portdb: portdb instance
-		@param qatracker: QATracker instance
-		@param repo_settings: repository settings instance
-		'''
-		super(IsEbuild, self).__init__(**kwargs)
-		self.portdb = kwargs.get('portdb')
-		self.qatracker = kwargs.get('qatracker')
-		repo_settings = kwargs.get('repo_settings')
-		self.root_config = RootConfig(repo_settings.repoman_settings,
-			repo_settings.trees[repo_settings.root], None)
-
-	def check(self, **kwargs):
-		'''Test the file for qualifications that is is an ebuild
-
-		@param checkdirlist: list of files in the current package directory
-		@param checkdir: current package directory path
-		@param xpkg: current package directory being checked
-		@param validity_future: Future instance
-		@returns: dictionary, including {pkgs, can_force}
-		'''
-		checkdirlist = kwargs.get('checkdirlist').get()
-		checkdir = kwargs.get('checkdir')
-		xpkg = kwargs.get('xpkg')
-		fuse = kwargs.get('validity_future')
-		can_force = kwargs.get('can_force')
-		self.continue_ = False
-		ebuildlist = []
-		pkgs = {}
-		for y in checkdirlist:
-			file_is_ebuild = y.endswith(".ebuild")
-			file_should_be_non_executable = y in no_exec or file_is_ebuild
-
-			if file_should_be_non_executable:
-				file_is_executable = stat.S_IMODE(
-					os.stat(os.path.join(checkdir, y)).st_mode) & 0o111
-
-				if file_is_executable:
-					self.qatracker.add_error("file.executable", os.path.join(checkdir, y))
-			if file_is_ebuild:
-				pf = y[:-7]
-				ebuildlist.append(pf)
-				catdir = xpkg.split("/")[0]
-				cpv = "%s/%s" % (catdir, pf)
-				try:
-					myaux = dict(zip(allvars, self.portdb.aux_get(cpv, allvars)))
-				except KeyError:
-					fuse.set(False, ignore_InvalidState=True)
-					self.qatracker.add_error("ebuild.syntax", os.path.join(xpkg, y))
-					continue
-				except IOError:
-					fuse.set(False, ignore_InvalidState=True)
-					self.qatracker.add_error("ebuild.output", os.path.join(xpkg, y))
-					continue
-				if not portage.eapi_is_supported(myaux["EAPI"]):
-					fuse.set(False, ignore_InvalidState=True)
-					self.qatracker.add_error("EAPI.unsupported", os.path.join(xpkg, y))
-					continue
-				pkgs[pf] = Package(
-					cpv=cpv, metadata=myaux, root_config=self.root_config,
-					type_name="ebuild")
-
-		if len(pkgs) != len(ebuildlist):
-			# If we can't access all the metadata then it's totally unsafe to
-			# commit since there's no way to generate a correct Manifest.
-			# Do not try to do any more QA checks on this package since missing
-			# metadata leads to false positives for several checks, and false
-			# positives confuse users.
-			self.continue_ = True
-			can_force.set(False, ignore_InvalidState=True)
-		# set our updated data
-		dyn_pkgs = kwargs.get('pkgs')
-		dyn_pkgs.set(pkgs)
-		return self.continue_
-
-	@property
-	def runInPkgs(self):
-		'''Package level scans'''
-		return (True, [self.check])

diff --git a/pym/repoman/scanner.py b/pym/repoman/scanner.py
index 1fd5b77..23d666d 100644
--- a/pym/repoman/scanner.py
+++ b/pym/repoman/scanner.py
@@ -299,6 +299,7 @@ class Scanner(object):
 				self.vcs_settings.status.check(checkdir, checkdir_relative, xpkg)
 
 			dynamic_data = {
+				'changelog_modified': False,
 				'checkdirlist': ExtendedFuture(checkdirlist),
 				'checkdir': checkdir,
 				'xpkg': xpkg,
@@ -308,7 +309,6 @@ class Scanner(object):
 				'repolevel': self.repolevel,
 				'catdir': catdir,
 				'pkgdir': pkgdir,
-				'pkgs': ExtendedFuture({}),
 				'validity_future': ExtendedFuture(True),
 				'y_ebuild': None,
 				# this needs to be reset at the pkg level only,
@@ -324,7 +324,7 @@ class Scanner(object):
 				'validity_future',
 				]
 			# need to set it up for ==> self.modules or some other ordered list
-			for mod in [('manifests', 'Manifests'), ('isebuild', 'IsEbuild'),
+			for mod in [('manifests', 'Manifests'), ('ebuild', 'Ebuild'),
 						('keywords', 'KeywordChecks'), ('files', 'FileChecks'),
 						('fetches', 'FetchChecks'),
 						('pkgmetadata', 'PkgMetadata'),


^ permalink raw reply related	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2016-04-26 14:48 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-03-12 18:10 [gentoo-commits] proj/portage:repoman commit in: pym/repoman/modules/scan/ebuild/, pym/repoman/ Brian Dolbec
  -- strict thread matches above, loose matches on Subject: below --
2016-04-26 14:47 Brian Dolbec
2016-04-25 15:32 Brian Dolbec
2016-03-16 17:12 Brian Dolbec
2016-01-06  4:21 Brian Dolbec

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