summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Py3k compatibility patch #4 by Ali Polatel <hawking@g.o>.Zac Medico2008-07-015-7/+7
| | | | | | Replace dict.has_key() calls with "in" and "not in" operators. svn path=/main/trunk/; revision=10873
* Py3k compatibility patch #3 by Ali Polatel <hawking@g.o>.Zac Medico2008-07-014-14/+15
| | | | | | Replace dict.has_key() calls with "in" and "not in" operators. svn path=/main/trunk/; revision=10872
* Py3k compatibility patch #2 by Ali Polatel <hawking@g.o>.Zac Medico2008-07-012-2/+2
| | | | | | Replace dict.has_key() calls with "in" and "not in" operators. svn path=/main/trunk/; revision=10871
* Py3k compatibility patch #1 by Ali Polatel <hawking@g.o>.Zac Medico2008-07-019-58/+60
| | | | | | Replace dict.has_key() calls with "in" and "not in" operators.. svn path=/main/trunk/; revision=10870
* Add a "prefix" keyword parameter to slot_dict_class() which controls theZac Medico2008-07-012-39/+43
| | | | | | | | prefix used when mapping attribute names from keys. Use this to change the syntax from files["foo"] to files.foo (it's fewer characters to look at). svn path=/main/trunk/; revision=10869
* Add a new BinpkgFetcherAsync class and use it to implement parellel-fetchZac Medico2008-07-011-15/+240
| | | | | | for --getbinpkg. svn path=/main/trunk/; revision=10868
* Never do realpath() on an empty string for portdbapi.porttree_root sinceZac Medico2008-07-011-1/+3
| | | | | | otherwise it can evaluate to $CWD which leads to undesireable results. svn path=/main/trunk/; revision=10867
* Also avoid sandbox violations in PreservedLibsRegistry.store(), for runningZac Medico2008-07-011-0/+2
| | | | | | portage inside ebuild phases. svn path=/main/trunk/; revision=10866
* Handle potential errors in PreservedLibsRegistry.store() now that it canZac Medico2008-07-011-3/+7
| | | | | | | be called via pruneNonExisting(), due to things such as portageq calls where the user may not have write permission to the registry. svn path=/main/trunk/; revision=10865
* Split out a write_contents() function and a vardbapi.removeFromContents()Zac Medico2008-07-011-30/+68
| | | | | | | | | | function. This is refactoring of code from the blocker file collision contents handling in dblink.treewalk(). Also, there is a new dblink._match_contents() method derived from isowner(). It returns the exact path from the contents file that matches the given path, regardless of path differences due to things such as symlinks. svn path=/main/trunk/; revision=10864
* add a call to pruneNonExisting() at the end of ↵Zac Medico2008-07-011-1/+2
| | | | | | dbapi.vartree.PreservedLibsRegistry.__init__() svn path=/main/trunk/; revision=10862
* Fix typo.Zac Medico2008-06-301-1/+1
| | | | svn path=/main/trunk/; revision=10861
* Bug #230249 - Disable the "ebuild.notadded" check when not in commit mode andZac Medico2008-06-301-2/+8
| | | | | | | running `svn list` and `svn status` calls in every package dir will be too expensive. svn path=/main/trunk/; revision=10860
* Bug #230245 - Use os.path.basename() on paths returned from `svn list`Zac Medico2008-06-301-2/+2
| | | | | | and `svn status`. svn path=/main/trunk/; revision=10859
* Bug #230245 - Pass the correct directory when calling `snv list` andZac Medico2008-06-301-2/+2
| | | | | | | `svn status` since repoman supports category-level and repo-level commits. svn path=/main/trunk/; revision=10858
* Add "(no inline comments)" to qualify "comments begin with #" statements.Zac Medico2008-06-301-14/+14
| | | | svn path=/main/trunk/; revision=10857
* Clear the self._task_queue to avoid duplicate parallel-fetch tasksZac Medico2008-06-301-0/+1
| | | | | | in --keep-going mode. svn path=/main/trunk/; revision=10856
* Reimplement parallel-fetch by spawning the `ebuild fetch` command for eachZac Medico2008-06-302-93/+234
| | | | | | | | ebuild. The benefit of using this approach is that it can be integrated together with parallel build scheduling that's planned. Parallel-fetch support for binhost is not implemented yet, though it worked previously. svn path=/main/trunk/; revision=10855
* Avoid python-2.6 deprecation warnings for md5 and sha modules by tryingZac Medico2008-06-301-3/+13
| | | | | | | to import hashlib first and then falling back to the deprecated modules if necessary. Thanks to ColdWind for reporting. svn path=/main/trunk/; revision=10854
* Rename the MergeTask class to Scheduler.Zac Medico2008-06-301-3/+3
| | | | svn path=/main/trunk/; revision=10853
* * Tweak conditionals in doebuild() to fix emerge --fetch breakage reportedZac Medico2008-06-301-4/+6
| | | | | | | | | by Arfrever. * Change a couple EMERGE_FROM conditionals to use the "returnpid" parameter instead. svn path=/main/trunk/; revision=10852
* Centralize select.poll() event handling in MergeTask._schedule(). This willZac Medico2008-06-291-39/+47
| | | | | | | allow the parent process to handle output of multiple child processes running in parllel. svn path=/main/trunk/; revision=10851
* Add EMERGE_FROM to the blacklisted vars in the config constructor.Zac Medico2008-06-291-1/+1
| | | | svn path=/main/trunk/; revision=10850
* * Add "fd_pipes" and "returnpid" parameters to doebuild() and passZac Medico2008-06-292-29/+211
| | | | | | | | | | | | | | these into spawn calls, enabling ebuild processes to execute asynchronously. * Add a EbuildPhase class that's derived from the pty logging code inside portage.spawn(). * Integrate post-phase code from spawnebuild() into EbuildBuild.execute() so that it still gets called even though doebuild() calls execute asynchronously. svn path=/main/trunk/; revision=10849
* In EbuildBuild.execute(), call doebuild() separately for each phase sinceZac Medico2008-06-292-10/+15
| | | | | | | it will be easier to add asynchronous support to doebuild() if it's called this way. svn path=/main/trunk/; revision=10848
* Split out a _check_build_log() function from spawnebuild().Zac Medico2008-06-291-67/+78
| | | | svn path=/main/trunk/; revision=10847
* Split out a _post_src_install_uid_fix() function from spawnebuild().Zac Medico2008-06-291-22/+28
| | | | svn path=/main/trunk/; revision=10846
* Split out a _spawn_misc_sh() function from spawnebuild().Zac Medico2008-06-291-25/+40
| | | | svn path=/main/trunk/; revision=10845
* Handle invalid atoms inside depgraph._add_pkg_deps(), to avoid anZac Medico2008-06-291-0/+7
| | | | | | | unhandled InvalidAtom exception from dep_expand() when matching against the vardb. svn path=/main/trunk/; revision=10844
* Move clean code, from the previous commit, from doebuild() toZac Medico2008-06-292-14/+11
| | | | | | EbuildBuild.execute() where it fits better. svn path=/main/trunk/; revision=10843
* Instead of calling the ebuild "clean" phase in MergeTask.merge(),Zac Medico2008-06-292-9/+18
| | | | | | | move it inside doebuild() where it can be tied into the actionmap_deps framework. svn path=/main/trunk/; revision=10842
* Split out an EbuildBuildDir class to handle locking of the build dir.Zac Medico2008-06-291-34/+76
| | | | svn path=/main/trunk/; revision=10841
* Handle re.error exceptions raised from re.compile() when ACCEPT_CHOSTSZac Medico2008-06-281-3/+14
| | | | | | is invalid. Thanks to solar for reporting. svn path=/main/trunk/; revision=10840
* Make EbuildBinpkg delegate everything up to src_install() toZac Medico2008-06-281-2/+17
| | | | | | the EbuildBuild class. svn path=/main/trunk/; revision=10839
* * Remove unused EbuildBuild.pretend attribute.Zac Medico2008-06-281-7/+7
| | | | | | * Add TODO not about asynchronous execution. svn path=/main/trunk/; revision=10838
* Bug #229859 - Also add atom validation to match().Zac Medico2008-06-281-0/+4
| | | | svn path=/main/trunk/; revision=10837
* Copy portageq exit code validation from has_version() to best_version().Zac Medico2008-06-281-0/+12
| | | | svn path=/main/trunk/; revision=10836
* Bug #229859 - Make portageq check atom validity when has_version() andZac Medico2008-06-281-0/+10
| | | | | | best_version() are called from inside the ebuild environment. svn path=/main/trunk/; revision=10835
* Use the EbuildMerge class instead of portage.merge().Zac Medico2008-06-281-8/+5
| | | | svn path=/main/trunk/; revision=10834
* Split out a PackageUninstall class.Zac Medico2008-06-281-6/+24
| | | | svn path=/main/trunk/; revision=10833
* * Split out an EbuildBinpkg class.Zac Medico2008-06-281-16/+44
| | | | | | * Remove unused EbuildBuild.ldpath_mtimes attribute. svn path=/main/trunk/; revision=10832
* Split out an EbuildBuild class.Zac Medico2008-06-281-4/+28
| | | | svn path=/main/trunk/; revision=10831
* Fix typo.Zac Medico2008-06-281-1/+2
| | | | svn path=/main/trunk/; revision=10830
* Split out an EbuildMerge class.Zac Medico2008-06-281-8/+30
| | | | svn path=/main/trunk/; revision=10829
* * Split out a BinpkgMerge class.Zac Medico2008-06-281-7/+26
| | | | | | * Fix typos in _get_hash_key() methods. svn path=/main/trunk/; revision=10828
* Split out a BinpkgFetcher class.Zac Medico2008-06-281-40/+75
| | | | svn path=/main/trunk/; revision=10827
* Split out an EbuildFetcher class.Zac Medico2008-06-281-14/+27
| | | | svn path=/main/trunk/; revision=10826
* Split the MergeTask._merge() method into 3 smaller methods. The newZac Medico2008-06-281-23/+63
| | | | | | methods are _execute_task() and _post_merge(). svn path=/main/trunk/; revision=10825
* Bug #226307 - Copy come code from depgraph._iter_atoms_for_pkg() thatZac Medico2008-06-281-3/+47
| | | | | | | was used to solve bug #218854, and use it inside unmerge() when matching sets to packages. svn path=/main/trunk/; revision=10824
* Fix depgraph.break_refs() to work with DependencyArg instances (or anythingZac Medico2008-06-271-13/+11
| | | | | | else that may have a "root_config" attribute). svn path=/main/trunk/; revision=10823