Michał Górny avatar Michał Górny committed 5e98f5d

Use gentoopm atoms.

Comments (0)

Files changed (1)

smartliverebuild/core.py

 
 					try:
 						inherits = pkg.metadata['INHERITED'].split()
-						slot = pkg.metadata['SLOT']
-						slottedcpv = pkg.id
-						if slot: # XXX: atom manip.
-							slottedcpv = slottedcpv.replace('::', ':%s::' % slot)
 
 						for vcs in inherits:
 							vcscl = getvcs(vcs, allowed, remote_only = opts.remote_only)
 							if vcscl is not None:
-								vcs = vcscl(slottedcpv, pkg.environ, opts)
+								vcs = vcscl(pkg.atom, pkg.environ, opts)
 
 								uri = str(vcs)
 								if uri not in rebuilds:
 			out.s2(' '.join(cmd))
 			subprocess.Popen(cmd, stdout=sys.stderr).wait()
 
-		def mypkgcut(slottedcpv, n):
-			""" Return n first components of split-joined slottedcpv. """
-			splitcpv = slottedcpv.split(':', 1)
-			splitcpv[0] = '-'.join(pkgsplit(splitcpv[0])[0:n])
-			return ':'.join(splitcpv)
-
-		packages = [mypkgcut(x, 1) for x in packages]
+		packages = [x.slotted for x in packages]
 
 		# Check portdb for matches. Drop unmatched packages.
 		for p in list(packages):
-			if pm.Atom(str(p)) not in pm.stack:
+			if p not in pm.stack:
 				out.err('No packages matching %s in portdb, skipping.' % p)
 				packages.remove(p)
 
 		if childpid: # make sure that we leave no orphans
 			os.kill(childpid, signal.SIGTERM)
 
-	return packages
+	return [str(x) for x in packages]
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.