summaryrefslogtreecommitdiffstats
path: root/pym
Commit message (Collapse)AuthorAgeFilesLines
* Add a note to the ensure_dirs() docstring about atomic directory creation.Zac Medico2010-09-011-1/+6
|
* Make ensure_dirs() use os.path.isdir() to verify that the directoryZac Medico2010-09-011-2/+3
| | | | exists when EISDIR is raised, since this is abnormal behavior.
* In ensure_dirs(), only call apply_permissions() when keyword argumentsZac Medico2010-09-011-2/+5
| | | | for it are given.
* Make more doebuild() commands exempt from _check_temp_dir().Zac Medico2010-09-011-2/+8
|
* In doebuild(), don't call _check_temp_dir() for pseudo-phases such asZac Medico2010-09-011-3/+5
| | | | 'manifest' and 'digest' that don't require a temp dir.
* In dblink.mergeme(), handle EISDIR which can be raised from mkdir callsZac Medico2010-08-312-2/+5
| | | | on FreeBSD (see bug #187518).
* Fix WorldSelectedSet._load2() to always return a list instead of aZac Medico2010-08-311-1/+1
| | | | | set for nonatoms so that we don't trigger 'TypeError: can only concatenate list (not "set") to list'.
* Fix depgraph._serialize_tasks() so that portage-9999 is always promotedZac Medico2010-08-311-1/+3
| | | | to the front of the merge list when it is reinstalled.
* Fix portage to create directories atomically in fast build.David James2010-08-311-9/+20
| | | | | | | | | | | | | | If multiple ebuild processes create the same directory, portage should not exit with an error message. Instead we should just be okay with the fact that another process created the directory. This is only necessary for fast build because we eliminate the giant lock that surrounds package merges. TEST=Create fresh chroot and do full build from source start to finish BUG=none Review URL: http://codereview.chromium.org/2998002
* Update portage to create directories atomically.David James2010-08-311-4/+4
| | | | | | | | | | | | | | | | | | | | | | | Portage should use the ensure_dirs function instead of os.makedirs to create directories, because this function ensures atomicity. It prevents failures when more than one process tries to create the same directory. This fixes a crash bug reported by msb: [...] File "/usr/lib64/portage/pym/portage/dbapi/vartree.py", line 3258, in _merge self.vartree.dbapi._bump_mtime(self.mycpv) File "/usr/lib64/portage/pym/portage/dbapi/vartree.py", line 152, in _bump_mtime os.makedirs(catdir) File "/usr/lib64/portage/pym/portage/__init__.py", line 210, in __call__ rval = self._func(*wrapped_args, **wrapped_kwargs) File "/usr/lib64/python2.6/os.py", line 157, in makedirs mkdir(name, mode) OSError: [Errno 17] File exists: '/home/msb/trunk/src/build/images/x86-generic/0.8.63.2010_08_03_1844-a1/rootfs//var/db/pkg/x11-proto' BUG=chromium-os:5366 TEST=build_packages && build_image Review URL: http://codereview.chromium.org/3113014
* Add comments about consumers of FakeVardbapi.getpath().Zac Medico2010-08-311-0/+4
|
* Simplify the vartree constructor usage in config.getvirtuals().Zac Medico2010-08-311-2/+1
|
* Use self.dbapi.getpath() to simplify code in vartree.get_provide().Zac Medico2010-08-311-1/+1
|
* Bug #335439 - Fix "AttributeError: 'vartree' object has no attributeZac Medico2010-08-311-1/+1
| | | | '_eroot'" in vartree.get_provide().
* When portage updates itself and the new version either inheritsZac Medico2010-08-313-5/+12
| | | | | | | | | git.eclass or has 9999 in its version, trigger the 'use copy of current sources for install, then restart portage' routine. This is required since with the live git portage-9999 ebuild we can't use the version to detect incompatible changes to ebuild.sh. This issue was noticed due to recent versions of ebuild.sh expecting PORTAGE_BZIP2_COMMAND to be set, causing incompatibility with installed portage-9999 instances.
* Fix ResolverPlayground.cleanup() to cleanup the portdbapi instance.Zac Medico2010-08-311-0/+3
|
* Show PORTAGE_BZIP2_COMMAND and PORTAGE_BUNZIP2_COMMAND in emerge --info,Zac Medico2010-08-301-1/+11
| | | | in case it triggers mysterious unpack() issues or something.
* Fix bugs in features_set._prune_overrides() and add another test case.Zac Medico2010-08-302-12/+19
|
* Add testcase to check that features_set._prune_overrides() is workingZac Medico2010-08-301-1/+8
| | | | correctly.
* Bug #335340 - Add support for PORTAGE_BZIP2_COMMAND andZac Medico2010-08-306-9/+73
| | | | | | PORTAGE_BUNZIP2_COMMAND settings in make.conf. This only adds support for binary packages, since that's where pbzip2 can provide the most benefit in common cases.
* Bug #326561 - Implement FEATURES=unknown-features-filter. This is notZac Medico2010-08-303-15/+65
| | | | | enabled by default now, but it may be in the future, depending on feedback from unknown-features-warn.
* Move FEATURES=unknown-features-warn code to config.regenerate() soZac Medico2010-08-301-12/+21
| | | | | that it shows warnings for unknown FEATURES settings from package.env, and keep a record of shown warnings in config._unknown_features.
* When _ENABLE_DYN_LINK_MAP is False, show additional --depclean helpZac Medico2010-08-302-0/+13
| | | | and warnings advising use of revdep-rebuild.
* When _ENABLE_SET_CONFIG is False, disable reading/writing of theZac Medico2010-08-301-7/+21
| | | | world_sets file in WorldSelectedSet.
* When _ENABLE_SET_CONFIG is False, make load_default_config() createZac Medico2010-08-301-1/+42
| | | | | a default hardcoded set configuration that will be used by the upcoming 2.1.9 branch.
* Use _ENABLE_PRESERVE_LIBS and _ENABLE_DYN_LINK_MAP constants to controlZac Medico2010-08-301-7/+13
| | | | instantiation of vardbapi._plib_registry and vardbapi._linkmap.
* Add some private constants for use in conditional code in order toZac Medico2010-08-301-0/+18
| | | | minimize the diff between branches.
* Add a TODO note to AbstractEbuildProcess._can_log() about adding supportZac Medico2010-08-301-0/+3
| | | | for logging via named pipe (fifo) for sesandbox.
* Make match_from_list() strip "!!" when appropriate for strong blocks.Zac Medico2010-08-301-1/+4
|
* Remove duplicate real_vardb definition from merge in action_depclean().Zac Medico2010-08-301-1/+0
|
* Merge branch 'master' of git+ssh://git.overlays.gentoo.org/proj/portageZac Medico2010-08-301-1/+2
|\
| * Fix "UnboundLocalError: local variable 'real_vardb' referenced before ↵Arfrever Frehtes Taifersar Arahesis2010-08-301-1/+1
| | | | | | | | assignment".
| * Fix typo in comment.Arfrever Frehtes Taifersar Arahesis2010-08-301-1/+1
| |
* | Fix broken reference to real_vardb in calc_depclean() from 2 commits ago.Zac Medico2010-08-301-1/+1
|/
* Rename the portage.sets module to portage._sets since it will be usefulZac Medico2010-08-3021-35/+40
| | | | | in the upcoming 2.1.9 branch which will not have sets support but will still have the code in private and disabled form.
* Always check if vardbapi._linkmap and vardbapi._plib_registry areZac Medico2010-08-295-44/+113
| | | | | | None before trying to use them. This will be useful in the upcoming 2.1.9 branch which will not have preserve-libs support but will still have the code in private and disabled form.
* Rename vardbapi.linkmap to vardbapi._linkmap since I'mZac Medico2010-08-295-15/+15
| | | | | | trying to minimize the diff between the master branch and upcoming 2.1.9 branch which will not have preserve-libs support but will still have the code in private and disabled form.
* Rename vardbapi.plib_registry to vardbapi._plib_registry since I'mZac Medico2010-08-295-22/+22
| | | | | | trying to minimize the diff between the master branch and upcoming 2.1.9 branch which will not have preserve-libs support but will still have the code in private and disabled form.
* Move LinkageMap to a new portage.util._dyn_libs.LinkageMapELF module.Zac Medico2010-08-292-614/+636
|
* Move PreservedLibsRegistry to a new ↵Zac Medico2010-08-293-117/+141
| | | | portage.util._dyn_libs.PreservedLibsRegistry module.
* Remove unused imports found by pylint.Arfrever Frehtes Taifersar Arahesis2010-08-2935-84/+34
|
* Fix import.Arfrever Frehtes Taifersar Arahesis2010-08-291-2/+2
|
* Fix some typos.Arfrever Frehtes Taifersar Arahesis2010-08-294-11/+11
|
* Add LocationsManager.profile_and_user_locations for use with ↵Sebastian Luther2010-08-292-8/+12
| | | | config.categories and archlist.
* Add a TODO note about replacing BlockerDB with an incremental depgraphZac Medico2010-08-291-0/+5
| | | | for solving bug #279623.
* Add a Scheduler._running_tasks() set in order to simplify theZac Medico2010-08-281-2/+5
| | | | _is_work_scheduled() method.
* Inside Scheduler._dependent_on_scheduled_merges(), don't traverse childrenZac Medico2010-08-281-1/+5
| | | | of uninstall nodes since those aren't dependencies in the usual sense.
* Simplify the empty USE conditional /var/db/pkg metadata code inZac Medico2010-08-281-8/+6
| | | | _post_src_install_uid_fix(), and handle one more case.
* When evaluating USE conditional metadata for /var/db/pkg insideZac Medico2010-08-281-0/+11
| | | | | _post_src_install_uid_fix(), ensure non-empty entries are removed if the evaluation results in an empty value.
* If there are circular dependencies, and circular_dependency_handlerZac Medico2010-08-282-3/+21
| | | | | | doesn't have a message, eliminate root nodes before calling digraph.debug_print(). If --debug is enabled then do this even if circular_dependency_handler has a message.