* [gentoo-commits] proj/autodep:master commit in: portage_with_autodep/pym/_emerge/
@ 2011-08-21 18:50 Александр Берсенев
0 siblings, 0 replies; 5+ messages in thread
From: Александр Берсенев @ 2011-08-21 18:50 UTC (permalink / raw
To: gentoo-commits
commit: 71e25244b88929fbaa8f71f839f7b218e206f0e2
Author: Alexander Bersenev <bay <AT> hackerdom <DOT> ru>
AuthorDate: Sun Aug 21 21:57:22 2011 +0000
Commit: Александр Берсенев <bay <AT> hackerdom <DOT> ru>
CommitDate: Sun Aug 21 21:57:22 2011 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/autodep.git;a=commit;h=71e25244
python 2.6 compatibility
---
portage_with_autodep/pym/_emerge/EventsAnalyser.py | 6 +++---
1 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/portage_with_autodep/pym/_emerge/EventsAnalyser.py b/portage_with_autodep/pym/_emerge/EventsAnalyser.py
index 65ece7b..eb2c943 100644
--- a/portage_with_autodep/pym/_emerge/EventsAnalyser.py
+++ b/portage_with_autodep/pym/_emerge/EventsAnalyser.py
@@ -177,7 +177,7 @@ class GentoolkitUtils:
internals.
"""
- def getpackagesbyfiles(files):
+ def getpackagesbyfiles(self,files):
"""
:param files: list of filenames
:returns: **dictionary** file->package, if file doesn't belong to any
@@ -216,7 +216,7 @@ class GentoolkitUtils:
return ret
- def getfilesbypackages(packagenames):
+ def getfilesbypackages(self,packagenames):
"""
:param packagename: name of package
@@ -238,7 +238,7 @@ class GentoolkitUtils:
return ret
- def get_all_packages_files():
+ def get_all_packages_files(self):
"""
Memory-hungry operation
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [gentoo-commits] proj/autodep:master commit in: portage_with_autodep/pym/_emerge/
@ 2011-08-21 18:50 Александр Берсенев
0 siblings, 0 replies; 5+ messages in thread
From: Александр Берсенев @ 2011-08-21 18:50 UTC (permalink / raw
To: gentoo-commits
commit: ceda17612f4fa2037c80eddcaa6696cb30f7ad01
Author: Alexander Bersenev <bay <AT> hackerdom <DOT> ru>
AuthorDate: Sun Aug 21 22:03:33 2011 +0000
Commit: Александр Берсенев <bay <AT> hackerdom <DOT> ru>
CommitDate: Sun Aug 21 22:03:33 2011 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/autodep.git;a=commit;h=ceda1761
python 2.6 compatibility
---
portage_with_autodep/pym/_emerge/EventsAnalyser.py | 8 ++++----
1 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/portage_with_autodep/pym/_emerge/EventsAnalyser.py b/portage_with_autodep/pym/_emerge/EventsAnalyser.py
index eb2c943..a0562aa 100644
--- a/portage_with_autodep/pym/_emerge/EventsAnalyser.py
+++ b/portage_with_autodep/pym/_emerge/EventsAnalyser.py
@@ -267,21 +267,21 @@ class FilterProcGenerator:
system_packages=portageutils.get_system_packages_list()
- allfiles=GentoolkitUtils.get_all_packages_files()
+ allfiles=GentoolkitUtils().get_all_packages_files()
portage.util.writemsg("All files list recieved, waiting for " \
"a list of allowed files\n")
allowedpkgs=system_packages+list(deps_portage)+list(deps_all)
- allowedfiles=GentoolkitUtils.getfilesbypackages(allowedpkgs)
+ allowedfiles=GentoolkitUtils().getfilesbypackages(allowedpkgs)
#for pkg in allowedpkgs:
# allowedfiles+=GentoolkitUtils.getfilesbypackage(pkg)
#import pdb; pdb.set_trace()
# manually add all python interpreters to this list
- allowedfiles+=GentoolkitUtils.getfilesbypackages(['python'])
+ allowedfiles+=GentoolkitUtils().getfilesbypackages(['python'])
allowedfiles=set(allowedfiles)
deniedfiles=allfiles-allowedfiles
@@ -318,7 +318,7 @@ class EventsAnalyser:
filenames=filenames.union(fail_events)
filenames=list(filenames)
- file_to_package=GentoolkitUtils.getpackagesbyfiles(filenames)
+ file_to_package=GentoolkitUtils().getpackagesbyfiles(filenames)
# This part is completly unreadable.
# It converting one complex struct(returned by getfsevents) to another complex
# struct which good for generating output.
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [gentoo-commits] proj/autodep:master commit in: portage_with_autodep/pym/_emerge/
@ 2011-09-30 15:05 Александр Берсенев
0 siblings, 0 replies; 5+ messages in thread
From: Александр Берсенев @ 2011-09-30 15:05 UTC (permalink / raw
To: gentoo-commits
commit: 2f684aabe273c4f6f90a509d45e667136b6a5220
Author: Alexander Bersenev <bay <AT> hackerdom <DOT> ru>
AuthorDate: Fri Sep 30 21:05:28 2011 +0000
Commit: Александр Берсенев <bay <AT> hackerdom <DOT> ru>
CommitDate: Fri Sep 30 21:05:28 2011 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/autodep.git;a=commit;h=2f684aab
removed a debug print
---
portage_with_autodep/pym/_emerge/EventsAnalyser.py | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/portage_with_autodep/pym/_emerge/EventsAnalyser.py b/portage_with_autodep/pym/_emerge/EventsAnalyser.py
index e6e21be..df7a345 100644
--- a/portage_with_autodep/pym/_emerge/EventsAnalyser.py
+++ b/portage_with_autodep/pym/_emerge/EventsAnalyser.py
@@ -404,7 +404,7 @@ class EventsAnalyser:
"install":8,"preinst":9,"postinst":10,"prerm":11,"postrm":12,"unknown":13}
packagesinfo=self.packagesinfo
# print information grouped by package
- print(packagesinfo.keys())
+ #print(packagesinfo.keys())
for package in sorted(packagesinfo):
# not showing special directory package
if package=="directory":
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [gentoo-commits] proj/autodep:master commit in: portage_with_autodep/pym/_emerge/
@ 2011-10-03 19:44 Александр Берсенев
0 siblings, 0 replies; 5+ messages in thread
From: Александр Берсенев @ 2011-10-03 19:44 UTC (permalink / raw
To: gentoo-commits
commit: 14c641d3404c14cc87c2fa91ddc761d9a804912b
Author: Alexander Bersenev <bay <AT> hackerdom <DOT> ru>
AuthorDate: Mon Oct 3 16:00:07 2011 +0000
Commit: Александр Берсенев <bay <AT> hackerdom <DOT> ru>
CommitDate: Mon Oct 3 16:00:07 2011 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/autodep.git;a=commit;h=14c641d3
apply previous commit to modfied version of emerge
---
portage_with_autodep/pym/_emerge/EventsAnalyser.py | 89 ++++++++++++--------
1 files changed, 53 insertions(+), 36 deletions(-)
diff --git a/portage_with_autodep/pym/_emerge/EventsAnalyser.py b/portage_with_autodep/pym/_emerge/EventsAnalyser.py
index df7a345..da4ba93 100644
--- a/portage_with_autodep/pym/_emerge/EventsAnalyser.py
+++ b/portage_with_autodep/pym/_emerge/EventsAnalyser.py
@@ -18,39 +18,51 @@ class PortageUtils:
self.metadata_keys = [k for k in portage.auxdbkeys if not k.startswith("UNUSED_")]
self.use=self.settings["USE"]
- def get_best_visible_pkg(self,pkg):
+ def get_best_visible_pkg(self,pkg,db="portdb"):
"""
Gets best candidate on installing. Returns empty string if no found
:param pkg: package name
+ :param db: name of db to look. Can be "vardb" or "portdb"
"""
try:
- return self.portdbapi.xmatch("bestmatch-visible", pkg)
+ if db=="portdb":
+ return self.portdbapi.xmatch("bestmatch-visible", pkg)
+ elif db=="vardb":
+ return self.vardbapi.match(pkg)[0]
+ else:
+ return ''
except:
return ''
# non-recursive dependency getter
- def get_dep(self,pkg,dep_type=["RDEPEND","DEPEND"]):
+ def get_dep(self,pkg,dep_type=["RDEPEND","DEPEND"],db="portdb"):
"""
Gets current dependencies of a package. Looks in portage db
:param pkg: name of package
:param dep_type: type of dependencies to recurse. Can be ["DEPEND"] or
["RDEPEND", "DEPEND"]
+ :param db: name of db to look. Can be "vardb" or "portdb"
:returns: **set** of packages names
"""
ret=set()
- pkg = self.get_best_visible_pkg(pkg)
+ pkg = self.get_best_visible_pkg(pkg,db)
if not pkg:
return ret
# we found the best visible match in common tree
+ if db=="portdb":
+ aux_get=self.portdbapi.aux_get
+ elif db=="vardb":
+ aux_get=self.vardbapi.aux_get
+ else:
+ return ret
- metadata = dict(zip(self.metadata_keys,
- self.portdbapi.aux_get(pkg, self.metadata_keys)))
+ metadata = dict(zip(self.metadata_keys, aux_get(pkg, self.metadata_keys)))
dep_str = " ".join(metadata[k] for k in dep_type)
# the IUSE default are very important for us
@@ -82,7 +94,7 @@ class PortageUtils:
return ret
# recursive dependency getter
- def get_deps(self,pkg,dep_type=["RDEPEND","DEPEND"]):
+ def get_deps(self,pkg,dep_type=["RDEPEND","DEPEND"],db="portdb"):
"""
Gets current dependencies of a package on any depth
All dependencies **must** be installed
@@ -90,19 +102,20 @@ class PortageUtils:
:param pkg: name of package
:param dep_type: type of dependencies to recurse. Can be ["DEPEND"] or
["RDEPEND", "DEPEND"]
+ :param db: name of db to look. Can be "vardb" or "portdb"
:returns: **set** of packages names
"""
ret=set()
-
+ import pdb; pdb.set_trace()
# get porttree dependencies on the first package
- pkg = self.portdbapi.xmatch("bestmatch-visible", pkg)
+ pkg = self.get_best_visible_pkg(pkg,db)
if not pkg:
return ret
known_packages=set()
- unknown_packages=self.get_dep(pkg,dep_type)
+ unknown_packages=self.get_dep(pkg,dep_type,db)
ret=ret.union(unknown_packages)
while unknown_packages:
@@ -111,36 +124,40 @@ class PortageUtils:
continue
known_packages.add(p)
- metadata = dict(zip(self.metadata_keys, self.vardbapi.aux_get(p, self.metadata_keys)))
+ current_deps=self.get_dep(p,dep_type,'vardb')
+ unknown_packages=unknown_packages.union(current_deps)
+ ret=ret.union(current_deps)
+
+ #metadata = dict(zip(self.metadata_keys, self.vardbapi.aux_get(p, self.metadata_keys)))
- dep_str = " ".join(metadata[k] for k in dep_type)
+ #dep_str = " ".join(metadata[k] for k in dep_type)
# the IUSE default are very important for us
- iuse_defaults=[
- u[1:] for u in metadata.get("IUSE",'').split() if u.startswith("+")]
+ #iuse_defaults=[
+ # u[1:] for u in metadata.get("IUSE",'').split() if u.startswith("+")]
- use=self.use.split()
+ #use=self.use.split()
- for u in iuse_defaults:
- if u not in use:
- use.append(u)
+ #for u in iuse_defaults:
+ # if u not in use:
+ # use.append(u)
- success, atoms = portage.dep_check(dep_str, None, self.settings,
- myuse=use, myroot=self.settings["ROOT"],
- trees={self.settings["ROOT"]:{"vartree":self.vartree,"porttree": self.vartree}})
-
- if not success:
- continue
-
- for atom in atoms:
- atomname = self.vartree.dep_bestmatch(atom)
- if not atomname:
- continue
-
- for unvirt_pkg in expand_new_virt(self.vardbapi,'='+atomname):
- for pkg in self.vartree.dep_match(unvirt_pkg):
- ret.add(pkg)
- unknown_packages.add(pkg)
+ #success, atoms = portage.dep_check(dep_str, None, self.settings,
+ # myuse=use, myroot=self.settings["ROOT"],
+ # trees={self.settings["ROOT"]:{"vartree":self.vartree,"porttree": self.vartree}})
+
+ #if not success:
+ # continue
+
+ #for atom in atoms:
+ # atomname = self.vartree.dep_bestmatch(atom)
+ # if not atomname:
+ # continue
+ #
+ # for unvirt_pkg in expand_new_virt(self.vardbapi,'='+atomname):
+ # for pkg in self.vartree.dep_match(unvirt_pkg):
+ # ret.add(pkg)
+ # unknown_packages.add(pkg)
return ret
def get_deps_for_package_building(self, pkg):
@@ -148,10 +165,10 @@ class PortageUtils:
returns buildtime dependencies of current package and
all runtime dependencies of that buildtime dependencies
"""
- buildtime_deps=self.get_dep(pkg, ["DEPEND"])
+ buildtime_deps=self.get_dep(pkg, ["DEPEND"],"portdb")
runtime_deps=set()
for dep in buildtime_deps:
- runtime_deps=runtime_deps.union(self.get_deps(dep,["RDEPEND"]))
+ runtime_deps=runtime_deps.union(self.get_deps(dep,["RDEPEND"],"vardb"))
ret=buildtime_deps.union(runtime_deps)
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [gentoo-commits] proj/autodep:master commit in: portage_with_autodep/pym/_emerge/
@ 2011-10-15 10:46 Александр Берсенев
0 siblings, 0 replies; 5+ messages in thread
From: Александр Берсенев @ 2011-10-15 10:46 UTC (permalink / raw
To: gentoo-commits
commit: 1ffe071cc64ab5d90b6c6ec61abf2310b3d73279
Author: Alexander Bersenev <bay <AT> hackerdom <DOT> ru>
AuthorDate: Sat Oct 15 16:46:07 2011 +0000
Commit: Александр Берсенев <bay <AT> hackerdom <DOT> ru>
CommitDate: Sat Oct 15 16:46:07 2011 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/autodep.git;a=commit;h=1ffe071c
disable pdb exec
---
portage_with_autodep/pym/_emerge/EventsAnalyser.py | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/portage_with_autodep/pym/_emerge/EventsAnalyser.py b/portage_with_autodep/pym/_emerge/EventsAnalyser.py
index da4ba93..0f2d2dd 100644
--- a/portage_with_autodep/pym/_emerge/EventsAnalyser.py
+++ b/portage_with_autodep/pym/_emerge/EventsAnalyser.py
@@ -107,7 +107,7 @@ class PortageUtils:
"""
ret=set()
- import pdb; pdb.set_trace()
+ #import pdb; pdb.set_trace()
# get porttree dependencies on the first package
pkg = self.get_best_visible_pkg(pkg,db)
^ permalink raw reply related [flat|nested] 5+ messages in thread
end of thread, other threads:[~2011-10-15 10:46 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-08-21 18:50 [gentoo-commits] proj/autodep:master commit in: portage_with_autodep/pym/_emerge/ Александр Берсенев
-- strict thread matches above, loose matches on Subject: below --
2011-08-21 18:50 Александр Берсенев
2011-09-30 15:05 Александр Берсенев
2011-10-03 19:44 Александр Берсенев
2011-10-15 10:46 Александр Берсенев
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox