2008-06-20 05:12  genone

	* pym/_emerge/__init__.py: reenable warning about missing
	  repository names

2008-06-20 05:01  genone

	* bin/isolated-functions.sh, cnf/make.globals: revert accidential
	  commit

2008-06-20 04:59  genone

	* NEWS, RELEASE-NOTES, bin/isolated-functions.sh, cnf/make.globals:
	  update release notes/news

2008-06-20 03:46  zmedico

	* RELEASE-NOTES, man/emerge.1, pym/_emerge/help.py: Document the
	  new emerge <file> feature.

2008-06-20 03:14  zmedico

	* pym/_emerge/__init__.py: Fix typo.

2008-06-20 03:13  zmedico

	* pym/_emerge/__init__.py: Make emerge <path> path search for
	  multiple owners of directories. This
	  makes it possible to use `emerge /lib/modules` as a decent
	  substitute
	  for module-rebuild.

2008-06-19 05:26  zmedico

	* pym/repoman/checks.py: Pass a Package instance into
	  LineCheck.new(), and use this to avoid
	  passing the ebuild mtime into the EbuildHeader constructor (the
	  mtime is given when the new() method is called).

2008-06-19 05:01  zmedico

	* pym/repoman/checks.py: Refactor the 'inherit.autotools' and
	  'IUSE.undefined' checks
	  into classes derived from LineCheck.

2008-06-18 21:33  zmedico

	* pym/_emerge/__init__.py: Bug #228075 - Explicitly call
	  gc.collect() to try and free memory
	  when checking for blockers. This avoids a heap overflow that
	  triggers
	  'Cannot allocate memory' errors (reported with python-2.5).

2008-06-18 08:11  zmedico

	* pym/repoman/checks.py: As suggested by remi`, make the
	  'inherit.autotools' check only ebuilds that
	  inherit the autotools eclass directly (rather than indirectly
	  through an
	  eclass such as apache-2 or x-modular).

2008-06-18 06:55  zmedico

	* pym/repoman/checks.py: Add an exemption for x-modular in the
	  "inherit.autotools" check. Thanks to
	  remi` for reporting.

2008-06-18 04:49  zmedico

	* bin/ebuild: Bug #225285 - Add support for persistent options
	  stored in the EBUILD_DEFAULT_OPTS
	  environment variable (similar to {EMERGE,QUICKPKG}_DEFAULT_OPTS).

2008-06-18 04:38  zmedico

	* bin/ebuild, pym/portage/__init__.py: Bug #225285 - Add a
	  --skip-manifest option that disables all interaction
	  with the manifest.

2008-06-18 03:36  zmedico

	* bin/ebuild: Add a help string for --debug.

2008-06-18 03:30  zmedico

	* bin/ebuild: Use optparse instead of getopt.

2008-06-17 20:16  zmedico

	* bin/isolated-functions.sh, cnf/make.conf, man/color.map.5,
	  pym/portage/__init__.py, pym/portage/output.py: More eblank.

2008-06-17 19:39  zmedico

	* doc/package/ebuild/helper_functions.docbook, man/ebuild.5: Remove
	  eblank docs.

2008-06-17 18:13  genone

	* pym/portage/dbapi/vartree.py: remove stray line

2008-06-17 17:35  genone

	* cnf/make.globals: Remove eblank nonsense

2008-06-17 17:35  genone

	* bin/isolated-functions.sh, pym/portage/elog/messages.py,
	  pym/portage/elog/mod_echo.py, pym/portage/output.py: Remove
	  eblank nonsense

2008-06-17 17:03  genone

	* pym/portage/dbapi/vartree.py: Do not preserve the master link of
	  a library to avoid packages being linked against preserved libs
	  on rebuilds

2008-06-17 16:12  genone

	* pym/_emerge/__init__.py: fix typo

2008-06-17 07:46  zmedico

	* doc/package/ebuild.docbook,
	  doc/package/ebuild/helper_functions.docbook, doc/portage.docbook,
	  man/ebuild.5: * Document eblank and eqawarn in the ebuild.5 man
	  page.
	  * Create "Ebuild Helper Functions" section docbook format,
	  including all the functions documented in the ebuild.5
	  man page.

2008-06-17 06:01  zmedico

	* RELEASE-NOTES: Add note about bug #226505.

2008-06-17 05:44  zmedico

	* doc/package/ebuild/phases.docbook: Add a "Interaction with
	  previous installed version" section to document the
	  upgrade/downgrade phase execution order change from bug #226505.

2008-06-17 05:07  zmedico

	* cnf/make.conf, cnf/make.globals: Add "blank" to the default
	  PORTAGE_ELOG_CLASSES setting.

2008-06-17 04:57  zmedico

	* man/color.map.5: Fix BLANK order and color.

2008-06-17 04:05  zmedico

	* bin/isolated-functions.sh, man/color.map.5,
	  pym/portage/__init__.py, pym/portage/elog/mod_echo.py,
	  pym/portage/output.py: * Rename NEUTRAL color to BLANK for
	  eblank.
	  * Document the new BLANK code in color.map.5.
	  * Implement python version of eblank for mod_echo.

2008-06-17 03:31  zmedico

	* bin/isolated-functions.sh, pym/portage/__init__.py,
	  pym/portage/output.py: Add support for an new "eblank" elog
	  function that shows a blank line.
	  Consecutive eblank calls are all collapsed into a single blank
	  line.
	  Thanks to Joe Peterson <lavajoe@g.o> for this patch.

2008-06-16 14:40  zmedico

	* pym/portage/dbapi/vartree.py: Fix typo.

2008-06-16 14:30  zmedico

	* man/emerge.1, man/make.conf.5: Document the new ACCEPT_CHOSTS
	  variable.

2008-06-16 11:48  zmedico

	* pym/portage/__init__.py: Tweak the config._accept_chost() regex.

2008-06-16 10:24  zmedico

	* pym/_emerge/__init__.py, pym/portage/dbapi/vartree.py: Re-enable
	  vardbapi.cpv_all() cache now that bug #223417 is solved.

2008-06-16 10:19  zmedico

	* pym/portage/dbapi/vartree.py: Bug #223417 - Due to 1 second mtime
	  granularity in < python-1.5, mtime checks
	  are not always sufficient to invalidate vardbapi caches.
	  Therefore,
	  the caches need to be actively invalidated when packages are
	  added and removed.

2008-06-16 08:32  zmedico

	* pym/_emerge/__init__.py: Make some post_merge() things
	  conditional on the vdb lock being held
	  (mtimedb commit and info dirs processing).

2008-06-16 08:10  zmedico

	* pym/_emerge/__init__.py: Add some write access checks in
	  post_merge() in order to avoid triggering
	  permission related exceptions.

2008-06-15 04:50  zmedico

	* pym/portage/__init__.py: Fix config._accept_chost_re so it's only
	  an instance variable.

2008-06-15 04:38  zmedico

	* pym/_emerge/__init__.py, pym/portage/__init__.py: Add support for
	  and ACCEPT_CHOSTS variable that controls masking behavior
	  for binary packages wrt CHOST. The variable is a space separated
	  list of
	  chosts. It support regular expressions, so if the actual chost
	  contains
	  any special characters then the user must escape them when
	  setting
	  ACCEPT_CHOSTS.

2008-06-14 13:15  zmedico

	* pym/repoman/checks.py: Fix the 'inherit.autotools' check to
	  account for apache-2_src_unpack()
	  calling eautoreconf.

2008-06-14 07:15  zmedico

	* pym/portage/__init__.py: Add two new build log qa checks,
	  suggested by Diego Pettenò:
	  
	  * Detect automake "maintainer mode". See
	  http://www.gentoo.org/proj/en/qa/autofailure.xml for more
	  information.
	  
	  * Detect "Unrecognized options" messages from configure scripts.

2008-06-12 02:41  zmedico

	* pym/_emerge/__init__.py: Pass missing "installed" parameter into
	  Package constructor.

2008-06-11 09:33  zmedico

	* pym/_emerge/__init__.py: Handle InvalidDependString in
	  _package_cache.__setitem__().

2008-06-11 09:16  zmedico

	* pym/_emerge/__init__.py: Fix indent.

2008-06-11 09:15  zmedico

	* pym/_emerge/__init__.py: Handle InvalidDependString.

2008-06-11 09:06  zmedico

	* pym/_emerge/__init__.py: Bug #225767 - Suppress warnings for
	  installed packages masked by keywords
	  if there is an equivalent ebuild in the portage tree (same cpv)
	  with
	  visible keywords.

2008-06-11 03:37  zmedico

	* bin/dispatch-conf: Use spawn() instead of system().

2008-06-10 05:31  zmedico

	* pym/portage/dbapi/vartree.py: Add another sanity check in the
	  owners cache.

2008-06-10 04:48  zmedico

	* pym/portage/dbapi/vartree.py: Use isinstance() instead of
	  handling TypeError.

2008-06-10 04:13  zmedico

	* pym/portage/__init__.py: Bug #225285 - Allow digestcheck() to
	  succeed when the Manifest is empty and
	  strict mode is disabled.

2008-06-10 03:31  zmedico

	* pym/portage/dbapi/vartree.py: Add some sanity checks and error
	  tolerance in the owners cache.

2008-06-10 02:13  zmedico

	* pym/portage/dbapi/vartree.py: Fix typo.

2008-06-10 01:05  zmedico

	* pym/portage/dbapi/vartree.py: Fix typo.

2008-06-09 23:25  zmedico

	* pym/portage/dbapi/vartree.py: Fix missing initialization.

2008-06-09 14:24  zmedico

	* pym/_emerge/__init__.py: Remove unused
	  PackageVirtualDbapi.__getitem__() method.

2008-06-09 13:55  zmedico

	* bin/portageq, pym/_emerge/__init__.py,
	  pym/portage/dbapi/vartree.py: Add CONTENTS indexing support for
	  optimization of owner lookups. The
	  vardbapi cache maintains a hash table (inside
	  vdb_metadata.pickle)
	  that serves to index package contents by mapping the basename of
	  file
	  to a list of possible packages that own it. This is used to
	  optimize
	  owner lookups by narrowing the search down to a smaller number of
	  packages. It increases the size of vdb_metadata.pickle by
	  approximately
	  30% and it's used in the following cases:
	  
	  * When an unexpected file collision occurs (whether
	  or not collision-protect is enabled)
	  
	  * `emerge <filename>`
	  
	  * `portageq owners`
	  
	  The

2008-06-08 20:23  zmedico

	* pym/portage/__init__.py: When inside fakeroot, directories with
	  portage's gid appear
	  to have root's gid. Therefore, use root's gid instead of
	  portage's gid to avoid spurrious permissions adjustments
	  when inside fakeroot.

2008-06-08 19:01  genone

	* pym/portage/dbapi/vartree.py: make sure that scanelf is called
	  with the right paths, and properly register all preserved objects
	  to fix bug #223591

2008-06-08 05:11  zmedico

	* pym/portage/__init__.py: Bug #225285 - Allow digestcheck() to
	  succeed when the Manifest is missing
	  and strict mode is disabled.

2008-06-08 04:20  zmedico

	* pym/portage/dbapi/porttree.py: Make portdbapi.aux_get() return
	  float type for _mtime_.

2008-06-08 03:15  zmedico

	* pym/repoman/checks.py: Add additional functions such as eaclocal
	  and eautoheader to the
	  inherit.autotools regex. Thanks to Arfrever.

2008-06-08 02:22  zmedico

	* bin/repoman: Fix typo.

2008-06-08 02:19  zmedico

	* bin/repoman, pym/_emerge/__init__.py, pym/repoman/checks.py: Make
	  repoman pass Package instances into run_checks(), so that the
	  checks
	  can use the Package.mtime and inherited attributes.

2008-06-07 23:50  zmedico

	* pym/portage/__init__.py: Inside, create_trees(), pass
	  target_root="/" into the config constructor
	  when necessary to override the setting in make.conf.

2008-06-07 22:51  zmedico

	* pym/portage/__init__.py: Validate ROOT from make.conf.

2008-06-07 22:40  zmedico

	* pym/_emerge/__init__.py: Make load_emerge_config() filter out
	  empty PORTAGE_CONFIGROOT and ROOT
	  values, and those containing only whitespace.

2008-06-07 22:18  zmedico

	* bin/repoman, man/repoman.1, pym/repoman/checks.py: Bug #224271 -
	  New check 'IUSE.undefined', renamed from generic
	  'ebuild.minorsyn'.

2008-06-07 22:07  zmedico

	* bin/repoman, man/repoman.1, pym/repoman/checks.py: As suggested
	  by Flameeyes, add a new 'inherit.autotools' check which warns
	  when autotools has been inherited but none of the eautomake,
	  eautoconf or
	  eautoreconf functions are called like they are supposed to be.

2008-06-07 17:18  vapier

	* bin/ebuild.sh, bin/isolated-functions.sh: remove old/unused
	  gen_wrapper function

2008-06-07 09:23  zmedico

	* pym/repoman/checks.py: Bug #224271 - Add a 'IUSE is not defined'
	  ebuild.minorsyn warning.

2008-06-06 00:22  zmedico

	* pym/_emerge/__init__.py: Add a PackageVirtualDbapi.__getitem__()
	  method.

2008-06-05 23:35  zmedico

	* pym/_emerge/__init__.py: Add Package.counter and mtime
	  attributes.

2008-06-05 17:30  zmedico

	* pym/portage/dbapi/vartree.py: Add vardbapi.aux_get() support for
	  an "_mtime_" value which corresponds to
	  the installed package directory's mtime (numeric value from stat
	  result).
	  This value can be used to validate indexes or caches used in the
	  optimization
	  of vdb query operations for various types of package metadata
	  such as
	  dependencies and file contents.

2008-06-04 23:44  zmedico

	* pym/portage/__init__.py: Bug #224713 - Avoid TypeError when
	  make.conf is missing:
	  TypeError: argument of type 'NoneType' is not iterable

2008-06-04 21:15  zmedico

	* man/make.conf.5: Mention PORTAGE_RO_DISTDIRS in the DISTDIR docs.

2008-06-04 20:24  zmedico

	* pym/_emerge/__init__.py, pym/portage/dbapi/vartree.py: Use sets
	  for more accurate cache modification counts BlockerCache and
	  vardbapi.

2008-06-04 03:50  zmedico

	* pym/_emerge/__init__.py: Use platform module to make it clear
	  what we're displaying. Instead of
	  an 'uname -mrp' call use platform.platform() to describe the
	  system in
	  emerge --info. (branches/prefix r10555)

2008-06-04 03:47  zmedico

	* bin/repoman, pym/portage/__init__.py, pym/portage/data.py: Use
	  "platform" module instead of os.uname, or -- even worse -- a
	  system
	  call to uname. Change repoman's identification string not to use
	  "processor" on Linux (where it is huge), Interix (where it
	  doesn't
	  exist) and AIX/HP-UX (where it prints "unknown"), but "machine"
	  instead.
	  (branches/prefix r10554)

2008-06-04 01:07  zmedico

	* pym/portage/__init__.py: Fix typo.

2008-06-04 00:48  zmedico

	* pym/portage/__init__.py: Use a distdir_writable variable in
	  fetch(), for better control of write
	  operations inside ${DISTDIR}.

2008-06-03 23:33  zmedico

	* man/emerge.1, man/portage.5, pym/_emerge/help.py: Update
	  --depclean and package.provided docs to indicate interaction
	  between them.

2008-06-03 20:44  zmedico

	* pym/portage/sets/profiles.py: Make PackagesSystemSet.description
	  refer to the real profile rather than
	  /etc/portage/profile when possible.

2008-06-03 20:37  zmedico

	* pym/portage/sets/profiles.py: Avoid an unhandled IndexError
	  thrown from the PackagesSystemSet constructor
	  when neither /etc/make.profile nor /etc/portage/profile exist.

2008-06-03 20:11  zmedico

	* bin/doman: Fix regex for compatibility with the regex
	  implementation from FreeBSD's
	  libc (used by bash on FreeBSD). Thanks to Alexis Ballier
	  <aballier@g.o>
	  for the patch.

2008-06-03 09:38  zmedico

	* pym/_emerge/__init__.py: Tweak the installed masked code from bug
	  #223447 so that it less noisy
	  by suppressing masking messages for packages that haven't been
	  pulled
	  into the current dependency graph.

2008-06-03 06:51  zmedico

	* pym/portage/__init__.py: Fix typo.

2008-06-03 06:50  zmedico

	* pym/portage/__init__.py: When pruning the digests to optimize
	  parallel-fetch, use a separate dict
	  so that the original digests are still available if a file needs
	  to be
	  downloaded.

2008-06-03 05:41  zmedico

	* pym/portage/dbapi/vartree.py: Use float mtime instead of int for
	  finer granularity in vardbapi.match()
	  cache staleness checks.

2008-06-03 04:04  zmedico

	* pym/_emerge/__init__.py: Add modification threshold for
	  BlockerCache.flush(), to avoid wasteful IO.

2008-06-03 03:45  zmedico

	* pym/portage/dbapi/vartree.py: Fix vardbapi.flush_cache() so that
	  it only updates the cache when the
	  number of uncached packages reaches a certain threshold
	  (currently 5).
	  The cache file can be several megabytes in size, so updating it
	  for
	  every vdb change is wasteful.

2008-06-03 02:24  zmedico

	* man/make.conf.5, pym/portage/__init__.py: Add support for a
	  PORTAGE_RO_DISTDIRS variable. When a given file does not
	  exist in DISTDIR, search for the file in this list of
	  directories. Search
	  order is from left to right. Note that the current implementation
	  works by
	  creating a symlink inside DISTDIR, but that may change in the
	  future.

2008-06-03 01:41  zmedico

	* bin/isolated-functions.sh: Don't unset PORTAGE_BINPKG_FILE
	  because it's readonly.

2008-06-01 18:28  zmedico

	* bin/isolated-functions.sh: Filter PORTAGE_BINPKG_FILE in
	  save_ebuild_env().

2008-06-01 08:33  zmedico

	* pym/_emerge/__init__.py: Fix typo.

2008-06-01 04:58  zmedico

	* pym/_emerge/__init__.py: Mention masked packages in another
	  --resume message.

2008-06-01 04:50  zmedico

	* pym/_emerge/__init__.py: Reference depgraph.UnsatisfiedResumeDep
	  instead of mydepgraph since the
	  latter can trigger an UnboundLocalError in some cases (^C for
	  example).

2008-06-01 04:47  zmedico

	* pym/_emerge/__init__.py: Update the --skipfirst dropped packages
	  warning to mention "masking"
	  in addition to unsatisfied dependencies.

2008-06-01 04:35  zmedico

	* pym/_emerge/__init__.py: Update the UnsatisfiedResumeDep display
	  to distinguish masked packages
	  from those with unsatisfied dependencies.

2008-06-01 04:27  zmedico

	* pym/_emerge/__init__.py: Revert changes wrt argument atoms in the
	  previous commit since it's not
	  really useful.

2008-06-01 01:37  zmedico

	* pym/_emerge/__init__.py: Make --skipfirst tolerate masked
	  packages by dropping them (similar to
	  how it would drop a package that has an unsatisfied dependency).

2008-06-01 01:27  zmedico

	* pym/portage/sets/base.py: Fix EditablePackageSet.update() to
	  create Atom instances when necessary.

2008-05-31 23:10  zmedico

	* pym/portage/sets/base.py: Make PackageSet._setAtoms() use
	  existing Atom instances when available.

2008-05-31 20:02  zmedico

	* pym/_emerge/__init__.py: Fix create_world_atom() to take a
	  Package instance in it's arguments.

2008-05-31 09:35  zmedico

	* pym/portage/tests/dep/test_isvalidatom.py: Add some isvalidatom()
	  test cases with "null" and missing category.

2008-05-31 09:24  zmedico

	* pym/portage/dep.py: Fix TypeError: 'tuple' object does not
	  support item assignment

2008-05-31 09:11  zmedico

	* pym/_emerge/__init__.py, pym/portage/dep.py: * Tweak
	  isvalidatom() to treat "null" category as valid, but missing
	  category
	  as invalid (previously both where treated as invalid).
	  
	  * Fix a spot inside emerge's unmerge() function that sometimes
	  generates
	  invalid atoms by adding an unnecessary "=" to the front. Even
	  when in
	  cases that resulted in a valid atom here, adding the "=" was
	  redundant
	  because dep_expand() does that automatically now (for backward
	  compat).

2008-05-31 02:06  zmedico

	* pym/_emerge/__init__.py: Clean up reference to parts of the first
	  graph for --skipfirst.

2008-05-31 01:54  zmedico

	* pym/_emerge/__init__.py: Optimize the new --skipfirst code so
	  that in only has to build
	  a new depgraph one time when there are unsatisfied deps. This
	  works by recursively traversing the digraph to remove the parent
	  packages whose deps become unsatisfied when their dependencies
	  are
	  pruned from the mergelist.

2008-05-30 23:46  zmedico

	* pym/portage/sets/base.py: Fix PackageSet.findAtomForPackage() to
	  find the most specific atom since
	  it can affect behavior when deciding whether or not to add a slot
	  atom to
	  the world file.

2008-05-30 21:14  zmedico

	* pym/portage/dbapi/porttree.py: Now that dbapi._iter_match() is
	  guaranteed to return a real iterator with
	  a next method(), we can just call next() and handle
	  StopIteration.

2008-05-30 20:46  zmedico

	* pym/portage/dbapi/__init__.py: For consistency, make sure that a
	  normal iterator is always returned
	  from dbapi._iter_match() (and never a list). This way the caller
	  can
	  be sure that the returned object has a next() method.

2008-05-30 20:19  zmedico

	* pym/portage/dbapi/vartree.py: Make the use_cache=0 listdir()
	  implementation inside vardbapi.cpv_all()
	  rains a PermissionDenied error when appropriate.

2008-05-30 09:56  zmedico

	* pym/_emerge/__init__.py: Pass a mutable config instance into
	  get_masking_status(). Currently
	  it doesn't matter for installed packages but it's safer to be
	  consistent to avoid accidental breakage in the future.

2008-05-30 06:50  zmedico

	* pym/portage/sets/base.py: Make PackageSet.findAtomForPackage()
	  just return the first atom found
	  since best_match_to_list() won't work correctly for atoms matched
	  via PROVIDE.

2008-05-30 01:08  zmedico

	* pym/portage/dep.py: Simplify None Package.slot handling in
	  match_from_list().

2008-05-30 00:37  zmedico

	* pym/portage/dep.py: Fix Atom attribute handling in get_operator()
	  and dep_getslot() to account
	  for None return values.

2008-05-30 00:03  zmedico

	* bin/repoman: Create Atom instances earlier to avoid redundant
	  validation.

2008-05-29 23:40  zmedico

	* pym/_emerge/__init__.py: When dropping deps from the resume list,
	  make sure that the loop can't
	  be infinite.

2008-05-29 23:31  zmedico

	* pym/_emerge/__init__.py: Use Package.metadata instead of calling
	  dbapi.aux_get().

2008-05-29 23:10  zmedico

	* pym/_emerge/__init__.py: Use a frozenset instead of a list for
	  containment tests.

2008-05-29 22:54  zmedico

	* pym/_emerge/__init__.py: Fix typo.

2008-05-29 22:34  zmedico

	* pym/_emerge/__init__.py: Use izip() to eliminate temporary dict
	  instances.

2008-05-29 21:00  zmedico

	* pym/_emerge/__init__.py: Clean up references to
	  unsatisfied_parents.

2008-05-29 20:52  zmedico

	* pym/_emerge/__init__.py: Clean up reference to dropped_tasks when
	  finished.

2008-05-29 20:44  zmedico

	* pym/_emerge/__init__.py: When --skipfirst drops packages due to
	  unsatisfied dependencies, display
	  a warning message with the list of dropped packages.

2008-05-29 19:56  zmedico

	* pym/_emerge/__init__.py: Clean up exception reference from
	  previous commit.

2008-05-29 19:50  zmedico

	* pym/_emerge/__init__.py: Make --skipfirst handle missing
	  dependencies by dropping the merge tasks
	  that have missing dependencies. This involves creating an
	  entirely new
	  depgraph each time that a missing dependency is discovered. This
	  isn't
	  the most efficient approach but it's simple and it works well.
	  
	  This new behavior can server as a fix for bug #12768 by calling
	  emerge
	  --resume --skipfirst each time that emerge exits unsuccessfully.
	  This
	  was possible before, but now packages with unsatisfied
	  dependencies
	  will be properly identified and dropped from the list.

2008-05-29 05:23  zmedico

	* pym/portage/dbapi/vartree.py: Save the content of
	  CONFIG_MEMORY_FILE in dblink.treewalk() _before_
	  unmerging other instances, in order to avoid overwritting/undoing
	  the pruning that's done during unmerge.

2008-05-29 04:53  zmedico

	* pym/portage/dbapi/vartree.py: Make the unmerge time
	  CONFIG_MEMORY_FILE pruning slightly more aggressive,
	  so that anything not claimed by another package in the same slot
	  is
	  pruned.

2008-05-29 00:35  zmedico

	* pym/_emerge/__init__.py: Filter out installed keyword masked
	  packages when populating
	  RootConfig.visible_pkgs since otherwise such packages can trigger
	  undesireable results inside depgraph._iter_atoms_for_pkg().

2008-05-29 00:32  zmedico

	* pym/_emerge/__init__.py: Fix the code from bug #220341 so that it
	  matches the atom against the
	  installed package, like it's supposed to.

2008-05-28 22:12  zmedico

	* pym/_emerge/__init__.py: Skip redundant Atom construction in
	  select_package().

2008-05-28 22:06  zmedico

	* pym/_emerge/__init__.py: Update the fix from bug #220341 to
	  protect USE deps from being neglected.

2008-05-28 08:31  zmedico

	* pym/_emerge/__init__.py, pym/portage/__init__.py: Bug #223447 -
	  Adjust the "installed packages are masked" display to recognize
	  packages that are masked by keywords and are eligible for
	  uninstallation by
	  depclean. This is a workaround for the fact that depclean may
	  fail to
	  recognize that the package is eligible for uninstall due to
	  differences in
	  visibility filtering which can lead to differences in || dep
	  evaluation.
	  TODO: Share visibility code to fix this inconsistency.

2008-05-28 01:27  zmedico

	* bin/doman: Make the new behavior from bug #222439 conditional on
	  EAPI being something
	  other than 0 or 1.

2008-05-28 01:13  zmedico

	* pym/portage/output.py: Make set_term_size() handle the
	  CommandNotFound exception if stty
	  is missing for some reason.

2008-05-28 00:37  zmedico

	* bin/doman: Convert doman to use bash's =~ operator instead of
	  calling egrep.

2008-05-27 23:08  zmedico

	* bin/doman: Bug #222439 - Add doman support for foo.lang.N
	  filenames. Behavior is
	  as follows:
	  
	  foo.1 -> man/man1/foo.1
	  foo.lang.1 -> man/lang/man1/foo.1
	  
	  Thanks to Yuri Vasilevski for the initial patch. I've modified it
	  to
	  use bash's =~ operator and corresponding $BASH_REMATCH array.

2008-05-27 10:20  zmedico

	* pym/_emerge/__init__.py: Fix breakage due to frozenset being
	  immutable.

2008-05-27 07:53  zmedico

	* pym/portage/__init__.py: Fix typo.

2008-05-27 07:48  zmedico

	* pym/portage/__init__.py: Make config._init_dirs() preserver /tmp
	  and /var/tmp permissions if
	  those directories already exist. This gives freedom to the user
	  to
	  adjust permissions to suit their taste.

2008-05-27 06:22  zmedico

	* pym/_emerge/__init__.py: Fix a typo from the previous commit.

2008-05-27 06:08  zmedico

	* pym/_emerge/__init__.py: Use new Package.use and iuse attributes
	  to avoid extra split() calls.

2008-05-27 05:45  zmedico

	* pym/portage/dep.py: Set Atom.use = None when there are no USE
	  deps (instead of the empty
	  tuple returned from dep_getusedeps()).

2008-05-27 05:42  zmedico

	* pym/portage/__init__.py: Repoman only checks IUSE for USE deps,
	  so don't evaluate conditional USE deps
	  in this case.

2008-05-27 04:50  zmedico

	* pym/portage/dbapi/__init__.py: Fix dbapi._iter_match_use() to
	  escape IUSE values when necessary.

2008-05-27 04:37  zmedico

	* pym/_emerge/__init__.py: Fix breakage in the BlockerDB
	  constructor.

2008-05-27 04:10  zmedico

	* pym/portage/dep.py: Define __slots__ for the _use_dep class.

2008-05-27 04:04  zmedico

	* pym/_emerge/__init__.py, pym/portage/dep.py: Fix USE dep matching
	  support in match_from_list() so that it checks
	  to make sure the package supports all specified IUSE. This
	  involves
	  updating all Package, FakeVartree, and BlockerDB constructor
	  arguments to implement a Package.root_config attribute that's
	  used
	  to access implicit IUSE.

2008-05-27 00:49  zmedico

	* pym/_emerge/__init__.py: Bug #223685 - Use the finally clause to
	  collect elog messages just
	  before releasing the build dir lock, so they never get missed.

2008-05-27 00:10  zmedico

	* pym/_emerge/__init__.py: Add some debug output for arguments and
	  their associated atoms, to help in
	  debugging problems similar to bug #223735.

2008-05-26 23:22  zmedico

	* pym/portage/dbapi/vartree.py: Don't silently swallow instances of
	  UnpicklingError since they are easily
	  triggered by storing instances of custom classes in a pickle.

2008-05-26 23:16  zmedico

	* pym/_emerge/__init__.py, pym/portage/__init__.py: Don't silently
	  swallow instances of UnpicklingError since they are easily
	  triggered by storing instances of custom classes in a pickle.

2008-05-26 23:03  zmedico

	* pym/_emerge/__init__.py: Avoid triggering
	  "cPickle.UnpicklingError: Global and instance pickles
	  are not supported." errors that are triggered when the pickle
	  contains
	  custom classes.

2008-05-26 20:12  zmedico

	* bin/ebuild.sh: Skip source_all_bashrcs() when $EBUILD_PHASE is
	  not set.

2008-05-26 08:02  zmedico

	* pym/_emerge/__init__.py, pym/portage/__init__.py: * Enable
	  config.setcpv() to use a Package instance in place of a cpv.
	  * Make depgraph._select_package() pass Package instances into
	  setcpv() calls.
	  * Enable the Package constructor to use an iterable for metadata
	  items.

2008-05-26 00:34  zmedico

	* pym/portage/__init__.py: Fix a broken reference to the
	  Package.cpv_slot attribute.

2008-05-25 22:49  zmedico

	* pym/_emerge/__init__.py: Fix breakage in Package constructor
	  attribute initialization.

2008-05-25 22:33  zmedico

	* pym/_emerge/__init__.py: Remove unused code.

2008-05-25 21:57  zmedico

	* pym/_emerge/__init__.py: Use the metadata wrapper to initialize
	  Package slot and use attributes.

2008-05-25 21:45  zmedico

	* pym/_emerge/__init__.py: Remove the Package.cpv_slot attribute.

2008-05-25 21:34  zmedico

	* pym/_emerge/__init__.py, pym/portage/dep.py,
	  pym/portage/sets/base.py: * Add support for Package instances and
	  USE deps in match_from_list().
	  * Add USE dep matching support to depgraph._iter_atoms_for_pkg().

2008-05-25 08:45  zmedico

	* pym/_emerge/__init__.py, pym/portage/sets/base.py: * Fix
	  PackageSet.findAtomForPackage() to take a Package instance as
	  an argument.
	  * Simplify PackageSet.findAtomForPackage() by implementing it on
	  top
	  of iterAtomsForPackage().

2008-05-25 08:04  zmedico

	* pym/_emerge/__init__.py, pym/portage/sets/base.py: Facilitate
	  creation of Atom instances in a few obvious places:
	  
	  * PackageSet._setAtoms()
	  * AtomArg and PackageArg constructors.

2008-05-25 04:37  zmedico

	* pym/portage/dbapi/porttree.py: Remove redundant SLOT dep code in
	  portdbapi.xmatch() since it's now
	  handled by dbapi._iter_match().

2008-05-25 03:05  zmedico

	* pym/portage/versions.py: Remove category validation cruft from
	  catpkgsplit().

2008-05-25 02:56  zmedico

	* pym/portage/dep.py, pym/portage/tests/dep/test_isvalidatom.py:
	  Fix isvalidatom() so tests pass, and add a USE deps case to the
	  tests.

2008-05-25 02:20  zmedico

	* pym/portage/tests/__init__.py,
	  pym/portage/tests/dep/test_dep_getusedeps.py: * Fix
	  dep_getusedeps() test to work with tuples.
	  * Add test cases for conditional USE deps.

2008-05-25 01:44  zmedico

	* pym/portage/__init__.py, pym/portage/dep.py: Add support for
	  conditionals inside USE dependencies. This is useful
	  for cases in which the package satisfying a dependency should
	  have
	  identical or opposite flag state relative to the parent package.
	  
	  Conditionals are evaluated as follows:
	  
	  parent state conditional result
	  x [x?] [x]
	  -x [x?] [-x]
	  x [-x?] [-x]
	  -x [-x?] [x]

2008-05-24 22:24  zmedico

	* pym/portage/dep.py: Fix broken dep_getusedeps() cache behavior so
	  that it returns the
	  correct type.

2008-05-24 22:03  zmedico

	* pym/portage/__init__.py: For dep_expand() backward compatibility,
	  handle atoms with missing '='
	  prefix which did not raise an error here before the
	  portage.dep.Atom
	  class was introduced.

2008-05-24 21:33  zmedico

	* pym/portage/dep.py: Fix paren_reduce() so that it appropriately
	  raises an InvalidDependString()
	  in some cases, instead of a nonsense ValueError.

2008-05-24 21:23  zmedico

	* pym/portage/dep.py: Fix paren_reduce() so that it appropriately
	  raises an InvalidDependString()
	  in some cases, instead of a nonsense AttributeError.

2008-05-24 21:00  zmedico

	* pym/portage/dep.py: Fix use_reduce() so that it appropriately
	  raises an InvalidDependString
	  instead of an IndexError in some cases (avoid IndexError by using
	  slice
	  notation).

2008-05-24 20:35  zmedico

	* pym/_emerge/__init__.py, pym/portage/dbapi/vartree.py: Bug
	  #223417 - Make the vardbapi.cpv_all() use_cache parameter useful
	  for forcing direct os.listdir() calls. This is more of an issue
	  now
	  that these listdir() calls are frequently triggered when merging
	  packages (due to things like blocker and preserve-libs handling).

2008-05-24 19:22  zmedico

	* pym/portage/__init__.py: Bug #223417 - use floating point mtime
	  for finer grained validation in
	  cachedir().

2008-05-23 18:51  zmedico

	* pym/portage/dbapi/vartree.py: Bug #220671 - Fix 'RuntimeError:
	  Set changed size during iteration' error.

2008-05-23 08:42  zmedico

	* bin/repoman, pym/_emerge/__init__.py, pym/portage/__init__.py,
	  pym/portage/dbapi/__init__.py, pym/portage/dbapi/porttree.py,
	  pym/portage/dbapi/vartree.py, pym/portage/dep.py: Bug #2272 -
	  Extend dependency atom sytax to specify enabled or disabled
	  states of USE flags. Matching with the new syntax is currently
	  only
	  supported in the dbapi classes and dependency resolver (use
	  matching
	  does not work yet in config files such as package.mask).

2008-05-21 16:05  genone

	* pym/portage/sets/files.py: Raise an error if the named repository
	  doesn't exist

2008-05-20 19:42  zmedico

	* bin/prepalldocs: When using vecho or eqawarn it comes in handy
	  when isolated-functions
	  have been sourced. (branches/prefix r10380)

2008-05-20 03:06  zmedico

	* pym/portage/dbapi/vartree.py: Simplify cache code in
	  vardbapi.aux_get().

2008-05-20 01:51  zmedico

	* pym/portage/dbapi/vartree.py: In vardbapi.aux_get(), don't mark
	  cacheed metadata invalid just because
	  some of the values are missing.

2008-05-20 01:13  zmedico

	* pym/portage/dbapi/vartree.py: Inside vardbapi.aux_get(), do more
	  validation on the cache data to
	  ensure it contains the expected data types.

2008-05-19 23:39  zmedico

	* pym/portage/__init__.py: Adjust code order to organize it a bit.
	  (branches/2.1.2 r10371)

2008-05-19 23:19  zmedico

	* pym/portage/__init__.py: Validate and normalize target_root
	  earlier in the config constructor.

2008-05-19 23:06  zmedico

	* pym/portage/dbapi/vartree.py: Fix vardbapi.aux_get() logic so
	  that it will correctly pull the metadata
	  value corresponding to an unrecognized metadata key.

2008-05-19 20:29  zmedico

	* pym/portage/__init__.py: Exclude "env" from use in variable
	  substitution since we want to avoid
	  any interaction with the calling environment that might lead to
	  unexpected results.

2008-05-18 22:43  zmedico

	* pym/_emerge/__init__.py: In unmerge(), flush the vardbapi
	  aux_get() cache to disk before releasing
	  the vardb lock.

2008-05-18 22:27  zmedico

	* pym/portage/dbapi/vartree.py: Tweak vardbapi.aux_get() cache
	  logic a bit.

2008-05-18 22:18  zmedico

	* pym/portage/dbapi/vartree.py: * To avoid excessive IO on each
	  call to LinkageMap.rebuild(), cache
	  NEEDED.* files via vardbapi.aux_get().
	  
	  * Make vardbapi.aux_get() preserve newlines in multi-line
	  metadata
	  such as NEEDED.* and CONTENTS.

2008-05-18 19:00  zmedico

	* man/emerge.1: Bug #222623 - Use "regardless" instead of
	  "irregardless" since the latter
	  is considered to be incorrect.

2008-05-17 22:44  zmedico

	* pym/portage/__init__.py: Add the environment and some more files
	  to the existing make.defaults
	  variable substitution support. Variable substitution occurs in
	  the following order:
	  
	  * env.d
	  * env
	  * make.globals
	  * make.defaults
	  * make.conf

2008-05-17 19:55  zmedico

	* pym/_emerge/__init__.py: Fix th logic from the previous commit.

2008-05-17 18:49  zmedico

	* pym/_emerge/__init__.py: Add back the "install new portage asap"
	  behavior that got lost when that
	  area of code was rewritten.

2008-05-16 21:41  zmedico

	* pym/portage/dbapi/porttree.py: Detect and filter ebuilds that
	  have invalid versions in portdbapi.cp_list().

2008-05-16 05:54  zmedico

	* bin/repoman: Add dev-util/ftjam to the RDEPEND.suspect list as
	  per bug #221537, comment #3.
	  Leaving dev-util/jam in place, in case it revives somehow.

2008-05-14 18:56  zmedico

	* RELEASE-NOTES: Add a note about interaction between
	  FEATURES="metadata-transfer"
	  and eclasses from PORTDIR_OVERLAY that override eclasses from
	  PORTDIR.

2008-05-14 18:04  zmedico

	* bin/repoman: Skip blocker atoms for the RDEPEND.suspect check.

2008-05-14 17:53  zmedico

	* bin/repoman, man/repoman.1: Bug #221537 - Add a new
	  "RDEPEND.suspect" check for packages in RDEPEND that
	  usually only belong in DEPEND.

2008-05-13 22:50  genone

	* pym/portage/output.py: add xterm-color and interix to list of
	  valid terminals

2008-05-13 22:44  genone

	* pym/_emerge/__init__.py: Remove 'eselect compiler' references

2008-05-13 22:41  genone

	* bin/ebuild.sh: Prefer deb2tgz over ar for unpacking .deb files
	  when installed (patch by Fabian Groffen,
	  http://archives.gentoo.org/gentoo-portage-dev/msg_2f9c8543016f1a96f9122aca0ec35ded.xml)

2008-05-13 22:38  genone

	* pym/portage/sets/libs.py: make debug mode configurable

2008-05-13 22:33  genone

	* bin/repoman, pym/portage/sets/libs.py, pym/repoman/utilities.py:
	  Add subversion support for repoman (patch by Fabien Groffen,
	  http://archives.gentoo.org/gentoo-portage-dev/msg_b7080f212c3eb09c943a1ce5a7356f01.xml)

2008-05-13 20:05  genone

	* pym/portage/dbapi/vartree.py: ignore consumers from the current
	  package instance when checking if a preserved library can be
	  removed

2008-05-13 19:36  genone

	* pym/portage/versions.py: Check vercmp() return value to avoid
	  arbitrary results in case it returns None

2008-05-13 12:32  vapier

	* man/make.conf.5: fix man markup for PORTAGE_FETCH_RESUME_MIN_SIZE

2008-05-13 06:17  zmedico

	* doc/dependency_resolution/package_modeling.docbook: capitalize
	  Portage

2008-05-13 06:12  zmedico

	* doc/dependency_resolution/package_modeling.docbook: Describe how
	  we limit the probability that temporary simultaneous
	  installation of blocking packages will cause some sort of
	  problem.

2008-05-13 03:38  zmedico

	* man/make.conf.5: Bug #220533 - Document FEATURES="skiprocheck".

2008-05-12 23:01  zmedico

	* pym/_emerge/__init__.py: Define the world_candidates variable
	  earlier to make sure it's in scope.

2008-05-12 22:58  zmedico

	* pym/_emerge/__init__.py: Filter sets that are not "world
	  candidates" from the favorites list at
	  the last moment since the favorites list needs to be complete for
	  depgraph.loadResumeCommand() to operate correctly.

2008-05-12 22:21  zmedico

	* pym/_emerge/__init__.py: In the warning about eclasses in overlay
	  overriding eclasses from PORTDIR,
	  also advise the user to add FEATURES="metadata-transfer" to
	  make.conf.

2008-05-12 16:47  genone

	* pym/_emerge/__init__.py: don't add package sets to 'world' that
	  have world-candidate=False

2008-05-11 23:56  zmedico

	* pym/portage/__init__.py: Simplify the code for bug #221755 now
	  that the substitution map is updated
	  automatically by getconfig().

2008-05-11 23:51  zmedico

	* pym/portage/__init__.py, pym/portage/util.py: Make the variable
	  substitution code for bug #221755 slightly more efficient
	  by allowing getconfig() to directly update the map that's used
	  for
	  substitutions.

2008-05-11 23:45  zmedico

	* pym/portage/__init__.py, pym/portage/util.py: Fix the variable
	  subsitution code from bug #221755 so that variable
	  assignments from earlier files don't leak into variable
	  assignments
	  from later files (except through substitution).

2008-05-11 23:22  zmedico

	* pym/portage/__init__.py, pym/portage/util.py: Bug #221755 -
	  Enable variable substitution in make.defaults to work accross
	  multiple files instead of being confined to a single file. This
	  allows
	  profiles to create incremental-like behavior with non-incremental
	  variables
	  when desired.

2008-05-11 19:37  zmedico

	* cnf/make.conf: Add back the warning for DISTDIR about storing
	  stuff inside PORTDIR.

2008-05-11 19:35  zmedico

	* cnf/make.conf: Sync make.conf.example with make.conf.5 for bug
	  #220111.

2008-05-11 19:21  zmedico

	* man/make.conf.5: Bug #220111 - Update the DISTDIR docs to clarify
	  that it's safe to remove
	  any and all files from this location after packages are built.

2008-05-11 18:25  zmedico

	* man/emaint.1: Make the summary more accurate.

2008-05-10 18:12  zmedico

	* pym/_emerge/__init__.py: If the uninstall task did not need to be
	  executed because
	  of an upgrade, display Blocker -> Upgrade edges since the
	  corresponding Blocker -> Uninstall edges will not be shown.

2008-05-10 17:09  zmedico

	* doc/dependency_resolution/package_modeling.docbook: eachother ->
	  each other

2008-05-10 08:47  zmedico

	* pym/_emerge/__init__.py: Always include satisfied blockers as an
	  indicator that blocking
	  packages will be temporarily installed simultaneously.

2008-05-10 08:35  zmedico

	* pym/_emerge/__init__.py: When selecting leaf nodes, if there is a
	  mix of merge and uninstall
	  nodes, save the uninstall nodes from later since sometimes a
	  merge
	  node will render an install node unnecessary, and we want to
	  avoid
	  doing a separate uninstall task in that case.

2008-05-10 08:07  zmedico

	* pym/_emerge/__init__.py: Fix another KeyError, reported in Bug
	  #221107, comment #4. There's no need
	  to remove uninstall tasks from scheduled_uninstalls, so just keep
	  them
	  in there.

2008-05-09 19:12  zmedico

	* pym/_emerge/__init__.py: Bug #221053 - Save the resume list
	  before verifying the ebuild Manifests
	  since it might be possible for the user to use --resume
	  --skipfirst get
	  past a non-essential package with a broken digest.

2008-05-09 19:04  zmedico

	* pym/_emerge/__init__.py: Bug #221071 - Prevent display_problems()
	  from redundantly displaying
	  the exact same merge list a second time.

2008-05-09 18:36  zmedico

	* pym/_emerge/__init__.py: Bug #221107 - Fix
	  depgraph._serialize_tasks() so that it doesn't
	  try to schedule an uninstall task that's already been scheduled
	  but hasn't been executed yet due to dependence on installation of
	  blocking packages.

2008-05-09 15:49  zmedico

	* doc/dependency_resolution/package_modeling.docbook: Describe how
	  file collisions between blocking packages are resolved when
	  they are temporarily installed simultaneously.

2008-05-09 08:45  zmedico

	* pym/_emerge/__init__.py: Simplify code for derived Package
	  attributes.

2008-05-09 04:17  zmedico

	* pym/_emerge/__init__.py, pym/portage/dbapi/vartree.py: For the
	  "blockers" parameter that's passed into the dblink constructor
	  now, make it a callable since it really shouldn't be called until
	  the
	  vdb lock has been acquired.

2008-05-09 03:41  zmedico

	* pym/_emerge/__init__.py: If an uninstall task fails inside
	  MergeTask.merge(), use an UninstallFailure
	  exception to handle it instead of allowing unmerge() to call
	  exit().

2008-05-09 03:00  zmedico

	* pym/_emerge/__init__.py: Use set.instersection() instead of a for
	  loop.

2008-05-09 02:28  zmedico

	* pym/_emerge/__init__.py: Allow scheduled uninstalls to be
	  selected the same way as other leaf nodes.

2008-05-09 02:14  zmedico

	* pym/_emerge/__init__.py: Make the fix for bug #220341 better by
	  checking all selected packages for
	  matching cpv rather than just the last one.

2008-05-09 01:49  zmedico

	* pym/_emerge/__init__.py: Optimize
	  BlockerDB.findInstalledBlockers() so that it doesn't
	  unnecessarily
	  try to match packages against an empty set of blocker atoms.

2008-05-08 21:51  zmedico

	* pym/_emerge/__init__.py: Bug #220987 - Fix UnboundLocalError for
	  'skip' that only occurs when
	  using alternate ROOT. Thanks to Ryan Tandy <tarpman@gmail.com>.

2008-05-08 21:18  zmedico

	* pym/portage/dbapi/vartree.py: Make some confmem behavior
	  modifications in order to try and make it
	  less confusing for people who have forgotten about the
	  --noconfmem
	  option or are completely unaware of it. Thanks to Joe Peterson
	  <lavajoe@gentoo.org> for suggesting these:
	  
	  * Always behave like --noconfmem is enabled for downgrades.
	  
	  * Purge confmem entries when a package is unmerged rather
	  than replaced.

2008-05-08 19:46  zmedico

	* pym/_emerge/__init__.py: Remove stale uninstall tasks from
	  scheduled_uninstalls when necessary.

2008-05-08 19:03  zmedico

	* pym/_emerge/__init__.py: Remove unnecessary BlockerDB and
	  BlockerCache _installed_pkgs attributes.

2008-05-08 18:35  zmedico

	* pym/_emerge/__init__.py: Don't save "uninstall" tasks in the
	  resume list since they'll be regenerated
	  by dependency calculations upon resume.

2008-05-08 17:37  zmedico

	* pym/_emerge/__init__.py: Bug #220341 - USE=multislot can make an
	  installed package appear as if
	  it doesn't satisfy a slot dependency. Rebuilding the ebuild won't
	  do
	  any good as long as USE=multislot is enabled since the newly
	  built
	  package still won't have the expected slot. Therefore, assume
	  that
	  such SLOT dependencies are already satisfied rather than forcing
	  a
	  rebuild.

2008-05-08 17:08  zmedico

	* bin/dodoc: Bug #220775 - Source isolated-functions.sh before
	  trying to call vecho.

2008-05-08 16:52  zmedico

	* pym/_emerge/__init__.py: Bug #220689 - Fix package selection
	  logic so that it doesn't trigger the
	  code path from bug 219369 in some unwanted cases.

2008-05-08 10:33  zmedico

	* pym/portage/dbapi/vartree.py: Don't use try/finally to close
	  atomic_ofstream since we don't want to
	  call close() on this stream if an error occurs.

2008-05-08 09:26  zmedico

	* pym/_emerge/__init__.py: Fix findInstalledBlockers() to check for
	  blockers in both directions.

2008-05-08 07:48  zmedico

	* doc/dependency_resolution/task_scheduling.docbook,
	  pym/_emerge/__init__.py, pym/portage/__init__.py,
	  pym/portage/dbapi/vartree.py: Instead of doing automatic
	  uninstalls in advance, install conflicting
	  packages first and then do the uninstall afterwards. This
	  requires
	  special handling for file collisions occur, but it's preferred
	  because it ensures that package files remain installed in a
	  usable
	  state whenever possible.
	  
	  When file collisions occur between conflicting packages, the
	  contents
	  entries for those files are removed from the packages that are
	  scheduled for uninstallation. This prevents uninstallation
	  operations
	  from removing overlapping files that have been claimed by
	  conflicting
	  packages.

2008-05-07 18:49  zmedico

	* pym/_emerge/__init__.py: Tolerate InvalidDependString exceptions
	  when checking visibility of
	  installed packages.

2008-05-07 17:06  zmedico

	* man/color.map.5: Fix spelling of "SATISFIED". Thanks to Arfrever.

2008-05-06 20:26  zmedico

	* bin/misc-functions.sh: In install_mask(), discard stderr messages
	  from the 'find' command
	  since some tokens from INSTALL_MASK can trigger lots of warnings
	  and errors that are irrelevant for our purposes.

2008-05-06 01:34  zmedico

	* man/color.map.5, pym/portage/output.py: Make satisfied blockers
	  "darkblue" by default.

2008-05-06 00:36  zmedico

	* pym/_emerge/__init__.py: For consistency with the merge list
	  display, show "block" instead
	  of "blocker" in the summary.

2008-05-06 00:12  zmedico

	* man/color.map.5, pym/_emerge/__init__.py, pym/portage/output.py:
	  Display satisfied blockers in green and show a small "b" instead
	  of a
	  big "B" (similar to "f" for satisfied fetch restrictions).

2008-05-05 21:50  zmedico

	* bin/misc-functions.sh: Use find -path -or -name to match
	  basenames of files in INSTALL_MASK
	  as suggested by solar in bug #219286, comment #8.

2008-05-05 21:06  zmedico

	* pym/_emerge/__init__.py: Cache results for Task.__hash__() calls.

2008-05-05 19:29  zmedico

	* pym/portage/dbapi/vartree.py: Use vardbapi._excluded_dirs to
	  filter results inside cp_list().

2008-05-05 19:22  zmedico

	* pym/portage/dbapi/vartree.py: Add -MERGING-.* to
	  vardbapi._excluded_dirs.

2008-05-05 18:40  zmedico

	* pym/portage/dbapi/vartree.py: * In vardbapi.cpv_all() use
	  catpkgsplit() for validation since that's what
	  with cp_all() uses.
	  * Use the listdir() dirsonly=1 parameter to avoid unnecessary
	  stat calls
	  via os.path.isdir().

2008-05-05 16:55  zmedico

	* pym/portage/dbapi/vartree.py: Handle a potential InvalidData
	  exception in vardbapi.cp_all().

2008-05-05 08:58  genone

	* pym/portage/dbapi/vartree.py: fix preserve_libs logic to properly
	  account for the current package instance

2008-05-05 06:35  zmedico

	* pym/portage/const.py: Add "package" to EBUILD_PHASES since it's
	  possible for einfo to be called
	  by install_mask() during that phase.

2008-05-05 05:56  zmedico

	* bin/isolated-functions.sh, pym/portage/__init__.py: Bug #219286 -
	  Whitelist INSTALL_MASK so that it works properly for binary
	  packages. Also, filter INSTALL_MASK when saving or loading
	  environment.bz2.
	  This also applies to PKG_INSTALL_MASK and DOC_SYMLINKS_DIR, so
	  add them
	  too.

2008-05-05 05:07  zmedico

	* pym/_emerge/__init__.py: * Fix --buildpkgonly logic to avoid an
	  unwanted code path.
	  * Remove unnecessary mtimedb.pop("resume", None) call.

2008-05-05 04:44  zmedico

	* pym/portage/dbapi/vartree.py: Bug #220171 - Filter out
	  'lost+found' directories in vardbapi.cpv_all()
	  in order to avoid fatal 'Permission denied' errors. Currently,
	  CVS and
	  names beginning with '.' are also filtered.

2008-05-05 03:30  zmedico

	* pym/_emerge/__init__.py: Use writemsg() to warn about
	  InvalidDependString exceptions that may
	  occur for installed packages.

2008-05-05 03:27  zmedico

	* pym/_emerge/__init__.py: Use a separate digraph to preserve
	  irrelevant blocker relationships that
	  are removed from depgraph._blocker_parents since the irrelevant
	  blockers
	  are still needed for the blocker cache.

2008-05-05 03:18  zmedico

	* pym/_emerge/__init__.py: Fix misplaced variable.

2008-05-04 19:41  zmedico

	* pym/_emerge/__init__.py, pym/portage/const.py: In the package
	  uninstall sanity check, use RDEPEND from the currently
	  running 'sys-apps/portage' instance to create a set of protected
	  atoms.

2008-05-04 14:16  genone

	* pym/portage/dbapi/vartree.py: actually remove libraries that
	  aren't strictly needed from the preservation candidate list

2008-05-04 13:00  genone

	* pym/portage/dbapi/vartree.py: remove NEEDED from list of metadata
	  variables (and associated special handling) as it's no longer
	  used

2008-05-04 12:55  genone

	* pym/portage/dbapi/vartree.py: remove obsolete class

2008-05-04 08:06  zmedico

	* pym/_emerge/__init__.py: Similar to the sys-apps/portage
	  protection, also add protection against
	  inappropriately uninstalling either app-shells/bash or
	  dev-lang/python.

2008-05-04 06:39  zmedico

	* pym/_emerge/__init__.py: Do more validation of resume data from
	  the mtimedb.

2008-05-04 05:25  zmedico

	* pym/_emerge/__init__.py: In order to fix --tree display behave
	  normally in --resume mode,
	  properly add to the digraph all packages matched by arguments.

2008-05-04 04:20  zmedico

	* pym/_emerge/__init__.py: Fix misplaced variable used as parameter
	  to _load_favorites().

2008-05-04 03:46  zmedico

	* pym/_emerge/__init__.py: Fix package counters in
	  depgraph.display() so they're only incremented
	  for "ordered" display nodes.

2008-05-04 03:24  zmedico

	* pym/_emerge/__init__.py: Fix some unwanted interaction between
	  --tree display and unsatisfied
	  blockers in depgraph.display().

2008-05-04 02:09  zmedico

	* pym/_emerge/__init__.py: Remove obsolete tuple() usage inside
	  depgraph.display().

2008-05-04 01:48  zmedico

	* pym/_emerge/__init__.py: Fix spelling of
	  _show_unsatisfied_blockers().

2008-05-04 01:04  zmedico

	* pym/_emerge/__init__.py: In BlockerData._load(), salvage as much
	  cache as possible when some
	  seems to be corrupt.

2008-05-04 00:48  zmedico

	* pym/_emerge/__init__.py: Validate all the data types inside
	  BlockerCache._load() so that
	  any corruption is detected as soon as possible.

2008-05-03 23:09  zmedico

	* pym/_emerge/__init__.py: When a resume list is rejected, display
	  the invalid resume list data
	  in case the user is interested. This is enabled with --verbose or
	  --debug.

2008-05-03 21:57  zmedico

	* pym/_emerge/__init__.py: When a --resume list is rejected due to
	  unsatisfied deps, display a
	  list of missing deps and which packages they belong to.

2008-05-03 21:22  zmedico

	* pym/_emerge/__init__.py: Don't clean out old resume lists when in
	  --ask or --pretend mode.

2008-05-03 21:08  zmedico

	* pym/_emerge/__init__.py: When loadResumeCommand() rejects a
	  resume list, give a more informative
	  explanation.

2008-05-03 19:48  zmedico

	* pym/_emerge/__init__.py: Fix display_problems() logic some more.

2008-05-03 19:39  zmedico

	* pym/_emerge/__init__.py: Fix logic so display_problems() gets
	  called every time display() does.

2008-05-03 19:00  zmedico

	* pym/_emerge/__init__.py: Improve --resume handling of saved
	  "favorites" argument atoms:
	  
	  * Save the favorites in oneshot mode too since they're still
	  useful for
	  restoring state upon --resume.
	  
	  * Add a depgraph._load_favorites() method to resume state from a
	  previous
	  select_files() call. This allows Package instances to be matched
	  with
	  DependencyArg instances during graph creation.

2008-05-03 08:21  zmedico

	* pym/_emerge/__init__.py: * Move circular deps and blocker
	  displays to depgraph.display_problems().
	  * Always call display_problems() since calling it from inside
	  display()
	  can lead to unwanted recursion.

2008-05-03 05:53  zmedico

	* pym/_emerge/__init__.py: Similar to the circular dependency
	  display, handle the unsatisfied blocker
	  display inside _serialize_tasks() since that's a convenient place
	  to bail
	  out.

2008-05-03 04:16  zmedico

	* bin/emerge-webrsync: Use absolute paths for files in ${DISTDIR}.
	  Thanks to RB <aoz.syn@gmail.com>
	  for this patch.

2008-05-03 04:13  zmedico

	* bin/emerge-webrsync: Buf #219294 - Fix 'date' and 'cut' arguments
	  for BSD userland. Thanks to
	  RB <aoz.syn@gmail.com> for this patch.

2008-05-03 03:47  zmedico

	* pym/_emerge/__init__.py: Also move mtimedb resume list validation
	  earlier.

2008-05-03 03:43  zmedico

	* pym/_emerge/__init__.py: Move --resume options handling to the
	  beginning of action_build() so
	  that the current options are updated with the saved options as
	  soon
	  as possible.

2008-05-03 03:27  zmedico

	* pym/_emerge/__init__.py: Make --nodepa automatically disable
	  --tree.

2008-05-03 02:55  zmedico

	* pym/_emerge/__init__.py: Fix depgraph.loadResumeCommand() to
	  identify an unsatisfied dependency
	  and invalidate the resume list in that case.

2008-05-03 02:24  zmedico

	* pym/_emerge/__init__.py: Delete the resume list(s) if there is an
	  unsatisfied block.

2008-05-03 02:17  zmedico

	* pym/_emerge/__init__.py: Add --nodeps to the parallel-fetch
	  --resume options since recalculation of
	  deps is a a waste here.

2008-05-03 02:14  zmedico

	* pym/_emerge/__init__.py: Fix --resume mode to check for
	  unsatisfied blockers and bail out when
	  necessary.

2008-05-03 01:42  zmedico

	* pym/_emerge/__init__.py: * Check for masked packages in the
	  --resume merge list and bail
	  out in that case (bug #199408).
	  
	  * In depgraph.loadResumeCommand(), create a dependency graph from
	  the resume list. This ensures that the merge list has it's
	  dependencies satisfied. It also enables --tree display together
	  with --resume.

2008-05-02 22:32  zmedico

	* pym/_emerge/__init__.py: Add a PackageVirtualDbapi.__iter__()
	  method and use it to iterate over
	  all installed packages in depgraph.validate_blockers().

2008-05-02 22:11  zmedico

	* pym/_emerge/__init__.py: Use match_pkgs() to simplify package
	  comparison.

2008-05-02 21:47  zmedico

	* pym/_emerge/__init__.py: Move the blocker cache validation into
	  depgraph.validate_blockers().

2008-05-02 21:09  zmedico

	* pym/_emerge/__init__.py: In depgraph.validate_blockers(), discard
	  any "uninstall" tasks scheduled
	  by previous calls, since those tasks may not make sense given the
	  current
	  graph state.

2008-05-02 20:30  zmedico

	* pym/_emerge/__init__.py: When searching for a "sys-apps/portage"
	  installation task, use match_pkgs()
	  instead of sequential search.

2008-05-02 20:16  zmedico

	* pym/_emerge/__init__.py: Use Package.cp attribute instead of
	  calling cpv_getkey().

2008-05-02 19:58  zmedico

	* pym/_emerge/__init__.py: Use Package instance attributes to clean
	  up and simplify
	  depgraph.validate_blockers().

2008-05-02 19:20  zmedico

	* pym/_emerge/__init__.py: In depgraph._serialize_tasks(), filter
	  "nomerge" nodes at a more appropriate
	  place.

2008-05-02 19:02  zmedico

	* pym/_emerge/__init__.py: In depgraph._complete_graph(), use
	  cached Package instances instead
	  of constructing new ones.

2008-05-02 18:27  zmedico

	* pym/_emerge/__init__.py: Validate resume list data some more.

2008-05-02 17:47  zmedico

	* pym/_emerge/__init__.py: Clean up merge list handling:
	  * In depgraph.loadResumeCommand(), populate
	  _serialized_tasks_cache so that
	  it can be returned from depgraph.altlist().
	  * Handle --skipfirst instide depgraph.loadResumeCommand(), and
	  fix it to skip
	  the first "merge" task and never skip "uninstall" tasks.
	  * Always get the merge list from depgraph.altlist() instead of
	  using
	  the mtimedb directly. The list returned from depgraph.altlist()
	  contains Package instances with cached metadata.
	  * Remove obsolete code from depgraph.display() and
	  MergeTask.merge() since
	  the merge list always comes from depgraph.altlist() now, and
	  never directly
	  from the mtimedb.

2008-05-02 10:46  genone

	* doc/config/sets.docbook: Update documentation for package set
	  configuration. Original patch by Arfrever Frehtes Taifersar
	  Arahesis

2008-05-02 10:04  genone

	* bin/misc-functions.sh, pym/portage/dbapi/vartree.py: rename
	  NEEDED.2 to NEEDED.ELF.2 to allow other ABI formats to use a
	  different syntax

2008-05-02 09:35  genone

	* pym/portage/dbapi/vartree.py: fix typo

2008-05-02 09:28  genone

	* pym/portage/dbapi/vartree.py: use special symlink comparison code
	  (original patch from prefix r9499)

2008-05-02 08:20  genone

	* cnf/sets.conf, pym/_emerge/__init__.py,
	  pym/portage/dbapi/vartree.py, pym/portage/sets/dbapi.py,
	  pym/portage/sets/libs.py: v2 of FEATURES=preserved-libs, using
	  LinkageMap instead of the now removed LibraryPackageMap class

2008-05-02 05:09  genone

	* pym/_emerge/__init__.py: do not consider sets to be installed
	  that are about to be unmerged

2008-05-02 05:00  genone

	* pym/_emerge/__init__.py: move cleaning of sets out of package
	  loop

2008-05-02 04:57  genone

	* pym/_emerge/__init__.py, pym/portage/sets/base.py: properly
	  remove sets from 'world' when unmerging

2008-05-02 04:17  genone

	* cnf/sets.conf, pym/_emerge/__init__.py,
	  pym/portage/sets/__init__.py, pym/portage/sets/base.py: add
	  config option for package sets to not be recorded in 'world'

2008-05-02 03:24  genone

	* pym/portage/sets/__init__.py: check if a given package set is
	  defined more than once

2008-05-02 03:23  genone

	* pym/portage/sets/files.py: remove 'sets/' name-prefix for
	  file-based package sets

2008-05-02 03:23  zmedico

	* pym/_emerge/__init__.py: Fix broken variable references found by
	  pyflakes.

2008-05-02 02:56  zmedico

	* bin/emerge-webrsync: Skip group/owner tarsync options for tarsync
	  if chown on /usr/portage
	  fails, since the user might still be able to sync even though the
	  chown call is not permitted.

2008-05-02 02:53  genone

	* pym/portage/__init__.py: check if PORTAGE_TMPDIR is mounted
	  readonly/noexec (bug #219957)

2008-05-02 02:27  zmedico

	* bin/emerge-webrsync: Bug #219837 - Adjust date calculations some
	  more and show an
	  informative ewarn message when bailing out due to a newer
	  snapshot being unavailable.

2008-05-01 20:33  zmedico

	* pym/_emerge/__init__.py: Fix variable rename breakage: pkg ->
	  pkg.cpv

2008-05-01 19:15  zmedico

	* pym/_emerge/__init__.py: When adding blockers for installed
	  packages to the graph, use cached
	  Package instances instead of constructing new ones.

2008-05-01 07:26  zmedico

	* bin/emerge-webrsync: Detect an old version of tarsync and use
	  bzip2 compression in that case.

2008-05-01 05:42  zmedico

	* pym/_emerge/__init__.py: Sort blockers when caching them.

2008-05-01 05:30  zmedico

	* pym/_emerge/__init__.py: Don't add blockers to the graph more
	  times than necessary.

2008-05-01 04:17  zmedico

	* pym/_emerge/__init__.py: * Add a Package.operation attribute and
	  use it to distinguish "uninstall"
	  operations.

2008-04-30 18:25  zmedico

	* bin/emerge-webrsync: Bug #219837 - Adjust date calculations to
	  improve accuracy.

2008-04-30 09:00  zmedico

	* pym/_emerge/__init__.py: Handle a KeyError when validating the
	  blocker cache.

2008-04-30 08:46  zmedico

	* pym/_emerge/__init__.py: Fix broken comparison, compare with None
	  instead of nonzero.

2008-04-30 08:40  zmedico

	* pym/_emerge/__init__.py: Fix logic to re-use blockers from the
	  graph when populating the blocker cache.

2008-04-30 08:30  zmedico

	* pym/_emerge/__init__.py, pym/portage/__init__.py: * Fix
	  dep_check() so that it doesn't expand virtual blockers since the
	  un-expanded virtual atom is more useful for maintaining a cache
	  of
	  blocker atoms.
	  
	  * Expand virtual blockers in depgraph.validate_blockers(), since
	  it's
	  not done by dep_check() anymore.
	  
	  * If blocker data from the graph is available, use it to validate
	  the
	  blocker cache and update the cache if it seems invalid.
	  
	  * Make BlockerCache._load() more tolerant to installs/uninstalls
	  so
	  so that cache isn't rebuilt every time.

2008-04-30 00:09  zmedico

	* pym/_emerge/__init__.py: Fix "deep" logic in
	  depgraph._complete_graph() so that it always
	  properly recognizes whether or not "deep" was previously enabled.

2008-04-29 18:02  zmedico

	* pym/_emerge/__init__.py: Make unmerge() group packages by cat/pn
	  when the order doesn't matter, so
	  the display appears like earlier versions of portage.

2008-04-29 03:13  zmedico

	* pym/_emerge/__init__.py: Prevent some more visible downgrades
	  from possibly being missed (bug #219369).

2008-04-29 03:02  zmedico

	* pym/_emerge/__init__.py: Prevent some more visible downgrades
	  from possibly being missed (bug #219369).

2008-04-28 22:22  zmedico

	* pym/_emerge/__init__.py: Handle a potential KeyError in
	  depgraph.display() when in --resume mode
	  and a package scheduled for uninstall is no longer installed.

2008-04-28 21:15  zmedico

	* pym/_emerge/__init__.py: When a package scheduled for uninstall
	  isn't installed anymore, move
	  on to the next task.

2008-04-28 20:44  zmedico

	* pym/_emerge/__init__.py: Fix spelling.

2008-04-28 20:29  zmedico

	* pym/_emerge/__init__.py: Add a Package.pv_split attibute to
	  optimize version comparison
	  operators.

2008-04-28 17:33  zmedico

	* pym/portage/dbapi/vartree.py: For bug #211833, be explicit that
	  the pkg_prerm() and pkg_postrm() removal
	  phases are the ones that are skipped.

2008-04-28 17:20  zmedico

	* pym/portage/dbapi/vartree.py: As suggested by Chr. Schaefer in
	  bug #211833, comment #15, note that
	  removal of the environment.bz2 file is preferred since it may
	  allow the
	  removal phases to execute successfully.

2008-04-28 06:00  zmedico

	* pym/_emerge/__init__.py: Add comma to ("__weakref__",) so that
	  it's a tuple instead of a string.
	  Thanks to ferringb.

2008-04-28 03:35  zmedico

	* pym/portage/dbapi/vartree.py: Try to format the elog message
	  better for bug #211833, separating
	  paragraphs for easier reading.

2008-04-28 02:34  zmedico

	* pym/portage/manifest.py: Use write_atomic() for manifest updates.

2008-04-28 02:03  zmedico

	* pym/_emerge/__init__.py: Fix PackageVirtualDbapi.cpv_inject() to
	  make sure packages with duplicate
	  cpv or slot are handled correctly.

2008-04-28 01:22  zmedico

	* pym/portage/dbapi/vartree.py: Bug #211833 - When an ebuild
	  removal phase fails, notify the user that
	  removal of environment.bz2 file will cause the ebuild to be
	  sourced and
	  eclasses from the current portage tree will be used when
	  necessary.

2008-04-28 01:02  zmedico

	* pym/_emerge/__init__.py: Add missing slot comparison when looking
	  for higher slot in
	  _iter_atoms_for_pkg().

2008-04-28 00:52  zmedico

	* pym/_emerge/__init__.py: Bug #218854 - Fix
	  depgraph._iter_atoms_for_pkg() so that argument atoms
	  only match the highest visible slot.

2008-04-27 21:25  zmedico

	* pym/repoman/checks.py: Fix the EbuildQuote check to ignore "echo"
	  and the elog functions since
	  people might not want quotes in those cases.

2008-04-27 20:52  zmedico

	* pym/_emerge/__init__.py: * Remove the only remaining sys.exit()
	  calls inside the depgraph class.
	  * Fix _unknown_internal_error() to work with zero arguments.

2008-04-27 20:15  zmedico

	* pym/_emerge/__init__.py: Never uninstall sys-apps/portage except
	  through replacement.

2008-04-27 19:52  zmedico

	* pym/_emerge/__init__.py: Bug #219369 - Enable automatic upgrage
	  or downgrade to a version
	  with visible KEYWORDS when the installed version is masked by
	  KEYWORDS, but never reinstall the same exact version only due to
	  a KEYWORDS mask.

2008-04-27 09:19  genone

	* bin/misc-functions.sh: fix logic error

2008-04-27 08:56  genone

	* bin/misc-functions.sh: actually use rpath for the internal lib
	  check

2008-04-27 08:22  genone

	* bin/misc-functions.sh: some minor code fixes

2008-04-27 07:22  zmedico

	* pym/_emerge/__init__.py: Take the classes that initialize
	  variables in __slots__ with keyword
	  constructor arguments and make them all derive from a new
	  SlotObject
	  class.

2008-04-27 06:31  zmedico

	* pym/_emerge/__init__.py, pym/portage/__init__.py: Create a
	  digraph.difference_update() method and use it to amortize the
	  cost of removing nodes from the digraph.order list.

2008-04-27 00:43  zmedico

	* pym/_emerge/__init__.py: Remove unnecessary "mydbapi" variable in
	  depgraph.display().

2008-04-27 00:10  zmedico

	* pym/_emerge/__init__.py: Bug #172812 - When a package needs to be
	  uninstalled in advance rather
	  than through replacement, show the corresponding [blocks] entries
	  in the
	  displayed list. In order to show more structure in the --tree
	  display,
	  expand Package -> Uninstall edges into Package -> Blocker ->
	  Uninstall
	  edges. Also, create edges between a package's own blockers and
	  it's
	  Uninstall task since it's blockers become irrelevant as soon as
	  it's
	  uninstalled.

2008-04-26 20:23  zmedico

	* pym/_emerge/__init__.py: Add a PackageVirtualDbapi.copy() method.

2008-04-26 20:16  zmedico

	* pym/_emerge/__init__.py, pym/portage/__init__.py: Use digraphs to
	  clean up blocker reference counting in the depgraph.

2008-04-26 05:13  zmedico

	* pym/_emerge/__init__.py: Don't assume that altlist() will succeed
	  inside display_problems().

2008-04-26 03:55  zmedico

	* pym/_emerge/__init__.py: * Add a Blocker class to use instead of
	  tuples.
	  * Fix the Task constructor to properly traverse __slots__ of all
	  inherited
	  classes.

2008-04-26 01:10  genone

	* pym/portage/dbapi/vartree.py: add LibraryPackageMap replacement
	  using NEEDED.2 files

2008-04-25 22:26  zmedico

	* pym/_emerge/__init__.py: Refactor the way that
	  depgraph.altlist(), _complete_graph(), and
	  validate_blockers() interact with eachother. This simplifies
	  things
	  by eliminating the need for recursive calls to
	  validate_blockers().

2008-04-25 18:39  zmedico

	* pym/portage/sets/__init__.py: Bug #219251 - Fix typo in
	  PORTDIR_OVERLAY when searching for sets.conf files.
	  Thanks to Manuel Nickschas <sputnick@quassel-irc.org> for fixing
	  this.

2008-04-25 06:33  zmedico

	* doc/dependency_resolution/task_scheduling.docbook: s/be only/only
	  be/

2008-04-25 03:41  genone

	* pym/portage/dbapi/vartree.py: remove debug output

2008-04-25 03:39  genone

	* bin/misc-functions.sh, pym/portage/dbapi/vartree.py: as NEEDED
	  files don't conain enough formation for e.g. preserve-libsto work
	  properly and we don't want to change the format of existing files
	  create another file including additional information

2008-04-25 03:16  zmedico

	* pym/_emerge/__init__.py: Add some more spinner.update() calls in
	  possibly time consuming loops.

2008-04-25 03:00  genone

	* pym/portage/dbapi/porttree.py: remove unused function

2008-04-25 01:53  zmedico

	* doc/dependency_resolution/task_scheduling.docbook,
	  pym/_emerge/__init__.py: Bug #172812 - If any Uninstall tasks
	  need to be executed in order
	  to avoid a conflict, complete the graph with any dependencies
	  that
	  may have been initially neglected (to ensure that unsafe
	  Uninstall
	  tasks are properly identified and blocked from execution).

2008-04-24 20:43  zmedico

	* pym/_emerge/__init__.py: Update description of "complete"
	  depgraph param.

2008-04-24 20:40  zmedico

	* pym/_emerge/__init__.py: Rename the "consistent" depgraph
	  parameter to "complete" since what it
	  really means is that the graph will be complete in the sense that
	  no
	  known dependencies are neglected.

2008-04-24 03:58  zmedico

	* RELEASE-NOTES: Add a note about automatic uninstallation to solve
	  blockers.

2008-04-24 03:17  zmedico

	* pym/_emerge/__init__.py: Fix interaction between automatic
	  uninstall and options like --pretend,
	  --fetchonly, and --buildpkgonly.

2008-04-24 02:55  zmedico

	* pym/_emerge/__init__.py: Handle potential InvalidDependString
	  exceptions when match packages to
	  system and world atoms in depgraph.altlist().

2008-04-24 02:48  zmedico

	* pym/_emerge/__init__.py: Fix broken mtimedb resume list handling
	  for automatic uninstall tasks.

2008-04-24 02:31  zmedico

	* pym/_emerge/__init__.py: Combine --nodeps spinner logic.

2008-04-24 02:21  zmedico

	* pym/_emerge/__init__.py: Bug #172812 - When automatically
	  uninstalling packages, build the next
	  package in the merge list before executing scheduled uninstall
	  tasks.

2008-04-24 02:09  zmedico

	* pym/_emerge/__init__.py: Split out a _dequeue_uninstall_tasks()
	  method.

2008-04-24 01:49  zmedico

	* pym/_emerge/__init__.py: Reset the state variables for leaf node
	  selection in depgraph.altlist()
	  when appropriate.

2008-04-23 23:58  zmedico

	* pym/_emerge/__init__.py: Bug #172812 - Protect packages from
	  being removed from the world file
	  during automatic uninstallation.

2008-04-23 23:53  zmedico

	* doc/dependency_resolution/task_scheduling.docbook: Bug #172812 -
	  Document new automatic uninstallation behavior in the
	  "Conflict Avoidance" section.

2008-04-23 23:04  zmedico

	* man/color.map.5: s/unmerge/uninstall/ for consistency.

2008-04-23 22:37  zmedico

	* man/color.map.5, pym/_emerge/__init__.py, pym/portage/output.py:
	  Bug #172812 - Automatically uninstall packages to avoid blocker
	  conflicts.
	  The intention is to only uninstall packages that would be removed
	  by
	  --depclean (after the updates) anyway. To prevent automatic
	  uninstallation
	  of packages that the user probably wants to keep, the following
	  types of
	  packages will not be automatically unmerged:
	  
	  * Installed packages that have been pulled into the current
	  dependency graph.
	  Note that this check is not necessarily complete unless the
	  --complete-graph
	  option is enabled, making other sanity checks necessary.
	  
	  * Installed packages matched by atoms from the system set. For
	  safety,
	  these are unmerged after being replaced by another version.
	  
	  * Installed packages matched by atoms from the world set, if
	  there is no
	  matching replacement in the current dependency graph.

2008-04-22 23:40  zmedico

	* pym/_emerge/__init__.py: Bug #172812 - Add an Uninstall class
	  derived from the Package class, for
	  packages that may need to be uninstalled to avoid conflicts.

2008-04-22 18:29  zmedico

	* pym/portage/getbinpkg.py: Make dir_get_metadata() retry if a
	  httplib.ResponseNotReady exception
	  occurs.

2008-04-21 19:43  zmedico

	* pym/_emerge/help.py: Swap --nospinner and --oneshot for
	  alphabetical ordering.

2008-04-21 19:41  zmedico

	* pym/_emerge/help.py: Bug #218439 - Improve alignment in short
	  emerge --help options output.

2008-04-21 18:54  zmedico

	* pym/_emerge/__init__.py: In show_slot_collision_notice(), refer
	  to the problem as a "slot conflict"
	  since that's how I'm refering to it in the docs.

2008-04-21 16:55  zmedico

	* pym/_emerge/__init__.py: In action_metadata(), properly put the
	  source cache in readonly mode.

2008-04-21 05:14  zmedico

	* RELEASE-NOTES, man/emerge.1, man/portage.5: Document
	  FEATURES="metadata-transfer" changes some more.

2008-04-21 04:26  zmedico

	* man/make.conf.5: Fix portage version, should be >=2.1.5.

2008-04-21 04:00  zmedico

	* cnf/make.globals, man/make.conf.5, man/portage.5,
	  pym/portage/dbapi/porttree.py: * Make portdbapi.aux_get()
	  automatically pull pre-generated metadata
	  directly from the metadata/cache/ directory when
	  metadata-transfer
	  is not enabled in FEATURES. This makes all cache modules behave
	  similar to existing metadata_overlay module, except when
	  FEATURES="metadata-transfer" has been explicitly enabled.
	  
	  * Remove metadata-transfer from FEATURES in make.globals so that
	  it's
	  no longer enabled by default. Users will be happy about this
	  since
	  the "Updating Portage cache" part of emerge --sync can be more
	  time
	  consuming than the rsync run itself. It's also nicer when when
	  using
	  PORTDIR over nfs or bind mounted in a chroot since there's no
	  need
	  to run emerge --metadata.
	  
	  * Update FEATURES="metadata-transfer" docs to warn users of the
	  rsync
	  tree to modify eclases in PORTDIR_OVERLAY if necessary instead of
	  doing it directly in the rsync tree.
	  
	  * Relevant updates to /etc/portage/modules docs.

2008-04-20 20:50  zmedico

	* bin/portageq, pym/portage/dbapi/porttree.py: Bug #218559 - Make
	  portdbapi automatically add sandbox write access to
	  self.depcachedir when appropriate. This makes the portageq
	  blanket sandbox
	  exemption unnecessary.

2008-04-18 21:30  zmedico

	* doc/dependency_resolution, doc/dependency_resolution.docbook,
	  doc/dependency_resolution/decision_making.docbook,
	  doc/dependency_resolution/package_modeling.docbook,
	  doc/dependency_resolution/task_scheduling.docbook,
	  doc/portage.docbook: Add a new part for "Dependency Resolution".

2008-04-18 04:13  zmedico

	* pym/_emerge/__init__.py: Bug #218202 - Make sure the spinner is
	  quiet in --nodep mode.

2008-04-18 01:43  zmedico

	* pym/portage/__init__.py: Make the ccache userpriv permission
	  check from bug #162542 less sensitive
	  by skipping permission checks on files and just checking the
	  directories.

2008-04-16 22:29  zmedico

	* pym/portage/__init__.py: Remove redundant version sorting in
	  _expand_new_virtuals() since the
	  dbapi match results are already sorted.

2008-04-16 18:08  zmedico

	* pym/portage/dbapi/porttree.py: Fix portdbapi.getfetchlist() so
	  that it doesn't unnecessarily calculate
	  USE when the "all" parameter is True.

2008-04-16 18:02  zmedico

	* pym/portage/dbapi/porttree.py: If the mysettings parameter is not
	  passed in to portdbapi.getfetchlist()
	  then substitue self.doebuild_settings since that one is mutable
	  which
	  is necessary in case setcpv() needs to be called.

2008-04-16 17:54  zmedico

	* pym/portage/dbapi/porttree.py: Bug #217905 - Fix
	  portdbapi.getfetchlist() to correctly calculate
	  USE when the useflags parameter is not passed in.

2008-04-16 00:19  zmedico

	* pym/_emerge/__init__.py: Handle potential InvalidDependString
	  exceptions from visible().

2008-04-15 23:11  zmedico

	* pym/portage/dbapi/vartree.py: Inside dblink.unmerge(), call
	  self.updateprotect() just in case anything
	  has changed since the dblink instance was constructed.

2008-04-15 17:54  zmedico

	* NEWS: The dependency resolver now has a feedback mechanism that
	  helps make atom
	  selections more consistent with previous selections that have
	  been added to
	  the graph. This solves some common cases of bug #1343.

2008-04-15 17:14  zmedico

	* pym/_emerge/__init__.py: Comment some more on the significance of
	  passing the graph_db and parent
	  into depgraph._select_atoms() to solve some cases of bug #1343
	  while
	  avoiding unresolvable direct circular dependencies.

2008-04-15 06:13  zmedico

	* pym/_emerge/__init__.py, pym/portage/__init__.py: Add support to
	  depgraph._select_atoms() to take a "parent" parameter
	  and use that to try and avoid unresolvable direct circular
	  dependencies
	  when necessary. Also, make atom selection more consistent with
	  the
	  graph to solve some cases of bug #1343. This improves the fix
	  from
	  bug #141118 to work in cases when a virtual is not yet installed
	  but
	  it has been pulled into the graph. For example, see the case of
	  in Bug #163801#c17, where we want kaffe to satisfy
	  virtual/jdk-1.4
	  without an extra jvm being pulled in unnecessarily.

2008-04-15 03:49  zmedico

	* pym/_emerge/__init__.py: Revert part of atom selection
	  consistency improvement from r9873 since it
	  in some cases it triggers unresolvable direct circular
	  dependencies. For
	  example, this happens with gwydion-dylan which depends on either
	  itself
	  or gwydion-dylan-bin. In case gwydion-dylan is not yet installed,
	  gwydion-dylan-bin needs to be selected in order to avoid a an
	  unresolvable
	  direct circular dependency.

2008-04-14 23:52  zmedico

	* pym/_emerge/__init__.py: Bug #217664 - Fix emerge 'by path'
	  package argument handling so that
	  Package instances are properly cached (avoiding a KeyError
	  later).

2008-04-14 21:13  zmedico

	* pym/portage/__init__.py: In config.setcpv() and regenerate(),
	  replace str.startswith() calls with
	  slice comparison. It's not pretty but performance is critical in
	  this section
	  of code and there is a measurable performance difference.

2008-04-14 19:18  zmedico

	* pym/portage/dbapi/vartree.py: Fix issues with an empty string
	  being passed into
	  PreservedLibsRegistry.register() now that COUNTER is not loaded
	  via config.load_infodir(). Thanks to grobian for reporting.

2008-04-14 17:00  zmedico

	* pym/portage/__init__.py: Revert back to using startwith because I
	  screwed up my benchmark and it
	  turns out starswith is faster than using regular expressions.

2008-04-14 16:32  zmedico

	* pym/portage/__init__.py: When regenerating USE_EXPAND in
	  config.setcpv(), improve performance by
	  using regular expression instead of str.startswith().

2008-04-14 01:23  zmedico

	* pym/_emerge/__init__.py: Fix some breakage in the
	  allow_unsatisfied handling.

2008-04-14 01:12  zmedico

	* pym/_emerge/__init__.py: Call depgraph._add_dep() to add package
	  dependencies to the graph
	  as soon as possible rather than pushing them onto the stack.

2008-04-14 00:59  zmedico

	* pym/_emerge/__init__.py: Split out a depgraph._add_dep() method.

2008-04-14 00:22  zmedico

	* bin/emerge-webrsync: s/timetasmp/timestamp/

2008-04-14 00:09  zmedico

	* pym/portage/sets/files.py: Fix some more broken logic inside
	  WorldSet.load().

2008-04-14 00:03  zmedico

	* pym/portage/sets/files.py: Fix buggy logic in WorldSet.load()
	  that causes it to discard all of
	  it's atoms in some cases (leading to loss of the whole world
	  file).

2008-04-13 23:18  zmedico

	* pym/_emerge/__init__.py: * For optimal atom selection, use
	  PackageVirtualDbapi instances in place
	  of the vardb for all dep_check() calls.
	  * Replace dep_check_trees in depgraph.validate_blockers() with
	  the
	  equivalent self._graph_trees reference.

2008-04-13 21:49  zmedico

	* pym/_emerge/__init__.py: To optimize consistency of atom
	  selections, add all of the root packages
	  to the graph before processing any dependencies.

2008-04-13 19:57  zmedico

	* pym/_emerge/__init__.py: Improve lookahead for new-style
	  virtuals:
	  
	  * Substitue the graph tree for the vartree in dep_check() since
	  we
	  want atom selections to be consistent with package selections
	  have already been made.
	  * Add the selected package to the graph as soon as possible
	  so that later dep_check() calls can use it as feedback
	  for making more consistent atom selections.
	  * Expand all slots of new-style virtuals inside
	  _dep_check_composite_db
	  so that lookahead examines a matched slots.
	  
	  This solves some cases of bug #1343, and extends the fix for bug
	  #141118 to work in cases when a virtual is not yet installed but
	  it has been pulled into the graph.

2008-04-13 19:17  zmedico

	* pym/_emerge/__init__.py: Fix the _dep_check_composite_db
	  visibility filtering some more.

2008-04-13 19:03  zmedico

	* pym/_emerge/__init__.py: Fix _dep_check_composite_db.match() so
	  that it doesn't exempt the highest
	  slot from visibility checks.

2008-04-13 18:01  zmedico

	* pym/_emerge/__init__.py: Make _dep_check_composite_db match()
	  return multiple slots so that
	  it behaves more like other dbapi instances would, and also make
	  it
	  inherit from dbapi.

2008-04-13 07:49  genone

	* pym/portage/sets/files.py: store sets in a different physical
	  location than normal packages for 'world' (makes ferringb a bit
	  happier, and might have other advantages in the future)

2008-04-13 07:43  zmedico

	* pym/portage/__init__.py: Convert st_mtime to long for movefile()
	  return type.

2008-04-13 07:32  zmedico

	* pym/portage/__init__.py: Make movefile() tolerant to EPERM errors
	  that can be raised from utime()
	  calls. Instead of failing, use stat() to return the mtime if
	  possible.

2008-04-13 05:36  genone

	* pym/portage/dbapi/vartree.py: fix check for other lib copies to
	  properly exclude the current package

2008-04-13 01:53  zmedico

	* pym/_emerge/__init__.py: In --buildpkgonly mode, don't discard
	  RDEPEND and PDEPEND if --empty or
	  --deep are enabled. The makes it possible to run `emerge -eB
	  world` and
	  have every single package rebuilt (without actually installing
	  anything).

2008-04-12 20:32  zmedico

	* pym/portage/__init__.py: Fix the filtering for bug #215016:
	  
	  * fix broken comparison for he iuse filtering
	  * filter out any duplicates that variable may contain

2008-04-12 19:52  zmedico

	* bin/ebuild.sh: Bug #217444 - Send debug-print() output to stderr
	  so that it can't interfere
	  with command substitution. Thanks to Fabio Rossi
	  <rossi.f@inwind.it> for
	  this patch.

2008-04-12 19:37  zmedico

	* pym/portage/__init__.py: * Optimize config.setcpv() to return
	  early if IUSE has not changed since
	  the previous setcpv() call.
	  
	  * Add EBUILD_PHASE to the blacklisted variables list.

2008-04-12 18:44  zmedico

	* pym/portage/__init__.py: Bug #215016 - When transforming of USE
	  flags to USE_EXPAND variables,
	  filter out flags that aren't considered to be part of IUSE or
	  implicit
	  IUSE. This patch moves all IUSE dependent code from
	  config.regenerate()
	  to config.setcpv().

2008-04-12 09:16  zmedico

	* pym/portage/dbapi/bintree.py: Make binarytree.prevent_collision()
	  adjust permissions on directories
	  and raise a PermissionDenied error if the required directories is
	  not writable.

2008-04-11 23:32  zmedico

	* RELEASE-NOTES, man/make.conf.5: Add some notes for the
	  parallel-fetch feature and the new --complete-graph
	  option for emerge.

2008-04-11 22:56  zmedico

	* man/emerge.1, pym/_emerge/__init__.py, pym/_emerge/help.py:
	  Rename the undocumented --conistent option to --complete-graph
	  and add
	  some docs.

2008-04-11 21:58  zmedico

	* pym/portage/getbinpkg.py: Make file_get() redirect FETCHCOMMAND
	  output to stdout just like
	  portage.fetch() does. Thanks to Ramereth for reporting.

2008-04-11 21:19  zmedico

	* pym/portage/__init__.py: Fix 'undefined name' errors found by
	  pyflakes.

2008-04-11 20:23  zmedico

	* pym/portage/__init__.py: Fix the code from the previous commit so
	  that it doesn't try to pull
	  USE from a portdbapi instance (like when called by repoman) since
	  portdbapi doesn't return USE in aux_get() calls.

2008-04-11 20:11  zmedico

	* pym/portage/__init__.py: When dep_check() expands new-style
	  virtuals, use USE flags from aux_get
	  calls to evaluate any conditionals that the depstrings might
	  contain. This
	  works properly for ebuilds now that aux_get() is backed by
	  Package instances
	  containing the correct USE.

2008-04-11 19:48  zmedico

	* pym/portage/__init__.py: Make doebuild() bail out early with a
	  PermissionDenied error if there
	  is no write access to $PKGDIR.

2008-04-11 19:03  zmedico

	* pym/portage/__init__.py: Remove unused infodir variable.

2008-04-11 19:01  zmedico

	* pym/portage/__init__.py: Remove all calls to
	  config.load_infodir() since it doesn't seem
	  to server any purpose now that the complete environment is loaded
	  from environment.bz2.

2008-04-11 18:46  zmedico

	* pym/portage/__init__.py: In config.setcpv() and load_infodir(),
	  always set known good values
	  for CATEGORY and PF, since corruption of these can cause
	  problems.

2008-04-11 02:46  zmedico

	* pym/portage/dbapi/bintree.py: Copy group mode bits from $PKGDIR
	  when creating subdirectories.

2008-04-11 00:37  zmedico

	* pym/_emerge/__init__.py, pym/portage/__init__.py: Tweak
	  --buildpkgonly and fakeroot logic so that --buildpkgonly can be
	  used by a non-root user to build binary packages with fakeroot.

2008-04-10 23:29  zmedico

	* pym/_emerge/__init__.py: Nest the DepcheckCompositeDB class
	  inside the depgraph class since it's
	  not intended for use elsewhere.

2008-04-10 21:08  zmedico

	* pym/_emerge/__init__.py: Rename variable pkg_cpv to pkg_str.

2008-04-10 21:03  zmedico

	* pym/_emerge/__init__.py: Fix "pkg" variable name collisions in
	  depgraph.display().

2008-04-10 20:44  zmedico

	* pym/_emerge/__init__.py: Make the CHOST visibility check tolerant
	  of missing CHOST metadata.

2008-04-10 20:36  zmedico

	* pym/portage/__init__.py: Bug #217122 - When waiting for a
	  parallel-fetch download to complete,
	  show a more friendly and informative message.

2008-04-10 18:03  zmedico

	* pym/_emerge/__init__.py: Remove an unused function.

2008-04-10 17:57  zmedico

	* pym/_emerge/__init__.py: Implement expansion of catgories in
	  DepcheckCompositeDB.match() for old
	  installed packages that may contain atoms that are not fully
	  qualified.

2008-04-10 09:11  zmedico

	* pym/_emerge/__init__.py: Iterate over a copy of the digraph nodes
	  so that removal can't break
	  the iterator.

2008-04-10 08:41  zmedico

	* pym/_emerge/__init__.py: Make sure that everything except Package
	  nodes is ignored when doing
	  the --buildpkgonly digraph.hasallzeros() check.

2008-04-10 06:34  zmedico

	* pym/_emerge/__init__.py: Use cached Package instances in
	  depgraph.display().

2008-04-10 05:58  zmedico

	* pym/_emerge/__init__.py: * Make depclean/prune use cached Package
	  instances for visibility checks.
	  * Make FakeVartree wrap dbapi.match() to make sure the metadata
	  in Package
	  instances gets updated for any cpv that is returned from a
	  match()
	  call, since the metadata can be accessed directly from the
	  Package instance
	  instead of via aux_get().

2008-04-10 05:39  zmedico

	* pym/_emerge/__init__.py: Make FakeVartree use PackageVirtualDbapi
	  instead of fakedbapi so that it can
	  populate and utilize a cache of Package instances.

2008-04-10 05:17  zmedico

	* pym/_emerge/__init__.py: Improve used of cached Package instances
	  in depgraph._select_pkg_from_graph().

2008-04-10 05:01  zmedico

	* pym/_emerge/__init__.py: Replace the fakdbapi class that is used
	  to track depgraph state with a
	  similar PackageVirtualDbapi class that uses Package instances
	  internally.
	  This eliminates some redundancy since the Package instances can
	  be reused
	  elsewhere, unlike the internal data structures used by fakedbapi.

2008-04-09 21:51  zmedico

	* pym/_emerge/__init__.py: Add some docs for the
	  DepcheckCompositeDB class.

2008-04-09 18:31  zmedico

	* pym/_emerge/__init__.py: When checking atoms without categories
	  against the installed packages, just
	  check for existence of the cat/pn rather that a full match.

2008-04-09 18:21  zmedico

	* pym/_emerge/__init__.py: Fix the docstring for
	  depgraph._dep_expand().

2008-04-09 18:04  zmedico

	* pym/_emerge/__init__.py: Fix minor issues in the calculation of
	  the number of parents omitted from
	  the slot collision display.

2008-04-09 17:55  zmedico

	* pym/_emerge/__init__.py: When pruning the list of parents for the
	  slot collision display, always
	  show parents that themselves have been pulled into collision
	  slots, since
	  those are more relevant that others. (branches/2.1.2 r9773)

2008-04-09 17:00  zmedico

	* pym/_emerge/__init__.py: Make DepcheckCompositeDB cache Package
	  instances for aux_get() calls.

2008-04-09 16:14  zmedico

	* pym/_emerge/__init__.py: When depgraph.select_files() expands an
	  atom category, in case of an old-style
	  virtual, defer category expansion so that the depgraph has more
	  choices.

2008-04-09 07:15  zmedico

	* pym/_emerge/__init__.py, pym/portage/__init__.py: Create a new
	  depgraph._dep_expand() method for select_files() to expand
	  atoms that have no category.

2008-04-09 05:29  zmedico

	* bin/isolated-functions.sh, pym/portage/elog/messages.py: Handle
	  issues with newlines in elog messages that can trigger an
	  unhandled
	  ValueError to be raised from a split() call inside
	  collect_ebuild_messages():
	  * Use \0 to delimit messages, so that that elog messages
	  containing newlines
	  are handled correctly.
	  * Handle a potential ValueError when splitting the message type.

2008-04-09 00:37  zmedico

	* pym/_emerge/__init__.py: Make depgraph.select_files() detect when
	  a package name given as an argument
	  is ambiguous due to the existence of a new-style virtual with the
	  same
	  name (cpv_expand() will not always raise a ValueError in cases
	  like this).

2008-04-08 23:55  zmedico

	* pym/_emerge/__init__.py: Split out a depgraph method to check if
	  a specific new-style virtual
	  package exists.

2008-04-08 22:31  zmedico

	* pym/portage/__init__.py: Bug #162542 - When checking permissions
	  inside CCACHE_DIR for compatibility
	  with FEATURES=userpriv, check the permissions on files inside the
	  directory
	  to decide whether to fix the permissions.

2008-04-08 18:42  zmedico

	* RELEASE-NOTES, pym/_emerge/__init__.py: Bug #197810 - Don't
	  automatically downgrade packages for which available
	  matching versions are masked by corruption, but do automatically
	  downgrade
	  installed packages that themselves have a valid mask such as from
	  package.mask.

2008-04-08 17:57  zmedico

	* pym/_emerge/__init__.py: Fix --update greedy atoms logic so that
	  it only pulls in packages that
	  actually match the given atom.

2008-04-08 04:43  zmedico

	* pym/portage/elog/messages.py: Fix a little issue in the code from
	  bug #197905 that causes some elog
	  messages to get lost.

2008-04-08 03:54  zmedico

	* pym/_emerge/__init__.py: Remove the depgraph._get_arg_for_pkg()
	  method since _iter_atoms_for_pkg()
	  does the job.

2008-04-08 03:46  zmedico

	* pym/_emerge/__init__.py: Remove unused iter_atoms() function.

2008-04-07 23:47  zmedico

	* bin/repoman: For repoman, only cache the metadata necessary for
	  visibility
	  checks in order to reduce memory consumption.

2008-04-07 23:10  zmedico

	* pym/portage/dbapi/bintree.py, pym/portage/getbinpkg.py: When
	  reading and writing the Packages index file, translate metadata
	  keys
	  on the fly. Current translations:
	  DESC <-> DESCRIPTION
	  REPO <-> repository

2008-04-07 22:12  zmedico

	* pym/_emerge/__init__.py, pym/portage/dbapi/__init__.py,
	  pym/portage/dbapi/bintree.py, pym/portage/dbapi/porttree.py,
	  pym/portage/getbinpkg.py: * Optimize metadata caching in pordbapi
	  and bindbapi so that cache is
	  never pulled for the same package twice.
	  * Cache a Package instances constructed during package selection
	  and reuse them during later package selections.

2008-04-07 07:33  zmedico

	* pym/portage/dbapi/bintree.py: Handle empty KEYWORDS in the
	  Packages file.

2008-04-07 06:32  zmedico

	* pym/portage/dbapi/bintree.py: Fix broken IUSE defaults handling
	  when filtering USE for the Packages file.

2008-04-07 02:36  zmedico

	* pym/_emerge/__init__.py: Move all the --update greedy slot logic
	  to depgraph.select_files().

2008-04-07 02:04  zmedico

	* pym/_emerge/__init__.py: Move virtuals logic from
	  DepcheckCompositeDB.match() to
	  depgraph._iter_atoms_for_pkg() since it's more generally
	  useful there.

2008-04-06 23:33  zmedico

	* pym/_emerge/__init__.py: Fix variable name collision in
	  DepcheckCompositeDB.match().

2008-04-06 23:28  zmedico

	* pym/_emerge/__init__.py: Fix DepcheckCompositeDB.match() so that
	  it doesn't assume that every
	  DependencyArg instance has an "atom" attribute.

2008-04-06 21:44  zmedico

	* bin/isolated-functions.sh: Fix BASH_ARGC and BASH_ARGV offsets
	  some more.

2008-04-06 21:37  zmedico

	* bin/isolated-functions.sh: In dump_trace(), fix BASH_ARGV and
	  BASH_ARGC offsets so that they are always
	  correct wrt eachother. Thanks to Betelgeuse for reporting.

2008-04-06 21:10  zmedico

	* bin/repoman: Fix java.eclassesnotused logic. Thanks to
	  Betelgeuse.

2008-04-06 19:20  zmedico

	* pym/_emerge/__init__.py: Rename the CompositDbapi class to
	  DepcheckCompositeDB since it's really
	  a special pupose class just for dep_check() and it doesn't
	  implement the
	  full dbapi interface.

2008-04-06 18:53  zmedico

	* pym/_emerge/__init__.py: Fix the CompositDbapi.match() logic wrt
	  "selective" behavior and installed
	  packages so that it correctly handles false argument matches due
	  to PROVIDE
	  when a corresponding new-style virtual exists.

2008-04-06 17:12  genone

	* pym/portage/dbapi/vartree.py: only preserve libraries if no copy
	  exists in the libary search path (bug #215242)

2008-04-06 17:09  zmedico

	* bin/emerge-webrsync: * Use type -P which does not produce
	  messages to stderr.
	  another option is to redirect both stderr and out.
	  * Avoid &> replace with > ... 2>&1
	  Thanks to Alon Bar-Lev for this patch.

2008-04-06 14:20  genone

	* bin/isolated-functions.sh, pym/portage/elog/messages.py: preserve
	  order of ebuild messages even between different message types
	  (bug #197905)

2008-04-05 23:22  zmedico

	* man/emerge.1: Clarify --with-bdeps behavior with example. Thanks
	  to Griffon26 for
	  this patch.

2008-04-05 19:51  zmedico

	* bin/quickpkg: When necessary, make quickpkg add missing metadata
	  to the vdb entry before
	  creating the binary package.

2008-04-05 18:30  zmedico

	* pym/_emerge/__init__.py: Handle a potential InvalidDependString
	  exception inside
	  CompositeDbapi.match().

2008-04-05 17:48  zmedico

	* pym/_emerge/__init__.py: Bug #216328 - Fix broken --newuse
	  reinstallation logic.

2008-04-05 10:30  zmedico

	* pym/_emerge/__init__.py: Fix the depgraph package selection cache
	  to update the "existing node"
	  state of packages if they've been added to the graph since the
	  last
	  call.

2008-04-05 09:42  zmedico

	* pym/_emerge/__init__.py: Fix a typo.

2008-04-05 09:41  zmedico

	* pym/_emerge/__init__.py: Memoize package selection results in the
	  depgraph for better performance.

2008-04-05 09:15  zmedico

	* pym/_emerge/__init__.py, pym/portage/__init__.py: Remove
	  "selective" depgraph logic from dep_zapdeps() since it's now
	  handled by CompositeDbapi.

2008-04-05 08:50  zmedico

	* pym/_emerge/__init__.py: Replace the depgraph's fakedbapi of
	  visible packages with a new
	  CompositeDbapi that is implemented on top of the depgraph's
	  existing package selection logic.

2008-04-05 06:25  zmedico

	* pym/portage/dbapi/bintree.py, pym/portage/dbapi/vartree.py: In
	  dbapi.move_ent(), never assume that any of the expected metadata
	  entries exist (PF, CATEGORY, or *.ebuild).

2008-04-04 20:41  zmedico

	* pym/_emerge/__init__.py: Add missing "the" to fix grammar.

2008-04-04 18:58  zmedico

	* RELEASE-NOTES: * In the event that a previously installed package
	  has since been masked,
	  emerge will no longer perform an automatic downgrade as part of a
	  "world"
	  update. You should either unmask such packages or else explicitly
	  re-merge
	  them in order to have them dowgraded to an unmasked version.

2008-04-04 18:40  zmedico

	* pym/_emerge/__init__.py: Adjust newlines whitespace masked
	  packages display.

2008-04-04 18:29  zmedico

	* pym/_emerge/__init__.py: Display the note referencing "masked
	  packages" docs when there are
	  installed masked packages to display.

2008-04-04 06:32  zmedico

	* pym/_emerge/__init__.py: Fix a typo in the depclean USE flag
	  handling when populating the
	  digraph for bug #201045.

2008-04-04 04:51  zmedico

	* pym/_emerge/__init__.py: Fix a typo.

2008-04-04 04:48  zmedico

	* pym/_emerge/__init__.py: When the user has given --depclean a
	  list of atoms to clean, pull all
	  installed packages into the graph (not just those traversable
	  from system
	  or world) to ensure that packages can not be uninstalled unless
	  nothing
	  requires them.

2008-04-04 00:44  zmedico

	* pym/_emerge/__init__.py: Decrease priority on --onlydpes
	  dependencies so that
	  --buildpkgonly hasallzeros() works correctly.

2008-04-04 00:30  zmedico

	* pym/_emerge/__init__.py: Add missing DepPriority instances to the
	  graph so that the --buildpkgonly
	  hasallzeros() calculation works correctly again.

2008-04-03 22:40  zmedico

	* pym/_emerge/__init__.py: Eliminate a redundant atom from the
	  --update greedy slot expansion code.

2008-04-03 22:34  zmedico

	* pym/_emerge/__init__.py: Fix package selection logic so that it
	  always properly finds the highest
	  available version in a new slot even though the graph already
	  contains
	  a matching version in a lower slot.

2008-04-03 20:03  zmedico

	* pym/portage/__init__.py: Add missing str.upper() call for
	  PORTAGE_FETCH_RESUME_MIN_SIZE.

2008-04-03 19:58  zmedico

	* pym/portage/__init__.py: If PORTAGE_FETCH_RESUME_MIN_SIZE is
	  undefined or empty, silently use
	  the default.

2008-04-03 19:23  zmedico

	* cnf/make.globals, man/make.conf.5, pym/portage/__init__.py:
	  Implement a PORTAGE_FETCH_RESUME_MIN_SIZE variable that is useful
	  for
	  helping to ensure that small garbage files such as html 404 pages
	  are
	  properly discarded.

2008-04-03 16:45  zmedico

	* pym/_emerge/__init__.py: For old-style virtuals, we need to
	  repeat the package.provided
	  check against the selected package.

2008-04-03 01:17  zmedico

	* pym/portage/__init__.py: In cpv_expand(), if the virtuals file
	  contains a versioned atom (like
	  the base profile currently has for virtual/pam), properly remove
	  the
	  operator and version from the atom before it is passed into
	  dbapi.cp_list().

2008-04-02 19:22  zmedico

	* pym/_emerge/__init__.py: Fix the previous commit so that the
	  Package instance is created in the
	  correct scope.

2008-04-02 19:09  zmedico

	* pym/_emerge/__init__.py: Use Package.cp instead of
	  dep_getkey(cpv).

2008-04-02 18:06  zmedico

	* pym/portage/util.py: Eliminate a redundant os.path.join() call.

2008-04-02 18:03  zmedico

	* pym/portage/util.py: Handle a potential FileNotFound exception in
	  new_protect_filename() when
	  the last ._cfg* file happens to be a broken symlink. Thanks to
	  bonsaikitten
	  for reporting.

2008-04-01 23:34  zmedico

	* pym/_emerge/__init__.py: Remove the digraph._parent_child_digraph
	  since it's no longer needed. It's
	  main purpose was to track PDEPEND relationships but those are
	  handled just
	  like the other deps now.

2008-04-01 22:13  zmedico

	* bin/ebuild.sh: Bug #215673 - Make ebuild.sh leave IUSE defaults
	  intact instead of filtering
	  them out. The built_with_use() function in eutils.eclass needs to
	  be updated
	  for compatibility.

2008-04-01 21:58  zmedico

	* pym/portage/__init__.py: Use pkgcmp() instead of == and best()
	  for correctness in case of implicit
	  -r0.

2008-04-01 18:36  zmedico

	* pym/portage/__init__.py: Remove some boolean logic that is
	  obsolete now that the "selective" parameter
	  is passed into dep_zapdeps().

2008-04-01 18:08  zmedico

	* pym/portage/__init__.py: Exploid ascending order returned from
	  dbapi.match() calls to avoid the need
	  to call best().

2008-04-01 06:55  zmedico

	* pym/portage/dbapi/bintree.py: Handle missing LICENSE in the
	  Packages index since that's allowed for
	  virtual packages.

2008-04-01 05:59  zmedico

	* pym/_emerge/__init__.py: When identifying a sys-apps/portage
	  node, compare category too (not just
	  "portage".

2008-04-01 00:33  zmedico

	* pym/portage/__init__.py: Bug #215308 - Cache the paths of known
	  bad manifests to ensure that the
	  same broken manifest is never checked twice.

2008-03-31 23:47  zmedico

	* pym/_emerge/__init__.py: When deps are forced to be satisfied by
	  installed packages due to masking
	  or unavailability, only tolerate it when the atom comes from
	  either the
	  system or world set since otherwise it's a good idea to bail so
	  that the
	  user can correct the problem.

2008-03-31 23:12  zmedico

	* pym/_emerge/__init__.py: In the package selection loop, move the
	  installed package rejection
	  code as early as possible.

2008-03-31 21:07  zmedico

	* pym/_emerge/__init__.py: Fix package selection logic to always
	  properly reject the installed package
	  when another is available and the user wants to reinstall.

2008-03-31 20:25  zmedico

	* pym/_emerge/__init__.py: Remove some redundant and obsolete code
	  for warning about installed
	  packages pulled into the graph.

2008-03-31 19:55  zmedico

	* pym/_emerge/__init__.py: When selecting packages and there is a
	  mixture of old-style and new-style
	  virtual matches, filter out the old-style virtual matches.

2008-03-31 18:14  zmedico

	* pym/_emerge/__init__.py: Bug #197810 - Fix package selection
	  logic so that it will always fall back
	  to an installed package when necessary.

2008-03-31 18:00  zmedico

	* pym/_emerge/__init__.py: Make depgraph creation more tolerant of
	  missing or masked packages when
	  the relevant deps are satisfied by installed packages. This kind
	  of
	  friendliness is especially desired in cases such as --emptytree
	  where
	  it might not be possible to reinstall every single package. Also,
	  it
	  allows multislot atoms from the world file (that are necessary to
	  prevent
	  them from being removed by depclean) trigger warning messages
	  while
	  still allowing a --emptytree to proceed.

2008-03-31 17:11  zmedico

	* pym/_emerge/__init__.py: Replace an package tuple with a real
	  Package instance.

2008-03-31 07:21  zmedico

	* pym/_emerge/__init__.py: Pass Package instances into visible() so
	  that the package instance can
	  be used to cache relevant visibility information such as whether
	  or not
	  the package is corrupt or otherwise invalid.

2008-03-30 21:54  zmedico

	* pym/portage/dbapi/vartree.py: When dblink.treewalk() queries for
	  other packages in the same slot, filter
	  out old-style virtual matches since they are not desired.

2008-03-30 21:40  zmedico

	* pym/_emerge/__init__.py: Make sure the all resume lists are
	  deleted when a stale one is encountered.

2008-03-30 19:51  zmedico

	* bin/doins, bin/newins: * Fix broken return value for doins.
	  * Make newins cleanup temp files after itself.

2008-03-30 19:20  zmedico

	* RELEASE-NOTES, bin/md5check.py, bin/repoman,
	  pym/portage/manifest.py: Fix typos. Thanks to Arfrever Frehtes
	  Taifersar Arahesis
	  <Arfrever.FTA@GMail.Com>.

2008-03-30 10:00  zmedico

	* pym/_emerge/__init__.py: Fix display code that can triger a
	  'Invalid category' exception when it
	  is given a blocker. It's only supposed to execute for normal
	  packages.

2008-03-30 09:17  zmedico

	* bin/doins: Make doins clean up it's own temp files. This solves
	  an odd issue in
	  dyn_package() when portage 2.1.x is installing portage-2.2 and
	  temp
	  python module files from doins are imported instead of the
	  expected
	  ones.

2008-03-30 07:14  zmedico

	* pym/_emerge/__init__.py: Bug #211365 - Use catpkgsplit() instead
	  of pkgsplit() for a cpv.

2008-03-30 06:57  zmedico

	* pym/_emerge/__init__.py: Bug #211365 - Use catpkgsplit() instead
	  of pkgsplit() for a cpv.

2008-03-30 06:18  zmedico

	* pym/_emerge/__init__.py, pym/portage/dbapi/vartree.py: Move the
	  AUTOCLEAN code into dblink.treewalk since it's already partially
	  supported there anyway (for replacement of identical cpv). This
	  has the
	  benefit of guaranteeing that the order of installation and
	  removal phases
	  is always the same.

2008-03-30 05:40  zmedico

	* bin/repoman, man/repoman.1: Do not allow commit mode together
	  with the --without-mask options.

2008-03-30 04:16  zmedico

	* pym/_emerge/__init__.py: Make code a bit less prone to
	  potentially hidden TypeError like bugs.

2008-03-30 03:59  zmedico

	* pym/_emerge/__init__.py: Bug #211365 - Use catpkgsplit() instead
	  of pkgsplit() for a cpv.

2008-03-30 03:42  zmedico

	* pym/_emerge/__init__.py: Use enumerate() it iterate over an
	  array.

2008-03-30 02:13  zmedico

	* pym/_emerge/__init__.py, pym/portage/__init__.py: For bugs
	  #197810 and #215308, pass the depgraph's "selective" parameter
	  down into dep_check() for better atom preference selection when
	  handling
	  virtuals and other disjunctive || dependencies. (branches/2.1.2
	  r9610)

2008-03-30 00:19  zmedico

	* pym/_emerge/__init__.py: Bug #215308 - Simplify the greedy atoms
	  logic so that it behaves more
	  like StaticFileSet and won't pull in lower slots.

2008-03-29 22:47  zmedico

	* bin/ebuild.sh: When dyn_unpack() automatically cleans ${WORKDIR},
	  also remove things
	  like .unpacked and .compiled so that the state is consistent.

2008-03-29 05:30  zmedico

	* bin/misc-functions.sh, pym/portage/__init__.py: Bug #214619 - Run
	  dyn_package() and preinst_mask() from ${T} instead of
	  ${D} in order to avoid leaving gmon.out files in ${D} in case any
	  tools
	  were built with -pf in CFLAGS. Also, call preinst_mask() after
	  all other
	  functions so that INSTALL_MASK can be used to wipe out any
	  gmon.out files
	  created during previous functions.

2008-03-29 04:55  zmedico

	* man/make.conf.5: Add a note about PKG_INSTALL_MASK.

2008-03-29 04:32  zmedico

	* bin/misc-functions.sh: Fix quoting for ${root} in install_mask().

2008-03-29 04:12  zmedico

	* pym/_emerge/__init__.py: When a resume list contains packages
	  that are no longer available,
	  automatically delete it.

2008-03-29 03:40  zmedico

	* pym/portage/elog/mod_mail_summary.py: Bug #215240 - Use an alarm
	  signal to implement a 60 second timeout in
	  finalize() in case send_mail() blocks indefinitely.

2008-03-29 03:29  zmedico

	* bin/repoman, man/repoman.1, pym/repoman/checks.py,
	  pym/repoman/errors.py: Add a new "ebuild.patches" check for the
	  PATCHES variable that's used by
	  base_src_unpack() from base.eclass. This generates a warning if
	  the variable
	  is not defined as an array, since this is required for white
	  space safety.
	  Thanks to Betelgeuse for the initial patch.

2008-03-29 00:02  zmedico

	* bin/repoman: Don't trigger the 'java.eclassesnotused' on blocker
	  atoms.

2008-03-28 23:44  zmedico

	* bin/repoman, man/repoman.1: Add a new "java.eclassesnotused"
	  check for cases where DEPEND contains
	  virtual/jdk and and the appropriate java eclass has not been
	  inherited
	  (a violation of the java team's policy). Thanks to Betelgeuse for
	  the
	  initial patch.

2008-03-28 23:11  zmedico

	* pym/_emerge/__init__.py: Bug #214691 - Move the "slot collision"
	  display so that it is shown after
	  the merge list where it is most likely to be seen (along with
	  other depgraph
	  problems).

2008-03-28 10:18  zmedico

	* bin/emerge-webrsync: * Skip the recusive chown call if it fails
	  on the top level directory since
	  it's possible that emerge-webrsync is not run by root.
	  
	  * Just chown to portage:portage instead of using
	  PORTAGE_INST_{UID,GID}.

2008-03-28 10:03  zmedico

	* bin/emerge-webrsync: Disable tarsync when using lzma compression
	  since it doesn't seem to be
	  supported.

2008-03-28 05:45  zmedico

	* bin/isolated-functions.sh, bin/misc-functions.sh,
	  man/make.conf.5, pym/portage/__init__.py: Bug #214619 - Add
	  support for a PORTAGE_BINPKG_TAR_OPTS variable that
	  allows the user to specify tar command options for binary package
	  creation.

2008-03-28 05:03  zmedico

	* bin/ebuild.sh: Make dyn_clean() consistent wrt removal of
	  ${PORTAGE_BUILDDIR}/image and
	  ${PORTAGE_BUILDDIR}/.installed since otherwise with
	  FEATURES=keepwork
	  dyn_install() will not call src_install() as necessary to
	  repopulate
	  ${PORTAGE_BUILDDIR}/image (resulting in install_qa_check failure
	  due
	  to absence of ${PORTAGE_BUILDDIR}/image).

2008-03-28 04:55  zmedico

	* bin/ebuild.sh: Bug #213698 - Make FEAUTURES=keepwork and keeptemp
	  preserve ${T}/environment
	  since it may contain essential state.

2008-03-28 04:14  zmedico

	* bin/repoman: Bug #213629 - Use EAPI.incompatible in cases where
	  EAPI=0 and a default
	  IUSE is encountered.

2008-03-28 04:07  zmedico

	* bin/repoman, man/repoman.1: Bug #213629 - Create an
	  EAPI.incompatible category and use it in cases
	  where EAPI=0 and a slot atom is encountered.

2008-03-28 00:05  zmedico

	* bin/repoman: Remove redundant info from the KEYWORDS.dropped
	  message.

2008-03-27 23:31  zmedico

	* bin/repoman, man/repoman.1: Bug #209418 - Add a new
	  KEYWORDS.dropped check that compares keywords
	  against the keywords of earlier ebuild versions within a slot.

2008-03-27 22:03  zmedico

	* bin/repoman: Bug #212509 - Display a note about the
	  --without-mask option when there
	  are masked packages.

2008-03-27 21:39  zmedico

	* bin/repoman, man/repoman.1: Bug #212509 - Implement a new
	  --without-mask option that causes repoman to
	  behave as if there are no package.mask entries.

2008-03-27 16:49  zmedico

	* man/make.conf.5, pym/portage/__init__.py: Bug #214879 - Fix
	  FEATURES=-strict behavior so that distfiles digests are
	  always checked.

2008-03-27 04:28  zmedico

	* pym/_emerge/__init__.py: Fix the noreplace logic to break out of
	  the cpv loop early since there's
	  no point in examining any lower versions from the same repo.

2008-03-27 04:23  zmedico

	* pym/_emerge/__init__.py: Make --noreplace take precedence over
	  --newuse, as suggested by wolf31o2.

2008-03-26 23:37  zmedico

	* pym/portage/__init__.py: Bug #214879 - In fetch(), only parse the
	  Manifest when FEATURES=strict
	  is enabled.

2008-03-26 16:54  zmedico

	* bin/ebuild.sh, cnf/make.globals: Move the default empty compiler
	  flag settings from
	  ebuild.sh to make.globals (bug #214499).

2008-03-26 16:46  zmedico

	* pym/portage/elog/mod_mail.py,
	  pym/portage/elog/mod_mail_summary.py: Support ${HOST}
	  substitution in "From" field. Thanks to wschlich.

2008-03-25 04:04  zmedico

	* pym/repoman/checks.py: Bug #212621 - Make the EbuildQuote check
	  do quoting validation for misc
	  variables from games.eclass.

2008-03-25 03:54  zmedico

	* pym/portage/__init__.py: Fix typo.

2008-03-25 03:51  zmedico

	* pym/portage/__init__.py: Bug #212152 - Account pre-existing files
	  when calculating whether there
	  is enough space for a download.

2008-03-25 03:18  zmedico

	* bin/repoman: Bug #211294 - Make repoman bail out if arch.list
	  contains unrecognized
	  lines since we don't want people to commit with old versions of
	  portage
	  that don't support the current arch.list format.

2008-03-24 23:14  zmedico

	* bin/ebuild.sh: Bug #214499 - When compiler flags are unset, many
	  packages will substitute
	  their own implicit flags. For uniformity, use an empty string as
	  the default.

2008-03-24 23:05  zmedico

	* pym/portage/__init__.py: Check is os.statvfs() is implemented
	  before trying to us it.
	  (branches/prefix r9500)

2008-03-20 21:35  zmedico

	* pym/_emerge/__init__.py: Improve logic from the previous commit.

2008-03-20 21:31  zmedico

	* pym/_emerge/__init__.py: Fix depgraph._select_package() to make
	  sure the installed package is a real
	  match before rejecting other available packages.

2008-03-19 22:46  genone

	* bin/repoman: readd digestentry.unused category as it's still
	  relevant

2008-03-19 19:49  zmedico

	* bin/doins: Fix quoting.

2008-03-19 18:44  genone

	* pym/_emerge/__init__.py: display versions of other slots for
	  new-slot installs (bug #213790)

2008-03-19 11:34  zmedico

	* bin/doins: Strip trailing slashes from directory paths if
	  necessary.

2008-03-19 10:31  zmedico

	* bin/regenworld: Bug #210690 - Fix --help output to show the
	  leading slash on the path to
	  the world file.

2008-03-19 10:24  zmedico

	* bin/doins: Bug #210575 - Optimize doins -r so that it doesn't
	  call itself recursively,
	  since it's faster to handle the recursion internally. Thanks to
	  Benedikt
	  Böhm <hollow@gentoo.org> for the initial patch.

2008-03-19 09:45  zmedico

	* bin/dohtml: Only show the eqawarn from bug #149745 when nothing
	  is found to install. Also,
	  exit successfully unless nothing is found to install.

2008-03-19 07:03  zmedico

	* pym/_emerge/__init__.py: Bug #201045 - Fix unmerge() to preserve
	  unmerge order so that dependencies
	  are respected. Also, eliminate duplicate package selections since
	  the same
	  package may be selected by multiple atoms but we can only unmerge
	  it once.

2008-03-18 23:44  zmedico

	* pym/_emerge/__init__.py: Bug #139023 - When the --digest option
	  is enabled, advise the user that
	  `repoman manifest` is the preferred way to generate manifests.

2008-03-18 23:41  genone

	* pym/portage/sets/files.py: make filesets non-greedy by default

2008-03-18 23:38  genone

	* pym/_emerge/__init__.py: add unmerge protection for packages
	  still referenced by installed package sets

2008-03-18 23:37  genone

	* pym/portage/dep.py: add @ to the list of invalid atom chars so
	  sets with prefix aren't considered as atoms accidentally

2008-03-18 22:40  genone

	* pym/_emerge/__init__.py: fix artifact from r9477

2008-03-18 22:36  genone

	* pym/_emerge/__init__.py: use a dict with CP keys in unmerge() to
	  avoid double unmerges if a package is matched by multiple atoms

2008-03-18 22:12  zmedico

	* bin/dohtml: Bug #149745 - Generate an eqawarn message if dohtml
	  is called on a directory
	  without the recursive option. Thanks to brad walker
	  <bradmwalker@cableone.net>
	  for reporting.

2008-03-18 21:22  zmedico

	* bin/ebuild, bin/ebuild.sh, man/ebuild.1: Bug #174634 - Fix ebuild
	  'digest' and 'manifest' behave 100% identically and
	  update the docs to reflect this.

2008-03-17 02:23  zmedico

	* pym/portage/locks.py: Bug #212882 - For compatibility with ENOENT
	  exceptions raised from
	  fstat calls with CIFS, wrap fstat calls with an appropriate
	  exception
	  handler.

2008-03-16 20:33  zmedico

	* pym/_emerge/__init__.py: Bug #213592 - Fix --onlydeps breakage.

2008-03-16 00:54  zmedico

	* bin/ebuild.sh: Bug #213540 - Make sure DESTTREE=/usr is set
	  before inherit calls.

2008-03-15 23:10  zmedico

	* pym/portage/dep.py: When in strict mode, make paren_reduce()
	  detect missing whitespace around
	  parenthesis tokens and raise an InvalidDependString exception.
	  Strict mode
	  is not enabled when handling installed packages, so this will
	  only affect
	  repoman and packages that haven't been installed yet. Thanks to
	  zlin for
	  reporting.

2008-03-15 22:43  genone

	* bin/pkgname: avoid importing portage to improve performance

2008-03-15 19:33  genone

	* pym/portage/sets/files.py: add a placeholder for repository paths
	  in 'filename' and 'directory' options for StaticFileSet

2008-03-15 05:28  zmedico

	* bin/emaint: Fix an UnboundLocalError for 'pkgindex'.

2008-03-14 18:23  zmedico

	* cnf/make.globals, man/make.conf.5: Fix grammar.

2008-03-14 06:53  zmedico

	* cnf/make.globals, man/make.conf.5, pym/portage/__init__.py: Bug
	  #42456 - When a checksum failure occurs during fetch, use a new
	  PORTAGE_FETCH_CHECKSUM_TRY_MIRRORS config variable to control how
	  many mirrors should be tried before aborting the download. This
	  type
	  of behavior used to be enabled only in --fetchonly mode but now
	  it's enabled for all fetch() calls.

2008-03-14 02:41  zmedico

	* cnf/make.globals, pym/_emerge/__init__.py,
	  pym/portage/__init__.py: * Optimize parallel-fetch to avoid
	  redundant checksum verification.
	  * Add parallel-fetch to the default FEATURES since it is more
	  efficient now.

2008-03-13 18:04  zmedico

	* pym/portage/dep.py: Make strip_empty() return a nedw list instead
	  of working in-place. Thanks to
	  René Neumann <rene.neumann@necoro.net> for the suggestion.

2008-03-11 00:52  solar

	* pym/portage/news.py: - news bugfix from ferringb

2008-03-10 16:42  zmedico

	* pym/portage/locks.py: Bug #212882 - Fix lockfile() to handle
	  errno.EACCES raised from the fcntl
	  call since the spec says that it's equivalent to EAGAIN and it
	  appears that
	  CIFS returns EACCES in this case.

2008-03-09 20:13  zmedico

	* pym/_emerge/__init__.py: When all available ebuilds are masked,
	  avoid producing warning message when
	  the package does not need to be reinstalled and the installed
	  version is not
	  masked.

2008-03-09 02:36  zmedico

	* bin/filter-bash-environment.py: Fix var_assign_re to recognize a
	  call to the 'declare' builtin even when
	  no options are given.

2008-03-09 01:27  genone

	* mkrelease.sh: add some status messages, try to copy the tarball
	  into DISTDIR, use getopt for option parsing

2008-03-08 00:21  zmedico

	* pym/portage/getbinpkg.py: Make readpkgindex() and writepkgindex()
	  private methods of PackageIndex.

2008-03-07 23:52  zmedico

	* bin/emaint, pym/portage/dbapi/bintree.py,
	  pym/portage/getbinpkg.py: Convert PackageIndex.packages from a
	  dict to a list so that in the future
	  it will be possible to support multiple packages with the same
	  cpv.

2008-03-07 21:26  zmedico

	* pym/_emerge/__init__.py: Make --prune and --depclean operate with
	  missing dependencies when only
	  asked to remove specific packages since it's relatively safe in
	  this case.

2008-03-06 02:33  zmedico

	* bin/ebuild.sh, bin/portageq: Use os.environ["SANDBOX_ON"] = "0"
	  to make portageq exempt from sandbox for
	  things like writing metadata cache. Thanks to ferringb for the
	  suggestion.

2008-03-06 01:16  zmedico

	* bin/ebuild.sh, bin/filter-bash-environment.py: Remove egrep
	  syntax emulation since it's not really needed.

2008-03-06 01:03  zmedico

	* bin/ebuild.sh, bin/filter-bash-environment.py: Implement the
	  sed-based declare -r filter in python.

2008-03-06 00:23  zmedico

	* bin/ebuild.sh, bin/filter-bash-environment.py: Move the variable
	  name validation regexes (for bug 211949) into
	  filter-bash-environment.py instead of passing them in from bash.

2008-03-05 23:54  zmedico

	* bin/filter-bash-environment.py: Update the description to reflect
	  the new meaning of PATTERN.

2008-03-05 23:48  zmedico

	* bin/ebuild.sh, bin/filter-bash-environment.py: Pass a
	  space-separated list of variables into filter-bash-environment.py
	  and
	  generate the final regex on the python side instead of in bash.
	  Also, properly
	  anchor the regex so that it actually works.

2008-03-05 22:03  zmedico

	* bin/filter-bash-environment.py: Fix have_end_quote() to compare
	  the quote against the correct group.

2008-03-05 19:59  zmedico

	* bin/ebuild.sh: Bug #211949 - Tighten the variable name filter to
	  exclude any variables
	  with names containing any non-alphanumeric characters.

2008-03-05 19:51  zmedico

	* bin/filter-bash-environment.py: Handle multi-line quoted variable
	  assignments.

2008-03-05 19:01  zmedico

	* pym/portage/__init__.py: As requested by wolf31o2, use the ROOT
	  setting from make.conf as long as
	  it's not overridden by the calling environment.

2008-03-05 09:34  zmedico

	* bin/ebuild.sh: TODO: Move variable name validation and declare -r
	  filtering
	  into filter-bash-environment.py.

2008-03-05 09:23  zmedico

	* bin/filter-bash-environment.py: Update description to reflect the
	  new meaning of the PATTERN argument.

2008-03-05 09:20  zmedico

	* bin/ebuild.sh, bin/filter-bash-environment.py: Implement variable
	  assignment handling in python so that we can eventually
	  make it more flexible and robust.

2008-03-05 00:19  zmedico

	* pym/portage/__init__.py: Remove redundant CUSTOM_PROFILE_PATH
	  from the PROFILE_PATHS variable so
	  that /etc/portage/profile/profile.bashrc will only be sourced
	  once if
	  it exists.

2008-03-04 18:43  zmedico

	* bin/filter-bash-environment.py: Fix func_start_re so that it
	  requires at least one alphanumeric character.

2008-03-04 18:42  zmedico

	* bin/filter-bash-environment.py: Tighten the funct_start_re so
	  that it doesn't match leading whitespace
	  since that's not needed.

2008-03-04 08:11  zmedico

	* bin/ebuild.sh: Bug #211949 - Temporarily revert back to a less
	  strict regex in order to
	  avoid false positives with multi-line variable definitions that
	  can be
	  produced by the 'export' builtin.

2008-03-04 07:44  zmedico

	* bin/filter-bash-environment.py: Add support for idendification of
	  function definitions since it's needed
	  in some cases in order to prevent some odd function contents from
	  being
	  mistakenly identified as invalid variable assignments. For
	  example, this
	  line from _gcc-specs-directive_raw() is commonly found in
	  environment.bz2
	  files:
	  
	  $1=="*"directive":" { pspec=spec; spec=""; outside=0; next }

2008-03-04 04:48  zmedico

	* bin/ebuild.sh: Bug #211949 - Fix the regex so that it won't match
	  the = character (equals
	  sign).

2008-03-03 22:17  genone

	* bin/misc-functions.sh: tell rpmbuild to clean it's working files
	  after completion, bug #97776

2008-03-03 20:53  genone

	* bin/portageq: fix message on ValueError to not sound like crap

2008-03-03 20:28  genone

	* pym/portage/dbapi/vartree.py: don't list files as being merged
	  when they are ignored due to confmem, bug #212080

2008-03-03 19:43  genone

	* pym/portage/__init__.py: check available space in DISTDIR before
	  trying to fetch/copy a file, bug #212152

2008-03-03 19:21  zmedico

	* bin/misc-functions.sh: Buf #210372 - Fix FEATURES=suidctl so that
	  it really works again.

2008-03-03 10:24  zmedico

	* bin/ebuild.sh: Bug #211949 - Tweak the regex so that a leading
	  whitespace character
	  cannot match the required non-alphanumeric group.

2008-03-03 10:16  zmedico

	* bin/ebuild.sh: Fix the regex for bug #211949 so that it correctly
	  matches variable
	  names that contain more than one non-alphanumeric character.

2008-03-03 04:28  zmedico

	* cnf/make.globals: Quote the file path and uri inside FETCHCOMMAND
	  and RESUMECOMMAND. Thanks
	  to igli for suggesting.

2008-03-02 23:26  zmedico

	* bin/ebuild.sh, bin/filter-bash-environment.py: Bug #211949 - As
	  suggested by vapier, tighten the variable filter to also
	  exclude variable names that begin with a digit or that contain
	  any
	  non-alphanumeric characters that are not be supported by bash.

2008-03-02 21:42  zmedico

	* pym/portage/__init__.py: Make profile stacking of default USE and
	  package.* slightly more efficient
	  by skipping list.insert() calls when possible.

2008-03-02 20:02  genone

	* pym/portage/__init__.py: one more fix to restore correct order
	  for usemask/useforce

2008-03-02 19:44  genone

	* pym/portage/__init__.py: fix indentation screwup from r9412

2008-03-02 19:36  genone

	* pym/portage/__init__.py: change stacking order of r9408 so more
	  specific atoms override generic ones

2008-03-02 19:20  zmedico

	* pym/portage/__init__.py: Fix typo.

2008-03-02 19:08  genone

	* pym/portage/__init__.py: apply r9408 also for profile-base
	  package.*use* files

2008-03-02 18:56  genone

	* pym/_emerge/__init__.py, pym/portage/dbapi/vartree.py: remove
	  FEATURES=livecvsportage

2008-03-02 14:45  genone

	* pym/portage/__init__.py: stack use flags from package.use for
	  multiple matching atoms (bug #200385)

2008-03-02 13:44  genone

	* pym/portage/elog/__init__.py, pym/portage/elog/messages.py:
	  ensure that global variables are used to prevent confusing issues
	  like bug #212055

2008-03-02 11:40  genone

	* pym/portage/dbapi/vartree.py: undo registrations of preserved
	  libraries if the merge fails, bug #210501

2008-03-01 08:30  zmedico

	* bin/ebuild.sh: Bug #211949 - Make filter_readonly_variables()
	  remove any variables
	  with names containing a hyphen since bash does not allow them.

2008-03-01 00:04  zmedico

	* pym/portage/__init__.py, pym/portage/util.py: Make 'import
	  portage' statements more tolerant to broken source statements
	  in make.conf since exceptions thrown during 'import portage'
	  statements
	  can practically render the api unusable for api consumers. Thanks
	  to lxnay
	  for the suggestion.

2008-02-29 22:58  zmedico

	* bin/misc-functions.sh: In the suidctl code, move the addwrite
	  call out of the loop. Thanks to ferringb.

2008-02-28 15:08  genone

	* bin/repoman, man/repoman.1, pym/portage/__init__.py,
	  pym/portage/dbapi/porttree.py, pym/portage/manifest.py: remove
	  code for manifest1 support

2008-02-28 14:55  genone

	* pym/portage_compat_namespace.py: supress stupid line echo in
	  deprecation notices

2008-02-28 13:09  genone

	* pym/_emerge/__init__.py: remove obsolete information from
	  preserve-libs post-emerge message

2008-02-28 13:08  genone

	* pym/_emerge/__init__.py: separate different messages with
	  newlines in post-emerge output

2008-02-28 10:12  zmedico

	* pym/portage/__init__.py: Fix some references to
	  config["PORTAGE_USE"] to prevent potential
	  KeyErrors.

2008-02-27 19:43  zmedico

	* pym/_emerge/__init__.py, pym/portage/__init__.py: Bug #211554 -
	  Replace references to config["USE"] with references to
	  config["PORTAGE_USE"] (which is filtered for intersection with
	  IUSE)
	  so that dependency calculations at installation time are
	  consistent
	  with those at depclean time.

2008-02-27 16:16  zmedico

	* pym/_emerge/__init__.py, pym/portage/__init__.py: Revert r9387
	  (the fix for bug #211554) until I figure out why it's messing
	  up USE calculations for world updates.

2008-02-27 16:00  zmedico

	* bin/repoman: Bug #211294 - Make repoman ignore profiles labeled
	  with anything other
	  than "stable" or "dev" in profiles.desc so that we can extend it
	  with
	  new labels such as "exp".

2008-02-27 08:57  zmedico

	* pym/_emerge/__init__.py: Don't filter USE flags in emerge --info
	  output.

2008-02-27 04:06  zmedico

	* pym/_emerge/__init__.py, pym/portage/__init__.py: Bug #211554 -
	  Replace references to config["USE"] with references to
	  config["PORTAGE_USE"] (which is filtered for intersection with
	  IUSE)
	  so that dependency calculations at installation time are
	  consistent
	  with those at depclean time.

2008-02-26 06:22  zmedico

	* pym/_emerge/__init__.py: For depclean/prune unmerge order, if
	  there are no dependencies between
	  package then just unmerge them alphabetically.

2008-02-26 00:02  zmedico

	* pym/portage/dbapi/vartree.py: Bug #211365 - Use catpkgsplit()
	  instead of pkgsplit() on the cpv in the
	  dblink constructor since otherwise weird categories containing
	  numbers
	  can make pkgsplit() return None (likely related to version regex
	  handling).
	  (branches/2.1.2 r9383)

2008-02-24 23:14  antarus

	* bin/repoman: Double import, thanks grobian :)

2008-02-24 07:52  antarus

	* bin/repoman, pym/portage/news.py, pym/repoman/utilities.py:
	  Various repoman fixes, plus a weird lockfile tracekback in news.

2008-02-23 01:20  vapier

	* bin/emerge-webrsync: only try to fetch compression schemes which
	  the host supports

2008-02-23 01:17  vapier

	* bin/emerge-webrsync: add support for lzma/gz snapshots

2008-02-23 01:08  vapier

	* bin/emerge-webrsync: tighten up output from script

2008-02-23 00:57  vapier

	* bin/emerge-webrsync: cleanup main option parsing

2008-02-22 23:53  zmedico

	* pym/portage/dbapi/porttree.py: Revert portdbapi category
	  auto-detection code since it's not really needed
	  and can cause problems if we need to add new non-category
	  directories in
	  the future. We only really need the category auto-detection for
	  bindbapi and
	  vardbapi anyway.

2008-02-22 22:20  zmedico

	* pym/_emerge/__init__.py: Add support for file paths as arguments
	  to emerge. If an argument starts
	  with / and it's not recognized as a tbz2 or ebuild then we try to
	  find
	  and owner in the vdb and generate a slot atom from it. Thanks to
	  solar
	  for the suggestion.

2008-02-22 06:46  zmedico

	* pym/repoman/utilities.py: Bug #211067 - Make the
	  "portdir_overlay" and "mydir" variables contain
	  paths that are consistent wrt eachother regardless of any path
	  irregularities that can be induced by symlinks. Consistency is
	  achieved
	  by regenerating one of the paths to ensure that both paths have
	  the exact
	  same mapping between inodes and paths. This consistency ensures
	  that the
	  path manipulations used to calculate "repolevel" will work as
	  intended.

2008-02-21 09:29  zmedico

	* pym/portage/dbapi/vartree.py: Make LibraryPackageMap.update()
	  sort the contents of the library_consumers
	  cache so that it's nice and orderly.

2008-02-21 08:04  zmedico

	* pym/portage/dbapi/vartree.py: Optimize dblink.isowner() to use
	  fewer stat calls by doing a basename
	  comparison to try and eliminate the file before resorting to
	  inode
	  comparison. This speeds up the `portageq owners` command as well
	  as
	  the search that is done when collision-protect finds a collision.

2008-02-20 20:52  zmedico

	* pym/_emerge/__init__.py: In the circular dependency display, drop
	  PDEPEND (aka MEDIUM_SOFT) from
	  the graph so there's less noise.

2008-02-20 03:59  zmedico

	* pym/portage/util.py: Make stack_dicts() treat an empty variable
	  assignment just like a non-empty
	  assignment. This allows the profile to set and empty variable in
	  make.defaults
	  and have it override a non-empty value as one would expect.

2008-02-19 08:47  zmedico

	* pym/_emerge/__init__.py: When showing an unsatisfied dep, never
	  include installed packages.

2008-02-19 08:27  zmedico

	* pym/portage/sets/files.py: For greedy slot behavior, in addition
	  to any installed slots also
	  try to pull in the latest new slot that may be available.

2008-02-19 07:36  genone

	* pym/portage/sets/__init__.py, pym/portage/sets/dbapi.py,
	  pym/portage/sets/files.py, pym/portage/sets/security.py: -
	  outsource logic for boolean options into a central function
	  - enable support for greedy behavior in StaticFileSet

2008-02-19 05:59  zmedico

	* bin/ebuild.sh: Bug #210449 - Reset exeinto(), docinto(),
	  insinto(), and into() state
	  variables in case the user is running the install phase multiple
	  times
	  consecutively via the ebuild command.

2008-02-19 05:38  zmedico

	* bin/misc-functions.sh: Bug #210372 - Fix suidctl.conf parser to
	  look for paths with a leading slash.

2008-02-19 04:09  zmedico

	* pym/portage/dbapi/vartree.py: Make PreservedLibsRegistry.store()
	  use atomic_ofstream so that we don't
	  lose the whole registry if an error such as 'out of space'
	  occurs.

2008-02-19 03:27  zmedico

	* bin/repoman: Use parse_use_local_desc() from the
	  repoman.utilities module.

2008-02-19 02:32  zmedico

	* bin/repoman: Revert back to some known working code from the
	  2.1.2 branch.

2008-02-19 01:53  zmedico

	* pym/portage/sets/dbapi.py: Make
	  LibraryConsumerSet.mapPathsToAtoms() produce slot atoms so that
	  atoms
	  aren't restricted to the currently installed version, making
	  upgrades
	  possible.

2008-02-17 23:51  zmedico

	* pym/_emerge/__init__.py: Fix the --depclean/--prune code to use
	  visible() for visibility checks
	  instead of the old portdbapi hack.

2008-02-17 08:38  zmedico

	* pym/_emerge/__init__.py: Fix unmerge() breakage from due to
	  pkgmap being changed from
	  a dict to a list.

2008-02-17 01:59  zmedico

	* pym/_emerge/__init__.py: Now that unmerge() preserves the order
	  that it's given, if two different
	  slots of the same package are being unmerged then they are not
	  necessarily
	  unmerged consecutively. To make the display less confusing, never
	  display
	  packages as "protected" or "omitted" when they actually belong to
	  the
	  overall set of "selected" packages to be unmerged.

2008-02-17 01:28  zmedico

	* pym/_emerge/__init__.py: Make sure all packages to be pruned or
	  depcleaned are added to the graph,
	  even when they don't have any dependencies.

2008-02-17 00:29  zmedico

	* pym/_emerge/__init__.py: Bug #201045 - Make unmerge() preserve
	  the unmerge order of packages
	  given to it by the user or depclean.

2008-02-16 23:46  zmedico

	* pym/_emerge/__init__.py: In the action_depclean() topological
	  sort, only add packages to the
	  graph if they are being removed.

2008-02-16 23:43  zmedico

	* bin/repoman: Remove IUSE.invalid from qawarnings since there's no
	  reason for
	  it not to be fatal. Thanks to Betelgeuse.

2008-02-16 23:12  zmedico

	* pym/_emerge/__init__.py: Fix reversed order of parent/child
	  parameders to digraph.add().

2008-02-16 09:02  zmedico

	* pym/portage/dbapi/vartree.py: Add missing % x (bug #208946,
	  comment #2).

2008-02-16 07:59  zmedico

	* pym/_emerge/__init__.py: Fix depclean breakage so that it doesn't
	  clean some packages that
	  shouldn't be cleaned.

2008-02-16 07:53  zmedico

	* pym/_emerge/__init__.py: Make depclean code filter out blocker
	  atoms where appropriate.

2008-02-16 07:42  zmedico

	* pym/_emerge/__init__.py: Bug #201045 - Use a topological sort to
	  create an unmerge order such that
	  each package is unmerged before it's dependencies. This is
	  necessary to
	  avoid breaking things that may need to run during pkg_prerm or
	  pkg_postrm
	  phases.

2008-02-16 00:43  zmedico

	* pym/_emerge/__init__.py: Update the DepPriority documentation so
	  that the table shows all the
	  currently supported priorities and categories.

2008-02-15 07:47  zmedico

	* pym/_emerge/__init__.py: Fix --newuse reinstall logic broken by
	  the previous commit.

2008-02-14 07:30  zmedico

	* pym/_emerge/__init__.py: Fix package selection logic in order to
	  prevent downgrade in cases
	  when selective is True and the currently installed version does
	  not have a matching ebuild in the tree. For example, this type of
	  situation is likely to occur if the user somehow obtains a binary
	  package that has a newer version than any of the ebuilds in the
	  portage tree. If package maintainers want to encourage a
	  downgrade
	  in a case like this then they should use package.mask so that the
	  user receives a warning about the installed package being masked.

2008-02-12 04:08  zmedico

	* pym/_emerge/__init__.py: Bug #209768 - Fix --search "Size of
	  files:" handling so that it properly
	  shows the "Unknown (missing digest)" message instead of a
	  traceback.

2008-02-11 02:29  antarus

	* DEVELOPING: Add bits about namespace pollution, add whitespacing
	  comments after looking at some new code I wrote and realizing I
	  was not following the current style. Fix typos

2008-02-10 23:32  zmedico

	* pym/_emerge/__init__.py, pym/portage/__init__.py: Bug #209538 -
	  Disable annoying "masked by keyword" warnings for installed
	  packages. We can assume that if the user accepted the keywords at
	  merge
	  time then they never want to be bothered again.

2008-02-10 13:01  genone

	* pym/repoman/utilities.py: fix more trivial issues breaking
	  repoman

2008-02-10 07:18  zmedico

	* bin/ebuild.sh, bin/isolated-functions.sh: Remove the killparent()
	  function and associated SIGINT trap since this
	  should already be handled on the python side and it won't work
	  with
	  dropped privileges anyway.

2008-02-10 05:33  zmedico

	* cnf/make.conf.sparc-fbsd.diff, cnf/make.conf.x86-fbsd.diff: Fix
	  rejects.

2008-02-10 03:14  zmedico

	* pym/_emerge/__init__.py: Fix CHOST masking logic wrt installed
	  packages so that it's consistent
	  between visible() and get_masking_status().

2008-02-10 01:50  zmedico

	* pym/_emerge/__init__.py: Bug #209144 - For emerge --sync, show an
	  informative error and don't
	  return 1 when PORTAGE_RSYNC_RETRIES is exceeded.

2008-02-10 01:39  zmedico

	* pym/_emerge/__init__.py: Fix the exitcode logic for bug #209144
	  so that when the server is
	  out of date it's not interpreted like an actual rsync exitcode
	  (to avoid a misleading exitcode interpretation message).

2008-02-10 00:38  zmedico

	* pym/_emerge/__init__.py: Fix get_mask_info() to properly pass the
	  "installed" attribute into
	  the Package constructor.

2008-02-09 23:06  genone

	* bin/repoman, mkrelease.sh: fix nasty typo

2008-02-09 22:05  zmedico

	* man/ebuild.5: Bug #208743 - Update dosed docs to indicate that
	  "s:${D}::g" is used
	  as the default expression if none other is given.

2008-02-09 15:39  genone

	* mkrelease.sh: add tagging capabilities and cli options

2008-02-09 15:13  genone

	* cnf/make.conf: add preserve-libs info to make.conf.example

2008-02-09 13:31  genone

	* RELEASE-NOTES, man/emerge.1: more minor doc updates regarding
	  package sets

2008-02-09 13:23  genone

	* NEWS, RELEASE-NOTES: minor documentation updates

2008-02-09 12:47  genone

	* mkrelease.sh: new script for creating release tarballs

2008-02-09 12:04  genone

	* make-man-tarball.sh, tarball.sh: removing obsolete cruft

2008-02-09 04:58  zmedico

	* pym/_emerge/__init__.py: Bug #208708 - Show informative warning
	  messages for installed
	  packages that are masked.

2008-02-08 11:46  zmedico

	* pym/_emerge/__init__.py: Fix some broken variable references
	  found by pyflakes.

2008-02-08 08:39  zmedico

	* pym/_emerge/__init__.py: Bug #208708 - Fix masked package display
	  some more:
	  
	  - Warn if all matching ebuilds are masked or the installed
	  package itself is masked.
	  
	  - Do not warn if there are simply no matching ebuilds since
	  that would be annoying in some cases.

2008-02-08 08:01  zmedico

	* pym/_emerge/__init__.py: Don't show unmasked packages (currently
	  installed packages) in
	  the masking display.

2008-02-08 04:33  zmedico

	* pym/repoman/checks.py: Add DISTDIR to the EbuildQuote.var_names.
	  Thanks to Betelgeuse.

2008-02-08 01:26  zmedico

	* pym/_emerge/__init__.py: Bug #208708 - Fix warnings for system or
	  world packages that are masked.

2008-02-08 00:32  zmedico

	* man/ebuild.5: Bug #208743 - Clarify dosed docs to indicate that
	  sed is performed
	  in place of a file in ${D}.

2008-02-08 00:19  zmedico

	* pym/_emerge/__init__.py: Bug #208782 - Consistently use double
	  quotes rather than mixining in single
	  quotes.

2008-02-08 00:12  zmedico

	* pym/_emerge/__init__.py: Bug #209144 - For emerge --sync, don't
	  return 0 when the server
	  is out of date.

2008-02-07 23:30  zmedico

	* bin/ebuild.sh, bin/isolated-functions.sh,
	  pym/portage/__init__.py, pym/portage/dbapi/vartree.py: Bug
	  #155993 - Update environment.bz2 after postinst in case
	  installation phases need to pass some variables to
	  uninstallation phases.

2008-02-06 08:43  zmedico

	* bin/ebuild.sh: For the useq() IUSE qa check, use [[ $u =~
	  $PORTAGE_IUSE ]] instead
	  of egrep since apparently it's compatible in this case. Thanks to
	  igli for this.

2008-02-06 06:08  zmedico

	* bin/ebuild.sh: Make qa_source and qa_call save the return value
	  and return it. Thanks
	  to igli for suggesting.

2008-02-05 21:29  genone

	* pym/portage/dbapi/vartree.py, pym/portage/util.py: don't try to
	  copy manually removed libraries (bug #208946)

2008-02-05 19:02  genone

	* pym/_emerge/__init__.py: display errors that occured during
	  package set initalization

2008-02-05 18:57  genone

	* bin/misc-functions.sh: don't record internal providers in NEEDED
	  records as they are pointless for all useful applications in
	  portage and complicate them instead (e.g. bug #205531)

2008-02-05 08:21  genone

	* pym/portage/elog/mod_mail_summary.py,
	  pym/portage/elog/mod_save_summary.py: Use local time for elog
	  summaries

2008-02-01 04:36  zmedico

	* RELEASE-NOTES: portage-2.1.4.1
	  ==================================
	  
	  * If you have an overlay then you should remove **/files/digest-*
	  files (Manifest1) because they are no longer supported.
	  * If earlier versions of portage will be used to generate
	  manifests
	  for your overlay then you should add a file named
	  manifest1_obsolete
	  to the root of the repository in order to disable generation of
	  the
	  Manifest1 digest files.

2008-02-01 03:11  zmedico

	* bin/repoman: Remove the manifest1 digest file removal code since
	  it's no longer
	  needed.

2008-02-01 02:53  zmedico

	* cnf/make.globals, pym/_emerge/__init__.py: Remove the manifest1
	  digest filter from PORTAGE_RSYNC_OPTS since it's
	  no longer needed.

2008-02-01 00:04  zmedico

	* pym/portage/manifest.py: Make the manifest1_compat constructor
	  parameter default to False
	  to prevent potential interference from stale old digest files in
	  overlays.

2008-01-31 23:45  zmedico

	* bin/misc-functions.sh: Bug #205718 - Fix quoting of
	  ${INSTALL_MASK} where appropriate. Thanks
	  to Ed Catmur <ed@catmur.co.uk> for this patch.

2008-01-31 20:25  zmedico

	* bin/ebuild: Disable manifest1_compat for ebuild --force digest.

2008-01-31 20:04  zmedico

	* bin/repoman, pym/portage/__init__.py: Unconditionally disable
	  manifest1 compatibility since it's been dropped
	  from the main tree and nobody needs it anymore.

2008-01-31 09:31  zmedico

	* bin/ebuild.sh: Make the autotools.eclass functions exempt from
	  the autotools
	  QA Notice.

2008-01-31 07:46  zmedico

	* pym/portage/dbapi/porttree.py: Add 'local' to the list of
	  non_category_dirs since it's commonly
	  used for layman overlays.

2008-01-31 04:15  zmedico

	* pym/portage/dbapi/bintree.py: * Bug #205966 - Don't show binhost
	  password when displaying the uri.
	  * Fix a cpv variable name typo.

2008-01-30 22:52  zmedico

	* bin/repoman: Remove the last traces of the ebuild.autotools
	  check.

2008-01-30 22:49  zmedico

	* bin/ebuild.sh, bin/isolated-functions.sh, pym/repoman/checks.py:
	  - Remove ebuild.autotools repoman check since it produces lots
	  of false positives (bug #207104) and its hard to parse bash
	  
	  - Use QA_INTERCEPTORS in ebuild.sh to implement a runtime
	  'QA Notice' when autotools is called directly

2008-01-30 18:45  zmedico

	* pym/portage/dbapi/vartree.py: use strip(os.sep) on paths prior to
	  os.path.join (branches/prefix
	  r9228)

2008-01-27 11:26  antarus

	* bin/repoman: Pull more functions out of repoman proper and into
	  repoman.utilities, correct a typo, clean up imports

2008-01-27 11:26  antarus

	* pym/repoman/utilities.py: Pull more functions out of repoman
	  proper and into repoman.utilities

2008-01-27 11:05  antarus

	* pym/repoman/checks.py: import ordering, prevent errors from
	  mucking up module namespace in checks, fix typo from last commit,
	  rename 'm' to autotools_match, fix spacing between classes

2008-01-27 06:01  antarus

	* bin/repoman: Restore desktop.invalid as a warning; was an
	  intergration error

2008-01-26 20:53  antarus

	* bin/repoman, pym/repoman/utilities.py: Move random functions out
	  of repoman and into utilties.py

2008-01-22 22:14  zmedico

	* bin/ebuild.sh: Bug #206772 - Enable bashrc once again for the
	  clean phase.

2008-01-21 01:43  zmedico

	* bin/isolated-functions.sh: We need to implement diefunc() since
	  environment.bz2 files contain
	  calls to it (due to alias expansion).

2008-01-20 22:28  zmedico

	* bin/isolated-functions.sh: Replace the current diefunc() and die
	  alias with a single die() function.
	  The previous arguments to diefunc() weren't used anyway. The
	  result is
	  that the die message looks better because it doesn't show the
	  alias and
	  all of it's arguments which are totally irrelevant.
	  (branches/prefix
	  r9212)

2008-01-19 23:18  antarus

	* man/make.conf.5: Add a note that PORTDIR is a repository of
	  software and that users should not add random directories in it.

2008-01-18 22:58  zmedico

	* pym/repoman/checks.py: Check for quoted ${A}. Thanks to maekke
	  for this patch.

2008-01-13 01:03  antarus

	* bin/emerge-webrsync: fix typo in emerge-webrsync from r9118

2008-01-13 00:55  antarus

	* bin/emaint: style fixes (imports), add support for --version (bug
	  138159)

2008-01-12 02:53  zmedico

	* RELEASE-NOTES: Add some notes about enhancements related to
	  binary package support
	  that's now in 2.1.4.

2008-01-12 01:39  zmedico

	* bin/ebuild.sh: Remove redundant return statement.

2008-01-12 01:35  zmedico

	* bin/ebuild.sh: In preprocess_ebuild_env(), move a
	  filter_readonly_variables call
	  out of a subshell since FreeBSD and prefix users have reported
	  apparent corruption of the PATH environment variable that
	  triggers
	  calls to the wrong version of sed (one that does not support the
	  -r option). An example of what users have observed:
	  
	  >>> Source compiled.
	  sed: illegal option -- r
	  usage: sed script [-Ealn] [-i extension] [file ...]
	  sed [-Ealn] [-i extension] [-e script] ... [-f script_file] ...
	  [file ...]
	  Traceback (most recent call last):
	  File "/usr/lib/portage/bin/filter-bash-environment.py", line 51,
	  in <module>
	  compile_egrep_pattern(args[0]), file_in, file_out)
	  File "/usr/lib/portage/bin/filter-bash-environment.py", line 34,
	  in filter_bash_environment
	  file_out.write(line)
	  IOError: [Errno 32] Broken pipe

2008-01-12 00:18  zmedico

	* bin/repoman: Replace hardcoded value with max_desc_len.

2008-01-11 23:42  zmedico

	* bin/repoman: Bug #203887 - Make repoman recognize
	  RESTRICT="installsources".

2008-01-11 23:07  zmedico

	* pym/portage/dbapi/vartree.py: Bug #205318 - Handle errno.ENOTDIR
	  thrown from the lstat call
	  inside dblink._security_check().

2008-01-11 22:24  zmedico

	* bin/repoman: Adjust the max DESCRIPTION.toolong length to 100
	  characters so that
	  it's not too small and only about 3% of packages will trigger it.

2008-01-11 11:59  zmedico

	* bin/misc-functions.sh: Fix a typo.

2008-01-11 09:27  zmedico

	* bin/repoman, pym/repoman/checks.py: Add a new "ebuild.autotools"
	  check for when ebuilds call
	  autotools directly instead of using autotools.eclass.
	  Thanks to Betelgeuse for the initial patch.

2008-01-11 08:19  zmedico

	* pym/portage/tests/versions/test_vercmp.py,
	  pym/portage/versions.py: * Make pkgcmp() pass the ebuild revision
	  directly into vercmp() since
	  there is code there to handle it already. This eliminates some
	  redundant revision comparison code. Thanks to peper for the
	  patch.
	  
	  * Add some vercmp() test cases for comparison of ebuild
	  revisions.

2008-01-11 07:22  zmedico

	* bin/repoman: Add a DESCRIPTION.toolong warning for when the
	  DESCRIPTION line is
	  over 80 characters long. Thanks to Betelgeuse for the patch.

2008-01-11 06:51  zmedico

	* bin/misc-functions.sh: Bug #162450 - Try to avoid having so many
	  bugs marked UPSTREAM by
	  encouraging users to report 'poor programming practices' QA
	  issues
	  upstream and show them the $HOMEPAGE for convenience.

2008-01-11 05:14  zmedico

	* bin/prepstrip, man/ebuild.5: Bug #203887 - Implement
	  RESTRICT=installsources for binaries that are
	  not compatible with debugedit.

2008-01-11 04:31  zmedico

	* pym/portage/dep.py: Bug #203316 - Fix isvalidatom() to properly
	  detect invalid operators
	  used together with slot atoms. Thanks to Arfrever Frehtes
	  Taifersar
	  Arahesis <Arfrever.FTA@GMail.Com> for the patch.

2008-01-11 02:18  zmedico

	* bin/ebuild: Fix the "Appending to PORTDIR_OVERLAY..." feature
	  which was
	  broken by the previous commit.

2008-01-11 02:03  zmedico

	* bin/ebuild: Make sure that portdb.findname() returns the correct
	  ebuild.

2008-01-11 00:28  zmedico

	* cnf/make.globals, pym/_emerge/__init__.py: Bug #204425 - Remove
	  --delete-after from the default PORTAGE_RSYNC_OPTS.
	  This allows the rsync program to choose the preferred --delete
	  algorithm,
	  or the user can choose one via PORTAGE_RSYNC_EXTRA_OPTS.

2008-01-11 00:05  zmedico

	* bin/ebuild.sh: Bug#204668 - Fix WORKDIR quoting in econf() when
	  updating
	  config.guess and config.sub.

2008-01-10 23:02  zmedico

	* pym/portage/__init__.py: Bug #162542 - When dropping privileges
	  for FEATURES=userpriv,
	  automatically detect permission problems with CCACHE_DIR and
	  recursively adjust permissions only when necessary.

2008-01-08 09:05  zmedico

	* bin/ebuild.sh: After loading the environment, make sure the color
	  variables
	  are in sync with the current NOCOLOR setting.

2008-01-08 04:56  zmedico

	* pym/portage/__init__.py: When spawing the "depend" phase, use
	  file descriptors from sys.std*
	  streams.

2008-01-07 22:17  zmedico

	* pym/portage/dbapi/porttree.py: Bug #204753 - Add "distfiles" and
	  "packages" to the list of
	  non-category directories.

2008-01-06 20:22  zmedico

	* pym/portage/output.py: Bug #204651 - Make repoman respect
	  NOCOLOR=true.

2008-01-05 22:00  zmedico

	* bin/ebuild.sh, bin/isolated-functions.sh: Make
	  filter_readonly_variables() filter PATH in any case since
	  we never want to save of reload it.

2008-01-05 21:33  zmedico

	* bin/ebuild.sh: Filter PATH along with FEATURES when loading
	  environment.bz2.

2008-01-05 20:31  antarus

	* bin/repoman: per bug 204468, remove old check from repoman (all
	  ebuilds in gentoo-x86 are migrated).

2008-01-04 20:49  zmedico

	* bin/isolated-functions.sh: Send eerror and ewarn messages to
	  stderr. This is important in
	  case somebody calls portageq inside a global scope command
	  substitution. The output needs to go to stderr so that the
	  die message from the subshell is visible.

2008-01-03 15:39  zmedico

	* bin/ebuild.sh: Recognize export statements when filtering the
	  environment. This
	  is needed for compatibility with environment.bz2 files generated
	  by paludis.

2008-01-02 15:00  zmedico

	* pym/portage/util.py: Bug #204020 - Make grabfile() properly raise
	  PermissionDenied when
	  appropriate instead of silently ignoring permission errors.

2007-12-31 11:43  zmedico

	* pym/portage/__init__.py: When searching for "test" in IUSE,
	  account for IUSE defaults.

2007-12-31 09:54  zmedico

	* pym/portage/__init__.py: Fix config.setcpv() to properly call
	  config.regenerate() in cases
	  when USE needs to be regenerated due to FEATURES=test to USE=test
	  mapping.

2007-12-29 20:14  zmedico

	* bin/emerge-webrsync, bin/etc-update, bin/isolated-functions.sh,
	  pym/portage/data.py: As suggested by grobian, treat Darwin just
	  like USERLAND=gnu
	  since they seem to be switching commands to gnu anyway.

2007-12-29 19:54  zmedico

	* bin/emerge-webrsync, bin/etc-update: Fix USERLAND references to
	  handle Darwin like BSD.

2007-12-29 19:36  zmedico

	* bin/isolated-functions.sh, pym/portage/data.py: Fix broken Darwin
	  USERLAND detection.

2007-12-29 18:20  zmedico

	* pym/portage/__init__.py: Add PKGDIR to the config.environ()
	  whitelist so that people's
	  bashrc's don't break.

2007-12-29 17:56  zmedico

	* bin/ecompressdir: Fix handling of leading / charactes some more.

2007-12-29 17:41  zmedico

	* bin/ecompressdir: Make the ecompressdir vecho output show a
	  leading / on
	  the directory path. Thanks to armin76.

2007-12-29 16:47  zmedico

	* man/ebuild.5: Document that docinto works for dohtml.

2007-12-29 13:50  zmedico

	* bin/emerge-webrsync: Rely on USERLAND since it's automatically
	  generated by
	  isolated-functions.sh when necessary.

2007-12-29 13:31  zmedico

	* pym/portage/dbapi/vartree.py: Make the global counter file
	  correspond to
	  the total number of installation actions
	  that have occurred in the history of this
	  package database.

2007-12-29 12:37  zmedico

	* pym/portage/__init__.py: Remove redundant USERLAND sanity check
	  code from doebuild() since
	  it's handled in isolated-functions.sh now.

2007-12-29 12:14  zmedico

	* pym/portage/data.py: Add back support for silent definition of
	  the dummy lchown()
	  function when ostype == Darwin.

2007-12-29 12:07  zmedico

	* bin/isolated-functions.sh, pym/portage/data.py: Simplify the
	  userland detection code in portage.data and add
	  a bash version of it to isolated-functions.sh.

2007-12-29 11:49  zmedico

	* pym/portage/data.py: Remove redundant lchown() compatibility code
	  since the
	  getattr(os, "lchown", None) call already handles it.

2007-12-29 11:36  zmedico

	* pym/portage/__init__.py: Move XARGS initialization from
	  portage.data to isolated-functions.sh.

2007-12-29 11:30  zmedico

	* bin/isolated-functions.sh, pym/portage/data.py: Move XARGS
	  initialization from portage.data to isolated-functions.sh.

2007-12-29 10:41  zmedico

	* pym/_emerge/__init__.py: Add support for showing binary package
	  file sizes in emerge
	  --search output.

2007-12-29 09:58  zmedico

	* pym/portage/dbapi/__init__.py, pym/portage/dbapi/porttree.py,
	  pym/portage/dbapi/vartree.py, pym/portage/dbapi/virtual.py: *
	  Initialize dbapi._categories = None so that we can compare
	  with None instead of using hasattr.
	  * Remove unwanted self._categories initialization from the
	  portdbapi constructor.

2007-12-29 09:04  zmedico

	* pym/portage/__init__.py: Make doebuild() check XARGS together
	  with ARCH and USERLAND.

2007-12-29 08:57  zmedico

	* pym/portage/__init__.py: Make the ARCH and USERLAND sanity check
	  use the autodetected USERLAND
	  from the portage.data module if necessary.

2007-12-29 08:38  zmedico

	* pym/portage/data.py: Bug #121584 - Make the automatic USERLAND
	  detection code recognize
	  GNU/kFreeBSD.

2007-12-28 23:12  zmedico

	* bin/ebuild.sh: Bug #202697 - Add / to the default initial
	  SANDBOX_READ in order to
	  avoid a situation where attempts to read arbitrary files trigger
	  sandbox violations.

2007-12-28 21:10  zmedico

	* bin/misc-functions.sh: Make the FEATURES=sfperms loops safe for
	  whitespace in paths
	  by using find -print0 | while read -d $'\0'.

2007-12-28 18:27  zmedico

	* pym/portage/__init__.py: Make key_expand() use dbapi.categories.

2007-12-28 18:20  zmedico

	* pym/portage/__init__.py, pym/portage/dbapi/__init__.py,
	  pym/portage/dbapi/vartree.py, pym/portage/dbapi/virtual.py: Make
	  dep_expand() stop relying on having a categories list:
	  * Create and use a dbapi.categories property that is
	  automatically generated from dbapi.cp_all().
	  * Make mutable dbapi instances delete the invalidate the
	  cached categories when they need to be regenerated.

2007-12-28 18:01  zmedico

	* pym/portage/dbapi/vartree.py: Just ignore it when the global
	  counter file does not match
	  the highest installed COUNTER since it's normal for them to
	  differ in some cases. For example, the global counter file
	  will contain a higher value if the user merges a package and
	  then immediately unmerges it (unmerge does not update the
	  global counter file, but merge does).

2007-12-28 15:35  zmedico

	* pym/_emerge/__init__.py: In action_regen(), use writemsg() to
	  send error messages to
	  stderr.

2007-12-28 14:56  zmedico

	* pym/portage/__init__.py: Show the EBUILD_FORCE_TEST "Forcing
	  test" message
	  even when "test" is not in IUSE.

2007-12-28 14:40  zmedico

	* bin/ebuild, bin/ebuild.sh, bin/isolated-functions.sh,
	  pym/portage/__init__.py: Fixes for logic related to FEATURES=test
	  to USE=test mapping:
	  * Add EBUILD_FORCE_TEST to the environment whitelist and filter
	  it from the saved environment in save_ebuild_env().
	  * Tweak logic inside the ebuild command and config.regenerate()
	  so that EBUILD_FORCE_TEST works even in odd cases like when
	  USE=test is masked.
	  * Only make FEATURES=test map to USE=test when "test" is
	  actually in IUSE.
	  * Remove USE=test from the set of implicit IUSE so that useq()
	  calls in ebuild.sh properly generate a QA Notice when "test"
	  is missing from IUSE.

2007-12-28 13:27  zmedico

	* bin/ebuild.sh: Always make sure that the depend phase triggers a
	  source ${EBUILD}
	  call, even if "${T}"/environment happens to exist for some
	  reason.

2007-12-28 11:29  zmedico

	* bin/misc-functions.sh: Bug #203323 - Fix the FEATURES=sfperms
	  code so that it doesn't chmod
	  g-r on binaries that are both setuid and setgid. In that case,
	  just
	  chmod o-r.

2007-12-28 10:45  zmedico

	* bin/repoman: Minor code readablity enhancements:
	  * Use relative_path and full_path variables for files being
	  checked
	  instead of spreading code like x+"/files/"+y all over the place.
	  * Use stat.S_IMODE with octal 0111 instead of hex 0x0248 in the
	  file.executable checks.

2007-12-28 10:23  zmedico

	* bin/repoman: Bug #201498 - Use desktop-file-validate to validate
	  *.desktop
	  files inside ${FILESDIR} and generate a "desktop.invalid"
	  qa warning if an error is detected. Thanks to Betelgeuse for
	  the initial patch.

2007-12-26 14:17  zmedico

	* bin/repoman: Fix broken handling of the tuple that's returned
	  from
	  verify_all(). Thanks to Betelgeuse.

2007-12-26 08:21  zmedico

	* bin/emerge-webrsync: Fix sync_local() to return 0 when a
	  appropriate. Thanks to
	  Alon Bar-Lev" <alonbl@gentoo.org>

2007-12-25 05:41  zmedico

	* pym/portage/util.py: In getconfig(), pass the infile attribute
	  into the shlex
	  constructor so that shlex.sourcehook() properly joins
	  relative paths.

2007-12-25 03:20  zmedico

	* pym/portage/dbapi/vartree.py: Fix "Initializing counter" message
	  to show the correct value.

2007-12-25 02:51  zmedico

	* pym/portage/dbapi/vartree.py: Bug #203090 - Do not trust the
	  global counter
	  file that can lead to invalid COUNTER generation.

2007-12-25 01:34  zmedico

	* bin/ebuild.sh: Bug #203239 - With FEATURES=noauto, always source
	  ${EBUILD}.
	  This will load the ${T}/environment file if available and then
	  source ${EBUILD} to overwrite any functions that have changed.

2007-12-25 00:24  solar

	* pym/_emerge/__init__.py, pym/portage/dbapi/bintree.py: - small UI
	  cleanups. *should* not cause problems with lack of missing
	  newlines.

2007-12-23 02:21  zmedico

	* bin/repoman: Remove redundant find_binary import.

2007-12-21 12:51  zmedico

	* pym/_emerge/__init__.py: Add support for --usepkg and
	  --usepkgonly options together with
	  emerge --search.

2007-12-21 11:36  zmedico

	* bin/portageq: Implement a `portageq contents <root>
	  <category/package>` command
	  that lists all the files that are installed for a given package,
	  with one file listed on each line.

2007-12-21 11:15  zmedico

	* bin/portageq: Typo: remove bogus argument.

2007-12-21 11:14  zmedico

	* bin/portageq: Enhance the portageq match command to list all
	  installed packages
	  when given an empty string.

2007-12-21 10:31  zmedico

	* pym/portage/dbapi/vartree.py: Make vardbapi cache DESCRIPTION and
	  HOMEPAGE in order to optimize
	  emerge --searchdesc.

2007-12-21 10:05  zmedico

	* pym/_emerge/__init__.py: Implement binary package visibility
	  filtering for emerge --search.

2007-12-21 07:16  zmedico

	* pym/_emerge/__init__.py: Don't show "Size of files: 0 kB" in
	  emerge --search output for installed
	  packages that have no available ebuild in the tree.

2007-12-21 06:59  zmedico

	* pym/_emerge/__init__.py: Implement emerge --search support for
	  installed packages, so it
	  works even without a portage tree or binary packages.

2007-12-21 05:05  zmedico

	* pym/portage/__init__.py: Make the "test" flag that's enabled by
	  FEATURES=test into
	  an implicit iuse member.

2007-12-21 03:28  zmedico

	* bin/repoman: Eliminate redundant "notadded" error filtering.

2007-12-21 02:47  zmedico

	* pym/portage/__init__.py: Fix xmatch "match-all" typo.

2007-12-21 02:20  zmedico

	* pym/portage/process.py: In portage.process.spawn(), make the
	  default fd_pipes value get
	  file descriptors from sys.std{in,out,err} so that they can be
	  overridden.

2007-12-21 02:14  zmedico

	* pym/portage/__init__.py: In portage.spawn(), make the default
	  fd_pipes value get file
	  descriptors from sys.std{in,out,err} so that they can be
	  overridden.

2007-12-21 02:04  zmedico

	* pym/_emerge/__init__.py, pym/portage/__init__.py: Tweak profile
	  validation and warning logic a bit.

2007-12-21 01:27  zmedico

	* pym/portage/dbapi/bintree.py: Fix references to
	  dbapi._category_re.

2007-12-21 01:23  zmedico

	* pym/portage/dbapi/bintree.py: Use regex category validation in
	  binarytree.populate().

2007-12-21 01:16  zmedico

	* pym/portage/dbapi/__init__.py, pym/portage/dbapi/porttree.py: Use
	  a regex to validate package directory names in
	  portdbapi.cp_list()
	  and also simplify the catagory regex a bit.

2007-12-21 00:57  zmedico

	* pym/portage/dbapi/porttree.py: Add "metadata" and "licenses" to
	  _non_category_dirs.

2007-12-21 00:47  zmedico

	* pym/portage/__init__.py: Slightly improved the masked package
	  check inside dep_zapdeps().

2007-12-21 00:38  zmedico

	* pym/_emerge/__init__.py: Fix a reference to an undefined "mykey"
	  variable.

2007-12-21 00:03  zmedico

	* bin/portageq: Bug #202566 - Move the 'global portage' statement
	  to avoid
	  "SyntaxWarning: name 'portage' is assigned to before global
	  declaration" messages produced by earlier python-2.4.

2007-12-20 23:53  zmedico

	* bin/sed: Hardcode #!/bin/bash for consistency with other scripts.

2007-12-20 17:01  zmedico

	* pym/portage/dbapi/porttree.py: Fix a typo in the
	  _non_category_dirs regex.

2007-12-20 14:21  zmedico

	* pym/portage/dbapi/porttree.py: Filter out some non-category
	  directories in portdbapi.cp_all().

2007-12-20 14:07  zmedico

	* pym/portage/dbapi/porttree.py, pym/portage/dbapi/vartree.py: For
	  simplicity and consistency, always use a regular expression
	  for category validation instead of using a list.

2007-12-20 13:34  zmedico

	* pym/portage/dbapi/__init__.py, pym/portage/dbapi/porttree.py,
	  pym/portage/dbapi/vartree.py: Fix portdbapi.cp_list() so that it
	  can cope with a
	  missing profile.

2007-12-20 13:06  zmedico

	* pym/portage/__init__.py: Make dep_zapdeps() fall back to
	  installed packages in it's
	  availability test in cases where the package does not
	  appear to be masked. This solves dep selection preference
	  issues when working without a portage tree.

2007-12-20 11:40  zmedico

	* pym/portage/dbapi/bintree.py: Fix
	  binarytree._update_pkgindex_header() so that it can cope
	  with a missing profile.

2007-12-20 10:48  zmedico

	* pym/portage/dbapi/vartree.py: Make vartree.cpv_all() stop relying
	  on having a categories
	  list since it may not be available if there is no portage
	  tree.

2007-12-20 08:34  zmedico

	* pym/_emerge/__init__.py: Enable emerge search actions for binary
	  packages when there is
	  no portage tree available.

2007-12-20 08:17  zmedico

	* pym/portage/dbapi/porttree.py: Fix a type: eclasses -> eclass.

2007-12-20 06:07  zmedico

	* pym/portage/__init__.py: Pass a valid phase into eerror so that
	  it works.

2007-12-20 06:00  zmedico

	* pym/portage/dbapi/bintree.py: Make binarytree.populate() stop
	  relying on having a categories
	  list since it may not be available if there is no portage tree.

2007-12-20 05:38  zmedico

	* pym/portage/__init__.py: Convert messages about missing portage
	  tree to debug level
	  warnings since quite often it's possible to function without
	  a portage tree now.

2007-12-20 05:16  zmedico

	* pym/_emerge/__init__.py, pym/portage/__init__.py,
	  pym/portage/dbapi/porttree.py, pym/portage/news.py: Make some
	  adjustments so that it's possible to install binary
	  packages without having a portage tree:
	  
	  * Make portdbapi.aux_get() return early by raising a KeyError
	  if it detects that there is no portage tree.
	  
	  * Move the ARCH and USERLAND sanity check to the last moment
	  in doebuild() and only require these variables if an
	  existing environment (such as environment.bz2) is
	  unavailable.
	  
	  * Make the NewsManager constructor cope with a broken
	  make.profile symlink.

2007-12-20 04:00  zmedico

	* pym/portage/__init__.py: Bug #202748 - When merging a binary
	  package, only clean up
	  temp files on success. Otherwise, leave the temp files
	  intact for debugging purposes.

2007-12-20 02:29  zmedico

	* pym/portage/__init__.py: Whitespace only: remove extra
	  indentation.

2007-12-20 02:11  zmedico

	* pym/portage/__init__.py: Always add ARCH to USE without relying
	  on it being listed
	  in PORTAGE_ARCHLIST.

2007-12-19 06:54  zmedico

	* bin/repoman: Bug #140180 - Ignore missing HOMEPAGE and LICENSE
	  variables for
	  new-style virtual packages.

2007-12-19 03:41  zmedico

	* pym/portage/__init__.py: Keep filtered USE in the PORTAGE_USE
	  variable to keep
	  it separate from the global USE that's shown by
	  emerge --info.

2007-12-19 02:49  zmedico

	* pym/portage/__init__.py: Trigger a config.regenerate() call
	  inside setcpv() when the
	  EBUILD_PHASE variable is defined. It's too expensive to do
	  the regenerate() call every time. Do in when EBUILD_PHASE
	  is defined since it's needed to create the filtered USE that
	  environ() passes to the ebuild environment.

2007-12-18 14:47  zmedico

	* pym/portage/__init__.py: Store filtered USE for config.environ()
	  calls in a special
	  attribute so that the normal global USE is still available
	  for things like emerge --info output.

2007-12-18 14:14  zmedico

	* pym/portage/__init__.py: Fix USE filtering code so that it
	  doesn't rely on config.setcpv()
	  calling config.regenerate().

2007-12-18 12:05  zmedico

	* pym/portage/__init__.py: Make special build and bootstrap flags
	  into implicit members
	  of IUSE so that stage builds will work again.

2007-12-18 09:27  zmedico

	* pym/_emerge/__init__.py: Display the merge list with blockers any
	  time that there are
	  blockers, instead of telling the user to try again with
	  --pretend.

2007-12-18 08:21  zmedico

	* bin/ebuild.sh: Only enable the PORTAGE_IUSE check during build
	  time phases
	  since that's the only time it's valid for now.

2007-12-18 07:09  zmedico

	* pym/portage/__init__.py: Include masked flags in PORTAGE_IUSE to
	  avoid more false positives
	  in the useq() IUSE check.

2007-12-18 06:32  zmedico

	* bin/ebuild.sh, pym/portage/__init__.py: Create a PORTAGE_IUSE
	  variable containing an egrep pattern
	  for use by the QA check that's built into useq(). This allows
	  the IUSE logic for this check to be isolated in the python
	  code.

2007-12-18 04:04  zmedico

	* pym/portage/__init__.py: Bug #176467 - Filter out USE flags that
	  aren't part of IUSE.
	  Some flags are considered to be implicit members of IUSE:
	  
	  * Flags derived from ARCH
	  * Flags derived from USE_EXPAND_HIDDEN variables
	  * Forced flags, such as those from {,package}use.force

2007-12-18 03:43  zmedico

	* bin/sed: Fix typo: %% -> ##.

2007-12-18 03:16  zmedico

	* bin/sed: Generalize the sed -> gsed wrapper script so that it's
	  possible to create awk, make, and patch symlinks that
	  behave analogously. These symlinks will make
	  it unnecessary for default-bsd profiles to define
	  profile.bashrc aliases for these commands.

2007-12-17 08:04  zmedico

	* bin/emaint: Fix setconfig.getSets() api breakage.

2007-12-15 23:49  zmedico

	* bin/misc-functions.sh: In "QA Notice: Precompiled python"
	  messages, use sed to strip the
	  leading ${D} from file paths.

2007-12-15 21:32  zmedico

	* bin/repoman, pym/portage/output.py: Move the reusable
	  ConsoleStyleFile and StyleWriter classes into
	  the ouput module.

2007-12-15 21:04  zmedico

	* doc/config/sets.docbook, doc/qa.docbook: Fix punctuation and
	  spelling. Thanks to Arfrever Frehtes Taifersar
	  Arahesis <arfrever.fta@gmail.com>.

2007-12-15 07:31  zmedico

	* bin/repoman: Split out a format_qa_output() function to eliminate
	  duplicate code.

2007-12-15 03:54  zmedico

	* bin/repoman: Instead of all modes, only in commit mode save an
	  extra copy of QA
	  output for display in $EDITOR.

2007-12-15 03:02  zmedico

	* bin/repoman: Replace hardcoded green, yellow, and red with GOOD,
	  WARN, and BAD.

2007-12-15 00:18  zmedico

	* bin/repoman: Save QA output so that it can be conveniently
	  displayed
	  in $EDITOR while the user creates a commit message.
	  Otherwise, the user would not be able to see this output
	  once the editor has taken over the screen.
	  
	  Output is done through a formatter object where it is
	  captured for later use. A file-like object that behaves
	  something like the portage.output.colorize() function is
	  used to transfor style identifiers from the formatter
	  framework into actual console codes.

2007-12-14 11:41  zmedico

	* bin/repoman: Prompt the user before letting the editor
	  take over the screen so there is an
	  opportunity to review any QA warnings.

2007-12-14 11:17  zmedico

	* bin/repoman: Add support for getting a commit message using an
	  editor defined
	  by the EDITOR environment variable.

2007-12-14 09:52  zmedico

	* bin/repoman: Add support for multi-line commit message input by
	  using EOF
	  as a delimiter (Ctrl-d) instead of a new line.

2007-12-13 21:21  zmedico

	* pym/_emerge/__init__.py: Add --buildpkgonly to the options lists
	  that exempt from
	  slot collisions and world file updates.

2007-12-13 20:54  zmedico

	* bin/prepstrip: Disable the "QA Notice: Pre-stripped files"
	  message when RESTRICT
	  contains "strip" or "binchecks". This is needed at least for the
	  glibc ebuild since it calls prepallstrip directly, resulting in
	  it being called twice. Thanks to loki_val for reporting.

2007-12-13 20:07  zmedico

	* man/make.conf.5: Bug #202126 - Replace an obsolete reference to
	  `emerge --help config`
	  with a reference to the CONFIGURATION FILES section of emerge(1).

2007-12-13 19:57  zmedico

	* bin/isolated-functions.sh: Make sure that PORTAGE_SANDBOX_*
	  variables can never be set
	  by "${T}"/environment.

2007-12-13 10:30  zmedico

	* bin/ebuild.sh, bin/isolated-functions.sh: Allow FEATURES to
	  persist between phases since the user might
	  want to modify it via bashrc to enable things like splitdebug
	  and installsources for specific packages. They should be able
	  to modify it in pre_pkg_setup() and have it persist all the
	  way through the install phase. However, if FEATURES exist
	  inside environment.bz2 then they should be overridden by
	  current settings.

2007-12-13 08:34  zmedico

	* bin/ebuild.sh: Remove extra _ typo.

2007-12-13 08:30  zmedico

	* bin/ebuild.sh: Properly filter SANDBOX_ON from the environment.
	  When sourcing
	  ${T}/environment it's a bit tricky because we have to temporarily
	  disable sandbox since the SANDBOX_{DENY,READ,PREDICT,_WRITE}
	  values
	  we've just loaded may be unusable (triggering in spurious sandbox
	  violations) until we've merged them with our current values.

2007-12-13 07:25  zmedico

	* bin/repoman, pym/_emerge/__init__.py: Use the BAD color class
	  instead of hardcoded red.

2007-12-13 06:28  zmedico

	* pym/portage/dbapi/porttree.py: Make portdbapi.visible() mask
	  ebuilds that do not define SLOT.
	  (branches/2.1.2 r8900)

2007-12-13 05:37  zmedico

	* bin/repoman: Do the sanity check for bug #198398 as early as
	  possible.

2007-12-13 05:27  zmedico

	* bin/ebuild.sh: Bug #201771 - Make unpack() detect common errors
	  such as absolute
	  paths that start with ${DISTDIR} and die an appropriate error
	  message. Thanks to grobian for this patch.

2007-12-13 04:30  zmedico

	* pym/portage/__init__.py: Bug #201848 - Make the ebuild command
	  reject ebuilds that do not define
	  SLOT.

2007-12-13 04:23  zmedico

	* pym/_emerge/__init__.py: Bug #201848 - Mask ebuilds that do not
	  define SLOT.

2007-12-13 03:54  zmedico

	* bin/ebuild.sh: Use the sed -r option to enable extended regular
	  expressions so that
	  commonly used characters like (, ), and + don't have to be
	  escaped.

2007-12-13 03:44  zmedico

	* bin/ebuild.sh, bin/filter-bash-environment.py: Bug #202068 - In
	  order to filter unwanted variable assignments out
	  of the bash environment, use a filter-bash-environment.py script
	  that behaves similar to egrep -v except that it leaves bash here-
	  documents intact.

2007-12-13 01:53  zmedico

	* bin/ebuild.sh: In filter_readonly_variables(), replace 'declare
	  -r ' with 'declare '
	  instead of removing it completely.

2007-12-13 01:18  zmedico

	* pym/_emerge/__init__.py: Bug #202036 - In case of blockers, bail
	  out earlier so that later
	  code can assume there are no blockers.

2007-12-12 09:25  zmedico

	* bin/repoman: Fix the check for bug #198398 so that it works even
	  when running
	  repoman from the root of the repo.

2007-12-12 08:06  zmedico

	* bin/repoman: Bug #198398 - Make repoman bail out if support for
	  RMD160 hash
	  creation appears to be missing.

2007-12-11 23:26  zmedico

	* bin/emerge, bin/portageq, pym/_emerge/__init__.py,
	  pym/portage/__init__.py: Instead of calling sys.exit when a
	  ParseError occurs in the config
	  constructor, raise a ParseError and make emerge and portageq
	  handle
	  the error. This way consumers of the portage api can handle the
	  ParseError rather than have their application exit. Thanks to
	  lxnay
	  for reporting.

2007-12-11 23:12  zmedico

	* pym/portage/util.py: * Raise PermissionDenied from getconfig()
	  when appropriate.
	  * When available, make getconfig() include an invalid token
	  in a ParseError message.

2007-12-11 23:09  zmedico

	* bin/portageq: First import the main portage module without legacy
	  globals since it
	  is almost certain to succeed in that case. This provides access
	  to
	  the portage.exception namespace which is needed for later
	  exception
	  handling, like if portage.exception.PermissionDenied is raised
	  when
	  constructing the legacy global config instance.

2007-12-11 06:36  zmedico

	* bin/ebuild.sh, pym/portage/__init__.py: * When installing a
	  binary package, export the file name of the package
	  as PORTAGE_BINPKG_FILE in order to give bashrc users an
	  opportunity
	  to do various things such as remove binary packages after they're
	  installed.
	  
	  * Add a note in ebuild.sh explaining why hardcoded bash lists are
	  needed for backward compatibility with <portage-2.1.4 since they
	  assume that a newly installed version of ebuild.sh will work for
	  pkg_postinst, pkg_prerm, and pkg_postrm when portage is upgrading
	  itself.

2007-12-09 05:58  zmedico

	* doc/qa.docbook: Add a "Quality Assurance" <part> tag so that all
	  chapters are
	  consistently nested inside <part> tags.

2007-12-09 05:50  zmedico

	* doc/config.docbook, doc/config/bashrc.docbook, doc/package,
	  doc/package.docbook, doc/package/ebuild,
	  doc/package/ebuild.docbook, doc/package/ebuild/phases.docbook,
	  doc/portage.docbook: Add some documentation for ebuild phases and
	  pre/post phase
	  hooks that can be defined via bashrc.

2007-12-08 22:56  zmedico

	* pym/portage/__init__.py: Do an EBUILD_EXIT_STATUS_FILE sanity
	  check in spawnebuild()
	  where it spawns misc-functions.sh after the install phase.

2007-12-07 22:21  zmedico

	* pym/portage/__init__.py: Bug #189417 - Comment on how the
	  whitelist and BASH_ENV are used to
	  prevent environment leakage.

2007-12-07 22:08  zmedico

	* pym/portage/__init__.py: Bug #189417 - Whitelist BASH_ENV since
	  we need to have it set in order
	  to prevent sandbox from causing env leakage by sourcing
	  /etc/profile
	  via it's bashrc.

2007-12-07 22:03  zmedico

	* pym/portage/__init__.py: Bug #189417 - Explicitly whitelist any
	  remaining variables that are
	  allowed to leak into the ebuild environment. Also, fix
	  spawnebuild
	  to properly filter the env when it spawns misc-functions.sh after
	  the install phase. There is still some remaining leakage that
	  seems
	  to come from something in the ebuild environment sourcing
	  /etc/profile.

2007-12-07 09:59  zmedico

	* pym/portage/__init__.py: Add a TODO note about remaining work for
	  bug #189417.

2007-12-07 05:42  zmedico

	* pym/_emerge/__init__.py: Perform set argument validation in
	  emerge_main() even for
	  values actions that need to expland sets themselves.

2007-12-07 05:33  zmedico

	* pym/_emerge/__init__.py: Remove automatic "system" and "world"
	  set creation since we can
	  probably rely on having a complete config.

2007-12-07 01:25  zmedico

	* cnf/sets.conf: Bug #201513 - Fix typos for preserve-libs and
	  PreservedLibraryConsumerSet.
	  Thanks to Arfrever Frehtes Taifersar Arahesis
	  <Arfrever.FTA@GMail.Com> for
	  this patch.

2007-12-06 23:37  zmedico

	* bin/ebuild.sh: Declare retval as a local variable.

2007-12-06 23:28  zmedico

	* bin/ebuild.sh: Prevent the filter_opts local variable from
	  leaking into the
	  environment in preprocess_ebuild_env().

2007-12-06 22:23  zmedico

	* bin/ebuild.sh, pym/portage/__init__.py: Bug #201506 - Make
	  preprocess_ebuild_env() preserve
	  SANDBOX_{DENY,PREDICT,READ,WRITE} between all phases,
	  except when the environment comes directly from
	  environment.bz2.

2007-12-06 21:55  zmedico

	* bin/ebuild.sh: Remove redundant successful exit call from the
	  "depend" phase
	  and let it run to the bottom of ebuild.sh just like the other
	  phases.

2007-12-06 00:19  zmedico

	* bin/emerge-webrsync: Fix broken timestamp logic in do_snapshot().
	  Thanks to Alon
	  Bar-Lev <alonbl@gentoo.org> for this patch.

2007-12-05 08:54  zmedico

	* pym/_emerge/__init__.py: Keep the RootConfig.sets attribute in
	  sync with the SetConfig.

2007-12-05 08:46  zmedico

	* pym/_emerge/__init__.py, pym/portage/sets/__init__.py: Make
	  SetConfig.getSets() return a copy of the psets attribute
	  instead of a direct reference. Fix the to stop relying on
	  having the direct reference.

2007-12-05 04:42  zmedico

	* TODO: - repository configuration file and `emerge --sync
	  [repo_set]... [repo]...`
	  support for overlays and binhosts (zmedico)

2007-12-05 03:42  zmedico

	* pym/_emerge/__init__.py: Show ? if the installed package is
	  missing a
	  repository label. The stable version of portage
	  creates these labels now, so false positives
	  won't be as common as they used to be.

2007-12-05 03:32  zmedico

	* pym/_emerge/__init__.py: bootstrap.sh expects that the "system"
	  set always exists, so create
	  it automatically if necessary.

2007-12-05 00:52  zmedico

	* pym/_emerge/__init__.py: In order to know exactly which
	  atoms/sets should be added to the
	  world file, the depgraph performs set expansion later. It will
	  get
	  confused about where the atoms came from if it's not allowed to
	  expand them itself.

2007-12-04 10:46  genone

	* pym/_emerge/__init__.py: fix another typo

2007-12-04 10:14  genone

	* pym/_emerge/__init__.py, pym/portage/sets/__init__.py: perform
	  sanity checks for set configuration even if myaction is None

2007-12-04 09:58  genone

	* bin/emaint, pym/_emerge/__init__.py,
	  pym/portage/sets/__init__.py: Fix setconfig loader to use config
	  files instead of hardcoded fallbacks

2007-12-04 09:29  genone

	* cnf/make.globals: enable FEATURES=preserve-libs globally for
	  extended testing

2007-12-04 09:28  genone

	* pym/portage/dbapi/vartree.py: make sure we only remove files that
	  were previously preserved

2007-12-03 23:27  zmedico

	* pym/portage/__init__.py, pym/portage/dbapi/vartree.py: Remove
	  redundant config.load_infodir() calls from
	  portage.pkgmerge() and dblink.unmerge() since it's
	  already called in doebuild.()

2007-12-03 23:06  zmedico

	* bin/ebuild.sh: Synchronize the conditional that triggers
	  "${T}"/environment
	  generation with the conditional that triggers distcc and
	  ccache FEATURES setup.

2007-12-03 21:49  zmedico

	* pym/portage/__init__.py: Fix typo in config.load_infodir() return
	  value logic.

2007-12-03 21:46  zmedico

	* pym/portage/__init__.py, pym/portage/dbapi/vartree.py: * Don't
	  load the CATEGORY in config.load_infodir() since this value is
	  critical for doebuild() operation and we already know the
	  category.
	  * Always call config.setcpv() prior to config.load_infodir() so
	  that
	  the CATEGORY is always known.

2007-12-03 20:53  zmedico

	* pym/portage/dbapi/vartree.py: Bug #201090 - When portage creates
	  a temp PORTAGE_BIN_PATH, put it
	  inside PORTAGE_TMPDIR since, unlike /tmp, it can't be mounted
	  with
	  the "noexec" option.

2007-12-03 19:58  zmedico

	* pym/portage/__init__.py: Make config.load_infodir() more fault
	  tolerant for cases like bug
	  #201082.

2007-12-03 19:34  genone

	* TODO: update TODO list

2007-12-03 19:31  genone

	* bin/repoman: revert accidential commit

2007-12-03 19:12  zmedico

	* pym/portage/__init__.py: Bug #201082 - Don't call
	  config.load_infodir() prior to pkg_postinst()
	  because it's not needed and the ebuild path that's passed in for
	  postinst is may be from the portage tree, which causes
	  load_infodir()
	  to discard critical metadata such as CATEGORY without realoading
	  it.

2007-12-03 19:09  genone

	* bin/repoman, cnf/sets.conf, pym/_emerge/__init__.py,
	  pym/portage/dbapi/vartree.py, pym/portage/sets/__init__.py:
	  implement the final part of FEATURES=preserved-libs and remove
	  previously preserved libs that don't have any consumers left.
	  Also fix the notice if preserved libs are found to use the
	  preserved-rebuild package set instead of revdep-rebuild.

2007-12-03 06:19  zmedico

	* bin/isolated-functions.sh, pym/portage/__init__.py: * whitelist
	  CCACHE_* and DISTCC_* variables in config.environ()
	  * unset CCACHE_* and DISTCC_* variables in save_ebuild_env()

2007-12-02 22:04  zmedico

	* bin/isolated-functions.sh: For compatibility with cvs.eclass, do
	  not unset CVS_RSH in
	  save_ebuild_env() since that variable may be initialized in
	  global scope.

2007-12-02 21:12  zmedico

	* bin/repoman: Convert caterror() to call warn() instead of err()
	  since
	  we don't want to exit here.

2007-12-02 21:07  zmedico

	* bin/repoman: Add back missing err() function.

2007-12-02 20:55  zmedico

	* bin/ebuild.sh: Fix useq() so that it won't generate a bogus IUSE
	  QA Notice
	  if called during the "depend" phase with a flag that uses
	  IUSE defaults.

2007-12-02 09:10  zmedico

	* pym/_emerge/__init__.py, pym/portage/dbapi/vartree.py:
	  Synchronize self-reinstallation logic so that emerge will always
	  restart itself when dblink.merge() creates temporary copies of
	  PORTAGE_{BIN,PYM}_PATH.

2007-12-02 07:58  zmedico

	* pym/portage/dbapi/vartree.py: In dblink.treewalk(), tweak the
	  "Safely unmerging
	  already-installed instance" logic to make sure that
	  it works in all possible cases.

2007-12-02 06:44  zmedico

	* pym/portage/__init__.py: For portage.spawn() calls, use a
	  _shell_quote() function to quote
	  the path of the binary since.

2007-12-01 22:26  zmedico

	* bin/isolated-functions.sh, pym/portage/__init__.py: * whitelist
	  some misc variables from the calling environment
	  * blacklist the same variables in save_ebuild_env() so that
	  the latest values from the calling environment always
	  override those from the ebuild environment

2007-12-01 21:39  zmedico

	* pym/_emerge/__init__.py: Show the pid in the "starting parallel
	  fetching" message.

2007-12-01 21:23  zmedico

	* pym/_emerge/__init__.py: When os.waitid() raises OSError, discard
	  the pid since there's
	  no need to wait on it again.

2007-12-01 21:11  zmedico

	* pym/_emerge/__init__.py: After each merge, collect status from
	  child processes
	  in order to clean up zombies (such as the parallel-fetch
	  process).

2007-12-01 12:45  zmedico

	* pym/portage/elog/__init__.py: Move duplicate module loading code
	  into a function.

2007-12-01 12:28  zmedico

	* pym/portage/__init__.py: Add missing newline after message.

2007-12-01 08:38  zmedico

	* pym/portage/__init__.py: In create_trees(), when isolating the
	  environment of the ROOT=/ config,
	  use it's env.d keys as a blacklist to make env.d override the
	  calling
	  environment.

2007-12-01 08:04  zmedico

	* bin/isolated-functions.sh: When die has been called and
	  ${T}/environment does not exist,
	  dump the current environment to ${T}/die.env in case it helps
	  for debugging.

2007-12-01 04:19  zmedico

	* bin/isolated-functions.sh, pym/portage/__init__.py: * whitelist
	  PREROOTPATH in config.environ()
	  * filter PREROOTPATH in save_ebuild_env()

2007-12-01 03:07  zmedico

	* pym/portage/__init__.py: * whitelist DISTDIR, PORTDIR, and
	  PORTAGE_TMPDIR, PORTAGE_WORKDIR_MODE.
	  * whitelist RPMDIR just for the "rpm" phase.

2007-12-01 01:36  zmedico

	* pym/portage/__init__.py: Update comments about ROOTPATH:
	  sandbox's bashrc sources /etc/profile which unsets ROOTPATH,
	  so we have to back it up and restore it

2007-12-01 01:34  zmedico

	* bin/ebuild.sh: Update comments about ROOTPATH:
	  sandbox's bashrc sources /etc/profile which unsets ROOTPATH,
	  so we have to back it up and restore it.

2007-12-01 00:46  zmedico

	* bin/ebuild.sh: Fix quoting for PORTAGE_ROOTPATH.

2007-12-01 00:25  zmedico

	* pym/portage/__init__.py: In doebuild_environment(), fix KV logic
	  so that it never
	  gets set during the "depend" phase. Also, use
	  backup_changes() to properly cache the result.

2007-12-01 00:24  zmedico

	* bin/isolated-functions.sh: Bug #200863 - Don't filter ${KV} since
	  kernel-2.eclass uses that
	  variable and we don't want to interfere.

2007-11-30 23:43  zmedico

	* bin/ebuild.sh, pym/portage/__init__.py: sandbox unsets ROOTPATH,
	  so we have to back it up on the python
	  side then restore it on the bash side.

2007-11-30 11:05  zmedico

	* bin/ebuild.sh, bin/isolated-functions.sh: Bug #200775 - Save more
	  portage generated environment
	  variables that are in environment.bz2 so that they are
	  available for use by tools such as epm.

2007-11-30 09:27  zmedico

	* pym/portage/__init__.py: Add some variables such as TERM to the
	  whitelist of variables
	  from the calling environment that are allowed into the ebuild
	  environment.

2007-11-30 09:03  zmedico

	* bin/ebuild.sh: Don't use sandbox's BASH_ENV for new shells
	  because it does
	  'source /etc/profile' which can interfere with the build
	  environment by modifying our PATH.

2007-11-30 07:19  zmedico

	* pym/portage/__init__.py: Make config.environ() export PKGDIR to
	  the ebuild environment
	  during the "package" phase since it's currently referenced
	  there.

2007-11-30 01:58  zmedico

	* NEWS: * After the initial setup phase, the original ebuild and
	  eclasses are no
	  longer needed because the same ebuild environment is reused for
	  the
	  entire lifecycle of the package, including uninstallation.

2007-11-30 00:54  zmedico

	* bin/ebuild.sh: Remove unused EBUILD_ENV_FILE variable.

2007-11-30 00:35  zmedico

	* bin/ebuild.sh, pym/portage/__init__.py: Bug #189417 - When
	  ${T}/environment exists, isolate the ebuild
	  environment from the calling environment. This makes it possible
	  for the build to unset a variable that was inherited from the
	  calling environment, and the variable will remain unset between
	  phases.

2007-11-29 20:24  zmedico

	* bin/ebuild.sh, bin/isolated-functions.sh,
	  pym/portage/__init__.py: Move environment.bz2 extraction from
	  ebuild.sh to doebuild() on
	  the python side. The python will be able to use it's awareness
	  of the ${T}/environment to decide what type of ebuild environment
	  should be generated. For example, if the ebuild environment
	  should be able to unset variables that have been inherited from
	  the calling environment, the existence of ${T}/environment
	  will indicate that the ebuild environment should be isolated from
	  the calling environment.

2007-11-29 09:35  zmedico

	* pym/portage/elog/__init__.py: Make elog_process() pre-load log
	  modules that it can be called
	  just for that purpose.

2007-11-29 09:06  zmedico

	* pym/portage/dbapi/vartree.py, pym/portage/elog/__init__.py: When
	  portage reinstalls itself, pre-load elog modules in
	  dblink.merge() since we won't be able to later if they get
	  unmerged (happens when namespace changes).

2007-11-29 08:28  zmedico

	* pym/portage/dbapi/vartree.py: Don't modify sys.path inside
	  dblink.merge() because it doesn't seem
	  to help and it triggers import errors for elog modules when
	  downgrading
	  to versions of portage that use the old namespace.

2007-11-29 07:55  zmedico

	* bin/ebuild.sh: Adjust PYTHONPATH when calling portageq so that
	  variable
	  PORTAGE_PYM_PATH works.

2007-11-29 06:06  zmedico

	* pym/portage/dbapi/vartree.py: When portage reinstalls itself,
	  copy both the bin and pym
	  directories to a temp dir. Insert the temporary PORTAGE_PYM_PATH
	  as the first element of sys.path and register an atexit hook to
	  clean up the temporary directories.

2007-11-29 03:11  zmedico

	* pym/portage/dbapi/vartree.py: In dblink.treewalk(), make portage
	  unmerge multiple instances
	  os sys-apps/portage in the same slot if necessary (needed when
	  AUTOCLEAN=no is set).

2007-11-29 02:37  zmedico

	* pym/portage/__init__.py: Remove stray print statement.

2007-11-29 02:19  zmedico

	* pym/portage/__init__.py: Fix references to EBUILD_SH_BINARY so
	  that they work properly
	  with variable PORTAGE_BIN_PATH.

2007-11-29 00:50  zmedico

	* pym/portage/dbapi/vartree.py: Make dblink.treewalk() properly
	  delete the installed instance after
	  it unmerges it.

2007-11-29 00:18  zmedico

	* pym/portage/__init__.py: Fix a typo.

2007-11-29 00:12  zmedico

	* pym/portage/__init__.py: Fix more references to MISC_SH_BINARY so
	  that they work properly
	  with variable PORTAGE_BIN_PATH.

2007-11-28 23:50  zmedico

	* pym/portage/__init__.py: In doebuild, fix paths to ebuild.sh and
	  misc-functions.sh so
	  that they work with variable PORTAGE_BIN_PATH.

2007-11-28 22:57  zmedico

	* pym/portage/__init__.py: Fix references to PORTAGE_BIN_PATH in
	  doebuild() to use the config
	  setting since it may be a temp directory when portage is
	  reinstalling
	  itself.

2007-11-28 22:35  zmedico

	* pym/portage/__init__.py: Enable the EBUILD_EXIT_STATUS_FILE
	  sanity check when portage is
	  reinstalling itself since the check is reliable in this case now
	  that a temporary PORTAGE_BIN_PATH is created.

2007-11-28 22:29  zmedico

	* pym/portage/dbapi/vartree.py: If portage is reinstalling itself,
	  create a temporary
	  copy of PORTAGE_BIN_PATH in order to avoid relying on
	  on the new versions which may be incompatible.

2007-11-28 18:57  zmedico

	* bin/ebuild.sh: Bug #200652 - Skip ${T}/environment handling for
	  pkg_nofetch().

2007-11-28 08:27  zmedico

	* pym/_emerge/__init__.py: In chk_updated_cfg_files(), avoid
	  scanning for config files for
	  paths that aren't writable by the current user. This prevents
	  Permission denied errors from being triggered later when trying
	  to scan subdirectories that are inaccessible.

2007-11-28 05:49  zmedico

	* pym/portage/dbapi/vartree.py: Disable PORTAGE_PACKAGE_EMPTY_ABORT
	  by default since
	  the scrollkeeper-9999 upgrade will trigger a false
	  positive. Thanks to leio for reporting.

2007-11-28 04:16  zmedico

	* pym/portage/__init__.py: Don't export PORTAGE_PACKAGE_EMPTY_ABORT
	  to the ebuild environment.

2007-11-28 03:45  zmedico

	* pym/portage/dbapi/vartree.py: Add a sanity check in
	  dblink.treewalk() so that a broken ebuild
	  that doesn't install any files will not be able to replace a
	  package in the same slot that really installs files.
	  
	  This check can be bypassed by manually unmerging the old package
	  or by setting PORTAGE_PACKAGE_EMPTY_ABORT="0" in /etc/make.conf.

2007-11-28 00:02  zmedico

	* bin/ebuild.sh: In the preprocess_ebuild_env() subshell, check for
	  errors and
	  return early when necessary.

2007-11-27 22:11  zmedico

	* pym/portage/__init__.py: Just use ${PN} instead of catpkgsplit().

2007-11-27 21:56  zmedico

	* pym/portage/__init__.py: portage upgrade or downgrade invalidates
	  EBUILD_EXIT_STATUS_FILE
	  sanity checks since ebuild.sh portage version may differ from the
	  current instance that is running in python.

2007-11-27 21:16  zmedico

	* pym/portage/__init__.py: Remove a redundant os.EX_OK check that
	  exit_status_check() already
	  handles internally.

2007-11-27 21:11  zmedico

	* pym/portage/__init__.py: Fix logic wrt exit_status_check and
	  elog_process in doebuild().

2007-11-27 18:52  zmedico

	* bin/ebuild.sh: Bug #200229 - The gimp ebuild defines AA as a
	  local variable. In order
	  to accomodate this, create a PORTAGE_MUTABLE_FILTERED_VARS list
	  for
	  variables that portage sets but doesn't mark readonly. In order
	  to
	  prevent changed values from causing unexpcted interference, they
	  are
	  filtered out of the environment when it is saved or loaded (any
	  mutations do not persist).

2007-11-27 08:20  zmedico

	* pym/portage/__init__.py: Don't forget to unlink
	  ${EBUILD_EXIT_STATUS_FILE} before each phase.

2007-11-27 02:08  zmedico

	* pym/portage/__init__.py: Fix config.pop() so that is will
	  properly raise a KeyError.

2007-11-27 01:11  zmedico

	* pym/portage/getbinpkg.py: Bug #200231 - Make dir_get_metadata()
	  handle an exception thrown
	  from dir_get_list() when there's a problem connection problem.

2007-11-26 23:57  zmedico

	* bin/ebuild.sh: Make the environment handling code detect errors
	  and die if
	  necessary.

2007-11-26 22:19  zmedico

	* pym/portage/__init__.py: Make doebuild() use
	  EBUILD_EXIT_STATUS_FILE sanity checks for the
	  extra misc-functions.sh preinst/postinst shell code.

2007-11-26 22:05  zmedico

	* pym/portage/__init__.py: Make doebuild skip directory creation
	  for the "cleanrm" command.

2007-11-26 20:34  zmedico

	* pym/portage/__init__.py: Fix grammar.

2007-11-26 19:02  zmedico

	* bin/ebuild.sh, pym/portage/__init__.py: * In doebuild(), don't
	  create directories for the "clean" or "unmerge".
	  * Fix dyn_clean() to clean the status file and return early when
	  appropriate.

2007-11-26 17:35  zmedico

	* pym/portage/__init__.py: Make config.pop() properly call
	  config.modifying().

2007-11-26 17:28  zmedico

	* pym/portage/__init__.py: Implement config.pop().

2007-11-26 12:06  zmedico

	* bin/ebuild.sh, bin/isolated-functions.sh, bin/misc-functions.sh:
	  Check if ${EBUILD_EXIT_STATUS_FILE} is empty before
	  attempting to use it.

2007-11-26 11:38  zmedico

	* pym/_emerge/__init__.py: --buildpkgonly will not merge anything,
	  so
	  it cancels all binary package options.

2007-11-26 11:23  zmedico

	* bin/ebuild.sh, bin/isolated-functions.sh, bin/misc-functions.sh,
	  pym/portage/__init__.py: Bug #200313 - Detect and report when an
	  ebuild phase
	  exits unexpectedly. This is type of behavior is known
	  to be triggered by things such as failed variable
	  assignments (bug #190128) or bad substitution errors
	  (bug #200313).
	  
	  We use a EBUILD_EXIT_STATUS_FILE environment variable
	  to specify a file that the shell code is supposed to
	  create when it exits in a normal manner. If the file
	  does not get created like it's supposed to be then we
	  can conclude that the shell has exited in some
	  unexpected way.

2007-11-26 05:48  zmedico

	* bin/ebuild.sh: Automatically try to load environment.bz2 whenever
	  "${T}/environment" does not exist, except for "clean"
	  and "depend" phases.

2007-11-26 04:40  zmedico

	* bin/isolated-functions.sh: Make diefunc() show the path of
	  ${T}/environment since it's usually
	  in the stack trace and the user is likely to be interested in it.

2007-11-26 04:05  zmedico

	* bin/isolated-functions.sh, pym/portage/__init__.py: Filter more
	  misc environment variables.

2007-11-26 02:52  zmedico

	* bin/ebuild.sh: unset ECLASS along with the other variables from
	  inherit().

2007-11-26 02:44  zmedico

	* pym/portage/__init__.py: Add NOCONFMEM to config._environ_filter.

2007-11-26 02:05  zmedico

	* bin/ebuild.sh, bin/isolated-functions.sh,
	  pym/portage/__init__.py: * Move filtering of a bunch of portage
	  config variables from
	  save_ebuild_env() to config.environ().
	  * Add EMERGE_FROM to the READONLY_PORTAGE_VARS list.

2007-11-26 01:05  zmedico

	* pym/_emerge/__init__.py, pym/portage/__init__.py,
	  pym/portage/eclass_cache.py: Bug #124041 - Make emerge show an
	  informative warning message when one
	  or more eclasses override eclasses from PORTDIR. The warning can
	  be
	  permanently disabled by setting PORTAGE_ECLASS_WARNING_ENABLE="0"
	  in
	  /etc/make.conf.

2007-11-25 23:05  zmedico

	* bin/isolated-functions.sh: Filter _RC_GET_KV_CACHE from the saved
	  environment.

2007-11-25 22:46  zmedico

	* bin/ebuild.sh, bin/isolated-functions.sh: Make
	  preprocess_ebuild_env() reload a known good version of
	  save_ebuild_env() in order to avoid making an assumption that
	  it hasn't been overridden.

2007-11-25 21:34  zmedico

	* bin/ebuild.sh: Remove some unsafe assumptions from
	  preprocess_ebuild_env() and
	  note the remaining assumption that save_ebuild_env() is not
	  overridden by the environment being loaded.

2007-11-25 09:30  zmedico

	* bin/ebuild.sh: Allow the pkg_info and pkg_config pre/post hooks
	  to run even
	  when the ebuild function is not defined.

2007-11-25 08:50  zmedico

	* bin/ebuild.sh: Remove the empty default pkg_setup, src_install,
	  pkg_preinst,
	  pkg_postinst, pkg_prerm, pkg_postrm, and pkg_config functions
	  since they do nothing more than clutter the environment.

2007-11-25 08:35  zmedico

	* bin/ebuild.sh: Test if ebuild functions are defined before
	  calling them. This
	  will be useful if an environment.bz2 has been loaded and it has
	  missing functions for some reason. For example, there are a lot
	  of default functions that are empty and could simply be omitted
	  from the environment.

2007-11-25 08:15  zmedico

	* bin/isolated-functions.sh: The qa_call() function and anything
	  before it are portage internals
	  that the user will not be interested in. Therefore, the stack
	  trace
	  should only show calls that come after qa_call().

2007-11-25 06:56  zmedico

	* bin/ebuild.sh, pym/_emerge/__init__.py: * Load environment.bz2
	  for the pkg_config() phase.
	  * Run the "clean" phase if pkg_config() succeeds.

2007-11-25 06:26  zmedico

	* bin/ebuild.sh, pym/portage/__init__.py: Implement loading of
	  environment.bz2 for the pkg_info() phase.
	  Since a temporary directory is required for processing of
	  ${T}/environment, and we want a user who's not in the portage
	  group to be able to run the pkg_info() phase, PORTAGE_TMPDIR
	  is temporarily overridden with a directory created by mkdtemp.
	  To make this work, doebuild() creates the tempdir and cleans
	  it up in a finally block.

2007-11-24 22:25  zmedico

	* bin/ebuild.sh: Bug #200238 - Make ebuild.sh properly bail out
	  when the pkg_info()
	  function doesn't exist.

2007-11-24 22:11  zmedico

	* bin/repoman: Bug #140180 - Never trigger a LICENSE.missing
	  violation for old style
	  virtuals since they don't directly install anything.

2007-11-24 18:28  zmedico

	* bin/misc-functions.sh: Use `md5` if `md5sum` is not available
	  (useful for FreeBSD users).

2007-11-24 05:42  zmedico

	* bin/ebuild.sh: Fix quoting to work properly with eval.

2007-11-24 04:47  zmedico

	* pym/portage/dbapi/bintree.py: When binarytree.populate() finds
	  missing metadata, specify which keys
	  are missing so that the user has a clue about what is wrong.

2007-11-24 04:21  zmedico

	* bin/ebuild.sh: Unconditionally filter some of the SANDBOX_*
	  variables from the
	  environment in order to avoid potential interference problems.
	  For example, having an invalid value for SANDBOX_LOG prevents
	  the sandbox from killing the ebuild when a violation occurs.

2007-11-24 02:58  zmedico

	* bin/ebuild.sh: Fix the var_grep variable in
	  filter_readonly_variables() so that
	  it's properly local.

2007-11-24 02:24  zmedico

	* bin/ebuild.sh: In the grep expression that's generated in
	  filter_readonly_variables(),
	  condense redundant identical expressions into a single one.

2007-11-24 01:56  zmedico

	* bin/ebuild.sh: Filter _E_DOCDESTTREE_ and _E_EXEDESTTREE_ from
	  environment.bz2.

2007-11-24 01:50  zmedico

	* bin/ebuild.sh: Add support for persistence of colon separated
	  SANDBOX_{DENY,READ,PREDICT,WRITE} variables between
	  phases so things like the global scope addpredict()
	  call in qt3.eclass will continue to work.

2007-11-23 11:07  zmedico

	* bin/ebuild.sh: Make save_ebuild_env() filter the new
	  source_all_bashrcs() function
	  from the environment.

2007-11-23 10:53  zmedico

	* bin/ebuild.sh: Try again to make bashrc sourcing compatible with
	  previous
	  behavior. The bashrcs get an opportunity to set aliases that
	  will be expanded during sourcing of ebuilds and eclasses.

2007-11-23 10:32  zmedico

	* bin/ebuild.sh: unset x to avoid global env pollution.

2007-11-23 10:12  zmedico

	* bin/ebuild.sh: For compatibility with previous behavior, so the
	  bashrc sourcing
	  after the ebuild environment is fully loaded.

2007-11-23 02:37  zmedico

	* pym/portage/manifest.py: Sort hashes for predictable output from
	  Manifest._createManifestEntries().

2007-11-23 01:56  zmedico

	* bin/misc-functions.sh: Use %% instead of % parameter expansion
	  where appropriate
	  for md5sum output.

2007-11-23 01:37  zmedico

	* bin/ebuild.sh: Make the sed expression in
	  filter_readonly_variables() handle
	  '^declare -r ' by simply removing it.

2007-11-23 00:08  zmedico

	* pym/portage/__init__.py: When filtering the backupenv in
	  create_trees(), be more
	  selective and ensure that special variables that come from
	  the config constructor are preserved.

2007-11-22 22:23  zmedico

	* bin/ebuild.sh: Allow any errors from save_ebuild_env() to go to
	  stderr instead of
	  directing them to /dev/null.

2007-11-22 21:59  zmedico

	* bin/ebuild.sh: Generalize the sed expression in
	  filter_readonly_variables() so that
	  it will work with things like 'declare -xr' as well as 'declare
	  -rx'.

2007-11-22 20:19  zmedico

	* bin/ebuild.sh: Don't call preprocess_ebuild_env() unless
	  EBUILD_SH_ARGS is set
	  since otherwise it can interfere with the environment for things
	  like the "package" phase.

2007-11-22 19:52  zmedico

	* bin/ebuild.sh: When portage reinstalls itself, during inst/rm
	  phases, the
	  environment may have been saved by a different version of
	  ebuild.sh,
	  so it can't trusted that it's been properly filtered. Therefore,
	  always preprocess the environment when ${PN} == portage.

2007-11-22 19:05  zmedico

	* bin/dohtml, man/ebuild.5: Document dohtml -p. Thanks to robbat2
	  for reporting.

2007-11-22 08:21  zmedico

	* bin/misc-functions.sh: Make dyn_package() create a
	  /var/db/pkg/*/*/BINPKGMD5 entries
	  so that packages installed via --buildpkg have a BINPKGMD5
	  entry matching the package built.

2007-11-22 07:41  zmedico

	* bin/ebuild.sh: Filter HOSTTYPE, MACHTYPE, and OSTYPE vars that
	  are set by bash.

2007-11-22 06:12  zmedico

	* pym/_emerge/__init__.py: In depgraph.altlist(), measure the bias
	  of circular
	  RDEPEND <-> PDEPEND relationships and use it to
	  optimize merge order.

2007-11-21 18:54  zmedico

	* bin/ebuild.sh: Replace usage of the "myarg" global variable with
	  the equivalent
	  readonly EBUILD_SH_ARGS variable.

2007-11-21 10:45  zmedico

	* bin/ebuild.sh: In dyn_install(), don't cleanse S from the global
	  environment,
	  in case the user wants to repeat the phase (like with
	  FEATURES=noauto and the ebuild command). Only cleanse it from
	  environment.bz2.

2007-11-21 10:31  zmedico

	* bin/ebuild.sh: * Make save_ebuild_env() filter some more
	  variables.
	  * Make dyn_install() filter S when it's no longer needed.

2007-11-21 08:29  zmedico

	* bin/isolated-functions.sh: Fix the diefunc overlay message so
	  that it doesn't trigger
	  falsely in prerm or postrm.

2007-11-21 08:26  zmedico

	* pym/_emerge/__init__.py, pym/portage/dbapi/vartree.py: Generate
	  an eerror elog message when an ebuild prerm or
	  postrm phase fails.

2007-11-21 08:00  zmedico

	* bin/ebuild.sh: Move environment saving from dyn_compile() to
	  dyn_install()
	  so that state from src_install() is saved.

2007-11-21 07:38  zmedico

	* bin/ebuild.sh: Clean up some local variables that are needlessly
	  saved
	  in the environment.

2007-11-21 04:17  zmedico

	* bin/ebuild.sh: Move preinst IMAGE initialzation before bashrc
	  handling.

2007-11-20 23:47  zmedico

	* bin/repoman, man/repoman.1: * Remove bogus "ci" mode.
	  * Sync "scan" mode description with 2.1.2 branch.

2007-11-20 11:39  zmedico

	* bin/ebuild.sh: Don't unset ${S} inside save_ebuild_env().

2007-11-20 10:41  zmedico

	* bin/ebuild.sh: Instead of filtering out all readonly variables,
	  make it
	  selective so that any readonly variables that are not
	  explicitly filtered are allowed to be saved.

2007-11-20 07:09  zmedico

	* bin/ebuild.sh: Fix ${EBUILD_PHASE} quoting.

2007-11-20 06:31  zmedico

	* bin/ebuild.sh: Don't make variables readonly during the "depend"
	  phase.

2007-11-20 05:49  zmedico

	* pym/portage/__init__.py: When ROOT != "/" we only want overrides
	  from the calling
	  environment to apply to the config that's associated
	  with ROOT != "/", so we wipe out the "backupenv" for the
	  config that is associated with ROOT == "/" and regenerate
	  it's incrementals. Thanks to solar for the suggestion.

2007-11-20 05:21  zmedico

	* bin/ebuild.sh: When ${T}/environment is available, do not source
	  the ebuild since
	  that is redundant. This solves bug #46223.

2007-11-20 02:33  zmedico

	* bin/ebuild.sh: Now that save_ebuild_env() filters variables that
	  could cause
	  interference, preprocess_ebuild_env() can rely on it to clean
	  up the environment enough so that anything left can be allowed
	  to override variables or functions from the current environment.

2007-11-20 02:17  zmedico

	* bin/ebuild.sh: Add some more variables to filter in
	  filter_readonly_variables()
	  and save_ebuild_env().

2007-11-20 01:00  zmedico

	* bin/ebuild.sh: Move LD_PRELOAD and FAKEROOTKEY filtering from
	  filter_readonly_variables()
	  to save_ebuild_env().

2007-11-19 23:03  zmedico

	* bin/ebuild.sh: Make AA, PF, and WORKDIR readonly.

2007-11-19 22:57  zmedico

	* bin/ebuild.sh: Make save_ebuild_env() filter out lots of
	  variables that
	  don't need to be saved.

2007-11-19 22:08  zmedico

	* bin/ebuild.sh: Make preprocess_ebuild_env() explicitly filter out
	  FEATURES
	  since the value for that variable should never come from a
	  previously saved environment.

2007-11-19 21:41  zmedico

	* bin/ebuild.sh: Implement loading of environment.bz2 from binary
	  and installed
	  packages. For binary packages, it's loaded prior to pkg_setup().
	  For installed packages, it's loaded prior to pkg_prerm().
	  
	  For simplicity, the current implementation will cause the current
	  environment to override *everything* in the environment that is
	  being processed. In the future, it should be more selective and
	  only override the parts that are strictly necessary.

2007-11-19 10:16  zmedico

	* bin/ebuild.sh: In bash-3.2_p20+ an attempt to assign BASH_*,
	  FUNCNAME, GROUPS or any
	  readonly variable cause the shell to exit while executing the
	  "source"
	  builtin command. To avoid this problem, a new save_ebuild_env()
	  function
	  filters those variables out and discards them. See bug #190128.

2007-11-19 06:46  zmedico

	* bin/ebuild.sh: When creating environment.bz2 at the end of
	  dyn_compile(),
	  reduce bloat by filtering out functions that are defined
	  internally by portage. This reduces the size of the resulting
	  environment.bz2 file by approximately 10 KB.

2007-11-19 06:09  zmedico

	* bin/ebuild.sh, pym/portage/__init__.py: Disable logging and
	  ${T}/environment saving during the
	  pkg_info() phase.

2007-11-19 06:00  zmedico

	* pym/_emerge/__init__.py: Use the existing RootConfig class to
	  serve as a replacement for
	  the EmergeConfig class. They both served roughly the same purpose
	  and it was messy the way that EmergeConfig inherited from the
	  portage.config class. It's better to avoid inheritance here,
	  expecially since it doesn't provide anything really useful.

2007-11-19 00:02  zmedico

	* pym/portage/__init__.py: Fix PROFILE_ONLY_VARIABLES handling in
	  the config constructor
	  so that variables are appropriately filtered from "backupenv",
	  since otherwise they can leak in from there.

2007-11-18 02:50  zmedico

	* pym/portage/const.py, pym/portage/manifest.py: Bug #198398 -
	  Enable Manifest generation when there are no hash
	  functions available for types such as RMD160. Now it's possible
	  to generate a Manifest when python-2.5 is built without ssl
	  support. MANIFEST1_REQUIRED_HASH and MANIFEST2_REQUIRED_HASH
	  are the only two functions that are strictly required now (MD5
	  and SHA1).

2007-11-18 00:21  zmedico

	* pym/portage/dbapi/vartree.py: Fix NEEDED logic in
	  vardbapi.aux_get() so that empty
	  NEEDED doesn't trigger unnecessary cache pulls.

2007-11-17 21:54  zmedico

	* pym/_emerge/__init__.py: Fix --usepkgonly code in
	  depgraph.select_files() so that it
	  only operates on the Package type that it expects.

2007-11-17 09:09  zmedico

	* pym/portage/dbapi/vartree.py: Clean up
	  vardbapi.counter_tick_core() and replace shell code
	  with pure python.

2007-11-16 08:43  zmedico

	* pym/portage/dbapi/vartree.py: Speed up LibraryPackageMap.update()
	  by pulling NEEDED from the
	  vardbapi.aux_get() cache. This greatly reduces the amount of
	  needless IO that has been happening just prior to the postinst
	  phase in dblink.treewalk(). We may want to consider having
	  LibraryPackageMap work directly from the vardbapi instead of
	  creating the intermediate /var/cache/edb/library_consumers file.

2007-11-16 06:21  zmedico

	* bin/ebuild.sh: Set IMAGE for minimal backward compatibility with
	  overlays or user's bashrc, but don't export it.

2007-11-16 06:16  zmedico

	* pym/portage/__init__.py: Don't export ${IMAGE} to the ebuild
	  environment anymore since
	  everything uses ${D} now (including the entire tree).

2007-11-16 00:09  zmedico

	* pym/portage/dbapi/vartree.py: Bug #199311 - Make
	  dblink.getcontents() show the path of the
	  CONTENTS file when any kind of parse error occurs.

2007-11-15 05:41  zmedico

	* bin/ebuild.sh: Fix quoting for `source ${EBUILD}`.

2007-11-15 02:27  zmedico

	* pym/portage/getbinpkg.py: Make dir_get_metadata() return early if
	  the current user does
	  not have write access to /var/cache/edb. Thanks to Cardoe for
	  reporting.

2007-11-14 21:07  zmedico

	* bin/ebuild.sh, bin/misc-functions.sh: * Replace references to
	  deprecated ${IMAGE} with equivalent ${D}.
	  * Remove redundant trailing slashes and fix quoting.

2007-11-14 00:30  zmedico

	* pym/_emerge/__init__.py: In the slot collision display, show a
	  maximum of 3 parents
	  for each package in order to avoid flooding the display.

2007-11-13 21:05  zmedico

	* bin/repoman, man/repoman.1: Make 'full' the default mode, since
	  'scan' can be annoying since it
	  ommits relevant info.

2007-11-13 20:53  zmedico

	* pym/_emerge/__init__.py: Make the slot collision display show all
	  collisions instead
	  of just the first one.

2007-11-13 19:20  zmedico

	* pym/_emerge/__init__.py: Make depgraph._complete_graph() properly
	  specify SetArg instances
	  as parents of each Dependency, similar to the want that
	  select_files() does.

2007-11-13 07:48  zmedico

	* pym/_emerge/__init__.py: Make depgraph._add_pkg() match the
	  package with all possible
	  args and add them to the digraph.

2007-11-12 18:36  zmedico

	* pym/_emerge/__init__.py: Remove the depgraph.pkg_node_map
	  attribute and use other
	  means to accomplish the same thing.

2007-11-12 07:54  zmedico

	* pym/_emerge/__init__.py: Add DependencyArg instances as parents
	  of packages in the
	  digraph since these relationships should be useful during
	  backtracking.

2007-11-12 06:43  zmedico

	* pym/_emerge/__init__.py: * Remove all references to the obsolete
	  Package.digraph_node attribute.
	  * Reimplement Package comparison methods since the previous way
	  didn't
	  seem to function properly for dict keys.
	  * Clean up depgraph._add_pkg() to use the Package object
	  attributes.

2007-11-12 03:34  zmedico

	* pym/_emerge/__init__.py, pym/portage/__init__.py: Make the
	  Package class emulate the interface of it's own
	  digraph_node tuple so that the Package instance itself
	  can be added directly to the digraph.

2007-11-12 01:42  zmedico

	* bin/emaint: Bug #197797 - Set umask to 022 so that created files
	  (such as the
	  world file) have sane permissions.

2007-11-11 22:17  zmedico

	* bin/isolated-functions.sh: Make diefunc() clean up
	  QA_INTERCEPTORS in case it is
	  called from inherit() since sed called below.

2007-11-11 10:51  zmedico

	* pym/_emerge/__init__.py: * Provide reasonable default values for
	  Dependency
	  priority and depth attributes.
	  * Remove depgraph.create() since it's no longer needed.
	  * Remove depgraph._get_parent_sets() and instead get the
	  information from DependencyArg attributes.

2007-11-11 08:47  zmedico

	* pym/_emerge/__init__.py: Fix depgraph._get_arg_for_pkg() so that
	  it compares package
	  types to help ensure a proper match.

2007-11-11 06:20  zmedico

	* pym/_emerge/__init__.py, pym/portage/sets/base.py: Implement
	  mapping of packages to instances of DependencyArg
	  in depgraph._get_arg_for_pkg(). Among other things, this
	  provides a way to know whether or not a specific package
	  has been specified as an argument, which determines whether
	  or not it can be removed from the graph during backtracking.

2007-11-11 01:01  zmedico

	* pym/_emerge/__init__.py: Wrap accesses to
	  depgraph._set_atoms.findAtomForPackage() in
	  a new depgraph._get_arg_for_pkg() method.

2007-11-10 17:31  zmedico

	* pym/repoman/checks.py: Make the EbuildQuote.missing_quotes regex
	  accept single
	  quotes where it accepts double quotes in order to
	  eliminate some false positives. Thanks to Krzysiek
	  Pawlik <nelchael@gentoo.org> for reporting.

2007-11-10 06:48  zmedico

	* pym/portage/sets/files.py: Fix WorldSet.cleanPackage() so that it
	  properly preserves
	  nonatoms (sets) in the world file.

2007-11-10 03:12  zmedico

	* bin/repoman, pym/repoman/checks.py: Convert all the checks in
	  repoman.checks to use a new LineCheck
	  interface that takes a single line as an argument. This has at
	  least a few of benefits:
	  
	  * Eliminates lots of redundant code
	  * Error messages are ordered by line number across all checks
	  
	  The performance is slightly worse due to the increased number
	  of method calls, but it's not really noticeable in comparison
	  to the time consumed by dependency checks.
	  
	  Thanks to Petteri Räty <betelgeuse@gentoo.org> for the initial
	  patch which I only made a few minor modifications to.

2007-11-09 20:17  zmedico

	* pym/_emerge/__init__.py: Clean up expansion of set arguments in
	  depgraph.select_files().

2007-11-09 16:35  genone

	* pym/portage/sets/shell.py: fix typo and missing classmethod
	  declaration

2007-11-09 15:51  genone

	* pym/portage/sets/security.py: if multiple glsas result in the
	  same cat/pkg:slot being affected only use the highest resulting
	  atom

2007-11-09 15:38  genone

	* bin/glsa-check, pym/portage/glsa.py,
	  pym/portage/sets/security.py: move checkfile parsing into its own
	  function

2007-11-09 15:10  genone

	* bin/emaint, bin/glsa-check: Move glsa-check from gentoolkit into
	  portage so the gentoolkit version can be removed after 2.2 is
	  released

2007-11-09 15:07  genone

	* pym/portage/glsa.py, pym/portage/sets/security.py: revert
	  getMergeList to return CPVs again instead of atoms

2007-11-09 08:21  zmedico

	* pym/_emerge/__init__.py: Fix incorrect type in
	  depgraph._missing_args.

2007-11-09 07:15  zmedico

	* pym/_emerge/__init__.py: Create classes to encapsulate eache of
	  the depgraph argument
	  types: atoms, packages and sets.

2007-11-09 03:35  zmedico

	* pym/portage/tests/ebuild/test_spawn.py: Remove the workaround for
	  \n -> \r\n transformations in
	  SpawnTestCase.testLogfile() since the problem is solved
	  by the patch from bug #198491.

2007-11-09 03:33  zmedico

	* pym/portage/__init__.py: Bug #198491 - Disable termios.OPOST
	  post-processing of output on
	  the slave pty file descriptor since otherwise weird things like
	  \n -> \r\n transformations may occur. Thanks to Ulrich Mueller
	  <ulm@gentoo.org> for this patch.

2007-11-09 01:54  zmedico

	* pym/portage/__init__.py: Revert accidental hunk from bug 198491.
	  Haven't tested
	  this yet.

2007-11-09 01:33  zmedico

	* pym/portage/__init__.py: make.globals should not be relative to
	  config_root
	  because it only contains constants.

2007-11-08 22:36  zmedico

	* pym/portage/output.py: Tweak EOutput.term_columns calculation for
	  TERM="dumb" so
	  that it behaves like TERM="cons25" currently does. Thanks
	  to Ulrich Mueller <ulm@gentoo.org> for the patch.

2007-11-08 22:11  zmedico

	* pym/portage/dbapi/bintree.py: Don't do:
	  Calculating dependencies |Fetching binary packages info...
	  but instead put "Fetching ..." on it's own line.
	  (branches/prefix r8461)

2007-11-08 22:03  zmedico

	* bin/quickpkg: Bug #198492 - Make quickpkg create $PKGDIR if it
	  doesn't
	  already exist.

2007-11-08 21:57  zmedico

	* pym/portage/getbinpkg.py: It is not cool and/or helpfull to see
	  an HTML dump of some
	  page in case it is not what is expected (like a 404).
	  (branches/prefix r8460)

2007-11-07 23:54  zmedico

	* pym/_emerge/__init__.py, pym/portage/__init__.py: For unsatisfied
	  dependencies, shorten the per-package EAPI mask
	  output and show an informative message whenever an EAPI mask is
	  encountered.

2007-11-07 08:19  zmedico

	* pym/_emerge/__init__.py: Really fix broken logic for --update
	  greedy slot atoms in
	  depgraph.select_files().

2007-11-07 08:15  zmedico

	* pym/_emerge/__init__.py: Fix broken logic for --update greedy
	  slot atoms in
	  depgraph.select_files().

2007-11-06 22:58  zmedico

	* pym/_emerge/__init__.py: Make depgraph.select_files() perform
	  internal expansion of
	  package set arguments since ideally the depgraph needs to
	  be awary of the precise origin of each atom.

2007-11-06 17:21  zmedico

	* bin/repoman: Remove the usage.obsolete "KEYWORDS contain -*"
	  warning since people
	  are using -* to indicate that a package should not be tried on
	  archs
	  other than those for which it already has KEYWORDS.

2007-11-06 09:39  zmedico

	* pym/_emerge/__init__.py: Simplify and fix bugs in
	  is_valid_package_atom().

2007-11-06 08:58  zmedico

	* bin/misc-functions.sh: Remove references to ${O} in dyn_spec()
	  since antarus
	  made that variable mutable.

2007-11-06 08:31  zmedico

	* bin/ebuild.sh: Go ahead and exempt selected profile-specific
	  USE_EXPAND
	  flags from IUSE QA Notices since we are planning to make
	  these particular flags into implicit members of IUSE.
	  We can make this extensible later, but for now we just
	  want to eliminate some useless QA Notices (a subset of
	  bug #70648). We're not exempting any non profile-
	  specific USE_EXPAND flags here. For non profile-specific
	  flags, we intend to implement an IUSE syntax extension
	  (bug #133327).

2007-11-06 06:54  zmedico

	* pym/_emerge/__init__.py: Fix create_world_atom() logic some more
	  for bug #198129.

2007-11-06 06:41  zmedico

	* pym/_emerge/__init__.py: Bug #198129 - Prevent SLOT atoms like
	  sys-devel/binutils:0
	  from being inappropriately recorded in the world file when
	  USE=multislot is enabled.

2007-11-06 06:25  antarus

	* bin/ebuild.sh: remove O and PPID from being readonly. O is set
	  python side (and we will hopefully stop being exported soon. PPID
	  is ro by bash, so no need to declare it twice

2007-11-05 22:42  zmedico

	* pym/_emerge/__init__.py: Allow multislot packages to be added to
	  the world file
	  via --noreplace. Having these atoms in the world file
	  will trigger recommendations to run emaint in some
	  cases, like when running `emerge -e world`. The atoms
	  need to be in the world file to prevent multislot
	  packages from being removed by --depclean though.

2007-11-05 08:41  zmedico

	* bin/emaint, pym/portage/sets/base.py: Make WorldHandler lock the
	  world file when in --fix mode.

2007-11-05 08:01  zmedico

	* bin/emaint: Add support for package sets in WorldHandler.

2007-11-05 06:49  zmedico

	* bin/repoman, pym/repoman/errors.py: Fix 'TypeError: not all
	  arguments converted during string formatting'
	  issues with the EbuildNestedDie check.

2007-11-05 06:16  zmedico

	* bin/repoman: Replace StringIO usage with a simple list of lines.
	  The
	  iteration interface is practically identical but the
	  list of lines if more efficient because the lines only
	  have to be split one time for each ebuild instead of
	  for each check.

2007-11-04 20:57  zmedico

	* pym/portage/manifest.py: Make exception strings more informative.

2007-11-04 18:00  zmedico

	* pym/portage/manifest.py: Make Manifest.create() do some basic
	  validation of ebuild
	  file names like portdbapi.cp_list() would do.

2007-11-04 09:29  zmedico

	* pym/portage/dbapi/porttree.py: In portdbapi.cp_list(), validate
	  the ebuild name to ensure
	  that it matches the name of the package.

2007-11-04 08:10  zmedico

	* pym/portage/dbapi/bintree.py: When evaluating *DEPEND
	  conditionals for the Packages metadata
	  index, do not use IUSE to filter USE since there is currently
	  no guarantee that IUSE properly defines all of the necessary
	  flags.

2007-11-04 06:36  zmedico

	* pym/portage/__init__.py: Clean up ACCEPT_KEYWORDS incremental
	  stacking logic and
	  fix some minor inconsistencies.

2007-11-04 05:32  zmedico

	* pym/portage/__init__.py: In fetch(), replace
	  checksum_failure_counts dict with single
	  int counter.

2007-11-04 03:32  zmedico

	* bin/repoman: Generate a usage.obsolete warning whenever
	  -* is found in KEYWORDS.

2007-11-04 02:11  zmedico

	* pym/portage/__init__.py: Make fetch() behave like the ebuild has
	  RESTRICT="primaryuri"
	  after 2 checksum failures for a fetched file. This should
	  increase the probability of fetching the correct file before
	  the maximum number of tries is reached.

2007-11-04 00:21  zmedico

	* pym/portage/dbapi/porttree.py: For sanity, pass an actual list of
	  keys into aux_get() instead
	  of iterating over a set that happens to be mutable (though it
	  remains constant in practice).

2007-11-03 23:43  zmedico

	* pym/portage/dbapi/vartree.py: Bug #197797 - Do not actively clear
	  o+rx permission bits
	  on the /var/lib/portage directory. Only clear the o+w
	  bits. This allows users who aren't in the portage group
	  to have read access to the world file by default, but
	  administrators can explicitly chmod o-rx that directory
	  if necessary, and portage will leave those bits alone.
	  
	  This makes the permission settings in dblink.treewalk()
	  consistent with those that are already defined in
	  config._init_dirs().

2007-11-03 22:47  zmedico

	* bin/etc-update: Call die() so that the $TMP directory is always
	  properly
	  cleaned up.

2007-11-03 21:40  zmedico

	* pym/portage/__init__.py: Bug #197965 - Make fetch() bail out
	  after 5 checksum
	  failures for a particular file since downloading the
	  same file repeatedly from every single available
	  mirror is a waste of bandwidth and time.

2007-11-03 21:13  vapier

	* bin/etc-update: if mode=1 and `dialog` is not usable, abort
	  #197990 by DominikBuerkle

2007-11-03 20:40  zmedico

	* pym/portage/__init__.py: Bug #197965 - When fetch() encounters a
	  checksum failure,
	  look for an identical file from a previous checksum failure
	  in order to avoid consuming unnecessary disk space with
	  duplicate files.

2007-11-03 19:11  zmedico

	* pym/portage/update.py: Fix update_config_files() so that it uses
	  update_dbentry()
	  to handle update commands since that already supports
	  slotmove commands for SLOT atoms.

2007-11-03 16:37  zmedico

	* pym/portage/dbapi/__init__.py: Remove redundant code from
	  previous commit.

2007-11-03 16:34  zmedico

	* pym/portage/dbapi/__init__.py: Bug #197932 - Make
	  dbapi._cpv_sort_ascending()
	  preserve explicit -r0 for consistency in findname
	  and aux_get calls.

2007-11-03 09:45  zmedico

	* pym/portage/update.py: TODO: Make update_config_files() handle
	  slotmove commands for SLOT atoms.

2007-11-03 01:54  zmedico

	* pym/portage/__init__.py: In portage.fetch(), condense digest
	  check output to a single
	  line for all digests.

2007-11-02 21:17  zmedico

	* bin/repoman: Sort scanlist and ebuildlist to ensure that repoman
	  always
	  processes packages in a predictable order.

2007-11-02 08:51  zmedico

	* pym/portage/dbapi/porttree.py: Make portdbapi.gvisible() use
	  portdbapi._aux_cache_keys
	  for metadata pulls.

2007-11-02 08:33  zmedico

	* pym/portage/__init__.py: Return early from config.getMaskAtom()
	  as soon as a matching
	  unmask atom is found.

2007-11-02 07:14  zmedico

	* man/make.conf.5: Bug #197594 - Document FEATURES="lmirror".

2007-11-02 06:14  zmedico

	* pym/portage/dbapi/vartree.py: Make sure vardbapi.cp_list() always
	  sorts the results.

2007-11-02 04:31  zmedico

	* pym/_emerge/__init__.py: Fix ignore_priority logic in
	  depgraph.altlist() in order
	  to handle some cases where it was possible for nodes to
	  be selected without their PDEPENDs being propperly added
	  to the asap_nodes list.

2007-11-02 02:14  zmedico

	* pym/_emerge/__init__.py: Collapse 2 identical code hunks into 1.

2007-11-02 01:14  zmedico

	* pym/_emerge/__init__.py: Optimize merge order to try and select
	  nodes that only have
	  unsatisfied PDEPEND slightly earlier. This solves a problem
	  with xorg-server being merged too early during an all binary
	  install (since DEPEND is ignored for binaries), triggering
	  built_with_use() calls to fail as reported in bug #189966.
	  Since DEPEND is discarded in cases like this, it is
	  important to exploit the difference between PDEPEND and
	  RDEPEND in order to optimize merge order. Without this
	  optimization, the merge order is technically correct, but
	  not as optimal as it should be and has lots of potential to
	  trigger issues with built_with_use() or similar things that
	  require better optimization of merge order.

2007-11-01 21:14  zmedico

	* pym/_emerge/__init__.py: In the 'there are no ebuilds to satisfy
	  "foo"' message, discard
	  null/ from failed cpv_expand category expansion.

2007-11-01 18:26  zmedico

	* pym/repoman/checks.py: Properly escape { and } characters in
	  regular expressions even
	  though it seems to work either way.

2007-11-01 18:19  zmedico

	* pym/repoman/checks.py: Remove an extra \$ from the
	  EbuildQuote.var_reference regex
	  so that it will properly match things like variable references
	  without braces, like $S.

2007-11-01 17:49  zmedico

	* pym/repoman/checks.py: Make the EbuildUselessCdS check for both
	  quoted and unquoted ${S}
	  so the user doesn't have to fix quoting before this check will
	  recognize the violation.

2007-11-01 06:37  zmedico

	* pym/portage/sets/base.py, pym/portage/sets/files.py: Avoid making
	  unnecessary copies of PackageSet._atoms by
	  replacing calls to self.getAtoms() with self._load().

2007-11-01 02:25  zmedico

	* bin/repoman, pym/repoman/checks.py, pym/repoman/errors.py: Add a
	  check for redundant cd "${S}" statements on the first
	  line of src_(compile|install|test) ebuild methods. Thanks to
	  Petteri Räty <betelgeuse@gentoo.org> for this patch.

2007-10-31 22:12  zmedico

	* pym/_emerge/__init__.py: Make depgraph.select_files() recursively
	  expand sets given as
	  arguments so that containment tests in _get_parent_sets()
	  properly match atoms in nested sets (like if world contains
	  system). Otherwise, atoms from nested sets would get recorded
	  in the world file.

2007-10-31 17:33  zmedico

	* bin/isolated-functions.sh: Fix diefunc() so that it doesn't
	  report that the ebuild is from
	  an overlay when EMERGE_FROM == binary.

2007-10-31 17:12  zmedico

	* man/make.conf.5: Update the FEATURES=mirror docs to more
	  accurately reflect behavior.

2007-10-31 05:27  zmedico

	* pym/_emerge/__init__.py: Defer selection of package dependency
	  atoms until they are
	  actually needed since the appropriate atom selection behavior
	  can change between the time that the package is initially
	  added to the graph and when it's dependencies are traversed
	  (like when --consistent is enabled).

2007-10-31 02:38  zmedico

	* pym/_emerge/__init__.py: Gather some ignored dependencies so that
	  they can be properly
	  processed by the depgraph when "conistent" mode is enabled.

2007-10-31 01:35  zmedico

	* pym/_emerge/__init__.py: Remove a few unused depgraph attributes.

2007-10-30 23:33  zmedico

	* pym/_emerge/__init__.py: Fix "args" set handling wrt $ROOT in
	  depgraph._complete_graph().

2007-10-30 22:00  zmedico

	* pym/portage/dbapi/porttree.py: Implement license filtering for
	  xmatch minimum-visible and
	  bestmatch-visible. Also, make the gvisible license filtering
	  conditional on config.local_config since repoman doesn't do
	  license filtering.

2007-10-30 21:48  zmedico

	* pym/portage/dbapi/porttree.py: Optimize xmatch
	  "bestmatch-visible" to do fewer metadata
	  accesses by using the same code as "minimum-visible" but
	  with a reverse iterator.

2007-10-30 21:25  zmedico

	* pym/_emerge/__init__.py: Implement a "consistent" depgraph
	  parameter (enabled by --consistent)
	  that can be used ensure that installation of new packages does
	  not
	  break any deep dependencies of required sets (args, system, or
	  world).
	  Unfortunately, the performance penalty for small dep calculations
	  is
	  too great to enable this parameter by default. At least it will
	  be
	  useful for testing backtracking behavior when that is
	  implemented.

2007-10-29 05:26  zmedico

	* pym/portage/dbapi/vartree.py: Use rstrip("\n") to remove trailing
	  newlines from
	  CONTENTS lines.

2007-10-29 05:22  zmedico

	* pym/portage/dbapi/vartree.py: Rewrite the dblink.getcontents()
	  code to use str.split(" ")
	  for splitting CONTENTS lines so that even file paths that
	  end with spaces can be handled. This patch makes the fix for
	  bug #196836#c6 more complete. Some code for parsing old
	  malformed symlink entries has been removed sinces it's
	  probably not useful or worth maintaining anymore.

2007-10-29 00:08  zmedico

	* pym/portage/dbapi/porttree.py: Make portdbapi.cp_list() use
	  os.listdir() instead of
	  portage.listdir() since portage.listdir() has unnecessary
	  overhead and it's cache isn't needed since cp_list() has
	  it's own cache.

2007-10-28 21:34  zmedico

	* pym/portage/sets/base.py: Fix PackageSet.getAtoms() and
	  getNonAtoms() so that they
	  don't return references to private data structures.

2007-10-28 20:47  zmedico

	* pym/_emerge/__init__.py: Fix --depclean to use
	  SetConfig.getSetAtoms() and also fix a
	  broken reference to packagesets which is now settings.sets.

2007-10-28 20:30  zmedico

	* pym/portage/sets/__init__.py: Fix SetConfig.getSetAtoms() to stop
	  initializing ignorelist
	  in the parameter list since otherwise the ignorelist persists
	  between calls and causes unpredictable results for callers.

2007-10-28 18:56  zmedico

	* pym/_emerge/__init__.py: Optimize stdout_spinner.update() methods
	  so that they don't
	  waste cpu time by flushing ouput to the tty too frequently.

2007-10-28 09:05  zmedico

	* pym/portage/dbapi/virtual.py: Fix cp_list() to prevent it from
	  returning a reference
	  to one of it's internal lists.

2007-10-28 07:26  zmedico

	* pym/_emerge/__init__.py, pym/portage/dbapi/__init__.py,
	  pym/portage/dbapi/porttree.py, pym/portage/dbapi/vartree.py,
	  pym/portage/dbapi/virtual.py: Sort all dbapi.cp_list() results in
	  ascending order and
	  cache the results when possible. The order is preserved
	  in dbapi.match() so those results are also sorted.

2007-10-27 20:43  zmedico

	* pym/_emerge/__init__.py: Replace depgraph._slot_node_map with
	  _slot_pkg_map so
	  that it's easier to get existing Package instances.

2007-10-27 04:41  zmedico

	* pym/_emerge/__init__.py: Make depgraph._select_atoms() more
	  flexible by allowing
	  the repositories to be passed in as a parameter.

2007-10-27 01:59  zmedico

	* pym/_emerge/__init__.py: Reuse an existing EmergeConfig instance
	  instead of
	  constructing a new one.

2007-10-27 01:46  zmedico

	* pym/_emerge/__init__.py: Fix broken $ROOT handling for setconfig
	  in the MergeTask
	  constructor.

2007-10-26 19:35  zmedico

	* pym/portage/__init__.py: In portage.fetch(), condense digest
	  check ouput to a single
	  line for all digests.

2007-10-26 18:06  zmedico

	* bin/repoman, pym/portage/dbapi/porttree.py: Optimize repoman to
	  share portdbapi.cp_list() results
	  between all profiles since those results never change.
	  The cached results also propagate to the xmatch
	  match-all when appropriate (old-style virtuals are
	  excluded since they are profile dependent).

2007-10-26 16:34  zmedico

	* pym/portage/dbapi/porttree.py: Add missing break statement for
	  xmatch minimum-visible.

2007-10-26 08:38  zmedico

	* bin/repoman, pym/portage/__init__.py,
	  pym/portage/dbapi/porttree.py: Optimize repoman visibility checks
	  to access as little
	  metadata as possible. (improves performance especially
	  in cases where metadata needs to be generated). This
	  works by starting at the lowest version since that's
	  most likely to have keywords and it returns as soon as
	  the first visible package is found.

2007-10-26 06:10  zmedico

	* pym/_emerge/__init__.py, pym/portage/sets/base.py: Make emerge
	  add sets to the world file as one would expect.

2007-10-26 05:18  zmedico

	* pym/portage/sets/__init__.py, pym/portage/sets/files.py: Allow
	  sets to get through world file validation and
	  expand properly. It's now possible to put @system
	  in the world file and get the old behavior where
	  world includes system.

2007-10-26 04:38  zmedico

	* pym/_emerge/__init__.py: Prevent premature expansion of old-style
	  virtuals
	  inside depgraph.select_files().

2007-10-26 03:55  zmedico

	* pym/_emerge/__init__.py: Optimize the algorithm used for
	  expansion of set
	  arguments into atoms.

2007-10-26 01:13  genone

	* RELEASE-NOTES: update notes about package sets

2007-10-26 01:07  genone

	* pym/portage/sets/__init__.py: break potential cycles in set
	  expansion

2007-10-26 01:03  genone

	* pym/_emerge/__init__.py, pym/portage/sets/__init__.py: use
	  SetConfig.getSetAtoms instead of PackageSet.getAtoms for
	  expanding sets to allow recursion, and drop the default 'sets/'
	  prefix for setnames

2007-10-26 00:55  genone

	* pym/_emerge/__init__.py, pym/portage/sets/__init__.py: use a @
	  prefix for sets, and replace world/system with their real
	  prefixed names if found on the commandline

2007-10-25 23:59  genone

	* pym/portage/sets/__init__.py, pym/portage/sets/base.py: Allow
	  sets to contain non-atoms

2007-10-25 19:56  zmedico

	* bin/repoman: FIX: indentation problem, also end the Portage
	  identification
	  line with a ) if repoman wasn't forced to do its job.
	  (branches/prefix r8281)

2007-10-25 19:54  zmedico

	* bin/repoman: Fix: Make repoman actually USE -m commit message
	  again (and -M
	  commit message file). (branches/prefix r8280)

2007-10-25 17:01  zmedico

	* pym/portage/dbapi/vartree.py: Correct expected split counts for
	  CONTENTS lines.

2007-10-25 16:49  zmedico

	* pym/portage/dbapi/vartree.py: Handle a potential IndexError.

2007-10-25 16:43  zmedico

	* pym/portage/dbapi/vartree.py: Remove obsolete whitespace handling
	  code for "obj" filenames
	  in CONTENTS.

2007-10-25 16:36  zmedico

	* pym/portage/dbapi/vartree.py: Handle multiple consecutive spaces
	  in filenames as per
	  bug #196836#c6.

2007-10-25 06:02  zmedico

	* pym/_emerge/__init__.py: For the emergelog message, send in the
	  original list of
	  arguments that exists before expansion of sets.

2007-10-25 05:57  zmedico

	* pym/portage/output.py: If the title string is too big then
	  xtermTitle() can
	  misbehave by causing the terminal to echo some of the
	  characters and generate a "beep" sound. This is easily
	  triggered by doing things like `emerge world` now since
	  all the the atoms are expanded.

2007-10-25 05:29  zmedico

	* pym/_emerge/__init__.py: Filter atoms that come from sets when
	  generating
	  the list of atoms to record in the world file.

2007-10-25 04:50  zmedico

	* pym/_emerge/__init__.py: For the global AUTOCLEAN, pass an empty
	  list into unmerge()
	  so it behaves like it used to.

2007-10-25 02:52  zmedico

	* pym/_emerge/__init__.py: Spit out a depgraph._get_existing_pkg()
	  method for getting an
	  existing Package instance added to the graph for a given SLOT.

2007-10-25 02:01  zmedico

	* pym/_emerge/__init__.py: Make the Package class generate the
	  digraph nodes.

2007-10-25 00:05  zmedico

	* pym/_emerge/__init__.py: Fix inverted logic error.

2007-10-24 21:31  zmedico

	* pym/_emerge/__init__.py: Convert depgraph creation from using
	  recursive calls to
	  using a stack of dependencies which will be more suitable
	  for implementation of backtracking.

2007-10-24 15:45  zmedico

	* pym/_emerge/__init__.py: Add back support for greedy SLOTs when
	  --update is enabled as
	  per bug #150361. This is currently disabled for sets since
	  greedy SLOT atoms could be a property of the set itself.

2007-10-24 06:47  zmedico

	* pym/portage/sets/shell.py: Fix broken import.

2007-10-24 06:42  zmedico

	* pym/_emerge/__init__.py: Add back support for helpful `emaint
	  --check world` suggestions
	  and also show package masking reasons when appropriate.

2007-10-24 06:13  zmedico

	* pym/_emerge/__init__.py: Add back support for detecting if the
	  world file contains
	  atoms that match packages in package.provided.

2007-10-24 05:50  zmedico

	* pym/_emerge/__init__.py: Add back support for handling missing
	  system/world atoms
	  that was removed with depgraph.xcreate(). This doesn't
	  have support for mapping atoms back to the original sets
	  yet, but at least a masked or unavailable system/world
	  atom won't compeletely break the depgraph now.

2007-10-24 01:59  zmedico

	* pym/_emerge/__init__.py: Replace sys.exit() calls with return
	  statements in emerge_main().

2007-10-24 01:44  zmedico

	* pym/_emerge/__init__.py: Remove --update greedy SLOTs code from
	  depgraph.select_files()
	  so that any desired SLOTs have to be pulled in explicitly. Any
	  SLOTs that are not explicitly pulled in will be removed by
	  --depclean.

2007-10-24 01:33  zmedico

	* pym/_emerge/__init__.py: Make world atoms non-greedy for SLOTs in
	  action_depclean()
	  since users can simply add SLOT atoms to world for any
	  specific SLOTs that they want to keep.

2007-10-24 01:11  genone

	* pym/_emerge/__init__.py: remove 'system' and 'world' as actions,
	  and remove most of the special case code as well

2007-10-23 23:11  zmedico

	* pym/_emerge/__init__.py: Fix selective logic to work properly
	  with masked packages.

2007-10-23 22:58  zmedico

	* pym/_emerge/__init__.py: Match packages against arguments earlier
	  in
	  depgraph._select_package() so that corrupt
	  PROVIDE is detected sooner.

2007-10-23 22:55  zmedico

	* pym/_emerge/__init__.py: Fix logic for the "selective" depgraph
	  parameter so
	  that it behaves correctly in cases where installed
	  packages provide old-style virtuals but none of the
	  available packages do.

2007-10-23 22:35  genone

	* man/portage.5: document PROFILE_ONLY_VARIABLES

2007-10-23 20:58  genone

	* pym/portage/sets/__init__.py, pym/portage/sets/dbapi.py,
	  pym/portage/sets/files.py, pym/portage/sets/profiles.py,
	  pym/portage/sets/security.py, pym/portage/sets/shell.py: revert
	  r8256 (plans changed)

2007-10-23 20:33  genone

	* pym/_emerge/__init__.py, pym/portage/sets/__init__.py,
	  pym/portage/sets/base.py, pym/portage/sets/dbapi.py,
	  pym/portage/sets/files.py, pym/portage/sets/profiles.py,
	  pym/portage/sets/security.py, pym/portage/sets/shell.py: move
	  base classes for package sets into a separate module

2007-10-23 20:24  genone

	* pym/portage/sets/__init__.py, pym/portage/sets/dbapi.py,
	  pym/portage/sets/files.py, pym/portage/sets/profiles.py,
	  pym/portage/sets/security.py, pym/portage/sets/shell.py: just
	  pass the SetConfig instance instead of only the settings and
	  trees attributes

2007-10-23 19:30  zmedico

	* pym/portage/__init__.py: Optimize PROFILE_ONLY_VARIABLES
	  handling.

2007-10-23 19:24  genone

	* pym/_emerge/__init__.py: make 'world' and 'system' behave like
	  their sets/ counterparts

2007-10-23 19:13  genone

	* pym/portage/const.py: make PROFILE_ONLY_VARIABLES incremental

2007-10-23 18:50  genone

	* pym/portage/__init__.py: protect variables specified in
	  PROFILE_ONLY_VARIABLES from being set by the user

2007-10-23 07:49  antarus

	* pym/portage/util.py: add quickie logger function

2007-10-23 07:48  antarus

	* bin/repoman: Begin to use python logging framework. Remove if
	  quiet < bla logic and instead use loglevels (critical, error,
	  warn, info, debug). Default to WARN for repoman, which will print
	  CRITICAL, ERROR, and WARN messages. one -v will print INFO
	  messages and two -v's will print DEBUG messages, each -q will
	  reduce the loglevel by one. -q and -v can be given in any order.

2007-10-23 05:36  zmedico

	* pym/portage/dbapi/vartree.py: Don't show the "checking files for
	  package collisions" message
	  when --quiet is enabled.

2007-10-23 03:57  antarus

	* bin/repoman: aha, i knew that diff was screwy, the mail to
	  portage-commits and grep made it obvious as to why; lets try
	  removing those dupe checks.

2007-10-23 03:53  antarus

	* bin/repoman: fix tabbing

2007-10-23 03:51  antarus

	* bin/repoman: Sigh, this integration did not go well, please check
	  the diff (it seemed to add some weird ass code, but it looked
	  fine on sources.gentoo.org). Next time I'll try and either work
	  in a branch or commit faster ;)

2007-10-23 02:38  zmedico

	* bin/portageq: Print the Id tag an it's own line to avoid going
	  over 80 columns.

2007-10-23 02:32  zmedico

	* bin/portageq: Fix the version Id tag.

2007-10-23 01:11  zmedico

	* pym/portage/__init__.py: Fix config.setinst() to return early
	  when the given
	  package already provides the virtual.

2007-10-23 00:49  zmedico

	* pym/portage/__init__.py: Remove a redundant self.treeVirtuals
	  deepcopy from the
	  config constructor.

2007-10-23 00:27  zmedico

	* bin/repoman, pym/repoman/checks.py: Bug #196652 - Check for
	  useless ABOUT-NLS|COPYING|LICENSE
	  files in dodoc arguments.

2007-10-22 23:32  zmedico

	* bin/repoman: Fix broken imports.

2007-10-22 22:32  zmedico

	* pym/_emerge/__init__.py: In depgraph.create(), if a direct
	  circular dependency is
	  not an unsatisfied buildtime dependency then drop it here
	  since otherwise it can skew the merge order calculation
	  in an unwanted way.

2007-10-22 06:59  zmedico

	* pym/_emerge/__init__.py: In depgraph.create(), don't ignore
	  direct circular dependencies
	  anymore since altlist() is able to handle it properly in cases
	  where the dependency is satisfied. If the dep is unsatisfied
	  then it can not be ignored.

2007-10-22 05:45  zmedico

	* bin/emaint: Bug #184118 - Add an emaint "cleanresume" action that
	  deletes
	  any existing resume lists from the mtimedb. Thanks to Arfrever
	  Frehtes Taifersar Arahesis for the initial patch.

2007-10-22 03:50  zmedico

	* pym/portage/cache/util.py: Bug #196680 - Handle a CacheError
	  inside mirror_cache() when
	  reading from the source cache.

2007-10-21 23:23  zmedico

	* pym/_emerge/__init__.py: Combine depgraph._select_dep() into
	  create() so that
	  create() simply calls itself recursively. In order
	  to implement backtracking, create() will eventually
	  operate on a stack instead of calling itself.

2007-10-21 21:23  zmedico

	* pym/_emerge/__init__.py: Always pass package metadata into
	  depgraph.create() so
	  it doesn't have to get it itself.

2007-10-21 20:59  zmedico

	* pym/_emerge/__init__.py: Do a loop over each dependency type to
	  simplify
	  select_dep() calls.

2007-10-21 20:31  zmedico

	* pym/_emerge/__init__.py: Don't catch a ValueError if it isn't the
	  type that's expected
	  from portage.cpv_expand().

2007-10-21 18:38  zmedico

	* pym/portage/news.py: Fix NewsManager.getUnreadItems() so that it
	  works properly
	  for an unprivileged user in readonly mode.

2007-10-21 18:07  zmedico

	* pym/portage/exception.py, pym/portage/news.py: Bug #196427 -
	  Prevent various news related tracebacks
	  from occuring when running emerge as an unprivileged
	  user in --pretend mode.

2007-10-21 11:51  genone

	* RELEASE-NOTES: note that sets can't contain other sets

2007-10-21 10:55  genone

	* NEWS, RELEASE-NOTES: add some notes about restrictions wrt
	  package sets

2007-10-21 10:36  genone

	* pym/_emerge/__init__.py: fix comment

2007-10-21 10:34  genone

	* pym/portage/news.py: ignore "permission denied" errors when
	  changing perms of news skipfile that happen when running with
	  user priviledges in pretend mode

2007-10-21 10:30  genone

	* pym/_emerge/__init__.py: restore proper call logic

2007-10-21 10:13  genone

	* bin/ebuild.sh: Remove slashes that cause problems when unpacking
	  files with relative paths (bug #196565)

2007-10-21 08:32  zmedico

	* pym/_emerge/__init__.py: Remove uneeded "arg" and "addme"
	  parameters where possible.

2007-10-21 08:16  zmedico

	* pym/_emerge/__init__.py: Use a "depth" parameter to track depth
	  of recursion relative
	  to the nearest argument atom.

2007-10-21 07:23  zmedico

	* pym/_emerge/__init__.py: Split the "arg" parameter out of
	  depgraph.select_dep() so
	  that it's used purely for processing atoms that are pulled
	  in by parent packages.

2007-10-21 06:07  zmedico

	* bin/portageq: Bug #196537 - Make portageq check that the <root>
	  parameter
	  is an existing directory and exit gracefully if not.

2007-10-21 05:47  zmedico

	* pym/_emerge/__init__.py: Make depgraph.xcreate() use the filtered
	  repo to determine
	  availablility of system/world atoms so that the raise_on_missing
	  parameter can be removed from depgraph.select_dep().

2007-10-21 05:20  zmedico

	* pym/_emerge/__init__.py: Raise an InvalidDependString exception
	  if necessary when
	  the depgraph is populating the filtered repo so that we
	  don't have to check the return value.

2007-10-21 04:25  zmedico

	* pym/_emerge/__init__.py: Rename variable for consistency.

2007-10-21 00:45  zmedico

	* pym/_emerge/__init__.py: Split the atom selection logic out of
	  depgraph.select_dep().

2007-10-20 23:26  zmedico

	* pym/_emerge/__init__.py: Split the package selection logic out of
	  depgraph.select_dep().

2007-10-20 22:21  zmedico

	* pym/_emerge/__init__.py: Split the masked packages display out of
	  depgraph.select_dep().

2007-10-20 21:51  zmedico

	* pym/_emerge/__init__.py: Use a simple Package class to bundle
	  package data
	  for depgraph.create() calls.

2007-10-20 08:18  zmedico

	* pym/_emerge/__init__.py, pym/portage/__init__.py: Allow the
	  depgraph to add old-style virtual providers but
	  prefer any pre-existing providers over new ones that are
	  added.

2007-10-20 07:19  zmedico

	* pym/_emerge/__init__.py: Remove the config.setinst() call from
	  depgraph.select_dep()
	  since it's never really guaranteed to work as intended. It's
	  supposed to help ensure that the correct old-style virtual
	  is preferred but it will often fail to do so, making it
	  necessary for the user to manually force the preference.
	  Proper backtracking (bug #1343) will solve the problem more
	  reliably.

2007-10-19 22:33  zmedico

	* man/emerge.1, man/make.conf.5, pym/_emerge/help.py: Bug #196435 -
	  Add some more references to quickpkg(1) since
	  sometimes people don't realize that it exists.

2007-10-19 19:33  zmedico

	* pym/portage/elog/__init__.py: Refactor _merge_logentries() to
	  make it a little more efficient.

2007-10-19 19:27  zmedico

	* pym/portage/elog/__init__.py: Use a list to buffer strings in
	  _combine_logentries() and do
	  a single concatenation at the end for better efficiency.

2007-10-19 19:18  zmedico

	* pym/portage/elog/__init__.py: Prevent _combine_logentries() from
	  generating redundant
	  consecutive 'TYPE: phase' lines that show in summary.log
	  when the python-based elog functions are used.

2007-10-19 19:09  zmedico

	* pym/portage/elog/__init__.py: Fix broken call to renamed
	  _combine_logentries().

2007-10-19 18:33  zmedico

	* pym/portage/elog/mod_echo.py: Don't show each character of the
	  log message on a new
	  line when displaying messages that came from one of
	  the python-based elog functions. This might not be the
	  correct solution but it seems to work for now.

2007-10-19 16:53  zmedico

	* pym/_emerge/__init__.py: Bug #196427 - Don't display news
	  notifications when in --pretend mode.

2007-10-19 15:32  zmedico

	* pym/portage/dbapi/vartree.py: Pass the whole cpv to elog instead
	  of just ${PF}.

2007-10-19 15:17  zmedico

	* pym/portage/elog/messages.py: The ERROR color code is currently
	  undefined, so make eerror
	  use BAD like the bash version does.

2007-10-19 10:27  genone

	* pym/portage/dbapi/vartree.py: Use the python version of eerror

2007-10-18 21:08  zmedico

	* pym/portage/dbapi/vartree.py: Handle EnvironmentError instead of
	  OSError since open()
	  actually raises IOError. Also, treat a missing SLOT
	  file as SLOT="" since it is currently possible to
	  install an ebuild with an undefined SLOT even though
	  repoman generates a SLOT.missing error with such an
	  ebuild.

2007-10-18 19:30  zmedico

	* pym/portage/dbapi/vartree.py: Bug #195375 - Make
	  dblink.treewalk() read inforoot/SLOT since
	  it differs from the expected SLOT value when when USE=multislot
	  is enabled. A warning message will be shown if the slot differs
	  and --quiet mode is not enabled.

2007-10-18 03:20  zmedico

	* pym/portage/dbapi/vartree.py: Adjust quote usage in
	  collision-protect eerror
	  output.

2007-10-18 02:32  zmedico

	* pym/portage/dbapi/vartree.py: Fix collision-protect so that it
	  properly cancels the
	  preinst phase like it used to.

2007-10-17 21:44  zmedico

	* pym/portage/dbapi/vartree.py: Fix the normalize_needed regex to
	  properly match //
	  anywhere in the path. Also add support for detection
	  of . or .. where appropriate.

2007-10-17 20:22  zmedico

	* pym/portage/dbapi/vartree.py: Bug #196043 - Unify the ouput
	  handling for file collisions
	  so that similar eerror messages are generated whether or
	  not collision-protect is enabled.

2007-10-17 04:35  zmedico

	* pym/portage/dbapi/vartree.py: Add missing "to" to fix grammer.

2007-10-17 02:34  zmedico

	* pym/portage/dbapi/vartree.py: Bug #196043 - Update the file
	  collision ewarn notice
	  to try and clarify the cases when a bug should NOT
	  be filed. Also, recommend the new `portageq owners /
	  <filename>` command since it works properly even
	  when paths are ambiguous due to symlinked
	  directories.

2007-10-17 01:17  zmedico

	* bin/portageq: Bug #196043 - Implement a `portageq owners <root>
	  [<filename>]+`
	  command that is suitable for identifying all packages that own
	  one or more files when a file collision has occurred. This uses
	  dblink.isowner() so that the query works properly even when
	  paths are ambiguous due to symlinked directories.

2007-10-17 00:02  zmedico

	* pym/portage/dbapi/vartree.py: Optimize dblink.isowner() to use
	  fewer stat calls by
	  only collecting stat results for parent directories.
	  This provides equivalent accuracy to the previous
	  approach but will perform much better when used to
	  scan all installed packages for owners in the event
	  of a file collision.

2007-10-16 21:15  zmedico

	* pym/portage/dbapi/vartree.py: Only re.compile() the
	  normalize_needed pattern once
	  rather than for each dblink constructor call.

2007-10-16 20:38  zmedico

	* pym/portage/dbapi/vartree.py: In dblink.getcontents(), use a
	  regular expression to detect
	  when path normalization is required. Also, only join with
	  ${ROOT} when necessary. This allows unnecessary normpath
	  and join calls to be optimized away in the general case,
	  reducing the cpu time for `equery belongs <filename>` by
	  about 50%.
	  M pym/portage/dbapi/vartree.py

2007-10-16 17:17  genone

	* pym/_emerge/__init__.py: Use EmergeConfig instead of
	  portage.config in RootConfig

2007-10-16 17:11  genone

	* pym/_emerge/__init__.py, pym/portage/sets/files.py: Move
	  clean_world() into WorldSet

2007-10-16 16:43  genone

	* pym/portage/news.py: use skipfile rather than timestamp to ignore
	  processed files

2007-10-16 16:14  genone

	* pym/_emerge/__init__.py: Also use EmergeConfig() in MergeTask

2007-10-16 14:50  genone

	* pym/_emerge/__init__.py: fix typo

2007-10-16 14:47  genone

	* pym/_emerge/__init__.py: Replace getlist() with
	  PackageSet.getAtoms()

2007-10-16 14:37  genone

	* pym/_emerge/__init__.py, pym/portage/sets/__init__.py: subclass
	  portage.config to include a setconfig instance to avoid adding
	  one more parameter to most of the emerge functions

2007-10-16 14:28  genone

	* pym/portage/sets/dbapi.py: Add debug mode to display the
	  libraries that cause the package to be included

2007-10-16 06:15  zmedico

	* bin/emerge, pym/_emerge, pym/_emerge/__init__.py, pym/emerge:
	  Move the emerge module to _emerge to make it private
	  since it's mostly unsuitable for api consumers at
	  this time.

2007-10-15 19:52  zmedico

	* bin/repoman: Fix --help summary so that "commit" mode shows.

2007-10-15 19:35  zmedico

	* cnf/etc-update.conf: Update emacs and vim docs to reference
	  NOTE_2.

2007-10-15 19:30  zmedico

	* cnf/etc-update.conf: Update NOTE_2 to document proper use of the
	  using_editor
	  config option.

2007-10-15 18:05  zmedico

	* bin/etc-update: Bug #195949 - Add one more using_editor
	  conditional for
	  diff_command.

2007-10-15 16:15  zmedico

	* bin/etc-update: Bug #195949 - Use a different diff_command sanity
	  check
	  when using_editor is true.

2007-10-15 13:13  genone

	* cnf/make.conf, pym/portage/dbapi/porttree.py: remove unused tmpfs
	  variable

2007-10-15 07:40  zmedico

	* man/repoman.1: Document the "manifest" mode.

2007-10-15 07:38  zmedico

	* bin/repoman: Sort the modes in the repoman --help output.

2007-10-14 18:29  zmedico

	* pym/portage/dbapi/vartree.py: Add a note to clarify os.walk()
	  behavior with respect
	  to symlinks to directories.

2007-10-14 03:57  zmedico

	* pym/portage/dbapi/vartree.py: Remove the checks for files in
	  symlinked directories
	  from the collision protect code since it hasn't been
	  needed ever since the followSymlinks parameter was
	  disabled for portage.listdir() calls in order to
	  prevent infinite recursion loops.

2007-10-13 19:04  zmedico

	* pym/portage/__init__.py: In some cases, openpty can be slow when
	  it fails. Therefore,
	  stop trying to use it after the first failure.

2007-10-13 18:18  zmedico

	* bin/misc-functions.sh: Avoid an error message from find when
	  "${D}"/usr/share
	  does not exist.

2007-10-13 17:46  zmedico

	* pym/portage/dbapi/vartree.py: Remove unused import.

2007-10-13 17:44  zmedico

	* pym/portage/dbapi/vartree.py: In the file collision eerror
	  output, don't colorize the
	  file paths since the escape codes look ugly in the log.

2007-10-13 06:44  zmedico

	* pym/portage/elog/mod_mail.py: Handle the PortageException that
	  can be raised from
	  portage.mail.send_mail().

2007-10-13 06:16  zmedico

	* pym/portage/dbapi/vartree.py: Make the file collision eerror
	  message less verbose
	  when in --quiet mode.

2007-10-13 05:59  zmedico

	* pym/portage/dbapi/vartree.py: Remove a chdir() call that's no
	  longer needed for the
	  collision-protect symlink code.

2007-10-13 05:40  zmedico

	* pym/portage/dbapi/vartree.py: Use os.listdir() instead of
	  portage.listdir() in dblink.mergeme().

2007-10-13 05:27  zmedico

	* pym/portage/dbapi/vartree.py: In dblink.treewalk(), use os.walk()
	  instead of portage.listdir()
	  in order to avoid cacheddir() bloat when listing the files to be
	  merged from ${D}.

2007-10-12 22:34  zmedico

	* pym/emerge/__init__.py: Bug #195370 - Filter some more bogus
	  matches due to
	  old-style virtuals.

2007-10-12 22:00  zmedico

	* pym/portage/dbapi/vartree.py: Remove a redundant call to
	  elog_process().

2007-10-12 21:42  zmedico

	* pym/portage/dbapi/vartree.py: s:this package wants:this package
	  will:

2007-10-12 20:56  zmedico

	* pym/portage/dbapi/vartree.py: Bug #195527 - Add some more
	  information to the file collision
	  eerror message to try and prevent user confusion:
	  
	  - Hint that `equery belongs <filename>` can be used to find
	  the installed package that owns a file.
	  
	  - Advise then NOT to file a bug without reporting exactly
	  which two packages install the same file(s).

2007-10-12 18:55  zmedico

	* pym/portage/dbapi/vartree.py: Bug #195527 - Unconditionally
	  detect file collisions and log
	  them as eerror messages via elog. This will allow us to
	  collect more file collision data but it won't be quite as
	  annoying as enabling collision-protect by default would be.

2007-10-12 05:41  zmedico

	* pym/portage/elog/mod_mail_summary.py: Use writemsg() to send
	  exception string to stderr.

2007-10-12 01:03  zmedico

	* pym/portage/dbapi/bintree.py, pym/portage/getbinpkg.py: Pass into
	  the PackageIndex constructor a list of package
	  metadata keys that inherit a default value from the header.

2007-10-12 00:38  zmedico

	* pym/portage/dbapi/bintree.py, pym/portage/getbinpkg.py: Pass
	  default package metadata values into the PackageIndex
	  constructor for optional things like EAPI and SLOT.

2007-10-12 00:12  zmedico

	* pym/portage/dbapi/bintree.py: Sync code between
	  binarytree.inject() and populate().

2007-10-11 18:14  zmedico

	* pym/portage/dbapi/bintree.py, pym/portage/getbinpkg.py: Split USE
	  evaluation code out of binarytree.inject() so
	  that it can be reused in populate().

2007-10-11 16:29  zmedico

	* pym/emerge/__init__.py: Strip the leading path separator from
	  USER_CONFIG_PATH
	  so that os.path.join works correctly.

2007-10-11 14:22  zmedico

	* pym/emerge/__init__.py: In depgraph.select_dep(), check for
	  existing nodes in
	  installed packages when necessary.

2007-10-11 08:17  genone

	* pym/portage/dbapi/vartree.py: typo fix

2007-10-11 08:14  genone

	* pym/portage/dbapi/vartree.py: Do not use aux_get to parse the
	  NEEDED file as we need to distinguish spaces and newlines

2007-10-11 06:05  genone

	* TODO: Update todo list

2007-10-11 05:59  genone

	* pym/portage/sets/__init__.py, pym/portage/sets/dbapi.py: Add a
	  set to group all consumers of missing libraries as a simple
	  revdep-rebuild replacement

2007-10-11 05:37  zmedico

	* pym/emerge/__init__.py: Make depgraph.select_dep() reject
	  installed packages
	  in the same cases that it used to so that a warning
	  message is properly generated in depgraph.xcreate()
	  when a package is unavailable but installed.

2007-10-11 05:19  genone

	* pym/portage/sets/__init__.py, pym/portage/sets/dbapi.py:
	  implement new set to group all consumers of preserved libraries

2007-10-11 05:19  zmedico

	* pym/emerge/__init__.py: Raise a PackageNotFound exception instead
	  of a ValueError
	  in order to avoid ambiguity if an unexpected ValueError
	  occurs.

2007-10-11 02:54  zmedico

	* pym/emerge/__init__.py: Move some package selection code from
	  depgraph.create()
	  to select_dep() so that all package selection is done
	  in the same place.

2007-10-11 02:02  zmedico

	* pym/portage/dbapi/bintree.py, pym/portage/dbapi/porttree.py,
	  pym/portage/getbinpkg.py: Make portdbapi and bindbapi cache
	  PROVIDE in order
	  to optimize matching of old-style virtuals.

2007-10-10 15:34  zmedico

	* man/emerge.1: Remove ambiguous "you should edit this file"
	  warning.
	  Thanks to Cardoe.

2007-10-10 08:33  zmedico

	* pym/emerge/__init__.py: Prevent bogus upgrade display when a
	  new-style virtual
	  is first installed and it replaces an old-style virtual.

2007-10-10 08:07  zmedico

	* pym/emerge/__init__.py: Comment about avoiding expensive metadata
	  pulls
	  in depgraph.select_dep().

2007-10-10 07:46  zmedico

	* pym/emerge/__init__.py: Refactor depgraph.select_dep() to
	  eliminate redundant
	  code that was duplicated for each package type.

2007-10-10 06:33  zmedico

	* pym/portage/dbapi/bintree.py, pym/portage/getbinpkg.py: Cache
	  IUSE in bindbapi to optimize --newuse calculations.
	  Also, fix filtering code for reading/writing USE and IUSE
	  from/to the metadata index.

2007-10-10 02:55  zmedico

	* pym/emerge/__init__.py: Migrate depgraph.select_files() to use
	  the filtered repo
	  for expansion of greedy atoms. Also, use the list of
	  repos to clean up the category expansion code.

2007-10-10 02:03  zmedico

	* pym/emerge/__init__.py: Initialize the list of package repos
	  inside the
	  depgraph constructor so it's always available.

2007-10-09 23:36  zmedico

	* pym/emerge/__init__.py, pym/portage/__init__.py: Unify the
	  masking reasons output so that the same code
	  path is used for both ebuilds and binary packages.

2007-10-09 21:41  genone

	* doc/config/sets.docbook: document default sets

2007-10-09 21:29  genone

	* doc/config/sets.docbook: add descriptions for dbapi set classes

2007-10-09 21:26  genone

	* doc/config/sets.docbook: add description to security set handlers

2007-10-09 20:48  genone

	* doc/config/sets.docbook: security sets actually have one option

2007-10-09 20:13  genone

	* doc/config/sets.docbook: document all options

2007-10-09 19:21  genone

	* doc/config/sets.docbook: Start documentation of set handler
	  classes

2007-10-09 18:55  genone

	* pym/portage/sets/__init__.py, pym/portage/sets/files.py: Exclude
	  .metadata files in multi set configurations for StaticFileSet

2007-10-09 17:57  zmedico

	* pym/emerge/__init__.py: Fix USE logic for built packages when
	  populating the filtered repo.

2007-10-09 17:43  genone

	* pym/emerge/__init__.py, pym/portage/const.py: Replace hardcoded
	  path with new constant

2007-10-09 15:46  zmedico

	* pym/emerge/__init__.py: Fix InvalidDependString namespace and
	  initialize USE before
	  visibility check.

2007-10-09 15:38  zmedico

	* pym/emerge/__init__.py: When an ebuild has conditionals in it's
	  LICENSE, calculate
	  USE before the visibility check.

2007-10-09 11:07  zmedico

	* pym/emerge/__init__.py: In depgraph.xcreate(), installed packages
	  are excluded
	  from the filtered tree. Clear out the history of atoms
	  so that they can be processed again to satisfy
	  dependencies with installed packages if necessary.

2007-10-09 10:06  zmedico

	* pym/emerge/__init__.py, pym/portage/dbapi/bintree.py,
	  pym/portage/dbapi/vartree.py, pym/portage/dbapi/virtual.py: Bug
	  #149816 - Implement visibility filtering support for
	  binary packages. This works by creating a virtual filtered
	  repository that can be composed of multiple package types,
	  including ebuilds, binary packages, and installed packages.

2007-10-09 09:28  zmedico

	* pym/portage/dbapi/porttree.py: Make portdbapi.aux_get() cache
	  more often.

2007-10-09 09:26  zmedico

	* pym/portage/dbapi/porttree.py: Properly exclude old-style
	  virtuals from the portdbapi.cp_list() cache.

2007-10-09 06:06  zmedico

	* pym/portage/dbapi/porttree.py: Remove a redundant os.access()
	  call in portdbapi.aux_get()
	  and handle the potential OSError instead.

2007-10-09 03:50  zmedico

	* pym/portage/dbapi/porttree.py: Optimize away a match_from_list()
	  call inside
	  portdbapi.xmatch("match-all") when given atom has no
	  operator or version. Also, make cp_list() use the
	  xmatch("match-all") cache when possible.

2007-10-07 23:04  zmedico

	* pym/portage/__init__.py, pym/portage/dbapi/porttree.py: Factor
	  package.mask and profile masking logic out of
	  portdbapi.visible() and move it to config.getMaskAtom()
	  and getProfileMaskAtom(). This will allow the code to
	  be reused for binary packages.

2007-10-07 22:24  zmedico

	* pym/portage/dbapi/porttree.py: Cache IUSE for
	  portdbapi.gvisible() calls.

2007-10-07 22:08  zmedico

	* pym/portage/__init__.py: Restore profile masking support to
	  getmaskingstatus().

2007-10-07 21:55  zmedico

	* pym/portage/__init__.py, pym/portage/dbapi/porttree.py: Allow
	  config.setcpv() to take a dictionary of package metadata
	  in place of a dbapi instance so that extra cache pulls can be
	  avoided.

2007-10-07 21:46  zmedico

	* pym/portage/__init__.py, pym/portage/dbapi/porttree.py: Factor
	  the KEYWORDS masking logic out of portdbapi.visible()
	  and move it to config.getMissingEeywords(). This will allow
	  the code to be reused for binary packages.

2007-10-07 21:28  zmedico

	* bin/repoman: Remove duplicate call to digestgen().

2007-10-07 21:25  zmedico

	* bin/repoman: Move the "commit" mode manifest generation earlier
	  in order
	  to avoid digest verification issues when FEATURES="strict"
	  is enabled.

2007-10-07 19:33  vapier

	* bin/etc-update: add --debug option and display a message about
	  skipping non-files so we dont get confusing loops where portage
	  claims there are things to update but etc-update claims there are
	  not

2007-10-07 19:16  vapier

	* bin/etc-update: add standard --help/--version options

2007-10-07 19:06  vapier

	* bin/etc-update: unify diff_command handling

2007-10-07 18:00  vapier

	* bin/ebuild.sh: add support for .lzma / .tar.lzma to unpack

2007-10-07 17:52  vapier

	* bin/misc-functions.sh: add QA check for .pyc/.pyo files in
	  /usr/share

2007-10-06 22:26  zmedico

	* pym/portage/dbapi/bintree.py: Fix binarytree.populate() so that
	  it properly caches
	  all the metadata necessary for visibility filtering.

2007-10-06 22:23  zmedico

	* pym/portage/getbinpkg.py: In PackageIndex.write(), skip writing
	  the CHOST for a
	  package entry if it's CHOST matches the header.

2007-10-06 22:02  zmedico

	* pym/portage/getbinpkg.py: In PackageIndex.readBody(), make each
	  package entry
	  inherit CHOST from the header.

2007-10-06 20:24  zmedico

	* pym/portage/dbapi/bintree.py, pym/portage/getbinpkg.py: Bug
	  #194552 - Include EAPI in the binary package metadata index.

2007-10-06 19:19  zmedico

	* pym/emerge/__init__.py, pym/portage/__init__.py,
	  pym/portage/dbapi/porttree.py: Fix package.license support so
	  that SLOT atoms
	  will work.

2007-10-06 16:30  genone

	* pym/portage/elog/mod_mail_summary.py, pym/portage/mail.py: Handle
	  Exceptions in mod_mail_summary.finalize() and check if the server
	  actually supports TLS, bug #183808

2007-10-06 15:40  genone

	* bin/dohtml: let dohtml handle weird filenames, patch by TGL (bug
	  #171272)

2007-10-06 15:12  genone

	* cnf/make.globals: Add @localhost to default PORTAGE_ELOG_MAILFROM
	  to account for mail servers that don't accept mails without a
	  domainname

2007-10-06 14:27  genone

	* pym/portage/sets/__init__.py, pym/portage/sets/dbapi.py,
	  pym/portage/sets/files.py, pym/portage/sets/profiles.py,
	  pym/portage/sets/security.py, pym/portage/sets/shell.py: clean up
	  module namespace

2007-10-06 14:04  genone

	* doc/Makefile: Also clean portage.txt

2007-10-06 13:59  genone

	* pym/emerge/__init__.py: Also look for sets.conf in overlays

2007-10-06 13:49  genone

	* doc/config, doc/config.docbook, doc/config/sets.docbook,
	  doc/portage.docbook: Add some documentation about set
	  configuration

2007-10-06 12:04  genone

	* cnf/sets.conf: default set configuration, should probably go into
	  /usr/share/portage

2007-10-05 23:09  zmedico

	* pym/portage/__init__.py: Strip the - prefix from EAPI in
	  getmaskingstatus()
	  if necessary.

2007-10-05 22:07  genone

	* pym/emerge/__init__.py: handle empty sets properly

2007-10-05 21:27  zmedico

	* man/make.conf.5: Shorten the reference to IUSE defaults since
	  it's now documented in ebuild(5).

2007-10-05 21:19  zmedico

	* man/ebuild.5: Document IUSE defaults.

2007-10-05 20:46  genone

	* pym/emerge/__init__.py: include sets in emerge --search

2007-10-05 20:43  zmedico

	* man/ebuild.5: Document SLOT dependencies.

2007-10-05 20:05  genone

	* pym/emerge/__init__.py, pym/portage/sets/__init__.py,
	  pym/portage/sets/files.py: replace category sets in test
	  configuration with user sets

2007-10-05 20:05  zmedico

	* man/emerge.1: Generalize the first paragraph of the MASKED
	  PACKAGES section
	  and document binary package CHOST masking.

2007-10-05 19:34  genone

	* pym/portage/sets/__init__.py: only add short names for sets if
	  they begin with 'sets/'

2007-10-05 19:29  genone

	* pym/emerge/__init__.py, pym/portage/sets/__init__.py: first
	  version of set integration in emerge

2007-10-05 17:27  genone

	* pym/portage/sets/__init__.py, pym/portage/sets/dbapi.py,
	  pym/portage/sets/files.py, pym/portage/sets/profiles.py,
	  pym/portage/sets/security.py, pym/portage/sets/shell.py: Add set
	  configuration framework in preparation for emerge integration

2007-10-05 17:09  zmedico

	* man/emerge.1: Documnet EAPI in the MASKED PACKAGES section.

2007-10-05 17:01  zmedico

	* man/ebuild.5: Fix spelling of backward.

2007-10-05 16:53  zmedico

	* man/ebuild.5: Document the EAPI variable.

2007-10-05 16:40  genone

	* pym/portage/env/loaders.py: ignore missing files

2007-10-05 15:16  genone

	* TODO: add TODO list for portage-2.2

2007-10-05 14:17  genone

	* pym/portage/glsa.py: copy of gentoolkit r451

2007-10-05 04:20  zmedico

	* bin/portageq: Bug #194764 - All the match* functions can raise
	  a ValueError if cpv_expand() receives an ambiguous
	  atom. Therefore, move the ValueError handling code
	  out of match() and use it to handle all such errors
	  when appropriate.

2007-10-05 03:56  zmedico

	* pym/repoman/checks.py: Make the EbuildQuote check ignore lines
	  beginning
	  with local or export builtins since unquoted
	  assignments are okay there.

2007-10-04 08:19  zmedico

	* pym/portage/dbapi/porttree.py: In portdbapi.aux_get(), simplify
	  code by using string
	  manipulation instead of int conversion to manipulate
	  negative EAPI when deciding whether or not regen is
	  necessary.

2007-10-04 07:53  zmedico

	* bin/ebuild: Handle UnsupportedAPIException when running the
	  ebuild(1)
	  command.

2007-10-04 07:25  zmedico

	* pym/portage/__init__.py, pym/portage/dbapi/porttree.py: Include
	  the package name in all exceptions raised from
	  portdbapi.getfetchlist() so that a redundant and
	  sometimes inaccurate message doesn't have to be shown
	  when the error is caught in digestgen().

2007-10-04 07:05  zmedico

	* pym/portage/dbapi/porttree.py: Make portdbapi.getfetchlist() bail
	  out if the EAPI
	  is unsupported. This makes it impossible for an
	  unsupported EAPI to result in invalid Manifest
	  generation.

2007-10-04 06:46  zmedico

	* bin/repoman: Fix logic for the message that's show when
	  --force is disabled.

2007-10-04 06:35  zmedico

	* bin/repoman, man/repoman.1: Make repoman bail out if it is unable
	  to properly
	  access ebuild metadata for some reason. In this
	  case it's impossible to generate a Manifest and
	  therefore the --force option has to be disabled.

2007-10-04 04:00  zmedico

	* pym/emerge/__init__.py, pym/portage/dbapi/bintree.py: Add EAPI
	  masking support for binary packages.

2007-10-04 02:56  zmedico

	* pym/portage/exception.py: Fix UnsupportedAPIException.__str__()
	  to strip the leading
	  negative sign (-) from the EAPI, to prevent confusion.

2007-10-04 02:33  zmedico

	* pym/portage/dbapi/porttree.py: Non-integer EAPI isn't supported.
	  In case it's supported in
	  the future, assume that it's valid (rather than trigger a
	  regen).

2007-10-04 02:19  zmedico

	* pym/portage/dbapi/porttree.py: When the metadata cache contains a
	  negative EAPI, it means
	  that the cache entry was generated by a version of portage
	  that did not support the eapi. When the user upgrades to a
	  version that now supports the previously unsupported EAPI,
	  those cache entries need to be regenerated. Therefore,
	  when a cache entry has a negative EAPI, check if the EAPI
	  would be supported and trigger a regen if appropriate.

2007-10-04 01:52  zmedico

	* pym/portage/__init__.py, pym/portage/const.py: Bump EAPI from 0
	  to 1 and fix eapi_is_supported() so that
	  it works properly with both 0 and 1.

2007-10-03 21:08  vapier

	* bin/etc-update: no need to use "function" when defining a
	  function

2007-10-03 21:06  vapier

	* bin/etc-update: this isnt part of gentoolkit anymore

2007-10-03 07:50  zmedico

	* bin/repoman, man/repoman.1: Eliminate confusing false positive
	  error messages
	  for SRC_URI.syntax and digestentry.unused that are
	  reported when the SRC_URI for one or more ebuilds
	  can't be parsed for some reason. There's no point
	  in producing a false error here since the root
	  cause will produce a valid error elsewhere, such
	  as "SRC_URI.syntax" or "ebuild.sytax". Also,
	  update the docs for the "ebuild.syntax" error to
	  indicate that a digest verification failure can
	  trigger it.

2007-10-03 00:12  zmedico

	* pym/repoman/checks.py: In the EbuildQuote check, combine the
	  var_assignment
	  regex together with the ignore_line regex. This also
	  fixes an issue with the var_assignment regex allowing
	  violations like `make DESTDIR=${D}` to slip through.

2007-10-02 04:03  zmedico

	* pym/repoman/checks.py: Filter some false positives out of the
	  EbuildQuote check.
	  It might work well enough now so that we don't have to
	  degrade it to a warning.

2007-10-01 19:44  zmedico

	* pym/emerge/__init__.py: Bug #194398 - Do not log "exiting
	  successfully" in emerge.log
	  unless the status really is successful. Otherwise, log
	  "exiting unsuccessfully". Thanks to David Watzke.

2007-10-01 12:28  antarus

	* bin/repoman: Apply new checks, minor cleanup

2007-10-01 12:27  antarus

	* pym/repoman/checks.py, pym/repoman/errors.py: Rename checks as
	  the naming was overkill (they are all obviously checks being in
	  the check module), add nesteddie check

2007-10-01 11:05  antarus

	* bin/repoman: Delete some extra leaky vars, also after some
	  testing I discovered read() is much faster than readlines(), see
	  http://dev.gentoo.org/~antarus/projects/portage/stats/StringIOVsFiles.txt

2007-10-01 10:26  antarus

	* pym/repoman/checks.py: keep old repoman names so we don't confuse
	  people

2007-10-01 10:20  antarus

	* bin/repoman: Add Donnie's quote check, refactor other
	  ebuild-content checks into classes and get them out of repoman in
	  an attempt to start moving other checks out as well. Again wonder
	  at the price of StringIO and N passes, is the readability worth
	  it?

2007-10-01 10:19  antarus

	* pym/repoman, pym/repoman/__init__.py, pym/repoman/checks.py,
	  pym/repoman/errors.py: Add new repoman check classes using
	  StringIO; possibly need some testing, obviously the old code was
	  faster (1 iteration over the file), here we do one iteration per
	  check, StringIO was to try and negate this by doing the checks in
	  memory...how much of a price do we pay here?

2007-10-01 03:13  zmedico

	* bin/dispatch-conf: Bug #142508 - Clear the screen each time
	  before calling
	  the "diff" command so that any remnants of the previous
	  config are now shown with the current one.
	  command so that

2007-09-30 21:25  zmedico

	* pym/portage/dbapi/porttree.py: Reimplement portdbapi.visible() so
	  that is works without
	  using self.xmatch(). This should be 100% compatible with
	  the previous implementation and have comparable
	  performance. By eliminating the xmatch() dependency, the
	  code becomes more generically usable, like for
	  visibility filtering of binary packages. It seems that
	  it will be necessary to move this code outside of the
	  dbapi since visiblity filtering is really a resolver
	  level function and to solve things like bug #88613 will
	  require a more flexible approach.
	  since the current internal

2007-09-30 18:57  zmedico

	* pym/portage/__init__.py: Document interaction between
	  config.setinst() and
	  old-style virtuals preferences.

2007-09-29 21:23  zmedico

	* bin/ebuild.sh: Remove redundant trailing slashes from ${D}.
	  (branches/prefix r7886)

2007-09-29 21:09  zmedico

	* bin/etc-update: Initialize PORTAGE_TMPDIR before using it.

2007-09-29 08:27  vapier

	* bin/ebuild.sh, bin/prepallman: revert useless quoting

2007-09-29 07:45  antarus

	* bin/ebuild.sh, bin/isolated-functions.sh, bin/prepallman: Fix
	  quoting as reported by Drac in bug 194169

2007-09-29 01:49  zmedico

	* bin/dispatch-conf: Bug #194095 - Validate dispatch-conf input in
	  order to
	  prevent spurious input characters from being interpreted
	  as user input (which can be quite confusing and gives
	  an "out of control" feeling).

2007-09-28 21:51  zmedico

	* pym/emerge/__init__.py: Bug #193548 - When scanning for config
	  updates and an error
	  occurs, send find's stdout to /dev/null so that only an
	  error message is shown.

2007-09-28 20:16  zmedico

	* pym/emerge/__init__.py: When scanning for config updates, treat a
	  symlink to an existing
	  directory as if it's just a normal directory.

2007-09-28 18:11  zmedico

	* pym/emerge/__init__.py: Bug #193548 - When emerge spawns find to
	  search for config updates,
	  show the find output if there is an error.

2007-09-28 17:07  zmedico

	* pym/portage/dbapi/vartree.py: Bug #194081 - Add EBUSY to the list
	  of ignored errnos for unlink
	  and rmdir calls during unmerge.

2007-09-27 22:47  zmedico

	* bin/ebuild: Handle KeyError thrown from aux_get().

2007-09-27 22:26  zmedico

	* pym/portage/checksum.py: Move prelink tempfile cleanup to the
	  finally block and
	  remove unused locking code.

2007-09-27 20:59  zmedico

	* pym/portage/eclass_cache.py: Simplify update_eclasses() a little.

2007-09-27 20:41  zmedico

	* pym/emerge/__init__.py: Move a newline to fix formatting.

2007-09-27 19:22  zmedico

	* pym/portage/dbapi/vartree.py: Ignore ENOTDIR from unmerge unlink
	  calls.

2007-09-27 17:54  zmedico

	* pym/emerge/__init__.py: Bug #194025 - Lock /var/db/pkg in
	  post_merge() during the
	  "Regenerating GNU info directory index" routine.

2007-09-27 17:12  vapier

	* bin/isolated-functions.sh: with help from Donnie and Ulrich, use
	  sed to extract the statement that led to the call to die so we
	  can print it out in our error message

2007-09-27 15:46  zmedico

	* bin/ecompress: Bug #193486 - Use echo -n and properly quote the
	  array argument.

2007-09-27 15:40  zmedico

	* bin/ecompress: Bug #193486 - Use xargs to avoid 'bash: /bin/rm:
	  Argument list too long'
	  errors. This patch uses a weird tr '\001' '\000' workaround since
	  bash
	  doesn't echo null bytes like one might expect.

2007-09-27 15:34  zmedico

	* bin/ebuild: Do the stale env check/warning after the
	  digest/manifest
	  phase when necessary.

2007-09-27 06:50  zmedico

	* bin/ebuild: Display a short notification when an existing
	  ${T}/environment
	  sourced since it is easy to ignore and ignorance of it often
	  leads to mysterious problems and general confusion. This
	  message should not show in cases where it is obviously
	  irrelevant, FEATURES=noauto, or PORTAGE_QUIET=1.

2007-09-26 23:49  vapier

	* bin/isolated-functions.sh: align the filename and line numbers in
	  the output of the stack dump so that it is much easier to read

2007-09-26 23:46  zmedico

	* man/make.conf.5: Fix a typo.

2007-09-26 23:38  vapier

	* bin/isolated-functions.sh: someone seriously screwed the pooch on
	  whitespacing here so clean it all up

2007-09-26 21:58  zmedico

	* pym/emerge/__init__.py: Bug #192706 - Do not print a summary at
	  the end of --depclean
	  if there is nothing to clean and --quiet is enabled.

2007-09-26 20:01  zmedico

	* pym/portage/__init__.py: Set non-blocking mode on the pty master
	  file descriptor while
	  the slave file descriptor is still held open since otherwise
	  the fcntl call can fail on FreeBSD (the child process might
	  have already exited and closed the slave file descriptor so we
	  have to keep it open in order to avoid FreeBSD potentially
	  generating an EAGAIN exception). This appoach is cleaner than
	  triggering the exception and being forced to handle it
	  somehow.

2007-09-26 17:03  zmedico

	* pym/portage/__init__.py: Bug #192341 - When the chflags command
	  does not exit successfully,
	  try to generate an informative error. First, use stat or lstat to
	  try and generate an ENOENT error. It the path exists, verify that
	  the chflags binary exists and raise CommandNotFound if necessary.
	  Finally, simply generate an EPERM OSError with the output of the
	  command since we're not sure exactly why it failed or what the
	  real errno was.

2007-09-26 03:30  zmedico

	* pym/portage/__init__.py: Bug #192341 - Eliminate the dependency
	  on py-freebsd by implementing
	  it's chflags() and lchflags() functions as wrappers around the
	  chflags command (which should always be available in any case).
	  The
	  functions are only called when merging/unmerging files that
	  actually
	  have flags set so the performance difference should be
	  negligible.

2007-09-25 15:33  zmedico

	* pym/portage/dbapi/vartree.py: Bug #193695 - Add FreeBSD chflags
	  support for rmdir()
	  calls during unmerge.

2007-09-25 05:29  zmedico

	* pym/portage/__init__.py: In movefile() FreeBSD chflags handling,
	  use chflags instead of
	  lchflags when temporarily adjusting the flags on the parent
	  directory since we want to follow any symlinks to the real
	  parent directory.

2007-09-25 05:22  zmedico

	* pym/portage/dbapi/vartree.py: Bug #193695 - Add support for
	  FreeBSD chflags during unmerge. This
	  code is adapted from the code that already exists in movefile()
	  for the merge phase.

2007-09-24 23:25  zmedico

	* pym/portage/dbapi/vartree.py: Bugs #168772 and #193695 - During
	  unmerge, only ignore specific
	  exceptions raised from unlink() and rmdir() calls.

2007-09-24 22:15  zmedico

	* bin/dispatch-conf, cnf/dispatch-conf.conf,
	  pym/portage/dispatch_conf.py: Bug #74615 - Quote all file paths
	  inside dispatch-conf shell commands.

2007-09-24 21:20  zmedico

	* bin/etc-update: Initialize ${TMP} before registering the die trap
	  so that
	  we're sure which directory die will clean up.

2007-09-24 20:26  zmedico

	* pym/portage/checksum.py: Bug #190179 - Use `prelink --verify
	  filename` to write the
	  temp file via stdout since --undo fails when run as a normal
	  non-superuser because it tries to chown the output file. Also,
	  use mkstemp() to eliminate the need for locking the temp file.
	  Thanks to Israel G. Lugo <israel.lugo@lugosys.com> for the
	  initial patch.

2007-09-24 16:48  zmedico

	* man/repoman.1: s/note/not/ reported by p-y.

2007-09-24 07:09  vapier

	* bin/etc-update: fix possible information leak vulnerability when
	  doing a merge of configuration files and be better about handling
	  of whitespace in $TMP in a few places

2007-09-24 06:49  vapier

	* bin/etc-update: tweak get_config() so that it only executes one
	  external binary (sed) instead of chaining multiple ones

2007-09-23 23:56  zmedico

	* pym/emerge/__init__.py: When --deep is not enabled, many
	  dependencies are dicarded and
	  left out of the digraph. This patch prevents dependencies from
	  being discarded in some cases where the are needed in order to
	  optimize merge order. It also modifies the DepPriority.rebuild
	  attribute so that it only applies to build time dependencies.
	  This leads to better merge order in some cases when --deep is
	  not enabled. For example, `emerge xf86-input-keyboard
	  xorg-server` will now properly merge xorg-server before
	  xf86-input-keyboard (problem from bug #192254, comment #5).

2007-09-23 18:08  zmedico

	* pym/portage/__init__.py: In spawn(), initialize default fd_pipes
	  before doing the stdout/stderr flush.

2007-09-22 18:54  zmedico

	* pym/emerge/__init__.py, pym/portage/__init__.py: Flush stderr and
	  stdout if their file descriptors are in fd_pipes at the beginning
	  of spawn().

2007-09-22 18:40  zmedico

	* pym/emerge/__init__.py: Flush stdout before calling pkg_info() to
	  ensure that output always shows in the correct order.

2007-09-22 02:30  zmedico

	* pym/emerge/__init__.py: When --with-bdeps=y is enabled for built
	  packages, pull in build time deps as
	  requested, but marked them as "satisfied" since they are not
	  strictly
	  required. This allows more freedom in the merge order calculation
	  for solving
	  circular dependencies. Don't convert to PDEPEND since that could
	  make
	  --with-bdeps=y less effective if it is used to adjust merge order
	  to prevent
	  built_with_use() calls from failing.

2007-09-19 22:01  zmedico

	* pym/emerge/__init__.py, pym/portage/dbapi/bintree.py: Mask binary
	  packages if their CHOST does not match the one defined in
	  make.conf.

2007-09-18 06:01  zmedico

	* pym/emerge/__init__.py: Bug #190781 - Don't include --oneshot in
	  the options that --update implies.

2007-09-16 22:01  zmedico

	* pym/portage/elog/mod_save.py,
	  pym/portage/elog/mod_save_summary.py: Use ensure_dirs() and
	  apply_permissions() to avoid redundant chown/chmod calls. This
	  helps avoid 'Permission denied' errors during elog_process() when
	  the ebuild command is run by normal user (issue reported by
	  graaff).

2007-09-15 17:32  zmedico

	* pym/emerge/__init__.py: Revert the workaround for bug #192341
	  since it will be much cleaner if we fall back to spawning the
	  chflags command when the freebsd module is unavailable.

2007-09-13 23:41  zmedico

	* pym/emerge/__init__.py: Bug #192341 - Make emerge bail out on
	  FreeBSD if the freebsd python module
	  fails to import. Display a notification that
	  "ignore-missing-freebsd-module"
	  can be added to FEATURES in order to bypass the error. If that
	  feature is
	  enabled but the freebsd python module imported successfully, show
	  a warning
	  message since the user should remove if from FEATURES asap.

2007-09-13 18:21  zmedico

	* pym/emerge/help.py: Bug #192346 - The emerge --help shows a -i
	  option that does not exist.

2007-09-13 18:12  zmedico

	* man/ebuild.1, man/make.conf.5: Bug #191645 - Cross-reference the
	  `ebuild --force digest` docs with the
	  FEATURES=assume-digests docs.

2007-09-13 17:40  zmedico

	* man/make.conf.5: Add some additional notes about the behavior of
	  FEATURES=assume-digests under
	  various conditions.

2007-09-13 17:19  zmedico

	* man/ebuild.1: Bug #191645 - Document the --force option.

2007-09-13 16:55  zmedico

	* man/repoman.1: Bug #110443 - Add a KEYWORDS.stable check for
	  ebuilds that are added directly
	  with stable KEYWORDS.

2007-09-13 16:48  zmedico

	* pym/emerge/__init__.py: Bug #192321 - Clean dir.old cruft so that
	  they don't prevent unmerge of
	  otherwise empty directories.

2007-09-12 19:36  zmedico

	* man/repoman.1: Bug #191645 - Document the --force option.

2007-09-12 18:40  zmedico

	* man/repoman.1: Bug #187795 - remove pointless digest.disjointed
	  and digest.notadded warnings
	  since they are always added to cvs automatically anyway.

2007-09-12 18:29  zmedico

	* pym/portage/getbinpkg.py: Bug #192195 - In dir_get_list(), append
	  a trailing / to the address when
	  necessary in order to avoid getting a 400 error from the http
	  server.

2007-09-12 15:27  zmedico

	* pym/portage/eclass_cache.py: Catch errno.ENOTDIR instead of using
	  os.path.isdir().

2007-09-12 14:59  zmedico

	* pym/portage/eclass_cache.py: Bug #192298 - Handle
	  PermissionDenied error in cache.update_eclasses().

2007-09-11 06:11  genone

	* pym/emerge/__init__.py: Adjust for r7767

2007-09-11 06:06  genone

	* pym/portage/sets/__init__.py, pym/portage/sets/dbapi.py,
	  pym/portage/sets/files.py, pym/portage/sets/profiles.py,
	  pym/portage/sets/security.py, pym/portage/sets/shell.py,
	  pym/portage/tests/sets/files/testConfigFileSet.py,
	  pym/portage/tests/sets/files/testStaticFileSet.py,
	  pym/portage/tests/sets/shell/testShell.py: Remove name from
	  PackageSet, it's pointless as the caller has to keep track of the
	  name himself anyway

2007-09-09 00:36  antarus

	* pym/portage/env/loaders.py: or I was right the first time :(

2007-09-09 00:33  antarus

	* pym/portage/env/loaders.py: sigh, or, not and

2007-09-08 21:52  antarus

	* pym/portage/env/loaders.py: compress two loop iterations into one

2007-09-08 08:33  zmedico

	* pym/emerge/__init__.py: In depgraph.altlist(), try to merge
	  asap_nodes sooner by giving them an exemption from the
	  accept_root_node flag. (branches/2.1.2 r7762)

2007-09-08 07:07  zmedico

	* pym/emerge/__init__.py: Fix a typo.

2007-09-08 06:51  zmedico

	* pym/portage/__init__.py, pym/portage/tests/ebuild/test_spawn.py:
	  Bug #190268 - Avoid unwanted sandbox violations in src_test().
	  - Allow SANDBOX_* variables to pass through.
	  - Don't try to create an sandbox instance inside a test case in
	  order to
	  interaction with SANDBOX_* variables in src_test().

2007-09-07 12:30  genone

	* pym/portage/tests/sets/files/testConfigFileSet.py,
	  pym/portage/tests/sets/files/testStaticFileSet.py: Implement/fix
	  testcases for some PackageSet subclasses

2007-09-07 12:30  genone

	* pym/portage/env/loaders.py: Fix incorrect parse check as value
	  lists in KeyListFileLoader might be empty, add support for value
	  validators in relevant Loaders

2007-09-07 11:51  genone

	* pym/portage/sets/__init__.py, pym/portage/sets/dbapi.py,
	  pym/portage/sets/files.py, pym/portage/sets/profiles.py,
	  pym/portage/sets/security.py, pym/portage/sets/shell.py: Undo
	  some unwanted changes

2007-09-07 11:49  genone

	* pym/portage/env/loaders.py: return the full path, not just the
	  filename

2007-09-07 11:41  genone

	* pym/portage/env/loaders.py: fix errors in call logic

2007-09-07 10:17  antarus

	* pym/portage/env/loaders.py, pym/portage/news.py,
	  pym/portage/sets/files.py: Fix minor issues with loaders in the
	  static file loader, fix quoting and import style in news.py. Add
	  TextFileLoader and EnvLoader loaders

2007-09-07 10:14  antarus

	* pym/portage/dbapi/__init__.py, pym/portage/dbapi/virtual.py:
	  dbapi currently depends on being subclassed and having the
	  subclasses impelement certain functions (that aren't even
	  implemented IN dbapi, so a particular child has no idea what
	  functions are actually required). Try to make this cleared by
	  adding stubs in dbapi. There should be no behavior change here
	  because these cases would be Attribute errors in the current
	  scheme. Also add a horribly bad testdbapi with stub funcs to use
	  in testing code. Remove regexes with possibly faster string
	  comparisons.

2007-09-07 10:08  antarus

	* pym/portage/tests/news/__test__,
	  pym/portage/tests/news/test_NewsItem.py: test news item filtering

2007-09-07 09:47  antarus

	* pym/portage/tests/ebuild/__test__,
	  pym/portage/tests/sets/shell/__test__: Last commit added more
	  tests for sets and taught me what I was doing wrong ;) This
	  commit adds yet more tests

2007-09-07 09:46  antarus

	* pym/portage/tests/sets/files,
	  pym/portage/tests/sets/files/__init__.py,
	  pym/portage/tests/sets/files/__test__,
	  pym/portage/tests/sets/files/testConfigFileSet.py,
	  pym/portage/tests/sets/files/testStaticFileSet.py: fighting with
	  svn over weirdness

2007-09-07 09:40  antarus

	* pym/portage/tests/__init__.py, pym/portage/tests/bin/__test__,
	  pym/portage/tests/dep/__test__, pym/portage/tests/env/__test__,
	  pym/portage/tests/env/config/__test__,
	  pym/portage/tests/util/__test__,
	  pym/portage/tests/versions/__test__,
	  pym/portage/tests/xpak/__test__: Rewrite testing to use __test__
	  instead of hardcoded dirs

2007-09-07 03:09  zmedico

	* pym/portage/__init__.py: For bug #190268, filter SANDBOX_* from
	  the calling environment so that they can't interfere with
	  ebuild.sh.

2007-09-06 01:33  zmedico

	* pym/emerge/__init__.py: Fix a typo.

2007-09-05 23:09  zmedico

	* pym/emerge/__init__.py: In the topological sort for merge order,
	  try to avoid selecting root nodes
	  whenever possible. This helps ensure that the maximimum possible
	  number of
	  soft dependencies have been removed from the graph before their
	  parent nodes
	  have been selected. This is especially important when those
	  dependencies are
	  going to be rebuilt by revdep-rebuild or `emerge -e system` after
	  the CHOST
	  has been changed (like when building a stage3 from a stage2).
	  With this patch,
	  `emerge -e system` properly rebuilds dev-lang/python before
	  sys-apps/file,
	  which helps to avoid a potential build failure.

2007-09-04 20:41  zmedico

	* RELEASE-NOTES: Move the note about not needing pycrypto with
	  python-2.5 to the 2.1.3 section.

2007-08-30 22:03  zmedico

	* pym/portage/dbapi/vartree.py: Reformat collision-protect output
	  so that the list of file collisions is shown below the banner.
	  This puts more distance between the collision list and the list
	  of files that prepstrip often displays just above, hopefully
	  preventing user confusion about which files had collisions.

2007-08-28 15:36  zmedico

	* bin/repoman: Move some of the less expensive QA checks before
	  dep_check() so that they're still done even in --force mode.

2007-08-28 03:42  zmedico

	* bin/repoman: Convert myoptions from a list to a dict.

2007-08-28 03:28  zmedico

	* bin/repoman: Skip the most expensive QA tests when --force in
	  enabled since there's no point in wasting time on them when the
	  user is intent on forcing the commit anyway.

2007-08-28 03:15  zmedico

	* bin/repoman: Make the commit message indicate when the --force
	  option is used.

2007-08-27 23:08  zmedico

	* bin/repoman: Fix RepoMan's grammar.

2007-08-27 22:41  zmedico

	* bin/repoman: Bug #110443 - Add a KEYWORDS.stable check for
	  ebuilds that are added directly with stable KEYWORDS.

2007-08-27 21:02  zmedico

	* bin/repoman: Add a --force option that forces commit to proceed.
	  This is useful for cases like bug #110443 where the commit
	  normally isn't allowed but there are exceptional circumstances
	  where it may be acceptable.

2007-08-27 17:54  zmedico

	* bin/repoman, pym/portage/cvstree.py: Bug #190406 - Filter the
	  myheaders list so that it doesn't include binary blobs added to
	  cvs with the -kb option.

2007-08-26 01:35  vapier

	* bin/etc-update: change directory to / in case $PWD doesnt exist

2007-08-25 23:02  zmedico

	* pym/emerge/__init__.py: Move blocker handling from
	  depgraph.create() to select_dep().

2007-08-25 19:41  zmedico

	* bin/misc-functions.sh, pym/portage/__init__.py: Bug #190214 -
	  Make the rpm phase use /usr/src/rpm instead of /usr/src/redhat.
	  Bug #190144 - Use the realpath of DISTDIR so that things like
	  subversion.eclass are compatible with sandbox.

2007-08-25 14:48  vapier

	* cnf/etc-update.conf: remove $Id$ as it gives us nothing useful

2007-08-25 09:32  genone

	* pym/emerge/__init__.py: Remove pointless information from --info
	  output

2007-08-24 21:57  zmedico

	* pym/portage/dep.py: Don't cache results from match_from_list()
	  since *dbapi.match() caches do the job.

2007-08-24 03:26  zmedico

	* pym/emerge/__init__.py: Call config.regenerate() after
	  config.reload() so that the incrementals are restacked.

2007-08-24 03:15  zmedico

	* pym/emerge/__init__.py, pym/portage/__init__.py: Use a
	  config.reload() method to explicitly reload /etc/profile.env when
	  setting up the ebuild environment.

2007-08-24 02:28  zmedico

	* pym/portage/tests/news/test_NewsItem.py: Fix another typo.

2007-08-24 01:18  zmedico

	* pym/portage/tests/news/test_NewsItem.py: Fix a typo.

2007-08-23 20:28  zmedico

	* pym/portage/__init__.py: Add * and ~* to the list of valid values
	  for ACCEPT_KEYWORDS.

2007-08-23 18:29  zmedico

	* pym/emerge/__init__.py: Make depgraph.select_dep() node reuse
	  work when in --usepkgonly mode.

2007-08-23 09:11  zmedico

	* pym/portage/__init__.py: Bug #189791 - Define EBUILD_PHASE=unpack
	  during the nofetch phase since otherwise we get
	  EBUILD_PHASE=merge which isn't in our list of valid EBUILD_PHASES
	  recognized by elog.

2007-08-23 08:40  zmedico

	* pym/portage/__init__.py: In config.regenerate(), skip loading
	  /etc/profile.env if it's mtime hasn't changed.

2007-08-23 08:11  zmedico

	* pym/emerge/__init__.py: Make depgraph.create() avoid metadata
	  lookups for binary packages and ebuilds in cases where an
	  installed package has already been added to the graph. This
	  greatly improves performance when the graph contains a large
	  number of installed packages.

2007-08-23 06:54  zmedico

	* bin/ebuild.sh: Bug #189791 - Send errors to /dev/null when
	  debug-print() fails to write to ${T}/eclass-debug.log.

2007-08-23 04:00  zmedico

	* pym/emerge/__init__.py: Fix a typo from r7663.

2007-08-22 22:55  zmedico

	* pym/portage/elog/mod_echo.py: Use INFORM to colorize the package
	  name.

2007-08-22 22:38  zmedico

	* pym/portage/getbinpkg.py: Prevent output from being flushed to
	  the console too frequently in dir_get_metadata().

2007-08-22 22:09  zmedico

	* pym/emerge/__init__.py: Skip --newuse checks for nodes that have
	  already been added to the graph as "merge" nodes.

2007-08-22 21:31  zmedico

	* pym/emerge/__init__.py: Make depgraph.select_dep() reuse cached
	  metadata from nodes that have already been added to the graph.

2007-08-22 20:58  zmedico

	* pym/portage/update.py: Fix update_dbentry() to process version
	  components properly before passing them into ververify().

2007-08-22 20:40  zmedico

	* pym/portage/versions.py: Make best() return early when it's only
	  given one packages.

2007-08-22 19:05  zmedico

	* pym/emerge/__init__.py: Pass complete package metadata from
	  depgraph.select_dep() into create() in order to minimize aux_get
	  calls.

2007-08-22 15:29  zmedico

	* pym/portage/__init__.py: Bug #188703 - Don't adjust permissions
	  in ${T} unless userpriv is enabled.

2007-08-22 04:50  zmedico

	* pym/emerge/__init__.py: Make --info detect more /etc/*-release
	  files as suggested by grobian.

2007-08-22 04:21  zmedico

	* pym/portage/getbinpkg.py: Send cache hit/miss status updates to
	  stdout instead of stderr and add some more flush() calls.

2007-08-22 04:05  zmedico

	* pym/portage/getbinpkg.py: Show cache miss/hit counts all on one
	  line, using \r to return to the beginning of he line and rewrite
	  it each time that a counter is updated. Thanks to Mike "Fuzzy"
	  Partin <fuzzy@smoke.dope.org> for this patch (submitted on the
	  gentoo-portage-dev mailing list).

2007-08-22 03:39  zmedico

	* bin/dohtml, man/ebuild.5: Bug #189743 - Add .jpeg to the list of
	  extensions supported by dohtml.

2007-08-21 07:47  antarus

	* pym/emerge/__init__.py: Try harder to figure out what OS we are
	  running

2007-08-21 07:36  zmedico

	* pym/portage/elog/messages.py: Just use os.listdir() since
	  portage.listdir() is unnecessary.

2007-08-19 16:48  zmedico

	* pym/portage/__init__.py: Fix ACCEPT_KEYWORDS validation so that
	  ** is valid.

2007-08-17 23:30  vapier

	* bin/misc-functions.sh: filter out kernel modules from ELF QA
	  checks #184443

2007-08-17 23:27  vapier

	* cnf/make.conf.arm.diff, cnf/make.conf.sh.diff: remove "risky"
	  message about -O2

2007-08-17 18:17  zmedico

	* pym/emerge/__init__.py: For bug #189219, use pkgcmp() to sort
	  versions in selected/protected/omitted unmerge display.

2007-08-16 21:49  zmedico

	* bin/etc-update: Make etc-update copy owner and group bits when it
	  merges config files.

2007-08-16 19:07  vapier

	* man/emerge.1: make -f/-F distinction clearer

2007-08-16 06:34  zmedico

	* pym/emerge/__init__.py: Fix existing_node logic inside
	  depgraph.create().

2007-08-16 05:53  zmedico

	* pym/emerge/__init__.py: Combine 2 locations in depgraph.create()
	  where nodes are added to the digraph. This ensures that
	  dependencies on "rebuild" nodes always have their priority
	  increased.

2007-08-16 05:00  zmedico

	* pym/emerge/__init__.py: Always assign higher priority to
	  dependencies on packages that are being rebuilt (except when
	  --emptytree is enabled since all packages are merged in that
	  case). This optimizes merge order so that dependencies are
	  rebuilt/updated as soon as possible.

2007-08-15 22:12  zmedico

	* pym/portage/tests/versions/test_vercmp.py: Add some floating
	  point vercmp cases.

2007-08-15 04:37  zmedico

	* cnf/logrotate.d/elog-save-summary: For bug #188807, add nocreate
	  and delaycompress options for logrotate.

2007-08-15 02:48  zmedico

	* pym/portage/versions.py: For bug #188449, since python floats
	  have limited range, we multiply both floating point
	  representations by a constant so that they are transformed into
	  whole numbers. This allows the practically infinite range of a
	  python int to be exploited. The multiplication is done by padding
	  both literal strings with zeros as necessary to ensure equal
	  length.

2007-08-15 01:37  zmedico

	* pym/emerge/__init__.py: For bug #188782, dependencies on packages
	  specified as arguments are given higher priority since the
	  currently installed version has been rendered useless by ABI
	  breakage. It's okay to increase the priority here even if the
	  caller is not revdep-rebuild.

2007-08-14 20:15  zmedico

	* pym/emerge/__init__.py: Make sure to skip info dir files with the
	  .old extension.

2007-08-14 06:30  zmedico

	* pym/emerge/__init__.py: For bug #188782, keep "nomerge" nodes in
	  the graph during the merge order calculation so that merge order
	  is better in cases where installed packages have unsatisfied
	  dependencies.

2007-08-13 06:58  solar

	* cnf/make.conf.arm.diff, cnf/make.conf.ppc.diff,
	  cnf/make.conf.ppc64.diff, cnf/make.conf.sh.diff: - revert a few
	  -O2 when they should of remained -O3 in comments

2007-08-12 18:18  solar

	* cnf/make.conf.alpha.diff, cnf/make.conf.arm.diff,
	  cnf/make.conf.ppc.diff, cnf/make.conf.ppc64.diff,
	  cnf/make.conf.sh.diff, cnf/make.conf.sparc.diff,
	  cnf/make.conf.x86-fbsd.diff, cnf/make.conf.x86.diff: 'decent'
	  CFLAGS should not feature -O3. Bug 188619

2007-08-12 15:12  zmedico

	* pym/emerge/__init__.py: For bug #33585, leave the old info dir
	  file in place if there is nothing to generate.

2007-08-12 11:43  zmedico

	* pym/portage/dbapi/vartree.py: For bug #188559, invalidate
	  dblink._contents_inodes as necessary to prevent
	  FEATURES=unmerge-orphans from unmerging anything that belongs to
	  the package that has just been merged.

2007-08-11 05:46  zmedico

	* pym/portage/__init__.py: Optimize config.setcpv() so that it
	  doesn't call regenerate() unnecessarily when there are no USE
	  wildcards to expand.

2007-08-10 21:02  zmedico

	* bin/ebuild.sh: Don't generate a QA Notice if the ${S} directory
	  doesn't exist since it might be irrelevant for some ebuilds.

2007-08-06 19:49  zmedico

	* man/emerge.1, pym/emerge/help.py: Update emerge --help and --info
	  docs. Thanks to Arfrever Frehtes Taifersar Arahesis in bug
	  #137483.

2007-08-06 19:42  zmedico

	* man/make.conf.5: Document FEATURES=webrsync-gpg. Thanks to
	  Arfrever Frehtes Taifersar Arahesis in bug #130039.

2007-08-06 19:29  zmedico

	* bin/repoman: For bug #187795, remove pointless digest.disjointed
	  and digest.notadded warnings since they are always added to cvs
	  automatically anyway.

2007-08-06 04:55  zmedico

	* bin/emerge-webrsync: Merge rewrite by Alon Bar-Lev from bug
	  #130039:
	  - Verify gpg signature of snapshot if FEATURES="webrsync-gpg" is
	  enabled.
	  - Add a --revert=yyyymmdd option that alows a specific snapshot
	  to be used.

2007-08-05 21:30  antarus

	* pym/portage/util.py: Fix from ferringb

2007-08-05 18:05  zmedico

	* pym/emerge/__init__.py: For bug #187806, use mkstemp to create
	  tmpservertimestampfile (instead of using PORTAGE_TMPDIR).

2007-08-04 22:22  zmedico

	* pym/emerge/__init__.py: Use == for comparison of portage_node
	  since digraph.clone() makes a deepcopy of the nodes.

2007-08-04 22:01  zmedico

	* pym/emerge/__init__.py: Make sure that portage always has all of
	  it's RDEPENDs installed first.

2007-08-04 21:34  zmedico

	* bin/misc-functions.sh: Move ecompressdir and ecompress --dequeue
	  after prepall.

2007-08-04 21:30  zmedico

	* bin/misc-functions.sh, bin/prepall: Call ecompressdir and
	  ecompress --dequeue outside of prepall since ruby.eclass
	  overrides prepall.

2007-08-04 19:44  zmedico

	* pym/emerge/__init__.py: Make config updates get counted correctly
	  for bug #187741.

2007-08-04 00:12  zmedico

	* pym/portage/__init__.py: Remove the depend phase from the
	  doebuild actionmap since it's never used.

2007-08-03 22:33  zmedico

	* pym/portage/__init__.py: Make droppriv for the depend phase
	  conditional on userpriv in FEATURES.

2007-08-03 08:41  zmedico

	* bin/ebuild.sh: Generate a QA Notice and cd to ${WORKDIR} if the
	  ${S} directory does not exist.

2007-08-03 06:48  zmedico

	* pym/portage/__init__.py: In portage.spawn() logging, put the read
	  end of the pipe in O_NONBLOCK mode just once at the beginning.
	  This avoids unnecessary fcntl calls and removes one more
	  opportunity to trigger EAGAIN errors on FreeBSD.

2007-08-03 00:49  zmedico

	* pym/portage/cache/util.py: s/portage.eclass_cache/eclass_cache/
	  since eclass_cache is actually a local variable here.

2007-08-02 17:19  zmedico

	* pym/portage/util.py: For bug #187518, handle EISDIR thrown from
	  mkdir when the directory already exists on FreeBSD.

2007-08-02 16:43  zmedico

	* pym/portage/dbapi/porttree.py: For bug #187480, fix writemsg args
	  in portdbapi.gvisible().

2007-08-01 19:27  zmedico

	* pym/emerge/__init__.py: Like older versions of portage, don't
	  show the repo display if [0] is all that will be shown.

2007-08-01 18:00  zmedico

	* pym/emerge/__init__.py: For bug #187375, handle an ImportError
	  when portage is downgraded to a version without mod_echo.

2007-07-31 03:45  zmedico

	* pym/portage/sets/files.py: Handle the ENOENT error if the world
	  file doesn't exist.

2007-07-31 01:21  zmedico

	* pym/emerge/__init__.py: Change the numeric value of
	  DepPriority.MIN to be equal to that of a satisfied PDEPEND since
	  there is currently nothing with lower priority.

2007-07-30 23:37  zmedico

	* pym/portage/dbapi/vartree.py: As a workaround for bug #185305,
	  make quickpkg break hardlinks during creation of the archive.

2007-07-30 22:51  zmedico

	* pym/emerge/__init__.py: For bug #187142, properly pass a dbapi
	  instance into setcpv() so that USE_EXPAND wildcards work
	  correctly.

2007-07-30 21:19  zmedico

	* pym/portage/elog/mod_echo.py,
	  pym/portage/elog/mod_mail_summary.py: Make finalize() accept a
	  parameter once again since older versions of portage import elog
	  modules from newer versions of portage when they upgrade
	  themselves.

2007-07-30 07:51  zmedico

	* pym/portage/__init__.py: For bug #186960, try to create a
	  directory for $ROOT if it doesn't exist.

2007-07-30 06:23  zmedico

	* pym/emerge/__init__.py: Always pass a dbapi instance into a
	  setcpv call.

2007-07-30 02:23  zmedico

	* man/ebuild.5: For bug #139670, update the dohtml docs to show all
	  supported file extensions. Thanks to Arfrever Frehtes Taifersar
	  Arahesis for this patch.

2007-07-30 01:26  zmedico

	* man/emerge.1, pym/emerge/__init__.py, pym/emerge/help.py: For bug
	  #137483, move the `emerge --help config` docs to the emerge man
	  page. Thanks to Arfrever Frehtes Taifersar Arahesis for this
	  patch.

2007-07-29 22:09  zmedico

	* man/make.conf.5: Update USE_ORDER docs for bug #187016.

2007-07-29 21:42  zmedico

	* cnf/make.globals, pym/portage/__init__.py: For bug #187016, and
	  env.d to the default USE_ORDER.

2007-07-29 10:12  zmedico

	* pym/portage/__init__.py: Change "output" import to
	  portage.output.

2007-07-29 02:09  zmedico

	* pym/portage/__init__.py: For pty logging, handle the EAGAIN error
	  that is thrown from fcntl when the slave end of the pty is closed
	  on FreeBSD.

2007-07-28 22:48  zmedico

	* pym/portage/__init__.py: For bug #186876, fall back it os.pipe()
	  if pty.openpty() fails.

2007-07-28 04:09  zmedico

	* pym/portage/__init__.py: When the fetch phase fails inside
	  doebuild(), create an eerror log since the mod_echo module might
	  push the original message off of the top of the terminal and
	  prevent the user from being able to see it.

2007-07-28 02:52  zmedico

	* pym/portage/__init__.py: Handle 2 more cases where elog_process()
	  needs to be called:
	  - binary install via pkgmerge() fails before reaching the merge
	  phase (pkg_setup dies)
	  - doebuild() is called for the merge phase but it dies before
	  reaching the merge phase

2007-07-28 00:07  zmedico

	* bin/emerge-webrsync: For bug #185048, make emerge-webrsync honor
	  http_proxy and ftp_proxy from make.conf.

2007-07-27 23:30  zmedico

	* man/portage.5: For bug #186639, note that /etc/portage/profile/
	  supports all of the same file types that /etc/make.profile/ does,
	  except parent.

2007-07-27 23:16  zmedico

	* man/portage.5: For bug #186639, add more clarification about the
	  relationship between /etc/make.profile/ and
	  /etc/portage/profile/.

2007-07-27 22:36  zmedico

	* pym/emerge/__init__.py: For bug #186480, while we transition to
	  repository labels, avoid ? spam in the repository display by
	  ignoring a missing repository label for an installed package.
	  (branches/2.1.2 r7409)

2007-07-27 22:02  zmedico

	* pym/emerge/__init__.py: For bug #186826, always show --newuse
	  flags that trigger reinstallation even when not in --verbose
	  mode.

2007-07-27 18:57  zmedico

	* pym/emerge/__init__.py: For --buildpkgonly, say "built" instead
	  of "merged" in the "These are the packages that would be
	  <action>" message.

2007-07-26 21:52  zmedico

	* pym/emerge/__init__.py: For bug #186610, use `find <path>` to
	  scan for config updates since `cd <path>` could fail and cause
	  the cwd to be scanned.

2007-07-26 21:24  zmedico

	* pym/portage/__init__.py: When setting the size of the pty for
	  logging, check if stdout isatty rather than stdin.

2007-07-25 15:09  vapier

	* bin/ebuild.sh: use ${MAKE:-make} rather than make in einstall()

2007-07-25 10:39  zmedico

	* pym/portage/__init__.py, pym/portage/process.py: For bug #186386,
	  pass stdin directly to spawned processes (even when their output
	  goes through a pty) so that Ctrl+Z works as on would expect.)

2007-07-25 08:26  zmedico

	* pym/portage/__init__.py: Set O_NONBLOCK just for read calls (uses
	  fewer fcntl calls).

2007-07-25 08:07  zmedico

	* pym/portage/__init__.py: CACHE_PATH starts with / and therefore
	  isn't compatible with os.path.join().

2007-07-25 07:55  zmedico

	* pym/portage/__init__.py: Use blocking mode for writes since we'd
	  rather block than trigger a EWOULDBLOCK error.

2007-07-25 07:34  antarus

	* pym/portage/__init__.py: Use the hardcoded variables from
	  portage.const rather than strings that are apt to change, fix
	  spacing.

2007-07-25 02:18  zmedico

	* pym/portage/__init__.py: Use a select loop for moving input and
	  ouput when logging is enabled in portage.spawn().

2007-07-24 06:57  zmedico

	* pym/portage/__init__.py: Add droppriv keyword for the depend
	  phase (last one).

2007-07-24 06:48  zmedico

	* pym/portage/__init__.py: Add droppriv keyword for the depend
	  phase.

2007-07-24 06:37  zmedico

	* cnf/make.conf.sparc-fbsd.diff, cnf/make.conf.x86-fbsd.diff: Fix
	  make.conf.example rejects.

2007-07-24 01:16  zmedico

	* bin/prepstrip, cnf/make.conf: For bug #186337, show an ewarn
	  message if FEATURES=installsources is enabled but debugedit is
	  not installed. Also document installsources and splitdebug in
	  make.conf.example.

2007-07-23 23:33  zmedico

	* bin/ebuild.sh, man/make.conf.5, pym/portage/__init__.py,
	  pym/portage/const.py, pym/portage/dbapi/porttree.py,
	  pym/portage/process.py: Add FEATURES=fakeroot support which
	  causes install and package phases to run inside fakeroot when a
	  non-root user runs the ebuild command. Thanks to swegener for the
	  initial patch.

2007-07-23 18:57  zmedico

	* cnf/make.globals: Add sfperms and strict to the default FEATURES
	  since they're already in the base profile's make.defaults.

2007-07-23 18:50  zmedico

	* cnf/make.globals: Enable FEATURES=userfetch by default.

2007-07-23 18:07  zmedico

	* pym/portage/__init__.py: Drop privileges in the "depend" phase
	  regardless of FEATURES and RESTRICT since that phase should never
	  need special privileges. Thanks to swegener for the initial
	  patch.

2007-07-23 07:49  antarus

	* pym/portage/tests/env/config/test_PackageMaskFile.py,
	  pym/portage/tests/env/config/test_PortageModulesFile.py: add more
	  tests for keyvaluepairloader (it had a bug previously) and fix up
	  other misc tests

2007-07-23 07:30  antarus

	* pym/emerge/__init__.py: fix broken import

2007-07-23 07:30  antarus

	* pym/portage/util.py: Fix imports for style, slight optimization
	  for grab* function, doc fixups.

2007-07-23 07:28  antarus

	* pym/portage/env/config.py, pym/portage/env/loaders.py,
	  pym/portage/env/validators.py: Validator should be a function,
	  not a class, fix spacing/tab issues. Fix parsing errors for
	  KeyValuePairLoader. Add a GenericFileLoader class that uses more
	  than 1 loader in a vain attempt to figure out what kind of file
	  it is. Fix inheritance by renaming UserConfigKlass

2007-07-23 07:26  antarus

	* pym/portage/sets/files.py: Fix imports for style, deprecate
	  grab*, what is foo.metadata and what does it contain

2007-07-23 07:21  antarus

	* pym/portage/sets/__init__.py, pym/portage/sets/dbapi.py,
	  pym/portage/sets/profiles.py, pym/portage/sets/security.py,
	  pym/portage/sets/shell.py: Move classes out of __init__.py, they
	  do not belong there. Fix import style, and import statements
	  broken by class moves.

2007-07-23 05:23  antarus

	* pym/portage/env/config.py, pym/portage/env/loaders.py: Move
	  common file functionality into a FileLoader class and delegate
	  parsing to subclasses via a lineParser func, no idea how this
	  will work performance wise. Fix errors in parser (blank lines are
	  not errors ;))

2007-07-23 04:06  antarus

	* pym/portage/env/loaders.py: fix spacing, comments, default args

2007-07-22 23:21  zmedico

	* pym/portage/tests/sets/shell/testShell.py: Fix hardcoded
	  /usr/bin/echo to use portage.process.find_binary().

2007-07-22 22:24  antarus

	* pym/portage/sets/files.py, pym/portage/sets/security.py: fix
	  missing import, default value for value in case we try to .join
	  on a variable that hasn't been assigned to yet

2007-07-22 22:18  antarus

	* pym/portage/sets/shell.py: add docstring, fix up imports (style),
	  add keyword expansion

2007-07-22 22:17  antarus

	* pym/portage/tests/sets, pym/portage/tests/sets/__init__.py,
	  pym/portage/tests/sets/shell,
	  pym/portage/tests/sets/shell/__init__.py,
	  pym/portage/tests/sets/shell/testShell.py: add test for
	  CommandOutputSet

2007-07-22 20:56  zmedico

	* bin/ebuild.sh: For bug #184774, put lha's -q option last since
	  otherwise the option parser now requires level 0, 1, or 2 to be
	  specified.

2007-07-22 20:15  antarus

	* pym/portage/tests/__init__.py: Fix spacing issues, imports

2007-07-22 19:22  antarus

	* DEVELOPING, RELEASE-NOTES: Add notes about import statements
	  (clarity) and fix spelling error in release-notes

2007-07-22 10:08  antarus

	* pym/portage/sets/__init__.py, pym/portage/xpak.py: remove unused
	  vars from xpak, fix bug in compose. Also fix tests for portage
	  sets, fix misnamed variable.

2007-07-22 09:55  antarus

	* pym/portage/checksum.py, pym/portage/getbinpkg.py,
	  pym/portage/glsa.py, pym/portage/news.py, pym/portage/output.py,
	  pym/portage/process.py: Run pychecker over everything, fix
	  obvious thing slike modules not in use, variables not being used,
	  or global exceptions not being deleted. Also fix imports for
	  style (1 per line)

2007-07-22 07:49  zmedico

	* pym/emerge/__init__.py: Fix the reverse dependency display for
	  --prune when there is now real parent.

2007-07-22 06:48  zmedico

	* pym/emerge/__init__.py: Make --update imply --oneshot since
	  people often us it to update things when they don't want to add
	  them to world. Thanks to jakub for the suggestion.

2007-07-22 06:33  zmedico

	* man/emerge.1, pym/emerge/help.py: Document --depclean and --prune
	  enhancements.

2007-07-22 06:08  zmedico

	* pym/emerge/__init__.py: Prevent a potential KeyError when
	  removing world from the digraph for --prune display.

2007-07-22 06:06  zmedico

	* pym/emerge/__init__.py: Make --prune pull in the system set since
	  that could pull in some slots that wouldn't be pulled in
	  otherwise.

2007-07-21 11:34  zmedico

	* bin/repoman: For bug #169500, detect when the cvs server puts
	  /Attic/ inside the $Header path and automatically correct it.

2007-07-21 10:36  zmedico

	* bin/repoman: For bug #185153, in commit mode do the "Fetching
	  trivial updates" routine before the qa scan.

2007-07-21 09:42  zmedico

	* pym/emerge/__init__.py: Make --prune and --depclean return before
	  calculating dependencies if atoms are given but they don't match
	  any packages.

2007-07-21 09:31  zmedico

	* pym/emerge/__init__.py: Prune really uses all installed instead
	  of world. It's not a real reverse dependency so don't display it
	  as such.

2007-07-21 04:57  zmedico

	* pym/emerge/__init__.py: Just show [0] instead of [0=>0] in the
	  repo display.

2007-07-21 04:20  zmedico

	* pym/portage/__init__.py: For bug #185930, direct all FETCHCOMMAND
	  output to stdout.

2007-07-21 03:51  zmedico

	* pym/portage/sets/__init__.py: Optimize
	  PackageSet._updateAtomMap() for the case where one or more atoms
	  are added and none are removed.

2007-07-21 03:37  zmedico

	* pym/emerge/__init__.py: Hint about --nodeps if --prune doesn't
	  find anything to prune. Also enable reverse dependency display
	  for global depclean.

2007-07-21 00:21  zmedico

	* pym/portage/__init__.py: When digest verification of a distfile
	  fails, rename instead of unlinking it in case it's a large
	  download and the user wants to salvage it due to a bad digest.

2007-07-20 05:40  zmedico

	* pym/portage/__init__.py: If the fetcher reported success and the
	  file is too small, don't attempt to resume. Upstream probably
	  changed the distfile and we need to show a digest verification
	  failure so the user gets a clue.

2007-07-20 03:19  zmedico

	* man/portage.5: For bug #185504, document profiles/repo_name.

2007-07-20 02:46  zmedico

	* RELEASE-NOTES: Document --prune and --depclean enhancements.

2007-07-20 02:23  zmedico

	* man/emerge.1, pym/emerge/help.py: Update --prune docs for bug
	  #151653.

2007-07-20 02:00  zmedico

	* pym/emerge/__init__.py: Fix --prune so that it always correctly
	  accounts for COUNTER when dealing with packages in the same slot.

2007-07-20 01:52  zmedico

	* pym/emerge/__init__.py: For bug #151653, make --prune keep the
	  highest version whenever possible (even when there is one with a
	  higher counter installed).

2007-07-19 23:55  zmedico

	* pym/emerge/__init__.py: Make --prune try to prune all slotted
	  packages if no atoms are given (that's how it already works with
	  --nodeps).

2007-07-19 23:43  zmedico

	* pym/emerge/__init__.py: Make --prune bail out like depclean does
	  if there are unresolved dependencies. Notify the user that they
	  can use --nodeps in that case.

2007-07-19 23:31  zmedico

	* pym/emerge/__init__.py: With --prune and --depclean, if --verbose
	  is enabled then show reverse dependencies for each package that
	  is matched by an atom from the command line. This allows the user
	  to see why a package will not be unmerged.

2007-07-18 06:26  zmedico

	* pym/emerge/__init__.py: Allow atoms to be specified for
	  --depclean so that it can be used to safely unmerge packages if
	  nothing depends on them.

2007-07-18 04:03  zmedico

	* pym/emerge/__init__.py, pym/portage/dbapi/virtual.py: Use the
	  --depclean algorithm to make --prune safe. The old unsafe --prune
	  will be used if the --nodeps option is specified.

2007-07-17 21:41  zmedico

	* pym/portage/sets/__init__.py: Iterate over a list in order to
	  avoid breaking the iterator when an atom is removed.

2007-07-17 21:16  zmedico

	* pym/portage/sets/__init__.py: Use PackageSet.getAtoms() as a
	  wrapper around load() since load() can trigger unnecessary stat
	  calls.

2007-07-17 21:08  zmedico

	* pym/portage/sets/__init__.py: Make PackageSet._updateAtomMap()
	  clear the map in case something was removed.

2007-07-17 19:26  zmedico

	* bin/misc-functions.sh: Use PF in dyn_package. Thanks to swegener.

2007-07-17 19:13  zmedico

	* pym/emerge/__init__.py: Unify USE handling in the depgraph with
	  the other metadata.

2007-07-17 18:19  zmedico

	* pym/emerge/__init__.py: For bug #185670, make sure
	  package.use.{mask,force} are properly displayed.

2007-07-17 18:04  zmedico

	* pym/emerge/__init__.py: When expanding ambiguous atoms against
	  the vardb, make sure the the expanded package is also available
	  in the portage tree.

2007-07-17 04:58  zmedico

	* pym/emerge/__init__.py: When dep_expand throws a ValueError due
	  to an ambiguous atom, try to expand it against the installed
	  packages in case it yields a unique match.

2007-07-17 04:38  zmedico

	* pym/emerge/__init__.py: Don't show the repo display when the
	  package list is empty.

2007-07-17 04:35  zmedico

	* pym/portage/sets/__init__.py: Make sure the atoms are loaded when
	  calling PackageSet.findAtomForPackage().

2007-07-17 04:21  zmedico

	* pym/portage/sets/__init__.py: Make sure PackageSet._atoms is
	  always a set.

2007-07-17 04:15  zmedico

	* pym/emerge/__init__.py: Revert PackageSet.containsCPV() calls
	  back to findAtomForPackage() calls so that things like slot atoms
	  and old-style virtuals are properly supported.

2007-07-17 01:31  zmedico

	* pym/emerge/__init__.py: Always be sure to load the latest version
	  of the world file while it's locked.

2007-07-16 18:33  zmedico

	* pym/portage/sets/files.py: Sort the atoms when writing the world
	  file.

2007-07-16 13:52  genone

	* pym/emerge/__init__.py: Replace emerge.WorldSet with
	  portage.sets.files.WorldSet

2007-07-16 13:51  genone

	* pym/portage/sets/__init__.py, pym/portage/sets/files.py: break
	  another recursion cycle, add special subclass for "world" to
	  handle locking

2007-07-16 12:53  genone

	* pym/emerge/__init__.py: Replace emerge.SystemSet with
	  portage.sets.profiles.PackagesSystemSet

2007-07-16 12:53  genone

	* pym/portage/sets/__init__.py: break recursion cycle

2007-07-16 12:35  genone

	* pym/emerge/__init__.py, pym/portage/elog/mod_mail.py,
	  pym/portage/sets/__init__.py: replace emerge.AtomSet with
	  portage.sets.InternalPackageSet

2007-07-16 11:48  genone

	* pym/portage/__init__.py: disable FEATURES=gpg as it's
	  unmaintained, useless and likely broken for many people

2007-07-16 09:15  genone

	* pym/portage/sets/__init__.py, pym/portage/sets/files.py: fix
	  metadata parsing for file-based sets, add support for
	  user-defined file sets in test code

2007-07-16 09:01  genone

	* pym/portage/sets/__init__.py, pym/portage/sets/dbapi.py,
	  pym/portage/sets/files.py, pym/portage/sets/profiles.py,
	  pym/portage/sets/security.py, pym/portage/sets/shell.py: add
	  support for metadata

2007-07-16 08:13  genone

	* pym/portage/glsa.py, pym/portage/sets/__init__.py,
	  pym/portage/sets/security.py: ignore already applied glsas when
	  loading the security set

2007-07-16 07:38  genone

	* pym/portage/sets/__init__.py: fix load logic for editable sets
	  once more

2007-07-16 07:36  genone

	* pym/portage/sets/__init__.py, pym/portage/sets/files.py: use a
	  more logical approach for editable sets

2007-07-16 07:23  genone

	* pym/portage/sets/__init__.py, pym/portage/sets/files.py: Make
	  PackageSet to behave more like a real set, and change loading
	  logic a bit to avoid unnecessary reloads for editable sets

2007-07-16 06:39  genone

	* pym/portage/sets/__init__.py, pym/portage/sets/dbapi.py,
	  pym/portage/sets/files.py, pym/portage/sets/profiles.py,
	  pym/portage/sets/security.py, pym/portage/sets/shell.py:
	  s/node/atom/ and other minor updates

2007-07-16 04:07  genone

	* cnf/make.conf: sync MAILSUBJECT in make.conf with make.globals

2007-07-15 07:16  vapier

	* bin/prepstrip: split up the debug/sources steps as proposed by
	  swegener and give the whole file a cleanup

2007-07-15 03:45  zmedico

	* pym/emerge/__init__.py: Fix typo.

2007-07-15 03:21  zmedico

	* pym/emerge/__init__.py: When deciding if a package is slotted
	  inside create_world_atom(), check the vdb in case the package is
	  multislot.

2007-07-14 23:45  zmedico

	* pym/emerge/__init__.py: Remove unused repo_name code.

2007-07-14 23:25  zmedico

	* pym/emerge/__init__.py: Use sys.stdout instead of print to avoid
	  an extra newline.

2007-07-14 23:21  zmedico

	* pym/emerge/__init__.py: Encapsulate the repo display code in a
	  class.

2007-07-14 22:44  zmedico

	* pym/emerge/__init__.py: Always show PORTDIR with index 0 in the
	  repo display.

2007-07-14 22:33  zmedico

	* pym/emerge/__init__.py: Make the repo display work for overlays
	  that don't define repo_name (like it used to).

2007-07-14 20:28  zmedico

	* pym/emerge/__init__.py: For bug #185278, make the verbose flag
	  display show masked/forced flag status for binary packages too.

2007-07-14 08:05  zmedico

	* NEWS: PDEPEND is now installed as soon as possible so that it
	  behaves more like RDEPEND.

2007-07-14 04:10  zmedico

	* pym/emerge/__init__.py: Fix it so that the 'repository could not
	  be determined' message is shown when appropriate (issue with
	  variable scope).

2007-07-14 03:36  zmedico

	* pym/emerge/__init__.py: Misc fixes for verbose repo output:
	  - Support binary packages by using the 'repository' metadata
	  that's stored in the package.
	  - Support PORTAGE_CONFIGROOT, showing repos from both configs if
	  necessary.
	  - Dynamic allocation of repo indexes so only relevant repos are
	  shown.

2007-07-13 23:37  zmedico

	* bin/ebuild.sh, pym/portage/__init__.py,
	  pym/portage/dbapi/vartree.py: Save the repo name along with the
	  other metadata inside dyn_compile() so that it's saved inside
	  binary packages for when they are finally merged.

2007-07-13 19:40  zmedico

	* pym/emerge/__init__.py: Use os.path.realpath(portdir) for
	  comparison of repo paths. (branchs/prefix r7245)

2007-07-12 09:12  zmedico

	* man/color.map.5, pym/portage/output.py: Add "reset" to the list
	  of attributes.

2007-07-12 04:50  zmedico

	* pym/emerge/__init__.py: Fix the case where the currently
	  installed package is from a repo that is no longer in the overlay
	  (oldrepo is None rather than an empty string).

2007-07-12 00:22  zmedico

	* pym/emerge/__init__.py: Make depgraph._reinstall_for_flags()
	  always return all revelant flags.

2007-07-12 00:07  zmedico

	* pym/emerge/__init__.py: For bug #184983, prevent
	  USE_EXPAND_HIDDEN flags from being hidden if they are the only
	  thing that triggered reinstallation.

2007-07-11 04:54  zmedico

	* pym/emerge/__init__.py: Use set.discard() instead of remove() to
	  avoid a potential KeyError.

2007-07-11 04:18  zmedico

	* pym/portage/dbapi/vartree.py: Fix typo.

2007-07-11 02:53  zmedico

	* pym/emerge/__init__.py: Fix another case similar to bug #184806
	  that can occur with --onlydeps.

2007-07-11 01:16  zmedico

	* pym/emerge/__init__.py: Fix typo.

2007-07-11 01:08  zmedico

	* pym/emerge/__init__.py: For bug #184687, skip the huge --depclean
	  warning when --quiet mode is enabled.

2007-07-11 00:33  zmedico

	* pym/portage/dbapi/vartree.py: For bug #184679, handle ENOTDIR by
	  finding the non-directory parent and testing that for collision
	  instead.

2007-07-10 23:08  zmedico

	* pym/portage/__init__.py: For bug #184843, allow USE_EXPAND
	  variables to pass through if none of their flags are in IUSE.
	  This allows packages that support LINGUAS but don't declare it in
	  IUSE to use the variable outside of the USE_EXPAND context.

2007-07-10 18:20  zmedico

	* pym/portage/__init__.py: For bug #184604, make env-update write $
	  in front of quoted values when appropriate.

2007-07-10 16:53  zmedico

	* pym/emerge/__init__.py: For bug #184806, account for the fact the
	  metadata is not cached for slot_collision_nodes.

2007-07-09 19:28  zmedico

	* pym/portage/dbapi/porttree.py: Remove the repo_name warning in
	  the portdbapi constructor since we don't want to see a warning
	  every time the portage module is imported.

2007-07-09 18:11  solar

	* pym/portage/dbapi/porttree.py: - be quiet about overlays
	  profiles/repo_name entry when --quiet mode is used

2007-07-09 18:10  solar

	* bin/prepstrip: - remove readable bits for debug files if the
	  souce ELF is setXid

2007-07-09 10:10  zmedico

	* pym/emerge/__init__.py: Fix interaction of resume opts with
	  spinner output handling so that output always looks correct.

2007-07-09 05:53  genone

	* pym/emerge/__init__.py: simplify logic a bit

2007-07-08 16:44  zmedico

	* pym/portage/dbapi/vartree.py: Pass the file path into the
	  PermissionDenied exception.

2007-07-08 16:36  zmedico

	* pym/portage/dbapi/vartree.py: Make dblink invalidate the vardbapi
	  caches for each merge and unmerge. Don't use portage.listdir()
	  since mtime granularity can prevent cachedir from invalidating
	  it's cache properly and this redundant cache layer isn't needed
	  anyway. This should solve the intermittent failure of AUTOCLEAN
	  to properly clean packages.

2007-07-08 07:24  zmedico

	* bin/ebuild.sh, pym/emerge/__init__.py, pym/portage/__init__.py:
	  For bug #184566, enable the emerge --info action to run an option
	  pkg_info() function from each installed ebuild.

2007-07-08 06:07  zmedico

	* man/color.map.5, pym/emerge/__init__.py, pym/portage/output.py:
	  Add color classes PROMPT_CHOICE_{DEFAULT,OTHER} for emerge's
	  Yes/No prompt.

2007-07-08 04:09  zmedico

	* pym/emerge/__init__.py: Allow system virtuals to be pruned from
	  the world file in cases where the matched package is the only
	  provider of that virtual.

2007-07-08 02:49  zmedico

	* pym/emerge/__init__.py: For bug #184412, make depclean more
	  consistent with the update algorithm by keeping the highest
	  version that as visible in the portage tree and pruning any
	  versions that are either masked or no longer exist in the portage
	  tree.

2007-07-08 00:17  vapier

	* bin/prepstrip: allow split debuf for kernel modules

2007-07-07 16:23  zmedico

	* pym/emerge/__init__.py: Now that the "white" color code really is
	  white, alias it to bold where it's used by emerge since white
	  looks bad on a terminal with a white background.

2007-07-07 09:38  vapier

	* bin/prepstrip: `find` can accept a list of paths so condense this
	  nested for loop, and dont split off debug information for ET_REL
	  files as these are never pulled in via debug utilities (and can
	  trigger weird behavior in binutils when linked into things, like
	  glibcs crt1.o)

2007-07-07 06:47  zmedico

	* pym/emerge/__init__.py: Add a depgaph.loadResumeCommand() method
	  to handle loading and validation of all resume data.

2007-07-06 22:58  zmedico

	* pym/emerge/__init__.py, pym/portage/__init__.py: When depgraph
	  updates preferences for old-style virtuals, also update them in
	  the global config so that they are consistent everywhere.
	  Optimize config.setinst() to minimize the work done.

2007-07-06 21:14  zmedico

	* man/color.map.5, pym/emerge/__init__.py, pym/portage/output.py:
	  Misc color fixes. Thanks to Arfrever Frehtes Taifersar Arahesis
	  <Arfrever.FTA@GMail.Com> for this patch from bug#183861, comment
	  #9.

2007-07-06 09:20  zmedico

	* pym/emerge/__init__.py: Don't exclude system virtuals from world
	  since they can match multiple old-style virtuals but only one of
	  them will be pulled in by update or depclean.

2007-07-06 07:16  zmedico

	* pym/emerge/__init__.py: Count the number of merges processed by
	  MergeTask and use that to determine whether or not post_merge()
	  should run.

2007-07-06 04:47  vapier

	* pym/emerge/__init__.py: tighten up --quiet output for --unmerge

2007-07-06 04:34  vapier

	* doc: ignore generated docs

2007-07-06 03:06  zmedico

	* man/color.map.5, pym/emerge/__init__.py, pym/portage/output.py:
	  Remove the PKG_*ARG* color classes in order to simplify things
	  since it's questionable whether many people will want to use
	  them. Also, make the PKG_*SYSTEM colors default to the
	  traditional colors since people are generally most interested in
	  world packages.

2007-07-06 00:39  genone

	* pym/portage/glsa.py, pym/portage/sets/__init__.py,
	  pym/portage/sets/dbapi.py, pym/portage/sets/files.py,
	  pym/portage/sets/profiles.py, pym/portage/sets/security.py,
	  pym/portage/sets/shell.py: fix copyright year

2007-07-06 00:37  zmedico

	* pym/emerge/__init__.py: Fix emerge by tbz2 path so that it works
	  properly.

2007-07-06 00:24  genone

	* pym/portage/sets, pym/portage/sets/__init__.py,
	  pym/portage/sets/dbapi.py, pym/portage/sets/files.py,
	  pym/portage/sets/profiles.py, pym/portage/sets/security.py,
	  pym/portage/sets/shell.py: Add first draft of PackageSet backend
	  modules

2007-07-06 00:23  genone

	* pym/portage/mail.py, pym/portage/news.py, pym/portage/selinux.py:
	  Enable keyword expansion

2007-07-06 00:22  genone

	* pym/portage/glsa.py: add modified copy of gentoolkits glsa.py
	  (r410)

2007-07-06 00:05  zmedico

	* pym/emerge/__init__.py: Fix emerge by ebuild path so that it
	  works properly.

2007-07-05 22:12  zmedico

	* pym/emerge/__init__.py: Don't store unslotted system packages in
	  the world file.

2007-07-05 18:52  zmedico

	* pym/emerge/__init__.py: Move depgraph._args_atoms to
	  depgraph._sets["args"] and move depgraph._args_nodes to
	  self._set_nodes.

2007-07-05 16:25  genone

	* pym/emerge/__init__.py: Remove redundant config update
	  notification (bug #184116)

2007-07-05 06:49  genone

	* RELEASE-NOTES, pym/emerge/__init__.py, pym/portage/__init__.py,
	  pym/portage/cache/metadata_overlay.py, pym/portage/cache/util.py,
	  pym/portage/cache/volatile.py, pym/portage/data.py,
	  pym/portage/dbapi/vartree.py, pym/portage/getbinpkg.py,
	  pym/portage/manifest.py, pym/portage/sets, pym/portage/util.py:
	  Remove fallback imports for set(), and note minimum requirement
	  of python-2.4

2007-07-05 05:46  genone

	* RELEASE-NOTES: Add note about repo name warnings

2007-07-05 01:17  zmedico

	* pym/emerge/__init__.py: Replace sys.exit() with return in
	  depgraph.display() and action_build().

2007-07-05 00:43  zmedico

	* man/color.map.5: Document the additional color classes for bug
	  #183861.

2007-07-05 00:32  zmedico

	* pym/emerge/__init__.py: Make the color class handling for package
	  sets more consistent as suggested in comment #2 of bug #183861.

2007-07-04 23:35  zmedico

	* pym/portage/output.py: Fix broken code concatenation logic in
	  parse_color_map().

2007-07-04 12:27  zmedico

	* pym/portage/output.py: Add a "onerror" callback to
	  parse_color_map() for handling each ParseError that would
	  otherwise be raised.

2007-07-04 11:48  zmedico

	* pym/portage/output.py: For bug #183861, allow a color class in
	  color.map to specify a space separated list of attributes so that
	  any combination of foreground, background, and other attributes
	  is possible. Thanks to Arfrever Frehtes Taifersar Arahesis
	  <Arfrever.FTA@GMail.Com> for this patch.

2007-07-04 04:46  zmedico

	* pym/emerge/__init__.py: Fix greedy atoms logic for system mode.

2007-07-04 02:31  zmedico

	* RELEASE-NOTES, pym/emerge/__init__.py: Record a slot atom in the
	  world file for any atom that is precise enough to identify a
	  specific slot. Make depclean clean unnecessary slots of system
	  and world packages. For update and depclean, world atoms can be
	  greedy with slots while system atoms can not.

2007-07-03 18:09  zmedico

	* pym/emerge/__init__.py: Use depgraph._args_nodes to simplify
	  depgraph.saveNomergeFavorites().

2007-07-03 17:49  zmedico

	* pym/emerge/__init__.py: Fix --oneshot handling from the previous
	  commit.

2007-07-03 17:44  zmedico

	* pym/emerge/__init__.py: In depgraph.select_files(), unify
	  favorites handling with the other args handling.

2007-07-03 06:23  zmedico

	* pym/emerge/__init__.py: Implement BlockerCache.keys() so that
	  DictMixin.__repr__() works.

2007-07-03 01:18  zmedico

	* pym/emerge/__init__.py: Fix broken favorites handling with
	  --usepkg.

2007-07-03 00:57  zmedico

	* pym/emerge/__init__.py: Add USE to the list of metadata keys to
	  pull.

2007-07-03 00:14  zmedico

	* bin/emaint, pym/emerge/__init__.py, pym/portage/dbapi/vartree.py:
	  Clean up system and world set handling. For forward
	  compatibility, the world file handling now allows the world file
	  to contain arbitrary atoms such as slot atoms.

2007-07-02 05:50  zmedico

	* pym/emerge/__init__.py: Prefer asap_nodes more aggressively over
	  any other nodes whenever possible. If no asap_nodes can be
	  selected for a given iteration, they will be ignored for the next
	  iteration.

2007-07-02 03:54  zmedico

	* pym/emerge/__init__.py: Clone asap_nodes so that iteration is
	  safe for node removal.

2007-07-02 03:39  zmedico

	* pym/emerge/__init__.py: Clean up the selected_nodes logic in
	  depgraph.altlist().

2007-07-02 02:06  zmedico

	* bin/repoman: Flatten restrict for the RESTRICT.invalid check.

2007-07-02 01:52  zmedico

	* pym/emerge/__init__.py: Move medium priority out of
	  ignore_priority_range and handle it separately.

2007-07-01 20:05  zmedico

	* pym/emerge/__init__.py: If necessary, resample the leaf nodes so
	  that they include all nodes whose hard deps are satisfied.

2007-07-01 17:16  zmedico

	* cnf/make.conf, man/make.conf.5:
	  s/PORTAGE_EXTRA_RSYNC_OPTS/PORTAGE_RSYNC_OPTS/ for correctness.

2007-07-01 17:08  zmedico

	* cnf/make.conf, man/make.conf.5: For bug #131030, update the
	  warning about potential for emerge --sync overwrite or delete
	  files in ${PORTDIR}. Add references to the PKGDIR and DISTDIR
	  docs.

2007-07-01 08:38  zmedico

	* pym/emerge/__init__.py: Revert --buildpkgonly logic back because
	  it was already correct.

2007-07-01 08:34  zmedico

	* pym/emerge/__init__.py: Update --buildpkgonly logic to account
	  for DepPriority.MEDIUM_SOFT.

2007-07-01 08:14  zmedico

	* pym/emerge/__init__.py: Add medium-soft support to
	  DepPriority.__str__().

2007-07-01 07:50  zmedico

	* pym/emerge/__init__.py: For bug #180045, try to merge PDEPEND as
	  soon as possible so that it behaves more like RDEPEND.

2007-06-30 23:38  zmedico

	* bin/repoman: Add a QA warning for invalid values of RESTRICT.
	  Thanks to peper for the patch.

2007-06-30 23:15  zmedico

	* man/color.map.5, man/ebuild.1, man/ebuild.5, man/emerge.1,
	  man/make.conf.5, man/portage.5: Add docs for
	  /etc/portage/color.map and a few misc man page fixes. Thanks to
	  Arfrever Frehtes Taifersar Arahesis <Arfrever.FTA@GMail.Com> in
	  bug #183758.

2007-06-30 13:19  zmedico

	* pym/emerge/__init__.py, pym/portage/data.py: Remove old wheel
	  group warnings since portage stopped using this group long ago.

2007-06-30 11:21  genone

	* pym/portage/elog/__init__.py, pym/portage/elog/filtering.py:
	  apply additional phase filters as otherwise some messages are
	  logged in both unmerge and merge

2007-06-30 10:32  genone

	* pym/portage/dbapi/vartree.py: ewarn when merging a package and
	  the source repository/overlay does not have a name

2007-06-30 10:04  genone

	* pym/portage/dbapi/porttree.py: print a notice when a
	  repository/overlay does not have a name

2007-06-29 21:46  zmedico

	* pym/portage/output.py: Add a 0xAAAA00 rgb color code to represent
	  the darkyellow color that some terminals have instead of brown.

2007-06-29 21:30  zmedico

	* pym/portage/dbapi/vartree.py: Test for existence of the
	  getRepositories method since bindbapi doesn't have it atm.

2007-06-29 14:09  zmedico

	* pym/emerge/__init__.py: For bug #183639, give a more informative
	  message with the package.provided warning.

2007-06-29 09:09  genone

	* pym/emerge/__init__.py, pym/portage/dbapi/vartree.py: display
	  source repository for installed package and target package (bug
	  #67072)

2007-06-29 08:04  genone

	* bin/portageq: Use better parseable format for list_preserved_libs

2007-06-29 08:03  genone

	* pym/portage/dbapi/vartree.py: Store name of source repository in
	  vdb node for later comparison

2007-06-28 09:44  zmedico

	* pym/emerge/__init__.py: Fix typo.

2007-06-28 09:31  zmedico

	* man/emerge.1, pym/emerge/help.py: For bug #144333, document the
	  new --reinstall=changed-use option.

2007-06-28 09:06  zmedico

	* pym/emerge/__init__.py: Remove unused worldlist variable.

2007-06-28 09:01  zmedico

	* pym/emerge/__init__.py: Don't colorize system package when in
	  "world" mode.

2007-06-28 08:50  zmedico

	* pym/emerge/__init__.py, pym/portage/output.py: For bug #142473,
	  add 2 additional color classes for system packages and packages
	  matched by arguments.

2007-06-28 04:57  zmedico

	* pym/portage/__init__.py: For bug #183431, catch a ParseError
	  caused by a corrupt profile and dump an error message. This
	  allows emerge to continue with actions that don't require a valid
	  profile, such as --sync.

2007-06-28 02:48  zmedico

	* pym/emerge/__init__.py: When filling in "nomerge" nodes for
	  --tree display, stop at a node that is an argument or a direct
	  member of a set that has been specified as an argument (system or
	  world).

2007-06-28 02:36  zmedico

	* pym/emerge/__init__.py: For bug #144333, make the --reinstall
	  option a single choice type.

2007-06-28 01:48  zmedico

	* pym/emerge/__init__.py: Discard "nomerge" nodes to speed up
	  depgraph.altlist() since those nodes aren't used and the --tree
	  algorithm does a good job of regenerating them when appropriate.

2007-06-28 01:22  zmedico

	* pym/emerge/__init__.py: Just use a containment test for matching
	  pprovided args since it works correctly and match_to_list() isn't
	  appropriate for this.

2007-06-28 01:04  zmedico

	* pym/emerge/__init__.py: Cache aux_get() metadata in
	  depgraph.create() and use PROVIDE for matching packages to
	  arguments.

2007-06-27 18:16  zmedico

	* pym/emerge/__init__.py: Improve tracking of correspondence
	  between arguments and packages in the depgraph.

2007-06-27 15:15  zmedico

	* pym/emerge/__init__.py: Instead of just a list, use a cat/pkg
	  dict for matching packages against args in the depgraph.

2007-06-27 14:54  zmedico

	* pym/emerge/__init__.py: For bug #142473, account for $ROOT when
	  deciding if a package is part of world or not.

2007-06-27 10:11  zmedico

	* bin/isolated-functions.sh: Fix quoting.

2007-06-27 09:56  zmedico

	* bin/isolated-functions.sh: Format $EBUILD_OVERLAY_ECLASSES output
	  more like it was before.

2007-06-27 04:18  zmedico

	* pym/emerge/__init__.py: For bug #144333, add a
	  --reinstall=changed-use option which behaves similar to how
	  --newuse behaved in portage-2.0.x days.

2007-06-27 03:21  zmedico

	* bin/isolated-functions.sh: Format the callstack indentation more
	  like it used to be.

2007-06-27 01:20  zmedico

	* bin/isolated-functions.sh, pym/emerge/__init__.py,
	  pym/portage/__init__.py, pym/portage/dbapi/vartree.py: Send the
	  ebuild die message through eerror and make sure that
	  elog_process() gets called when an ebuild dies. This makes the
	  elog echo module display the die message last in case other elog
	  messages push the original die message off of the top of the
	  screen.

2007-06-26 23:08  zmedico

	* pym/portage/elog/mod_echo.py: Preserve merge order in elog
	  output.

2007-06-26 22:38  zmedico

	* pym/portage/manifest.py: Short circuit the loop as soon as
	  missing hashes are detected.

2007-06-26 22:18  zmedico

	* pym/portage/__init__.py: Short circuit the loop as soon as
	  missing hashes are detected.

2007-06-26 22:16  zmedico

	* pym/portage/__init__.py: Add one more size == 0 check to
	  digestgen().

2007-06-26 17:48  zmedico

	* pym/portage/__init__.py: Add sanity checks in fetch() and
	  digestgen() to automatically detect and handle invalid empty
	  distfiles since some users have reported difficulty when trying
	  to create digests.

2007-06-25 19:41  zmedico

	* pym/emerge/__init__.py: For bug #183167, explicitly call
	  elog_process() when --buildpkgonly is enabled.

2007-06-25 10:36  zmedico

	* pym/emerge/__init__.py, pym/portage/output.py: For bug #142473,
	  add 4 color classes corresponding to combinations of
	  world/merge/nomerge attributes of each package.

2007-06-25 09:14  zmedico

	* pym/emerge/__init__.py: Fix typo.

2007-06-25 06:21  zmedico

	* pym/portage/dbapi/bintree.py: Don't use urljoin() in
	  binarytree.gettbz2() since it doesn't work correctly wih
	  unrecognized protocols like sftp.

2007-06-25 04:49  zmedico

	* pym/portage/getbinpkg.py: Allow SystemExit through as usual.

2007-06-25 04:47  zmedico

	* pym/portage/getbinpkg.py: Fix file_get_lib() so it behaves the
	  same way with sftp as it does with other protocols.

2007-06-25 03:23  zmedico

	* pym/portage/getbinpkg.py: For bug #175891, add sftp protocol
	  support via the paramiko library.

2007-06-25 02:54  zmedico

	* pym/portage/dbapi/bintree.py: Fix typo.

2007-06-25 02:48  zmedico

	* pym/portage/dbapi/bintree.py: Fix resume logic in
	  binarytree.gettbz2().

2007-06-25 02:35  zmedico

	* pym/portage/dbapi/bintree.py: For bug #175891, support
	  ${FETCHCOMMAND}_${PROTOCOL} in binarytree.gettbz2().

2007-06-25 02:07  zmedico

	* pym/portage/getbinpkg.py: Clean up file_get() to use shlex,
	  varexpand, and spawn.

2007-06-24 23:47  zmedico

	* pym/portage/dbapi/bintree.py: Fix binarytree.isremote() to be
	  consistent with binarytree.gettbz2() logic wrt partially
	  downloaded files.

2007-06-24 22:44  zmedico

	* pym/portage/checksum.py: Remove unused imports and unnecessary
	  dict.keys() call.

2007-06-24 22:05  zmedico

	* pym/emerge/__init__.py: Use a set to optimize containment
	  lookups.

2007-06-24 21:47  zmedico

	* man/make.conf.5: Clarify RESUMECOMMAND requirements.

2007-06-24 21:29  zmedico

	* man/make.conf.5: Update the FETCHCOMMAND docs to indicate that
	  the command should be +written to place the fetched file at
	  ${DISTDIR}/${FILE}.

2007-06-24 20:36  zmedico

	* pym/portage/dbapi/bintree.py: Fix broken base_uri handling for
	  old-style binhosts in binarytree.gettbz2().

2007-06-24 18:58  zmedico

	* bin/emaint, bin/regenworld, pym/emerge/__init__.py: For bug
	  #180706, add sorting and a trailing newline in the rest of the
	  cases where the world file is written.

2007-06-24 18:09  zmedico

	* pym/portage/dbapi/vartree.py: Fix more typos from r6988.

2007-06-24 09:38  zmedico

	* pym/portage/dbapi/vartree.py: Handle 'Permission denied' errors
	  that can occur if the current user isn't allowed to access
	  PRIVATE_PATH.

2007-06-24 08:47  zmedico

	* pym/portage/dbapi/vartree.py: Fix typo.

2007-06-24 07:54  zmedico

	* pym/portage/dbapi/vartree.py: Fix column alignment in unmerge
	  output.

2007-06-24 07:11  zmedico

	* pym/portage/dbapi/porttree.py: Make the fix for bug #139600
	  slightly less icky by grabbing the ACCEPT_KEYWORDS through
	  mysettings.configdict[backupenv] instead of directly through
	  os.environ.

2007-06-24 06:43  zmedico

	* pym/portage/dbapi/vartree.py: Always unlink the .installed flag
	  prior to merge since portage.movefile() never leaves intact.

2007-06-24 06:40  zmedico

	* bin/misc-functions.sh: Provide a default value for
	  PORTAGE_BINPKG_TMPFILE in case the package phase is called by the
	  ebuild command.

2007-06-24 00:32  zmedico

	* pym/portage/__init__.py, pym/portage/dbapi/bintree.py,
	  pym/portage/dbapi/vartree.py: For bug #182964, replace
	  os.rename() with portage.movefile() in cases where the parent
	  directory might change.

2007-06-23 23:03  zmedico

	* pym/portage/dbapi/porttree.py: Fix check_config_instance()
	  weirdness when the ebuild command reloads the portage module.

2007-06-23 19:36  genone

	* pym/portage/dbapi/porttree.py: get ACCEPT_KEYWORDS from the env
	  in gvisible() to properly handle negated values (bug #139600)

2007-06-23 19:16  genone

	* man/make.conf.5: Add a pointer from FETCHCOMMAND to RESUMECOMMAND
	  (bug #141550)

2007-06-23 19:12  genone

	* pym/emerge/__init__.py: highlight world packages in --pretend
	  output (bug #142473)

2007-06-23 18:47  genone

	* pym/portage/getbinpkg.py: dont break when the binhost url doesn't
	  end with a slash (bug #144440)

2007-06-23 18:16  genone

	* cnf/etc-update.conf: change default diff_command for emacs (bug
	  #147558)

2007-06-23 16:29  genone

	* pym/emerge/__init__.py, pym/portage/update.py: sort the world
	  file before writing it and ensure that it's terminated by a
	  newline

2007-06-23 16:17  genone

	* pym/portage/dbapi/vartree.py: s/!owned/replaced/ in merge output
	  to clarify it

2007-06-23 16:11  genone

	* pym/emerge/__init__.py: syntax error

2007-06-23 15:50  genone

	* pym/emerge/__init__.py: Allow sync for unpriviledges users if
	  they have write access to $PORTDIR

2007-06-23 13:12  genone

	* pym/portage/__init__.py, pym/portage/checksum.py: add hashlib
	  support for checksum verification, refactor checksum functions to
	  not look like a complete mess

2007-06-23 13:09  zmedico

	* pym/emerge/__init__.py, pym/portage/dbapi/bintree.py,
	  pym/portage/dbapi/vartree.py, pym/portage/dispatch_conf.py:
	  Revert r6967 since shutil.move() is broken internally.

2007-06-23 11:09  zmedico

	* pym/portage/dbapi/vartree.py: s/OSError/EnvironmentError/ since
	  shutil.move() generally raises an IOError.

2007-06-23 10:58  zmedico

	* pym/emerge/__init__.py, pym/portage/dbapi/bintree.py,
	  pym/portage/dbapi/vartree.py, pym/portage/dispatch_conf.py: For
	  bug #182964, replace os.rename() with shutil.move() in order to
	  handle EXDEV errors that are triggered by layered filesystems.

2007-06-23 03:58  zmedico

	* bin/quickpkg: Remove redundant 'Usage: ' from the usage message.

2007-06-23 00:21  zmedico

	* cnf/logrotate.d, cnf/logrotate.d/elog-save-summary: Add a
	  logrotate config for the save_summary elog module since it's
	  enabled by default now.

2007-06-22 23:42  zmedico

	* pym/portage/elog/mod_echo.py: Show which $ROOT a package was
	  merged to when $ROOT is not /.

2007-06-22 23:17  zmedico

	* man/ebuild.5: Remove confcache docs.

2007-06-22 23:11  zmedico

	* pym/emerge/__init__.py, pym/portage/elog/__init__.py,
	  pym/portage/elog/mod_echo.py,
	  pym/portage/elog/mod_mail_summary.py: Make elog finalize()
	  handling safe for PORTAGE_CONFIGROOT.

2007-06-22 21:55  zmedico

	* man/ebuild.5: Document RESTRICT=bindist and add a note about
	  allowance for conditional syntax.

2007-06-22 13:43  zmedico

	* pym/emerge/__init__.py: Dump mod_echo elog output inside
	  post_emerge(), just before the other notifications that happen at
	  exit.

2007-06-22 12:57  zmedico

	* pym/portage/elog/__init__.py: Add a note about potential for
	  config mixups in elog finalizers.

2007-06-22 11:00  zmedico

	* NEWS: Update 2.1.3 news for elog stuff.

2007-06-22 08:47  zmedico

	* bin/quickpkg, pym/portage/dbapi/vartree.py: For bug #182428, make
	  quickpkg exclude config files that are protected by
	  CONFIG_PROTECT. Add a --include-config option that includes all
	  config files and a --include-unmodified-config that includes
	  config files that have not been modified since installation
	  (matching md5sum).

2007-06-22 06:13  zmedico

	* bin/quickpkg: Make quickpkg print a warning if "bindist" is in
	  RESTRICT.

2007-06-21 23:42  vapier

	* bin/ecompress: cache the result of --suffix to reduce testing
	  overhead as suggested by Mr_Bones_

2007-06-21 21:37  zmedico

	* pym/portage/__init__.py: Clean up config.__getitem__(), get() and
	  setdefault() implementions.

2007-06-21 21:14  zmedico

	* pym/portage/__init__.py: Simplify the implementation of
	  config.__iter__ and also implement iterkeys().

2007-06-21 21:10  zmedico

	* pym/portage/cache/anydbm.py, pym/portage/cache/flat_hash.py,
	  pym/portage/cache/flat_list.py,
	  pym/portage/cache/metadata_overlay.py,
	  pym/portage/cache/sql_template.py, pym/portage/cache/sqlite.py,
	  pym/portage/cache/template.py, pym/portage/cache/util.py,
	  pym/portage/cache/volatile.py: Implement iterkeys on top of
	  __iter__ instead of vice versa. Thanks to Brian Harring for the
	  suggestion.

2007-06-21 20:36  zmedico

	* pym/portage/__init__.py, pym/portage/tests/ebuild/test_spawn.py:
	  Autodetect if sandbox is active in order to prevent recursive
	  sandbox invocation. Thanks to Brian Harring for the suggestion.

2007-06-21 20:15  zmedico

	* pym/portage/__init__.py: Implement config.has_key() on top of
	  __contains__ instead of vice versa.

2007-06-21 12:16  zmedico

	* pym/portage/tests/ebuild/test_spawn.py: Fix the test so that it
	  can run inside a sandbox.

2007-06-21 12:12  zmedico

	* pym/portage/env/config.py: Implement UserConfigKlass.__iter__()
	  so that tests pass.

2007-06-21 12:01  zmedico

	* pym/portage/elog/__init__.py, pym/portage/elog/filtering.py,
	  pym/portage/elog/messages.py, pym/portage/elog/mod_custom.py,
	  pym/portage/elog/mod_echo.py,
	  pym/portage/elog/mod_mail_summary.py, pym/portage/getbinpkg.py,
	  pym/portage/locks.py, pym/portage/manifest.py,
	  pym/portage/tests/env/config/test_PackageMaskFile.py,
	  pym/portage/tests/env/config/test_PortageModulesFile.py,
	  pym/portage/tests/util/test_varExpand.py: Remove more unnecessary
	  list generation.

2007-06-21 11:40  zmedico

	* pym/portage/cache/template.py, pym/portage/cache/util.py,
	  pym/portage/checksum.py, pym/portage/cvstree.py,
	  pym/portage/dbapi/bintree.py, pym/portage/dbapi/porttree.py,
	  pym/portage/dbapi/vartree.py, pym/portage/dbapi/virtual.py,
	  pym/portage/util.py: Remove more unnecessary list generation.

2007-06-21 10:57  zmedico

	* bin/fix-db.py, bin/md5check.py, bin/portageq, bin/repoman,
	  pym/emerge/__init__.py, pym/portage/__init__.py: Remove lots of
	  unnecessary list generation via dict.keys().

2007-06-21 06:25  zmedico

	* pym/emerge/__init__.py: Don't generate a list of keys for a
	  containment test.

2007-06-21 05:59  zmedico

	* pym/emerge/__init__.py: Don't call digraph.hasallzeros() in
	  --resume mode because the digraph isn't currently populated in
	  that case.

2007-06-21 03:42  zmedico

	* bin/quickpkg: Make IUSE handling safe for IUSE defaults.

2007-06-21 03:04  vapier

	* bin/quickpkg: as noted by Josh Saddler on the gentoo-dev mailing
	  list, issue a warning if we try to create a binpkg for something
	  that has IUSE=bindist but was emerged with USE=-bindist

2007-06-21 02:19  zmedico

	* pym/portage/dbapi/vartree.py: In dblink._security_check(), use
	  os.path.realpath to make sure that the same path isn't counted
	  twice.

2007-06-20 23:53  zmedico

	* bin/quickpkg: Add an --ignore-default-opts option that is
	  analogous to the corresponding emerge option.

2007-06-20 23:43  zmedico

	* pym/emerge/__init__.py: Use the the optparse options for
	  --ignore-default-opts since that allows option abreviation to
	  work.

2007-06-20 10:06  zmedico

	* pym/portage/output.py: Make the progress bar percentage indicator
	  stop at 100% instead of just 99%.

2007-06-20 09:46  zmedico

	* pym/emerge/__init__.py: Show a "world problems" warning for
	  packages that aren't installed, even if they are available.

2007-06-20 07:11  zmedico

	* pym/emerge/__init__.py, pym/portage/__init__.py,
	  pym/portage/eclass_cache.py, pym/portage/gpg.py,
	  pym/portage/output.py, pym/portage/xpak.py: Make all the classes
	  inherit from object.

2007-06-20 05:08  zmedico

	* pym/emerge/__init__.py: If a package is in the world set but it's
	  not installed, go ahead and install it if it's available (instead
	  of telling the user to run emaint).

2007-06-20 00:17  zmedico

	* bin/ebuild.sh: For bug #180165, make has_version dir if portageq
	  has an unexpected exit code.

2007-06-20 00:01  zmedico

	* bin/emerge, bin/portageq, pym/portage/__init__.py,
	  pym/portage/exception.py: For bug #180165, make portageq print a
	  "Permission denied" error when appropriate. A PermissionDenied
	  exception is raised from portage.listdir() enven when
	  EmptyOnError is True since errno.EACCES is very likely to
	  indicate a condition that should be reported in any case.

2007-06-19 21:59  zmedico

	* pym/portage/__init__.py: Fix cacheddir() to behave properly if
	  os.listdir() raises errno.EACCES (Permission denied).

2007-06-19 21:37  zmedico

	* pym/portage/dbapi/bintree.py: For bug #143340, give an
	  appropriate message when there is no read access to a binary
	  package.

2007-06-19 20:11  zmedico

	* pym/portage/output.py: Return early from get_term_size() is
	  stdout is not a tty.

2007-06-19 19:56  zmedico

	* pym/portage/output.py: For bug #182571, handle curses.error if
	  it's thrown inside get_term_size().

2007-06-19 09:35  zmedico

	* bin/quickpkg: For bug #182428, make quickpkg use a more secure
	  umask by default and allow it to be overridden by a --umask
	  option. Add support for QUICKPKG_DEFAULT_OPTS so that default
	  options can be set in make.conf.

2007-06-19 07:22  zmedico

	* pym/portage/tests/__init__.py, pym/portage/tests/ebuild,
	  pym/portage/tests/ebuild/__init__.py,
	  pym/portage/tests/ebuild/test_spawn.py: Add a test case for the
	  logfile functionality of portage.spawn().

2007-06-19 06:16  zmedico

	* pym/portage/tests/bin/setup_env.py: Add PORTAGE_BIN_PATH to the
	  environment since it's used by dobin to locate
	  isolated-functions.sh.

2007-06-18 10:26  zmedico

	* pym/portage/dbapi/vartree.py: During unmerge, always verify that
	  the file isn't a symlink before doing chmod.

2007-06-17 22:42  zmedico

	* pym/portage/dbapi/vartree.py: In dblink.isowner() don't bother to
	  stat the file when it's contained in the contents.

2007-06-17 22:05  zmedico

	* pym/portage/dbapi/vartree.py: For bug #182346, use
	  dblink.isowner() during unmerge so that device/inode numbers are
	  used to determine ownership (despite path mismatch due to
	  symlinks).

2007-06-16 21:19  zmedico

	* pym/portage/news.py: Fix profile and config arguments to
	  NewsItem.isRelevant() inside NewsManager.updateItems().

2007-06-15 22:53  zmedico

	* pym/portage/dbapi/vartree.py: Go ahead and unlink symlinks to
	  directories when they're actually recorded as symlinks in the
	  contents.

2007-06-15 22:39  zmedico

	* pym/portage/dbapi/vartree.py: Make the collision-protect loop
	  check for existance of the destination file before checking if
	  it's owned.

2007-06-15 21:38  zmedico

	* bin/repoman: Make repoman exit with nonzero status whenever there
	  are qa issues (already does the same in commit mode). Thanks to
	  Daniel Gryniewicz <dang@gentoo.org> in bug #182166.

2007-06-15 21:31  zmedico

	* pym/emerge/__init__.py: For bug #182021, use active voice when
	  notifying the user that superuser access is required.

2007-06-15 20:42  zmedico

	* pym/portage/dbapi/vartree.py: Handle another case where removing
	  a symlink to a directory can be harmful.

2007-06-15 20:25  zmedico

	* pym/portage/dbapi/vartree.py: For bug #182157, don't let
	  unmerge-orphans unlink symlinks to directories since that can
	  remove /lib and /usr/lib symlinks.

2007-06-15 20:06  zmedico

	* pym/portage/dbapi/vartree.py: For bug #182157, never chmod 0
	  symlinks before unlinking them.

2007-06-15 10:22  zmedico

	* pym/portage/output.py: For bug #182105, fix the spelling of the
	  fd_pipes paremeter.

2007-06-14 10:46  zmedico

	* pym/portage/dbapi/vartree.py: Fix broken \!found logic so that
	  any missing files are properly skipped.

2007-06-13 23:35  zmedico

	* pym/emerge/__init__.py, pym/portage/news.py: Pass existing
	  portdbapi and vardbapi instances into the NewsManager
	  constructor.

2007-06-13 23:01  zmedico

	* pym/emerge/__init__.py: Make display_news_notification() reuse
	  the existing portdbapi instance.

2007-06-13 22:56  zmedico

	* pym/emerge/__init__.py: Pass all the of the existing package
	  databases into post_emerge() so that we can use them for news and
	  preserve-libs.

2007-06-13 21:46  zmedico

	* pym/emerge/__init__.py: For bug #181953, prevent the
	  circular_blocks code from selecting a node that's already been
	  selected by the normal node selection process.

2007-06-13 17:40  genone

	* pym/emerge/__init__.py: Get registry object from vardbapi
	  directly instead of creating another one

2007-06-13 17:29  genone

	* bin/portageq, pym/portage/dbapi/vartree.py: Add portageq command
	  to list preserved libs

2007-06-13 10:09  zmedico

	* pym/portage/dbapi/vartree.py: In dblink.treewalk(), handle the
	  case where the current cpv is already installed but it has a
	  different slot (multislot or unapplied slotmove).

2007-06-13 08:08  zmedico

	* RELEASE-NOTES: Add a note about the new unmerge-orphans behavior.

2007-06-13 07:21  zmedico

	* cnf/make.globals, man/make.conf.5, pym/portage/dbapi/vartree.py:
	  For bug #134620, add a FEATURES=unmerge-orphans option that
	  causes unmerge to remove files more aggressively. If a file is
	  not claimed by another package in the same slot and it is not
	  protected by CONFIG_PROTECT, unmerge it even if the modification
	  time or checksum differs from the file that was originally
	  installed. This is enabled in make.globals since the vast
	  majority of users probably want this.

2007-06-13 05:53  zmedico

	* pym/portage/dbapi/vartree.py: Fix dblink.isowner() so it works
	  properly when ROOT!=/.

2007-06-13 05:40  zmedico

	* pym/portage/dbapi/vartree.py: Use cached dblink instances for
	  collision-protect.

2007-06-13 05:16  zmedico

	* pym/portage/dbapi/vartree.py: Cache dblink instances for security
	  checks and reference counts during merge/unmerge so that each
	  CONTENTS only has to be parsed once. These can also be reused for
	  collision-protect.

2007-06-12 22:07  zmedico

	* pym/portage/dbapi/vartree.py: Reuse previously acquired lstat
	  results.

2007-06-12 21:29  zmedico

	* pym/portage/dbapi/vartree.py: Remove some useless dircache code.

2007-06-12 21:08  zmedico

	* pym/portage/dbapi/vartree.py: Always return a dict from
	  dblink.getcontents() since callers never expect to get None.

2007-06-12 02:44  zmedico

	* pym/portage/dbapi/vartree.py: For bug #181021, during unmerge use
	  all slot matches for reference counts (in case the user has set
	  AUTOCLEAN=no).

2007-06-12 01:41  zmedico

	* NEWS: Add a note about preservation of timestamps on merged
	  files.

2007-06-11 21:23  zmedico

	* cnf/make.conf: Remove stray newline.

2007-06-11 21:20  zmedico

	* man/make.conf.5: Update the PORT_LOGDIR docs for bug #82378.
	  Thanks to Arfrever FTA for reporting.

2007-06-11 21:14  zmedico

	* cnf/make.conf: Update the PORT_LOGDIR docs for bug #82378. Thanks
	  to Arfrever FTA for reporting.

2007-06-11 19:55  zmedico

	* NEWS: Move news about ** token in package.keywords to the 2.1.3
	  section.

2007-06-11 10:57  zmedico

	* NEWS, RELEASE-NOTES: Bump 2.1.3 to 2.2 for some features and add
	  news about USE_EXPAND wildcards.

2007-06-11 08:41  zmedico

	* pym/portage/output.py: For consistency with other xterm titles
	  code, redirect $PROMPT_COMMAND output to stderr.

2007-06-11 02:12  zmedico

	* pym/portage/dep.py: Remove the "missing left parenthesis" test
	  for now since it gives false positives.

2007-06-11 02:05  zmedico

	* bin/repoman, pym/portage/__init__.py,
	  pym/portage/dbapi/bintree.py, pym/portage/dep.py: For bug
	  #181355, detect parenthesis mismatch in paren_reduce(), raise an
	  InvalidDependString exception, and make sure that all callers
	  handle the exception properly.

2007-06-10 22:41  zmedico

	* pym/portage/dbapi/vartree.py: Fix the suid/sgid check so it only
	  looks at regular files since it can generate false positives
	  otherwise.

2007-06-10 22:15  zmedico

	* pym/portage/dbapi/vartree.py: Don't bother to warn about
	  hardlinks to suid/sgid files before unlink since it can give
	  false positives and the existing suid/sgid security check should
	  spot problems before this anyway.

2007-06-10 21:44  zmedico

	* pym/portage/dbapi/vartree.py, pym/portage/output.py: For bug
	  #81097, detect and report suspicious hardlinks to suid/sgid
	  files. False positives are prevented by doing reference counts
	  for each inode having suid/sgid bits and multiple hardlinks. The
	  security check is done prior to each merge or unmerge phase and
	  it will cause the phase to abort if a problem is found (so that
	  the user can investigate before any files are removed).

2007-06-10 19:28  zmedico

	* pym/portage/dbapi/porttree.py: For bug #181551, support slot deps
	  in package.keywords.

2007-06-10 10:22  zmedico

	* bin/repoman: Make repoman work with both + and - flags in IUSE.

2007-06-10 10:12  zmedico

	* pym/portage/__init__.py: Preserve order of flags from IUSE in
	  wildcard expansion.

2007-06-09 23:06  zmedico

	* bin/ebuild.sh, pym/portage/__init__.py: For bug #148702, use the
	  * token to trigger wildcard expansion of IUSE. This adds
	  flexibility and prevents flags from being enabled unexpectedly.

2007-06-09 13:17  zmedico

	* pym/portage/dbapi/vartree.py: When an update is discarded due to
	  confmem, record it's mtime in the contents (it's md5 is already
	  recorded there too).

2007-06-09 11:42  zmedico

	* pym/portage/__init__.py: For bug #148702, automatically enable
	  flags from IUSE if they correspond to unset USE_EXPAND variables
	  such as LINGUAS. The variable only has to be set to some value or
	  an empty string in order to disable these flags.

2007-06-09 10:55  zmedico

	* pym/portage/dbapi/vartree.py: For bug #181387, fix an
	  UnboundLocalError for the mymtime variable that is triggered by
	  confmem.

2007-06-09 04:45  zmedico

	* bin/ebuild.sh: Skip bogus '$ECLASS inherited illegally' messages
	  when installing from a binary package.

2007-06-09 03:48  zmedico

	* pym/portage/output.py: Only execute $PROMPT_COMMAND when
	  appropriate.

2007-06-09 00:17  zmedico

	* pym/portage/__init__.py, pym/portage/dbapi/vartree.py: For bug
	  #152828, run ${CHOST}-ldconfig when ${CBUILD} != ${CHOST}.

2007-06-08 23:10  zmedico

	* pym/portage/output.py: For bug #139383, in xtermTitleReset() use
	  os.system() instead of commands.getoutput() since the latter puts
	  too much restriction on what $PROMPT_COMMAND may contain.

2007-06-08 21:40  zmedico

	* bin/ebuild.sh: For bug #181104, make econf give an appropriate
	  error message when configure is not executable.

2007-06-07 23:38  zmedico

	* pym/emerge/__init__.py: Ignore InvalidDependString exceptions
	  from the RESTRICT of "nomerge" nodes.

2007-06-07 18:57  zmedico

	* pym/emerge/__init__.py, pym/portage/__init__.py,
	  pym/portage/dep.py: Make all the python code respect USE
	  conditionals in RESTRICT. It's already handled on the bash side
	  since RESTRICT is assigned the value of PORTAGE_RESTRICT.

2007-06-07 14:47  zmedico

	* pym/emerge/__init__.py, pym/portage/versions.py: Make pkgsplit
	  and catpkgsplit return imutable tuples instead of mutable lists
	  so that cached values can be safely returned without cloning them
	  first. Thanks to Brian Harring for the suggestion.

2007-06-07 12:17  zmedico

	* pym/portage/process.py: Fix strange _DevNull instance has no
	  attribute 'isatty' warnings that occur when epydoc generates
	  docs.

2007-06-07 12:02  zmedico

	* pym/portage/__init__.py, pym/portage/output.py,
	  pym/portage/process.py: When using a pty for logging, use
	  setsid() to create a new session and make the pty into the
	  controlling terminal of the new session. This makes interactive
	  ebuild behave properly in interactive cases like check_license()
	  where ${PAGER:-less} is invoked.

2007-06-06 07:54  zmedico

	* pym/portage/versions.py: Return copies of the cached values from
	  pkgsplit and catpkgsplit.

2007-06-06 07:45  zmedico

	* pym/portage/dbapi/vartree.py: For bug #181021, don't compare
	  attributes of contents entries when deciding which files not to
	  unmerge. Simply keep any file that's listed in the new contents
	  in order to avoid problematic scenarios such as those described
	  in comments #32 and #40 of bug #8423.

2007-06-06 05:58  zmedico

	* pym/portage/__init__.py: For bug #82378, only set permissions on
	  PORT_LOGDIR if it is created automatically.

2007-06-06 05:25  zmedico

	* man/emerge.1, pym/emerge/help.py: For bug #156536, update
	  --resume docs to show that the resume history is capable of
	  storing two merge lists.

2007-06-06 04:09  zmedico

	* cnf/make.globals: For bug #153967, use -O ${DISTDIR}/${FILE} in
	  the default FETCHCOMMAND.

2007-06-06 03:37  zmedico

	* pym/portage/__init__.py: Comment in portage.movefile() that it's
	  impossible to preserve timestamps of a symlink since utime() only
	  works on the target.

2007-06-06 02:59  zmedico

	* pym/portage/dbapi/vartree.py: For bug #181021, preserve
	  timestamps from ${D} during merge. For replacement operations,
	  the unmerge phase checks the contents of the newer instance in
	  order to prevent identical files in the newer instance from being
	  unmerged.

2007-06-06 00:59  zmedico

	* pym/portage/__init__.py: Fix typo, split SPACE_SEPARATED
	  variables on whitespace.

2007-06-05 23:34  zmedico

	* pym/portage/dbapi/vartree.py: When dblink.treewalk() looks for an
	  installed instance in the same slot, make sure that it selects
	  the one with the highest COUNTER in case there are multiple
	  matches.

2007-06-05 17:55  genone

	* pym/portage/__init__.py: Remove duplicate entries from special
	  variables processed by env_update() (bug #172194)

2007-06-05 16:58  genone

	* bin/etc-update: Use user-provided $mv_opts for -5 (bug #47442)

2007-06-05 02:28  zmedico

	* man/ebuild.5: Add ECONF_SOURCE to the econf docs.

2007-06-05 02:23  zmedico

	* man/make.conf.5: Document EXTRA_ECONF, thanks to Arfrever FTA in
	  bug #167057.

2007-06-04 09:29  zmedico

	* pym/emerge/__init__.py: Improve support for slot deps atoms given
	  on the command line. Thanks to Flameeyes for reporting.

2007-06-04 03:13  zmedico

	* bin/quickpkg: Fix typo.

2007-06-04 01:44  zmedico

	* bin/quickpkg, pym/portage/dbapi/vartree.py: For bug #164655, port
	  quickpkg to python and use the tarfile module for proper handling
	  of symlinks to directories. Thanks to Martin Parm
	  <parmus@diku.dk> for the initial port.

2007-06-03 21:48  zmedico

	* pym/portage/dbapi/bintree.py: Fix broken usage of lstrip in
	  creating the PROFILE header field.

2007-06-03 07:15  zmedico

	* pym/cache, pym/elog_modules: Remove pym/{cache,elog_modules}
	  directory symlinks since they lead to upgrade/downgrade issues.
	  These modules probably aren't referenced from outside of portage
	  anyway. There's a hack in config.load_best_module() so that
	  cache.* in /etc/portage/modules will first try cache.* and then
	  try portage.cache.* if there's an ImportError.

2007-06-02 04:45  zmedico

	* man/make.conf.5, pym/portage/dbapi/bintree.py: Use the
	  PORTAGE_BINHOST_HEADER_URI environment variable to define the URI
	  header field for the Packages index. If the URI header field is
	  defined then the client will use it as a base URI for fetching
	  packages.

2007-06-02 01:35  antarus

	* pym/portage/dbapi/__init__.py, pym/portage/dbapi/bintree.py,
	  pym/portage/dbapi/porttree.py, pym/portage/dbapi/vartree.py,
	  pym/portage/dbapi/virtual.py: copyrights.. id? what?

2007-06-01 22:08  zmedico

	* pym/portage/dbapi/bintree.py: If PORTAGE_BINHOST is defined then
	  use it as a URI attribute in the Packages index header.

2007-06-01 22:00  zmedico

	* pym/portage/dbapi/bintree.py: Include SHA1 digests in the
	  Packages index.

2007-06-01 21:41  zmedico

	* pym/portage/dbapi/bintree.py: Add a VERSION attribute to the
	  Packages index header and reject any index with an unsupported
	  version (current supported version is 0).

2007-06-01 20:59  zmedico

	* pym/portage/dbapi/bintree.py: Make binarytree.prevent_collision()
	  update the Packages index since it changes the PATH attribute.

2007-06-01 20:35  zmedico

	* pym/portage/dbapi/bintree.py: Add an optional PATH attribute to
	  the Packages index in order to indicate the relative path of the
	  package within the repository. In the future this will allow
	  storage of more than one package per cpv but for now it's just
	  use to indicate if a package is stored in the old-style All/
	  directory (instead of the category directory).

2007-06-01 19:33  zmedico

	* bin/repoman: Fix it so repoman still does QA when $FILESDIR
	  doesn't exist.

2007-06-01 18:30  zmedico

	* bin/repoman: Don't complain when $FILESDIR is missing unless
	  manifest1 compatibility is enabled.

2007-06-01 17:33  zmedico

	* pym/emerge/__init__.py, pym/portage/dbapi/bintree.py: Add
	  --getbinpkg digest verification.

2007-06-01 15:51  zmedico

	* pym/portage/dbapi/porttree.py: Instead of calling sys.exit() when
	  aux_get() fails inside getfetchlist(), convert the KeyError to an
	  InvalidDependString exception since callers already handle it.

2007-06-01 15:44  zmedico

	* pym/portage/dbapi/porttree.py: Don't repeatedly invoke the depend
	  phase for ebuilds that are already known to be broken.

2007-06-01 15:03  zmedico

	* pym/portage/dbapi/porttree.py: For bug #149397, raise an
	  InvalidDependString exception if a USE has no basename.

2007-06-01 01:50  zmedico

	* pym/portage/dbapi/bintree.py: Add some additional variables to
	  the Packages header.

2007-05-31 21:56  zmedico

	* pym/portage/dbapi/bintree.py: Fix typo.

2007-05-31 21:28  zmedico

	* pym/portage/dbapi/bintree.py: Raise a KeyError from
	  bindbapi.aux_get() when appropriate.

2007-05-31 21:26  zmedico

	* pym/portage/__init__.py: Make dep_zapdeps() pull SLOT from the
	  correct dbapi instance when it falls back to the vdb.

2007-05-31 21:07  zmedico

	* pym/portage/dbapi/bintree.py: Replace deprecated
	  binarytree.remotepkgs usage with binarytree._remotepkgs since the
	  former is vulnerable to collisions in the tbz2 filename.

2007-05-31 13:18  zmedico

	* pym/portage/dbapi/bintree.py: Fix typos.

2007-05-31 12:47  zmedico

	* pym/portage/dbapi/bintree.py, pym/portage/getbinpkg.py: Add
	  PORTAGE_BINHOST support for fetching a remote Packages index. If
	  the index is not found then it falls back to the old directory
	  listing method.

2007-05-31 08:53  zmedico

	* pym/portage/dbapi/bintree.py: Implement bindbapi.cpv_all() since
	  the one from fakedbapi won't populate the tree.

2007-05-31 08:46  zmedico

	* pym/portage/dbapi/bintree.py: Don't define
	  bindbapi.move_slot_ent() since the inherited one works fine.
	  Override cp_all() instead of cpv_all() since the latter calls the
	  former.

2007-05-31 08:09  zmedico

	* pym/portage/__init__.py: Don't try to perform global updates on
	  binary packages unless $PKGDIR is writable.

2007-05-31 07:41  zmedico

	* pym/portage/dbapi/bintree.py: Trigger an update of the Packages
	  index when a package is moved or aux_update() is called.

2007-05-31 07:15  zmedico

	* pym/portage/dbapi/bintree.py, pym/portage/dbapi/vartree.py: Allow
	  dbapi.aux_update() to prune empty metadata values from storage.

2007-05-31 07:00  zmedico

	* pym/portage/dbapi/__init__.py, pym/portage/dbapi/bintree.py,
	  pym/portage/dbapi/vartree.py: Create one unified
	  dbapi.move_slot_ent() method to replace the corresponding
	  binarytree and vardbapi methods.

2007-05-31 05:43  zmedico

	* bin/fixpackages, pym/emerge/__init__.py, pym/portage/__init__.py:
	  Make automatic "global updates" always use the config instance
	  that's associated with /, since the rest of the code is targeted
	  at /.

2007-05-31 04:49  zmedico

	* bin/emaint, pym/portage/__init__.py,
	  pym/portage/dbapi/__init__.py, pym/portage/dbapi/bintree.py,
	  pym/portage/dbapi/vartree.py: Create one unified
	  dbapi.update_ents() method and use it for both fixpackages and
	  the emaint move{inst,bin} targets.

2007-05-31 01:36  genone

	* pym/emerge/__init__.py: Only check ChangeLog if we're dealing
	  with an ebuild (bug #170604)

2007-05-31 01:26  genone

	* bin/ebuild: catch GetoptError

2007-05-31 00:22  genone

	* pym/portage/news.py: remove pointless $PORTDIR lock

2007-05-30 23:31  zmedico

	* pym/portage/dep.py: Fix an IndexError in get_operator() that
	  occurs when isvalidatom() passes it an empty string.

2007-05-30 23:22  zmedico

	* pym/portage/dep.py: For bug #180399, raise an appropriate
	  InvalidDependString exception if there is no flag attached
	  directly to a '?' token.

2007-05-30 22:33  zmedico

	* pym/portage/dbapi/bintree.py, pym/portage/dbapi/porttree.py,
	  pym/portage/dbapi/vartree.py: Show deprecation warnings if the
	  "clone" parameters are used for the binartree, vartree, or
	  portagetree constructors.

2007-05-30 05:45  zmedico

	* pym/portage/dep.py: Return a copy of the cached result from
	  match_from_list().

2007-05-30 02:42  zmedico

	* bin/ebuild.sh, pym/emerge/__init__.py, pym/portage/__init__.py:
	  For bug #61732, support -flag in USE (instead of just +flag).
	  Given the current default USE_ORDER, -flag in IUSE has no effect.

2007-05-30 02:23  zmedico

	* pym/portage/dep.py: Fix slot handling at the beginning of
	  match_from_list().

2007-05-30 02:05  zmedico

	* bin/ecompressdir: For bug #180222, make ecompressdir use -f for
	  the automatic decompression phase.

2007-05-29 21:57  zmedico

	* pym/portage/__init__.py: For bug #179870, correctly handle slot
	  deps in the profile's package.* files.

2007-05-29 20:36  zmedico

	* pym/portage/dep.py: Fix get_operator() and best_match_to_list()
	  so that slot deps mesh properly with operators.

2007-05-29 12:41  zmedico

	* pym/portage/dep.py: Fix dep_getcpv() so that it always properly
	  removes the slot regardless of which operator is present.

2007-05-29 12:10  zmedico

	* pym/portage/dep.py: Don't pass slotted packages into pkgsplit
	  since it doesn't handle them.

2007-05-29 11:26  zmedico

	* pym/portage/__init__.py, pym/portage/dep.py: For bug #179870, add
	  support for cpv:slot in match_from_list() and use it to make
	  config.setcpv() distinguish slot atoms in package.use.

2007-05-28 23:41  zmedico

	* pym/portage/dbapi/bintree.py: Fix binarytree.gettbz2() so that it
	  works without $PKGDIR/All/ and inserts the downloaded package
	  into the local index.

2007-05-28 22:16  zmedico

	* pym/portage/dbapi/bintree.py: Include IUSE in the Package index
	  so that it can be used for --newuse calculations.

2007-05-28 21:31  zmedico

	* pym/portage/output.py: Cap the progress bar columns at 80 since
	  it looks ridiculous when it gets too wide.

2007-05-28 09:34  zmedico

	* bin/emaint: Fix emaint world $ROOT handling.

2007-05-28 09:31  zmedico

	* bin/emaint, pym/portage/__init__.py,
	  pym/portage/dbapi/bintree.py, pym/portage/dbapi/vartree.py: Add
	  new emaint targets called "moveinst" and "movebin" for applying
	  package moves from $PORTDIR/profiles/updates/ on installed
	  packages and binary packages.

2007-05-28 07:28  zmedico

	* man/make.conf.5, pym/emerge/__init__.py: For bug #180009, add a
	  PORTAGE_RSYNC_INITIAL_TIMEOUT config variable. The default is 15
	  seconds and it can be disabled by setting it to 0.

2007-05-28 07:11  zmedico

	* pym/emerge/__init__.py: For bug #180079, fix a KeyError so that a
	  search for the empty string will go ahead and match all packages.

2007-05-27 22:00  zmedico

	* pym/portage/output.py: Fix typo.

2007-05-27 14:48  zmedico

	* bin/emaint, pym/portage/dbapi/bintree.py: Make emaint prune stale
	  entires from $PKGDIR/Packages.

2007-05-27 13:59  zmedico

	* bin/emaint: Add an emaint "binhost" target which does the time
	  consuming population of $PKGDIR/Packages that is necessary for a
	  binhost (MD5 makes it relatively slow). It reuses metadata from
	  the existing Packages file whenever possible.

2007-05-27 13:06  zmedico

	* bin/emaint: Fix a typo.

2007-05-27 12:48  zmedico

	* bin/emaint: Fix an UnboundLocalError when there's no tty.

2007-05-27 12:39  zmedico

	* bin/emaint: Add SIGWINCH support so that the progress bar is
	  resized if the xterm is resized.

2007-05-27 12:12  zmedico

	* bin/emaint, pym/portage/output.py: Add progress support to emaint
	  (similar to wget's progress bar).

2007-05-27 06:17  zmedico

	* pym/portage/output.py: Add a get_term_size() function that uses
	  the curses module if available and otherwise falls back to
	  parsing the output of `stty size`.

2007-05-27 02:10  zmedico

	* bin/emaint: In the WorldHandler class, add support for an
	  onProgress callback that can be used notify the user of job
	  progress. This isn't really useful for WorldHandler since it
	  completes quickly, but it will be useful for longer running
	  tasks.

2007-05-26 21:17  zmedico

	* pym/portage/__init__.py: Fix logic for USE_EXPAND variables that
	  are incremental (there are none currently).

2007-05-26 02:41  zmedico

	* pym/portage/dbapi/bintree.py: Fix broken dict.get logic.

2007-05-26 02:13  zmedico

	* pym/portage/dbapi/bintree.py: Create the Packages index whether
	  or not $PKGDIR/All/ exists so that improved binarytree.populate()
	  performance will be available in either case. When dealing with
	  packages in $PKGDIR/All/, it's assumed that the file name, size,
	  and timestamp are enough information to avoid reading the xpak
	  data.

2007-05-26 01:26  zmedico

	* bin/repoman: xmlint can produce garbage output even on success,
	  so only dump the ouput when it fails. See bug #179008.

2007-05-26 00:41  zmedico

	* bin/ebuild.sh: In the econf die message, don't mention
	  bugs.gentoo.org specifically.

2007-05-26 00:36  zmedico

	* bin/ebuild.sh: s/filing a report to/seeking support at/ Thanks to
	  marienz.

2007-05-25 22:13  zmedico

	* pym/portage/__init__.py: Store flags as a set inside the USE
	  incremental loop.

2007-05-25 20:22  zmedico

	* pym/portage/__init__.py: Call tcgetattr and tcsetattr on the
	  slave end of the pty in order to avoid an "invalid argument"
	  error on Solaris. Thanks to grobian.

2007-05-25 19:14  zmedico

	* pym/portage/__init__.py: For bug #179766, expand USE_EXPAND
	  variables inside the USE incremental loop so that USE"-*" will
	  not always destroy them.

2007-05-25 07:06  zmedico

	* pym/portage/__init__.py, pym/portage/dbapi/porttree.py: To ease
	  the namespace transition, automatically translate cache.* to
	  portage.cache.* if an ImportError occurs.

2007-05-25 00:22  zmedico

	* bin/repoman: Skip fetching of metadata.dtd when mymode ==
	  "manifest".

2007-05-24 22:11  zmedico

	* pym/portage/dbapi/porttree.py: Don't treat KEYWORDS="-*" like
	  KEYWORDS="*", because it's never been that way and the * behavior
	  was already annoying enough.

2007-05-24 20:55  zmedico

	* bin/dispatch-conf: Fix the ignore-previously-merged option so
	  that it compares the original files, since mrgconf can be
	  identical to conf['current'] even when conf['new'] is different
	  from the archived .dist version (due to diff3 merging).

2007-05-24 05:49  zmedico

	* pym/portage/getbinpkg.py: Make PackageIndex.write() omit USE when
	  appropriate.

2007-05-24 05:17  zmedico

	* pym/portage/dep.py: Remember to call the superclass constructor.

2007-05-24 03:54  zmedico

	* pym/portage/getbinpkg.py: Make PackageIndex.write() alphabetize
	  the metadata keys.

2007-05-24 03:36  zmedico

	* pym/portage/dep.py: Fix paren_normalize logic.

2007-05-24 03:09  zmedico

	* pym/portage/dbapi/bintree.py, pym/portage/dep.py: Add more
	  relevant package metadata to the Packages index, including
	  dependencies with USE conditionals collapsed.

2007-05-23 10:43  zmedico

	* bin/dispatch-conf, cnf/dispatch-conf.conf: Add a
	  'ignore-previously-merged' config option which gives similar
	  behavior to the --noconfmem emerge option.

2007-05-23 04:47  zmedico

	* bin/misc-functions.sh, pym/emerge/__init__.py,
	  pym/portage/dbapi/bintree.py: Pass a temporary file name to the
	  package phase in the environment variable PORTAGE_BINPKG_TMPFILE
	  and move the temporary file into place inside
	  binarytree.inject(). This allows binarytree.inject() to perform
	  the move while holding a lock.

2007-05-23 00:55  zmedico

	* pym/portage/dbapi/bintree.py: Save memory by not holding a
	  reference to the PackageIndex when it's not being used.

2007-05-23 00:50  zmedico

	* pym/portage/dbapi/bintree.py: Lock the Packages index while it's
	  being updated with a packages that was just built.

2007-05-23 00:37  zmedico

	* pym/portage/dbapi/bintree.py: Store the path of $PKGDIR/Packages
	  as binarytree._pkgindex_file.

2007-05-23 00:28  zmedico

	* pym/portage/dbapi/bintree.py: Lock $PKGDIR/Packages during
	  population so that it won't get out of sync if another process
	  updates it.

2007-05-23 00:05  zmedico

	* pym/emerge/__init__.py, pym/portage/dbapi/bintree.py: Update
	  /Packages as each package is built (MD5 is done here since it
	  won't hurt performance).

2007-05-22 22:45  zmedico

	* pym/portage/dbapi/bintree.py: Discard metadata from the Packages
	  file if there's no MTIME attribute.

2007-05-22 22:38  zmedico

	* pym/portage/dbapi/bintree.py, pym/portage/getbinpkg.py: Split
	  reading/writing of $PKGDIR/Packages into a PackageIndex class.

2007-05-22 20:46  zmedico

	* pym/portage/dbapi/bintree.py: Fix missing red import.

2007-05-22 20:42  zmedico

	* pym/portage/dbapi/porttree.py: Punt the portdbapi.getsize()
	  function since it's unused and broken (mysum referenced before
	  assignment).

2007-05-22 20:37  zmedico

	* pym/portage/dbapi/vartree.py: More namespace fixes.

2007-05-22 20:27  zmedico

	* pym/portage/dbapi/vartree.py: Fix namespace for S_ISUID and
	  S_ISGID.

2007-05-22 18:19  solar

	* pym/portage/dbapi/vartree.py: - cleaner version of the hardlink
	  basic suid protection. actually check that the file is setXid

2007-05-22 12:26  zmedico

	* pym/portage/dbapi/bintree.py: Handle a KeyError if an MTIME is
	  missing from the Packages index.

2007-05-22 11:22  zmedico

	* pym/portage/dbapi/bintree.py: Fix size comparison logic.

2007-05-22 11:16  zmedico

	* pym/portage/dbapi/bintree.py, pym/portage/getbinpkg.py: Cache
	  xpak metadata in ${PKGDIR}/Packages in order to minimize disk
	  load when binarytree.populate() is called. This does not do all
	  the keys that genpkgindex does but it will copy metadata from the
	  existing Packages file if it appears valid. The
	  binarytree.populate() code is performance critical, so the MD5
	  will certainly have to be done elsewhere (like just after a
	  package is built).

2007-05-22 06:27  zmedico

	* bin/misc-functions.sh, pym/portage/__init__.py,
	  pym/portage/dbapi/bintree.py: When ${PKGDIR}/All/ doesn't exist,
	  put packages in ${PKGDIR}/${CATEGORY}/ instead. This new layout
	  is backward compatible with portage-2.1.2 and it will be a
	  requirement for new PORTAGE_BINHOST support that is comming.

2007-05-22 05:38  zmedico

	* bin/ebuild.sh: Fix src_compile() ECONF_SOURCE logic to make sure
	  it behaves properly.

2007-05-22 05:26  zmedico

	* pym/portage/__init__.py: Use bash to spawn FETCHCOMMAND under
	  selinux since most other binaries are forbidden as entrypoints
	  into the fetch domain. Thanks to Justin Heesemann <jh@ionium.org>
	  for reporting.

2007-05-22 05:15  zmedico

	* bin/ebuild.sh: For bug #179380, make support for ECONF_SOURCE in
	  the default src_compile() conditional on EAPI != 0.

2007-05-21 19:55  zmedico

	* pym/portage/dbapi/vartree.py: Add a missing newline to the
	  writemsg output.

2007-05-21 19:27  solar

	* pym/portage/dbapi/vartree.py: - blind chmod 0 before unlinking
	  files to avoid anybody doing sneaky stuff via hardlinks

2007-05-20 22:53  zmedico

	* bin/repoman: For bug #179008, just use metadata.dtd directly from
	  $DISTDIR.

2007-05-20 21:28  zmedico

	* pym/portage/__init__.py: In fetch(), don't try to parse digests
	  unless the "O" variable is defined.

2007-05-20 19:59  zmedico

	* pym/portage/update.py: For bug #179206, improve efficiency by
	  using a containment test instead of str.count inside
	  update_dbentry. Thanks to Jason Lai <jason.lai@gmail.com>.

2007-05-19 22:57  zmedico

	* bin/repoman: Use device number and i-node number (like
	  os.path.samefile does) to check if the current directory is
	  inside a given overlay. This solves issues with path comparison
	  and symlinks.

2007-05-19 18:20  zmedico

	* bin/ebuild.sh: For bug #178378, make the default src_compile()
	  check for configure in ${ECONF_SOURCE:-.} (instead of just .)
	  before it calls econf. Thanks to James C. Georgas
	  <jgeorgas@rogers.com>.

2007-05-19 08:25  zmedico

	* pym/emerge/__init__.py: Add edges to shown_edges at the first
	  oportunity.

2007-05-19 08:16  zmedico

	* pym/emerge/__init__.py: In --tree output, keep track of which
	  graph edges have already been displayed and try not to display a
	  given edge more than once.

2007-05-19 07:56  zmedico

	* pym/portage/news.py: Avoid permission errors when trying to lock
	  repo_path. Note that the lock file should be mapped into /var
	  somewhere.

2007-05-19 04:36  zmedico

	* bin/repoman: For bug #176539, add a "manifest" target to repoman
	  so that there's a simple way to just generate a Manifest.

2007-05-19 04:09  vapier

	* bin/ebuild.sh: fix from James C. Georgas to not modify
	  EXTRA_EINSTALL #178544

2007-05-18 22:37  zmedico

	* pym/portage/dbapi/vartree.py: Fall back to pickle if cPickle is
	  unavailable. Thanks to Michael Haubenwallner
	  <michael.haubenwallner@salomon.at> for reporting.

2007-05-18 22:17  zmedico

	* pym/emerge/__init__.py: Only show extra whitespace where there
	  are some news items to display.

2007-05-18 17:48  zmedico

	* pym/portage/__init__.py: Catch a potential OSError if the child
	  process has already died.

2007-05-18 17:41  genone

	* NEWS: Update for glep42, preserve-libs and elog

2007-05-18 17:16  genone

	* pym/portage/elog/__init__.py, pym/portage/elog/filtering.py,
	  pym/portage/elog/messages.py, pym/portage/elog/mod_custom.py,
	  pym/portage/elog/mod_echo.py, pym/portage/elog/mod_mail.py,
	  pym/portage/elog/mod_mail_summary.py,
	  pym/portage/elog/mod_save.py,
	  pym/portage/elog/mod_save_summary.py,
	  pym/portage/elog/mod_syslog.py: Enable elog functionality for the
	  python side of portage

2007-05-18 14:58  genone

	* pym/emerge/__init__.py: Display notification about unread news in
	  all situations specified by glep 42

2007-05-18 13:00  genone

	* pym/portage/news.py: - store newsid in unread file, not the path
	  to the news item
	  - use octal numbers to specify file permissions
	  - use descriptive exceptions when (not) creating NewsItem objects
	  - code style cleanups

2007-05-18 12:58  genone

	* pym/emerge/__init__.py, pym/portage/dbapi/vartree.py: Add
	  registration support for preserved library objects, move the
	  library->consumer
	  map code out of vardbapi and fix a bug in the setup code for
	  preserve-libs and
	  collision-protect caused by using relative paths with
	  os.path.islink()

2007-05-18 06:52  robbat2

	* DEVELOPING: Check to see if I have svn.g.o fixed, no actual file
	  changes, pass #2

2007-05-18 06:52  robbat2

	* DEVELOPING: Check to see if I have svn.g.o fixed, no actual file
	  changes.

2007-05-17 09:28  zmedico

	* pym/portage/__init__.py: wrap lines

2007-05-17 09:13  zmedico

	* pym/portage/__init__.py: For bug #162404, use a pseudo-terminal
	  device pair (instead of a normal pipe) for moving ouput out of
	  the sesandbox domain.

2007-05-16 17:05  zmedico

	* pym/portage/__init__.py: Don't protect USE_EXPAND variables from
	  -* anymore because the really critical ones should all be in
	  use.force now (typically kernel_linux, elibc_glibc, and
	  userland_GNU).

2007-05-14 11:35  zmedico

	* pym/emerge/__init__.py: fix syntax (merged from branches/prefix
	  r6534)

2007-05-13 21:33  zmedico

	* pym/portage/manifest.py: For bug #178293, don't write digest-*
	  files unnecessarily when SRC_URI is empty.

2007-05-13 17:36  antarus

	* pym/emerge/__init__.py: the profile check is spammy and should be
	  squelched when --quiet is given

2007-05-13 08:29  zmedico

	* bin/ebuild: remove old import

2007-05-13 08:25  zmedico

	* bin/dispatch-conf: import dispatch_conf from the new namespace

2007-05-13 08:19  zmedico

	* bin/dispatch-conf: tabs -> spaces

2007-05-13 07:19  zmedico

	* pym/portage/tests/util/test_varExpand.py: Fix the varexpand
	  quotes tests since quotes are no longer removed by this function.

2007-05-12 23:14  zmedico

	* pym/emerge/__init__.py: Add TODO note about support for blocks
	  within slots. Thanks to Brian Harring for reporting.

2007-05-12 19:15  zmedico

	* cnf/make.conf, man/make.conf.5: s:${PORTDIR}:/usr/portage: so
	  that it's not implied that those variables are automatically
	  relative to ${PORTDIR} when the value of ${PORTDIR} has changed
	  to something other than /usr/portage. Thanks to kerframil for
	  reporting.

2007-05-10 18:29  zmedico

	* man/make.conf.5: For bug #177763, clarify about how
	  FEATURES=keepwork allows ${WORKDDIR} to be reused.

2007-05-10 18:14  zmedico

	* bin/ebuild: Make sure FEATURES=test and USE=test are consistently
	  enabled for all requested phases when the test phase is forced
	  via the ebuild command.

2007-05-10 05:33  zmedico

	* bin/ebuild.sh: Make sure USE=test is properly enabled when the
	  test phase is forced via the ebuild command, even when USE from
	  ${T}/environment doen't have it.

2007-05-09 23:14  zmedico

	* man/make.conf.5: fix typo from previous commit

2007-05-09 23:11  zmedico

	* man/make.conf.5: For bug #177763, document that FEATURES=keepwork
	  can interfere with normal emerge operation.

2007-05-09 22:49  zmedico

	* bin/ebuild, pym/portage/__init__.py: Make sure USE=test is
	  properly enabled when the test phase is forced via the ebuild
	  command. Thanks to Caster for reporting.

2007-05-09 03:42  antarus

	* pym/portage/env/loaders.py: fix spacing in loaders

2007-05-08 20:29  zmedico

	* pym/portage/util.py: For bug #177591, increase shell
	  compatibility by preserving quotes in varexpand() since quote
	  removal is handled by shlex.

2007-05-08 18:14  zmedico

	* man/emerge.1: For bug #177601, add a reference the --verbose
	  option documentation in the OUTPUT section.

2007-05-08 15:42  antarus

	* pym/portage/__init__.py: antarus fears it, and fears it often

2007-05-08 05:13  antarus

	* pym/portage/__init__.py: imports are one module per line, remove
	  type module in favor of the new hotness, isinstance.

2007-05-08 05:07  antarus

	* pym/portage/__init__.py: Honestly if they are missing sys, that
	  error message probably won't help any more than the other one
	  (zomg broken)

2007-05-08 05:02  antarus

	* pym/portage/env/config.py, pym/portage/env/loaders.py:
	  validators++

2007-05-07 02:29  zmedico

	* pym/emerge/__init__.py: Prevent blockers that are only partially
	  resolvable by merge order from accidentally being ignored.

2007-05-06 20:13  zmedico

	* pym/emerge/__init__.py: Use shlex for better splitting of
	  PORTAGE_RSYNC_OPTS and PORTAGE_RSYNC_EXTRA_OPTS.

2007-05-06 19:37  zmedico

	* pym/portage/__init__.py: Use shlex for better splitting of
	  FETCHCOMMAND.

2007-05-06 07:56  zmedico

	* pym/portage/__init__.py: Use varexpand to expand FETCHCOMMAND and
	  RESUMECOMMAND.

2007-05-05 23:51  zmedico

	* pym/portage/versions.py: For bug #171259, fix vercmp so that
	  implicit _p0 is less than explicit _p0. Thanks to TGL
	  <degrenier@easyconnect.fr> for the patch.

2007-05-05 23:40  zmedico

	* pym/portage/env/loaders.py: Add missing base class.

2007-05-05 19:56  zmedico

	* pym/emerge/__init__.py: Use match_from_list in order to
	  potentially avoid more blocks.

2007-05-05 18:10  zmedico

	* bin/ebuild.sh: For bug #177211, use chmod -R on the children of
	  the current directory in order to reduce the size of the argument
	  list.

2007-05-05 17:40  zmedico

	* pym/portage/__init__.py: For bug #175058, comment #15, expand all
	  possible variables in each argument.

2007-05-03 09:18  zmedico

	* pym/emerge/__init__.py: For bug #176765, when a new package is
	  blocked by another one that is being replaced, handle another
	  case where the conflict can be avoided.

2007-05-02 22:52  zmedico

	* NEWS: Remove news about profile masking which has been reverted
	  pending resolution of bug #170697. Thanks to Arfrever Frehtes
	  Taifersar Arahesis in #149508.

2007-05-02 19:58  vapier

	* man/ebuild.1: document the behavior of `ebuild` wrt
	  FEATURES=noauto #175444

2007-05-02 17:29  zmedico

	* bin/ecompressdir: s/dir/actual_dir/ (branches/prefix r6463:6464

2007-05-02 17:23  zmedico

	* bin/isolated-functions.sh, pym/portage/output.py: Fix eend so
	  that it works properly on a standard BSD console. Thanks to
	  UberLord.

2007-04-30 15:12  zmedico

	* pym/emerge/__init__.py: Handle KeyError when the ebuild is
	  corrupt.

2007-04-30 03:16  genone

	* NEWS, RELEASE-NOTES, pym/portage/__init__.py,
	  pym/portage/dbapi/porttree.py: Fix -* handling in gvisible to
	  match incremental semantics

2007-04-30 02:31  genone

	* cnf/make.conf, cnf/make.globals, pym/portage/elog/__init__.py,
	  pym/portage/elog/mod_custom.py, pym/portage/elog/mod_echo.py,
	  pym/portage/elog/mod_mail.py,
	  pym/portage/elog/mod_mail_summary.py,
	  pym/portage/elog/mod_save.py,
	  pym/portage/elog/mod_save_summary.py,
	  pym/portage/elog/mod_syslog.py: - add new echo module for people
	  who don't want any real logging
	  - add copyright header in elog modules and enable keyword
	  substitution
	  - enable save_summary and echo modules in make.globals

2007-04-29 06:33  zmedico

	* cnf/make.globals, pym/portage/__init__.py: For bug #175058, avoid
	  potential quoting issues by spawning FETCHCOMMAND without a
	  shell.

2007-04-28 19:14  zmedico

	* pym/emerge/__init__.py: For bug #176384, adjust config according
	  to options of the command being resumed.

2007-04-28 17:37  zmedico

	* cnf/make.globals: For bug #175058, properly quote the variables
	  in FETCHCOMMAND and RESUMECOMMAND since the command is spawned in
	  a bash shell.

2007-04-28 01:57  zmedico

	* pym/emerge/__init__.py: Fix up missing mymergelist variable from
	  the previous commit.

2007-04-28 01:46  zmedico

	* pym/emerge/__init__.py: For bug #176305, validate the resume
	  merge list before attempting to verify the ebuild manifests.

2007-04-26 21:23  zmedico

	* man/make.conf.5: In the installsources docs, note that CFLAGS
	  needs to be set to include debug information. Thanks to tigger^
	  for reporting.

2007-04-26 20:43  zmedico

	* pym/portage/__init__.py: Always ensure permissions in DISTCC_DIR
	  in order to try to prevent potential permission problems for
	  non-root users who are in the portage group (userpriv, etc.).

2007-04-26 19:43  zmedico

	* pym/portage/__init__.py: For bug #176139, only symlink the
	  distfiles that are required according the current USE settings.

2007-04-24 07:31  antarus

	* bin/repoman: fix typo

2007-04-24 06:55  zmedico

	* pym/portage/__init__.py: For bug #175781, add a higher preference
	  priority for choices where all matching slots are installed (not
	  just any slot).

2007-04-24 06:04  antarus

	* bin/repoman: Pretty up the repoman imports, use cPickle over
	  pickle for performance

2007-04-21 10:49  zmedico

	* bin/ecompressdir: Use portable sh syntax rather than bash syntax.
	  Thanks to drizzt.

2007-04-20 22:53  zmedico

	* pym/portage/__init__.py: Also validate RESTRICT inside
	  doebuild().

2007-04-20 22:25  zmedico

	* pym/portage/__init__.py: Also validate SRC_URI inside doebuild().

2007-04-20 22:18  zmedico

	* pym/portage/__init__.py: For bug #175344, validate LICENSE and
	  PROVIDE inside doebuild().

2007-04-20 21:52  zmedico

	* bin/repoman: For bug #175344, handle a potential
	  InvalidDependString exception when parsing PROVIDE.

2007-04-20 21:31  zmedico

	* pym/emerge/__init__.py: For bug #175344, handle a potential
	  InvalidDependString exception when parsing PROVIDE.

2007-04-20 18:42  zmedico

	* pym/emerge/__init__.py: For bug #175344, use cp_list instead of
	  xmatch in order to avoid dep_expand calls.

2007-04-17 23:07  vapier

	* bin/prepstrip: strip .comment by default, add a comment as to
	  what we need before we can do .note, and add safe stripping of
	  relocatable objects

2007-04-15 09:32  vapier

	* bin/ebuild.sh, bin/emerge-webrsync, bin/etc-update,
	  bin/misc-functions.sh, bin/prepall, bin/prepstrip, bin/sed:
	  convert `type -p` to `type -P` as noted by grobian

2007-04-14 16:35  vapier

	* bin/prepall: do stripping after compression dequeueing

2007-04-14 16:35  vapier

	* bin/prepinfo, bin/prepman: queue compression

2007-04-14 11:40  vapier

	* bin/doins: revise tests so that `insinto /` does not trigger an
	  error

2007-04-14 05:27  zmedico

	* bin/dohard: Prefix the hardlink source with ${D} like we always
	  have.

2007-04-14 02:04  vapier

	* man/ebuild.5: document new version suffix style #166522

2007-04-14 01:59  vapier

	* bin/dohard: create leading directories to match behavior of other
	  do* programs

2007-04-13 19:19  vapier

	* bin/misc-functions.sh: simplify unsafe file checking so
	  files/paths with spaces dont cause troubles

2007-04-13 05:43  zmedico

	* bin/ecompressdir: Use relative paths inside ecompressdir in order
	  to avoid 'Argument list too long' errors with large file sets
	  (observed when installing sys-apps/man-pages).

2007-04-13 05:10  zmedico

	* pym/portage/__init__.py: Add CATEGORY to blacklisted variables
	  since it can interfere with CATEGORY guessing inside doebuild.

2007-04-13 04:14  zmedico

	* pym/portage/__init__.py: Use catpkgsplit instead of pkgsplit for
	  consistency with usage elsewhere.

2007-04-13 04:13  zmedico

	* pym/portage/dbapi/porttree.py: Use a config instance that's not
	  locked/immutable.

2007-04-12 13:10  vapier

	* man/ebuild.5: cleanup example ebuild to be more representative of
	  a "good" ebuild #174260 by Timothy Redaelli

2007-04-12 04:14  zmedico

	* bin/prepman: For bug #173808, add back the old heuristics to make
	  sure that we don't just blindly compress the contents of any
	  directory named "man".

2007-04-10 08:40  zmedico

	* bin/prepman: For bug #173808, compress ${mandir} all in one go
	  instead of doing subdirectories separately. This allows symlinks
	  that point into sibling directories to get updated properly be
	  ecompressdir.

2007-04-10 06:03  zmedico

	* pym/portage/dbapi/vartree.py: Efficiently recycle partial valid
	  vdb cache when possible. This reduces disk load when switching
	  between versions of portage that cache different keys.

2007-04-09 17:18  zmedico

	* pym/portage/__init__.py: Don't load FEATURES in load_infodir()
	  because FEATURES from the build host shouldn't be interpreted
	  asFEATURES on the client system. Thanks to Thanks to Chri

2007-04-09 09:08  zmedico

	* man/make.conf.5: Update the FEATURES=strict docs for better
	  clarity. Thanks to taviso for reporting.

2007-04-09 02:45  zmedico

	* pym/portage/dbapi/vartree.py: Cache NEEDED in order to optimize
	  update_library_map() calls.

2007-04-08 19:36  zmedico

	* pym/portage/__init__.py: Only apply permissions to ccache,
	  confcache, and distcc dirs when they are created in order to
	  avoid interference with whatever the user's preferred permissions
	  are. Thanks to Diego Pettenò <flameeyes@gmail.com> for reporting.

2007-04-07 08:32  vapier

	* bin/dobin, bin/doexe, bin/doinitd, bin/ebuild.sh: change
	  "EXEDESTTREE" to "_E_EXEDESTTREE_" to try and prevent abuse from
	  ebuild writers

2007-04-07 04:54  vapier

	* man/ebuild.5: remove references to EXEDESTTREE

2007-04-07 04:49  vapier

	* man/portage.5: document /var/cache/edb/, /var/db/pkg/, and
	  /var/lib/portage/config

2007-04-07 04:35  vapier

	* man/emerge.1: tell people that the FILES section is not supposed
	  to be complete (and sneak in a few style fixups)

2007-04-07 04:32  vapier

	* bin/dodoc, bin/dohtml, bin/ebuild.sh: change "DOCDESTTREE" to
	  "_E_DOCDESTTREE_" to try and prevent abuse from ebuild writers

2007-04-07 04:29  vapier

	* man/ebuild.5: remove references to DOCDESTTREE and INSDESTTREE

2007-04-05 22:27  zmedico

	* pym/portage/data.py: Provide a default value to the getattr call.

2007-04-05 21:34  zmedico

	* pym/portage/data.py: Make sure XARGS has a default value.

2007-04-05 21:29  zmedico

	* pym/portage/data.py: Don't force OS detection in the portage.data
	  module.

2007-04-05 21:20  zmedico

	* bin/etc-update, pym/emerge/__init__.py, pym/portage/__init__.py,
	  pym/portage/data.py: Don't set os.environ["USERLAND"] inside
	  portage.data and rely on USERLAND from the profile instead (bail
	  out if necessary when USERLAND is unset).

2007-04-05 20:46  zmedico

	* pym/emerge/__init__.py: Punt the sorted_versions() function in
	  favor of list.sort(vercmp).

2007-04-02 19:43  zmedico

	* pym/portage/checksum.py: For bug #173184, handle the
	  CommandNotFound that is produced during uninstallation of
	  prelink.

2007-04-01 04:32  antarus

	* pym/portage/env/loaders.py: I consulted the python oracle and it
	  told me enumerate was better, so go team enumerate

2007-03-31 20:13  antarus

	* pym/portage/env/config.py, pym/portage/env/loaders.py: drop
	  line_count in favor of izip and count(), itertools FOR THE WIN
	  baby.

2007-03-31 19:42  antarus

	* pym/portage/env/config.py, pym/portage/env/loaders.py: After
	  talking to marienz, decide that 1 class is better than 4, also
	  realize that UserDict has most of the dict methods exposed, so
	  drop them. Also add a LoaderError Exception. Still to do? add a
	  validation callable into the loader to validate data.

2007-03-31 11:01  zmedico

	* pym/portage/__init__.py: Fix missing import.

2007-03-30 22:57  vapier

	* man/ebuild.5: make PDEPEND wording less restrictive #172511 and
	  clarify install status wrt ||() as noted by ferringb

2007-03-28 22:40  zmedico

	* pym/emerge/__init__.py: For bug #172571, use socket.AF_INET as
	  the default family for socket.getaddrinfo().

2007-03-28 20:01  zmedico

	* pym/portage/env/loaders.py: spaces -> tabs

2007-03-28 19:59  zmedico

	* pym/portage/env/loaders.py: spaces -> tabs

2007-03-28 18:58  zmedico

	* bin/ecompressdir: For bug #172539, fix ecompressdir suffix
	  handling so that automatic decompression of Z, gz, and bz2
	  suffixes works properly.

2007-03-28 17:14  zmedico

	* pym/emerge/__init__.py: Correctly pull the metadata again when
	  the node is converted.

2007-03-28 16:53  zmedico

	* pym/emerge/__init__.py: Convert "ebuild" and "binary" "nomerge"
	  nodes into "installed" nodes for greater consistency in the
	  depgraph.

2007-03-28 08:58  zmedico

	* man/make.conf.5: Synchronize PORTAGE_COMPRESS_FLAGS to reflect
	  that -9 is the default now.

2007-03-27 22:49  zmedico

	* bin/ebuild.sh: Properly anchor sed regexp for readlonly attribut
	  filtering.

2007-03-27 22:32  zmedico

	* bin/ebuild.sh: Filter the readonly attribute from variables saved
	  in ${T}/environment to prevent 'readonly variable' error messages
	  in later phases.

2007-03-27 22:22  zmedico

	* bin/ebuild.sh: source ${T}/environment before the definition of
	  qa_source() and qa_call() so that the call stack shows the
	  original files and line numbers instead of those from
	  ${T}/environment. Thanks to Markus Ullmann <jokey@gentoo.org> for
	  reporting.

2007-03-26 20:09  zmedico

	* pym/portage/dbapi/porttree.py: Continue to support profile
	  masking at least until bug #170697 is settled.

2007-03-26 07:23  antarus

	* pym/portage/tests/__init__.py, pym/portage/tests/bin/__init__.py,
	  pym/portage/tests/bin/setup_env.py,
	  pym/portage/tests/bin/test_dobin.py,
	  pym/portage/tests/bin/test_dodir.py,
	  pym/portage/tests/dep/__init__.py,
	  pym/portage/tests/dep/test_dep_getcpv.py,
	  pym/portage/tests/dep/test_dep_getslot.py,
	  pym/portage/tests/dep/test_dep_getusedeps.py,
	  pym/portage/tests/dep/test_get_operator.py,
	  pym/portage/tests/dep/test_isjustname.py,
	  pym/portage/tests/dep/test_isvalidatom.py,
	  pym/portage/tests/dep/test_match_from_list.py,
	  pym/portage/tests/env/__init__.py,
	  pym/portage/tests/env/config/__init__.py,
	  pym/portage/tests/env/config/test_PackageKeywordsFile.py,
	  pym/portage/tests/env/config/test_PackageMaskFile.py,
	  pym/portage/tests/env/config/test_PackageUseFile.py,
	  pym/portage/tests/env/config/test_PortageModulesFile.py,
	  pym/portage/tests/news/__init__.py,
	  pym/portage/tests/news/test_NewsItem.py,
	  pym/portage/tests/util/__init__.py,
	  pym/portage/tests/util/test_grabdict.py,
	  pym/portage/tests/util/test_normalizedPath.py,
	  pym/portage/tests/util/test_stackDictList.py,
	  pym/portage/tests/util/test_stackDicts.py,
	  pym/portage/tests/util/test_stackLists.py,
	  pym/portage/tests/util/test_uniqueArray.py,
	  pym/portage/tests/util/test_varExpand.py,
	  pym/portage/tests/versions/__init__.py,
	  pym/portage/tests/versions/test_vercmp.py,
	  pym/portage/tests/xpak/__init__.py,
	  pym/portage/tests/xpak/test_decodeint.py: minor name changes for
	  bin tests, svn propset keywords Id stuff

2007-03-26 05:28  antarus

	* pym/portage/env/config.py: fix broken PortageModule classes

2007-03-26 05:28  antarus

	* pym/portage/tests/env/config/test_PortageModulesFile.py: fix
	  tests for PortageModulesFile

2007-03-26 05:25  antarus

	* pym/portage/env/config.py: clean up some init functions, add
	  PortageModules class

2007-03-26 04:29  antarus

	* pym/portage/tests/env/config/test_PackageKeywordsFile.py,
	  pym/portage/tests/env/config/test_PackageUseFile.py,
	  pym/portage/tests/env/config/test_PortageModulesFile.py: fix some
	  tests, break others

2007-03-26 04:17  antarus

	* pym/portage/tests/env/config/test_PackageKeywordsFile.py,
	  pym/portage/tests/env/config/test_PackageMaskFile.py,
	  pym/portage/tests/env/config/test_PackageUseFile.py: Fix insecure
	  tempfile usage

2007-03-25 12:27  vapier

	* pym/portage/__init__.py: fix grammar in error output

2007-03-25 09:56  zmedico

	* pym/emerge/__init__.py: Verify the Manifest first even if there's
	  only one package (prior to the fetch phase).

2007-03-25 07:15  zmedico

	* pym/portage/__init__.py: Do the "*" check as early as possible in
	  config.getMissingLicenses().

2007-03-25 06:57  antarus

	* pym/portage/env/config.py, pym/portage/env/loaders.py: split the
	  loader classes into their own file, split the recursive filename
	  grabbing out into it's own function

2007-03-25 05:55  antarus

	* pym/portage/env/config.py: completely rewrite file bits, use
	  Loader classes to push loading functionality down

2007-03-25 05:54  antarus

	* pym/portage/tests/env/config/test_PackageKeywordsFile.py,
	  pym/portage/tests/env/config/test_PackageMaskFile.py,
	  pym/portage/tests/env/config/test_PackageUseFile.py: Fix the rest
	  of the tests

2007-03-24 22:44  zmedico

	* pym/emerge/__init__.py: Verify all ebuild manifests before
	  building anything now so that the user is notified of failure as
	  soon as possible.

2007-03-24 21:42  zmedico

	* pym/emerge/__init__.py: return from the merge task instead of
	  calling sys.exit directly.

2007-03-24 21:38  zmedico

	* pym/emerge/__init__.py: Allow the merge task to continue despite
	  conflicts when --fetch-all-uri is specified.

2007-03-24 18:50  zmedico

	* bin/doman: For bug #172033, remove the obsolete QA Notice for man
	  pages that are already compressed.

2007-03-23 02:55  zmedico

	* pym/portage/__init__.py: Clean up and simplify preference
	  selection logic for bug #171840.

2007-03-23 01:25  zmedico

	* pym/portage/__init__.py: For bug #171840, consider all choices
	  for slot intersection and promote those that have upgrades
	  relative to other choices.

2007-03-23 00:15  zmedico

	* pym/portage/cache/flat_hash.py: Ignore non-existent directories
	  for bug #171809. This is required for readonly mode.

2007-03-22 08:41  zmedico

	* pym/emerge/help.py: Add --verbose to the "for more help" message.

2007-03-22 07:37  vapier

	* pym/emerge/help.py: default --help should be usable, so make the
	  extended output require --verbose

2007-03-21 00:49  zmedico

	* pym/portage/__init__.py: Fix a typo.

2007-03-21 00:14  zmedico

	* pym/emerge/__init__.py, pym/portage/__init__.py,
	  pym/portage/dbapi/porttree.py: Pass a list of USE flags into
	  config.getMissingLicenses() so that the method can eventually be
	  used for binary packages in addition to ebuilds.

2007-03-20 22:08  zmedico

	* pym/portage/__init__.py: Add a docstring to
	  config.getMissingLicenses().

2007-03-20 21:58  zmedico

	* pym/emerge/__init__.py: Catch a potential InvalidDependString
	  exception.

2007-03-20 20:38  zmedico

	* bin/repoman: Fix cvstree import to avoid deprecation warning.

2007-03-20 20:06  zmedico

	* pym/portage/__init__.py: Pass missing acceptable_licenses
	  parameter into recursive _getMissingLicenses() calls.

2007-03-20 20:00  zmedico

	* pym/portage/__init__.py: Appropriately return from
	  _getMissingLicenses() if one of the choices is satisfied.

2007-03-20 09:52  zmedico

	* NEWS, pym/emerge/__init__.py, pym/portage/__init__.py,
	  pym/portage/const.py, pym/portage/dbapi/porttree.py: Implement
	  license visibility filtering for GLEP 23, bug #17367, and bug
	  #152593.

2007-03-18 20:39  vapier

	* bin/fowners, bin/fperms: revert previous change since it is
	  obviously incorrect as pointed out by grobian

2007-03-18 19:54  zmedico

	* pym/portage/output.py, pym/portage/tests/bin/setup_env.py:
	  Appropriately use globals() instead of locals() as suggested by
	  marienz.

2007-03-18 07:40  zmedico

	* pym/portage/dbapi/vartree.py: Never use listdir with both
	  recursion=True and followSymlinks=True since it circular symlinks
	  will lead to endless recursion loops. Thanks to Tobias Hahn
	  <tobhahn@web.de> for this patch.

2007-03-18 00:25  zmedico

	* pym/portage/output.py, pym/portage/tests/bin/setup_env.py: Use
	  locals() instead of setattr to insert generated functions into
	  the current module. Thanks to Brian Harring for the suggestion.

2007-03-17 21:52  vapier

	* bin/dodir, bin/fowners, bin/fperms: make sure we prefix all
	  arguments with $D, including ones that dont start with a /

2007-03-17 09:20  zmedico

	* pym/portage/tests/bin/setup_env.py: Call the base class
	  destructor if it exists.

2007-03-17 08:41  zmedico

	* pym/portage/tests/__init__.py: Add "bin" to testDirs.

2007-03-17 08:41  zmedico

	* pym/portage/tests/bin/setup_env.py: Make paths independent of
	  cwd.

2007-03-17 08:27  zmedico

	* pym/portage/tests/bin/setup_env.py: Close /dev/null when
	  finished.

2007-03-17 08:18  vapier

	* pym/portage/tests/bin/__init__.py,
	  pym/portage/tests/bin/setup_env.py,
	  pym/portage/tests/bin/test_dobin.py,
	  pym/portage/tests/bin/test_dodir.py: start of framework for
	  programs in portage bin

2007-03-17 08:07  vapier

	* bin/ecompress: send stdout to /dev/null since we rely on the
	  output of stdout here to determine the proper suffix #171212

2007-03-17 07:24  antarus

	* pym/portage/tests/__init__.py: bump ________foo from the TestCase
	  class since _exc_info() doesn't do anything anyway

2007-03-17 07:11  antarus

	* pym/portage/tests/__init__.py: fix for older python who have
	  oddly named __exc_info()

2007-03-17 03:47  zmedico

	* pym/portage/tests/env/config/test_PackageMaskFile.py: Use mkstemp
	  to create a random tempfile.

2007-03-17 02:54  vapier

	* pym/portage/tests/env, pym/portage/tests/env/config,
	  pym/portage/tests/xpak: ignore *.py[co]

2007-03-17 02:48  zmedico

	* pym/portage/tests/env/config/test_PackageMaskFile.py: Fix a
	  broken test.

2007-03-17 02:47  zmedico

	* pym/portage/tests/__init__.py: Fix broken exception handling.

2007-03-17 02:41  zmedico

	* pym/portage/env/config.py: Fix a typo.

2007-03-17 02:28  vapier

	* bin/ecompressdir: forcibly break all hard links so we dont need
	  to rely on --force in compressor and tweak the
	  _relocate_skip_dirs() func to handle whitespace in paths (thanks
	  to zmedico for tip)

2007-03-17 02:08  vapier

	* bin/dodoc, bin/ecompress, bin/ecompressdir, bin/prepall,
	  bin/prepalldocs: redo compression so that it is queued up in
	  src_install and then dequeued post src_install

2007-03-16 23:38  vapier

	* bin/ecompress: drop the need for the force flag by default and
	  just delete the existing files automatically #171007

2007-03-16 18:36  zmedico

	* pym/portage/dbapi/vartree.py: Fix a utime call to prevent a
	  timestamp collision for bug #171117.

2007-03-16 18:11  zmedico

	* pym/portage/dbapi/vartree.py: For bug #171117, ensure that the
	  new and old config have different timestamps (for the benefit of
	  programs like rsync that need distiguishable timestamps to detect
	  file changes). Thanks to Ben Bennett <sink@limey.net> for
	  reporting.

2007-03-16 01:20  zmedico

	* bin/ebuild.sh: For bug #163262 and conformance with section 7.2
	  of the PMS, make the export attribute of variables persist
	  between ebuild phases.

2007-03-15 20:27  zmedico

	* pym/portage/__init__.py: Add back rstrip(os.path.sep) from the
	  previous commit since it's needed when ROOT="/".

2007-03-15 20:23  zmedico

	* pym/portage/__init__.py: Automatically convert ROOT and
	  PORTAGE_CONFIGROOT to absolute paths when necessary since
	  relative paths lead to problems. Thanks to Christian Heim
	  <phreak@gentoo.org> for reporting.

2007-03-12 23:42  zmedico

	* bin/prepinfo: Make prepinfo remove installed info indexes
	  recursively. Thanks to Christian Faulhammer <opfer@gentoo.org>
	  for reporting (see bugs #162675 and #170133).

2007-03-10 00:08  zmedico

	* bin/emerge-webrsync, bin/etc-update,
	  pym/portage/dbapi/vartree.py, pym/portage/locks.py: For bug
	  #170178, remove all hardcoded references to '/usr/lib/portage'.

2007-03-09 21:03  zmedico

	* bin/misc-functions.sh: import portage.xpak to avoid deprecation
	  warning

2007-03-09 19:10  zmedico

	* bin/quickpkg: Add back a missing `source isolated-functions.sh`.
	  The color logic is handled internally.

2007-03-09 10:31  genone

	* pym/emerge/__init__.py: Display message about --buildpkgonly
	  restriction in pretend mode as well

2007-03-09 04:43  zmedico

	* man/portage.5: Remove profile masking of system packages from the
	  docs.

2007-03-09 04:25  zmedico

	* pym/portage/__init__.py: Remove the "masked by: profile" support
	  from getmaskingstatus().

2007-03-09 03:57  zmedico

	* pym/emerge/__init__.py: Use the full atoms from the system set,
	  since profile masking does not automatically constrain the
	  matches anymore.

2007-03-09 03:34  zmedico

	* NEWS, pym/portage/dbapi/porttree.py: Remove legacy "masked by:
	  profile" support as per bug #149508. Profiles should use
	  package.mask to mask unwanted versions of system packages.

2007-03-08 16:00  antarus

	* pym/portage/tests/env/config/test_PackageKeywordsFile.py:
	  whoopse, s/;/:/

2007-03-08 07:10  antarus

	* pym/portage/env/config.py,
	  pym/portage/tests/env/config/test_PackageKeywordsFile.py,
	  pym/portage/tests/env/config/test_PackageMaskFile.py,
	  pym/portage/tests/env/config/test_PackageUseFile.py: add
	  PackageMask{File} classes, change unit tests to use try/finally,
	  makes sure the tempfile gets destroyed even if something weird
	  happens

2007-03-08 06:44  antarus

	* pym/portage/env/config.py,
	  pym/portage/tests/env/config/test_PackageKeywordsFile.py,
	  pym/portage/tests/env/config/test_PackageUseFile.py: Change
	  load() to have no default arguments, makes caller specifiy
	  explicitly...I think assuming a default arg is bad here. Also add
	  PackageUse and PackageUseFile, change up the comments a bit. I've
	  started to notice code re-use here; these are basically the same
	  code. I think I will write up the rest of the package* classes
	  and then perform code merges to save LOC and memory and whatnot

2007-03-07 06:38  antarus

	* pym/portage/env, pym/portage/env/__init__.py,
	  pym/portage/env/config.py, pym/portage/tests/__init__.py,
	  pym/portage/tests/dep/test_isvalidatom.py, pym/portage/tests/env,
	  pym/portage/tests/env/__init__.py, pym/portage/tests/env/config,
	  pym/portage/tests/env/config/__init__.py,
	  pym/portage/tests/env/config/test_PackageKeywordsFile.py: Part of
	  my attempt now involves cleaning up config; this means for me;
	  removing the file-based stuff from it (config_path) and
	  encapsulating that into classes. This is the first one, a simple
	  PackageKeywords class that does file-based stuff, no recursion
	  yet but soon. Trying to do TDD here as well,so tests first then
	  code.

2007-03-07 04:27  antarus

	* pym/portage/tests/__init__.py,
	  pym/portage/tests/dep/test_isvalidatom.py: Take marien's advice,
	  turn Skips into Todos for clarity sake

2007-03-06 20:05  zmedico

	* pym/portage/__init__.py: Fix 2 more types.InstanceType
	  comparisons that are broken by the transition of dbapi to
	  new-style classes.

2007-03-06 18:30  zmedico

	* pym/emerge/__init__.py: For bug #169620, in --tree display always
	  show the dowload size on the node that is "ordered" rather than
	  one of it's "nomerge" counterparts.

2007-03-06 07:39  antarus

	* TEST-NOTES: Add part about new framework and skipping to test
	  notes

2007-03-06 07:35  antarus

	* pym/portage/tests/dep/test_dep_getcpv.py,
	  pym/portage/tests/dep/test_dep_getslot.py,
	  pym/portage/tests/dep/test_dep_getusedeps.py,
	  pym/portage/tests/dep/test_get_operator.py,
	  pym/portage/tests/dep/test_isjustname.py,
	  pym/portage/tests/dep/test_isvalidatom.py,
	  pym/portage/tests/dep/test_match_from_list.py,
	  pym/portage/tests/news/test_NewsItem.py,
	  pym/portage/tests/util/test_grabdict.py,
	  pym/portage/tests/util/test_normalizedPath.py,
	  pym/portage/tests/util/test_stackDictList.py,
	  pym/portage/tests/util/test_stackDicts.py,
	  pym/portage/tests/util/test_stackLists.py,
	  pym/portage/tests/util/test_uniqueArray.py,
	  pym/portage/tests/util/test_varExpand.py,
	  pym/portage/tests/versions/test_vercmp.py,
	  pym/portage/tests/xpak, pym/portage/tests/xpak/__init__.py,
	  pym/portage/tests/xpak/test_decodeint.py: Update all the
	  unittests to use the new framework, test skipping with
	  isValidAtom, add silly xpak test since I have it 'done'

2007-03-06 07:34  antarus

	* pym/portage/tests/__init__.py: Roll our own unittest framework to
	  add skip support.

2007-03-05 04:10  antarus

	* pym/portage/tests/dep/test_isvalidatom.py: these will fail now

2007-03-05 00:11  zmedico

	* pym/emerge/__init__.py: Avoid pointless population of the binary
	  tree when --buildpkg is enabled. Thanks to vapier for reporting.

2007-03-04 19:50  vapier

	* bin/ecompress, bin/ecompressdir: allow people to disable
	  compression by setting the PORTAGE_COMPRESS variables to ""

2007-03-04 04:24  zmedico

	* pym/emerge/__init__.py: Display blockers at the end of the list
	  so that it will more often be easy for the user to see them in a
	  terminal. Thanks to iapitus and hydrogen for the suggestion.

2007-03-04 02:36  zmedico

	* pym/portage/__init__.py: Remove the KVERS environment variable
	  since it's code that creates it is broken anyway (only sets
	  KVERS="." in the general case).

2007-03-04 01:49  zmedico

	* pym/emerge/__init__.py: Fix the minimum index for pruning
	  consecutive duplicate nodes.

2007-03-04 01:35  zmedico

	* pym/emerge/__init__.py: Add a note about --with-bdeps in the
	  --depclean failure message.

2007-03-04 00:34  zmedico

	* pym/emerge/__init__.py: For bug #169187, make --depclean prune
	  unneeded slots such that it is consistent with the world update
	  algorithm.

2007-03-03 23:05  zmedico

	* pym/emerge/__init__.py: Only prune duplicate consecutive nodes if
	  they both have depth == 0.

2007-03-03 21:42  zmedico

	* pym/portage/locks.py: Pass waiting_msg into recursive lockfile()
	  calls.

2007-03-03 18:31  antarus

	* pym/portage/news.py: make sure uid is an int

2007-03-03 18:00  antarus

	* bin/emerge: In the same vein as copyright, add Id and
	  svn:keywords to it

2007-03-03 17:52  antarus

	* bin/emerge: you can't insert into sys.path without importing
	  sys...

2007-03-03 11:24  zmedico

	* pym/emerge/__init__.py: Make sure that excess "nomerge" nodes are
	  pruned correctly.

2007-03-03 10:38  zmedico

	* pym/portage/data.py: Add missing sys import.

2007-03-03 09:49  zmedico

	* pym/portage/__init__.py, pym/portage/locks.py: For bug #138840,
	  show a more informative message when waiting for a distfiles lock
	  due to parallel-fetch. Thanks to David Watzke <david@watzke.cz>
	  for the initial patch.

2007-03-03 08:54  zmedico

	* pym/emerge/__init__.py: s/node/selected_parent/ for clarity

2007-03-03 06:15  antarus

	* pym/portage/versions.py: remove category regex, dumb idea, sorry
	  I did it

2007-03-03 01:53  zmedico

	* pym/portage/__init__.py: Fix types.InstanceType test which is
	  failing now for some reason.

2007-03-03 01:19  zmedico

	* pym/emerge/__init__.py: For bug #169046, fill in the --tree
	  display with "nomerge" nodes so that the user can always see at
	  lease 1 parent on any non-root node. Packages may appear in the
	  display list multiple times, and will be marked "nomerge" when
	  their position in the list does not correspond to actual merge
	  order.

2007-03-02 20:06  zmedico

	* pym/emerge/__init__.py: When emerge automatically resumes, add
	  --ignore-default-opts to the command line in order to prevent
	  things like --ask from leaking in via EMERGE_DEFAULT_OPTS. Thanks
	  to Peter Weller <welp@gentoo.org> for reporting.

2007-03-02 07:23  zmedico

	* cnf/make.globals, pym/emerge/__init__.py: For bug #168646, remove
	  --prune-empty-dirs from PORTAGE_RSYNC_OPTS since it's only a
	  small optimization and it's inconvenient to force >=rsync-2.6.4
	  on server admins at this time. If users desire, they can still
	  add it to PORTAGE_RSYNC_EXTRA_OPTS.

2007-03-02 01:47  zmedico

	* pym/emerge/__init__.py: Even if there's no timestamp available
	  locally, fetch the timestamp anyway as an initial probe to verify
	  that the server is responsive. This protects us from hanging
	  indefinitely on a connection attempt to an unresponsive server
	  which rsync's --timeout option does not prevent.

2007-03-02 00:10  zmedico

	* pym/emerge/__init__.py: Remove unnecessary print statement
	  reported by solar.

2007-03-01 23:47  zmedico

	* pym/emerge/__init__.py: Fix broken rsync exitcode shift.

2007-03-01 23:31  zmedico

	* pym/emerge/__init__.py, pym/portage/cache/fs_template.py: Fix the
	  rest of the broken except statement syntax.

2007-03-01 23:18  zmedico

	* pym/emerge/__init__.py: Fix broken except statement syntax.

2007-03-01 22:20  zmedico

	* pym/emerge/__init__.py: For consistency, remove exit code 2
	  (protocol incompatibility) from the other list of rsync exit
	  codes.

2007-03-01 22:06  zmedico

	* bin/etc-update: Add compatibility code to avoid the GNU specific
	  --reference option of chmod. Thanks to Timothy Redaelli
	  <drizzt@gentoo.org>.

2007-03-01 21:19  solar

	* pym/emerge/__init__.py: - please be --quiet emerge. still need to
	  hunt down one more newline

2007-03-01 20:49  zmedico

	* pym/emerge/__init__.py: Make sure pids are appropriately removed
	  from portage.process.spawned_pids.

2007-03-01 20:37  zmedico

	* pym/emerge/__init__.py: Use an alarm signal to implement a
	  timeout when rsync is fetching the server timestamp file, since
	  rsync's --timeout option doesn't apply to the initial connection
	  attempt.

2007-03-01 19:03  zmedico

	* pym/portage/dbapi/vartree.py: Fix misplaced [1]

2007-03-01 12:44  zmedico

	* pym/emerge/__init__.py: For bug #168646, don't bail out
	  immediately when rsync detects protocol incompatibility (code 2)
	  during fetching of the timestamp file. Retry for a better server
	  (up to PORTAGE_RSYNC_RETRIES).

2007-03-01 03:35  zmedico

	* pym/portage/dbapi/vartree.py: For bug #168823, fix broken except
	  statement syntax that prevents the ValueError from being caught
	  as intended.

2007-02-28 14:45  vapier

	* man/emerge.1: update --help example to match current behavior
	  #168678 by Arthur Hagen

2007-02-27 21:45  zmedico

	* pym/portage/__init__.py: Merged from branches/prefix r6092:6093.
	  
	  Avoid "TypeError: unpack non-sequence" backtraces, and return a
	  set of
	  None, None when was asked for the location.

2007-02-27 21:32  zmedico

	* pym/portage/dbapi/porttree.py: Merged from branches/prefix
	  r6091:6092.
	  
	  Fix undefined whatever 'best' error by importing it from
	  portage.versions

2007-02-27 05:04  zmedico

	* bin/ecompress, man/make.conf.5: For bug #168267, use add --force
	  to the default PORTAGE_COMPRESS_FLAGS so that hardlinks are
	  automatically broken.

2007-02-27 04:54  zmedico

	* bin/ecompressdir: For compatibility with older findutils, don't
	  use the -L predicate (bug #168432).

2007-02-26 03:37  zmedico

	* cnf/make.globals, pym/emerge/__init__.py: For bug #167668, prune
	  empty ${FILESDIR}s by adding --prune-empty-dirs to
	  PORTAGE_RSYNC_OPTS. Thanks to Ulrich Mueller
	  <ulm@kph.uni-mainz.de> for the suggestion.

2007-02-24 12:43  zmedico

	* pym/portage/__init__.py: Clean up os.environ["USERLAND"]
	  pollution from the portage.data module so that it doesn't
	  interfere with repoman.

2007-02-24 00:56  zmedico

	* pym/emerge/__init__.py: Allow --verbose to trigger a merge list
	  even without --pretend, --ask, or --tree. Thanks to agaffney and
	  zlin for the suggestion.

2007-02-23 23:52  zmedico

	* pym/emerge/__init__.py: As requested by solar, never show a merge
	  list unless it's explicitly requested by --ask, --pretend, or
	  --tree.

2007-02-23 23:39  zmedico

	* pym/emerge/__init__.py: As requested by solar, never show a merge
	  list unless it's explicitly requested by --ask, --pretend, or
	  --tree.

2007-02-23 23:20  zmedico

	* bin/prepstrip: Filter paths matching '/<built-in>$' that come
	  from debugedit. Thanks to Ed Catmur for this patch from bug
	  #165342.

2007-02-23 21:26  zmedico

	* pym/emerge/__init__.py: Do not show the spinner and the
	  "Calculating dependencies" message for installation actions when
	  the --nodeps option has been specified. Thanks to David Watzke
	  <david@watzke.cz> for this patch from bug #168169.

2007-02-23 14:11  zmedico

	* pym/portage/__init__.py: Make fetch() bail out when an
	  "Insufficient data for checksum verification" error occurs.

2007-02-23 13:23  zmedico

	* pym/portage/checksum.py: Make verify_all() return an
	  "insufficient data" error if there is not at least one supported
	  hash type.

2007-02-23 10:19  robbat2

	* NEWS: Undoing previous test

2007-02-23 10:03  robbat2

	* NEWS: Testing CIA commit logs, will undo in a moment.

2007-02-23 00:56  zmedico

	* pym/emerge/__init__.py: spawn rsync without a shell.

2007-02-22 23:44  zmedico

	* pym/emerge/__init__.py: Remove quotes since rsync doesn't accept
	  them (and there is no shell to remove them since we use spawn()
	  for rsync now).

2007-02-22 23:42  zmedico

	* cnf/make.globals, pym/emerge/__init__.py: For bug #167668, use an
	  rsync "hide" filter rule to exclude **/files/digest-* and delete
	  them on the receiver.

2007-02-22 22:15  zmedico

	* pym/portage/manifest.py: Don't bother to parse
	  ${FILESDIR}/digest-* when manifest1_compat is disabled.

2007-02-22 21:43  zmedico

	* bin/repoman: For bug #167667, add support for
	  ${PORTDIR}/manifest1_obsolete and automatically remove
	  ${FILESDIR}/digest-* from cvs when appropriate.

2007-02-22 21:37  zmedico

	* pym/portage/__init__.py, pym/portage/manifest.py: For bug
	  #167667, use the existence of ${PORTDIR}/manifest1_obsolete to
	  trigger the disabling of manifest1/digest file generation. This
	  toggle is repo/overlay specific, allowing a specific overlay to
	  drop manifest1 buy adding the manifest1_obsolete file.

2007-02-22 21:10  zmedico

	* pym/portage/__init__.py: Make sure that ${A} in initialized in
	  case pkg_nofetch() needs to be called. Thanks to Peper for
	  reporting.

2007-02-22 20:54  zmedico

	* pym/portage/dbapi/vartree.py: Fix "NameError: global name
	  'myfilelist' is not defined" when collision-protect is enabled.

2007-02-22 13:18  zmedico

	* bin/repoman: Add some sanity checks for file list handling when
	  repolevel < 3.

2007-02-22 13:09  zmedico

	* bin/repoman: Fix broken file list handling for FEATUES=sign when
	  only the Manifest has changed.

2007-02-22 12:48  zmedico

	* bin/repoman: Fix more broken commitmessagefile handling.

2007-02-22 12:30  zmedico

	* bin/repoman: Use startdir instead of mydir since mydir has a
	  trailing slash which triggers normalization issues with the
	  dirname function.

2007-02-22 11:59  zmedico

	* bin/repoman: Avoid a TypeError when commitmessagefile is None.

2007-02-21 10:10  zmedico

	* bin/repoman: Fix stardir and repodir logic from the previous
	  commit.

2007-02-21 09:30  zmedico

	* bin/repoman: For consistency, replace multiple os.getcwd() calls
	  with the "mydir" variable.

2007-02-21 09:25  zmedico

	* bin/repoman: s/x/xs/ to fix a typo in a variable name.

2007-02-21 04:35  zmedico

	* pym/portage/process.py: Raise a CommandNotFound exception when
	  necessary, to ease troubleshooting. Thanks to marienz for
	  reporting.

2007-02-20 21:48  zmedico

	* pym/portage/dbapi/bintree.py: For bug #167795, try avoid the
	  population routine when possible, so that FEATURES=buildpkg
	  doesn't always force population.

2007-02-20 21:25  zmedico

	* pym/emerge/__init__.py: As requested by vapier, don't show the
	  merge list in --quiet mode unless it's explicitly requested via
	  --ask or --pretend.

2007-02-19 07:33  zmedico

	* pym/emerge/__init__.py: Optimize order for --tree display of
	  circular dependencies.

2007-02-19 07:08  zmedico

	* pym/emerge/__init__.py: Make digraph._merge_order_bias() operate
	  on a single digraph that's passed in.

2007-02-19 06:35  zmedico

	* pym/emerge/__init__.py: For bug #167450, optimize leaf node
	  selection by ordering nodes from highest to lowest overall
	  reference count.

2007-02-19 01:24  zmedico

	* pym/emerge/__init__.py: Automatically enable --tree mode when
	  displaying nodes with circular deps.

2007-02-19 00:45  zmedico

	* pym/emerge/__init__.py: For bug #166564, make a circular
	  dependency panic more user friendly by displaying the USE flags
	  that are enabled on nodes that are part of dependency cycles and
	  display a note hinting that circular dependencies can often be
	  avoided by temporarily disabling USE flags.

2007-02-18 23:27  zmedico

	* bin/ebuild.sh: Don't exclude . since that excludes the entire
	  contents of some tar files.

2007-02-18 23:15  zmedico

	* bin/ebuild.sh: When calling tar, always exclud . in order to
	  preserver PORTAGE_WORKDIR_MODE. Thanks to Brian Harring in bug
	  #167544.

2007-02-18 22:21  zmedico

	* pym/emerge/__init__.py: For bug #166880, always display the merge
	  list header.

2007-02-18 21:55  zmedico

	* pym/emerge/__init__.py: For bug #166880, always display the merge
	  list (allowing --tree to be obeyed in any case).

2007-02-18 20:45  zmedico

	* pym/emerge/__init__.py: For bug #167450, optimize merge order by
	  delaying the merge of root nodes.

2007-02-18 20:19  genone

	* pym/portage/dbapi/vartree.py: set.remove() returns None, so can't
	  use it in a function call

2007-02-18 19:28  genone

	* pym/portage/dbapi/vartree.py: Move preserve-libs and
	  collision-protect code from treewalk() into their own functions

2007-02-18 18:27  genone

	* pym/portage/dbapi/vartree.py: extend check for internal
	  references, should remove all libs that are only used internally
	  now

2007-02-18 15:38  genone

	* pym/portage/dbapi/vartree.py: Move reverse NEEDED cache into
	  CACHE_PATH and use a more descriptive name

2007-02-18 08:45  zmedico

	* pym/portage/dbapi/bintree.py: For bug #163990, warn about binary
	  packages with invalid categories and do not allow them to be
	  installed.

2007-02-18 08:22  zmedico

	* pym/portage/dbapi/porttree.py: For bug #163990, warn about
	  ebuilds with invalid categories and do not allow them to be
	  installed.

2007-02-18 07:47  zmedico

	* bin/emaint: For bug #166785, check for invalid categories in the
	  world file.

2007-02-17 19:30  zmedico

	* pym/emerge/__init__.py: Fix package.provided breakage from the
	  fix for bug #166939.

2007-02-17 19:12  zmedico

	* pym/emerge/__init__.py: Remove unnecessary import that triggers
	  DEPRECATION NOTICE.

2007-02-17 19:08  zmedico

	* pym/emerge/__init__.py: For bug #166939, make --nodeps work like
	  a normal package for new-style virtuals.

2007-02-17 13:11  genone

	* pym/cvstree.py, pym/dispatch_conf.py, pym/eclass_cache.py,
	  pym/emergehelp.py, pym/getbinpkg.py, pym/output.py,
	  pym/portage_checksum.py, pym/portage_compat_namespace.py,
	  pym/portage_const.py, pym/portage_data.py, pym/portage_debug.py,
	  pym/portage_dep.py, pym/portage_exception.py,
	  pym/portage_exec.py, pym/portage_gpg.py,
	  pym/portage_localization.py, pym/portage_locks.py,
	  pym/portage_mail.py, pym/portage_manifest.py,
	  pym/portage_news.py, pym/portage_selinux.py,
	  pym/portage_update.py, pym/portage_util.py,
	  pym/portage_versions.py, pym/xpak.py: Replace compat symlinks
	  with a new compat module as the symlink solution prevents reuse
	  of state information (requested by ferringb)

2007-02-17 13:10  genone

	* pym/portage_exec.py: Remove portage_exec.py as subversion is
	  stupid and can't convert it in one step

2007-02-17 11:21  genone

	* bin/emerge: For full backwards compat (with symlinks or other
	  weird stuff) import everything into the main namespace

2007-02-17 11:07  genone

	* bin/emerge, pym/emerge/__init__.py: Move bin/emerge to
	  pym/emerge/__init__.py to restore old import behavior as the
	  load_source solution doesn't work properly

2007-02-17 10:46  genone

	* pym/emerge/__init__.py: Make emerge importable again without
	  relying on module search path order

2007-02-17 09:14  genone

	* bin/emerge: Print hostname in xterm title if sheridan is
	  available in the environment

2007-02-17 08:53  genone

	* pym, pym/emerge, pym/portage, pym/portage/cache,
	  pym/portage/dbapi, pym/portage/dbapi/vartree.py,
	  pym/portage/elog, pym/portage/tests, pym/portage/tests/bin,
	  pym/portage/tests/dep, pym/portage/tests/news,
	  pym/portage/tests/util, pym/portage/tests/versions: Ignore
	  compiled files.
	  
	  Add new feature 'preserve-libs' that injects files into $D that
	  - belong to a package instance that is about to be autocleaned
	  - are not installed by the new package instance
	  - are listed in at least one NEEDED file in vdb
	  - are not just used by other files of the package instance
	  As a side-effect a new file /var/db/pkg/.NEEDED is created that
	  contains a reversed map of the NEEDED files found in a packages
	  dbdir.

2007-02-17 04:17  genone

	* bin/emerge, pym/portage/__init__.py: Print filename when
	  displaying package.mask comments

2007-02-17 03:53  genone

	* bin/emerge-webrsync: Add support for RSYNC_EXTRA_OPTS to webrsync

2007-02-15 20:23  zmedico

	* bin/etc-update: Add missing quotes.

2007-02-15 20:21  zmedico

	* bin/etc-update: Fix CONFIG_PROTECT_MASK support. Thanks to piavlo
	  <piavka@cs.bgu.ac.il> for this patch from bug #166837.

2007-02-14 22:48  zmedico

	* bin/emerge: Optimize merge order calculation for --tree output
	  when necessary.

2007-02-14 18:27  zmedico

	* bin/emerge: For bug #158100, use an exact reversal of the actual
	  merge order for --tree output. It's more efficient than doing 2
	  order calculations.

2007-02-13 19:57  zmedico

	* pym/portage/elog/__init__.py: Fix broken imports.

2007-02-13 19:25  zmedico

	* pym/portage/__init__.py: Detect potential issues with mtime
	  granlarity in env_update() and sleep if necessary. Thanks to
	  Brian Harring for reporting.

2007-02-13 19:22  zmedico

	* pym/portage/dbapi/vartree.py: Fix missing imports.

2007-02-13 00:38  vapier

	* cnf/make.conf: tweak PORT_LOGDIR comments so as to not give the
	  wrong impression about the default value

2007-02-12 07:04  zmedico

	* bin/emerge: In the event of a circular dependency panic,
	  eliminate root nodes in order to reduce the noise level to a
	  minimum.

2007-02-11 01:13  genone

	* pym/elog_modules, pym/portage/__init__.py,
	  pym/portage/dbapi/vartree.py, pym/portage/elog,
	  pym/portage/elog/__init__.py, pym/portage/elog_modules: Make
	  subpackage naming consistent

2007-02-11 01:07  zmedico

	* pym/portage/dbapi/bintree.py: import best() from portage.versions

2007-02-11 00:57  genone

	* pym/portage/dbapi/__init__.py, pym/portage/dbapi/bintree.py,
	  pym/portage/dbapi/porttree.py, pym/portage/dbapi/vartree.py,
	  pym/portage/dbapi/virtual.py: Use the real symbols in import
	  statements, not the references in __init__.py

2007-02-10 22:18  zmedico

	* pym/portage/output.py: Make xterm titles work even when color is
	  disabled. Thanks to Joachim Kaeber <joachim.kaeber@web.de> in bug
	  #166255.

2007-02-10 22:04  zmedico

	* pym/portage/dbapi/vartree.py: Add missing VDB_PATH to fix
	  vardbapi.aux_get() breakage.

2007-02-10 21:59  zmedico

	* pym/portage/dbapi/vartree.py: Fix vardb.cpv_all() breakage.

2007-02-10 21:50  zmedico

	* pym/portage/dbapi/porttree.py: Fix missing stat import.

2007-02-10 21:47  zmedico

	* pym/portage/dbapi/vartree.py: Break a recursive loop.

2007-02-10 21:43  zmedico

	* bin/archive-conf, bin/chkcontents, bin/clean_locks,
	  bin/dispatch-conf, bin/ebuild, bin/emaint, bin/emerge,
	  bin/env-update, bin/fix-db.py, bin/fixpackages, bin/md5check.py,
	  bin/pkgname, bin/portageq, bin/regenworld, bin/repoman, bin/xpak:
	  Use os.path.realpath to handle symlinks properly.

2007-02-10 20:43  zmedico

	* pym/portage/dbapi/porttree.py: fix broken imports

2007-02-10 20:36  zmedico

	* pym/portage/dbapi/vartree.py: remove broken dblink import

2007-02-10 20:26  zmedico

	* bin/archive-conf, bin/chkcontents, bin/clean_locks,
	  bin/dispatch-conf, bin/ebuild, bin/emaint, bin/emerge,
	  bin/env-update, bin/fix-db.py, bin/fixpackages, bin/md5check.py,
	  bin/pkgname, bin/portageq, bin/regenworld, bin/repoman, bin/xpak:
	  Fix automatic sys.path insertions so that they're relative
	  instead of absolute hard coded.

2007-02-10 20:01  zmedico

	* pym/emerge/__init__.py: Fix imports from the emerge package.

2007-02-10 19:56  zmedico

	* pym/portage/dbapi/vartree.py: fix syntax

2007-02-10 18:18  genone

	* pym/portage/__init__.py, pym/portage/dbapi,
	  pym/portage/dbapi/__init__.py, pym/portage/dbapi/bintree.py,
	  pym/portage/dbapi/porttree.py, pym/portage/dbapi/vartree.py,
	  pym/portage/dbapi/virtual.py: Move dbapi and related classes out
	  of __init__.py into their own subpackage.
	  Also perform some minor cleanups.

2007-02-10 18:15  antarus

	* pym/portage/dep.py: add docstrings

2007-02-10 04:46  antarus

	* pym/portage/tests/__init__.py,
	  pym/portage/tests/dep/test_dep_getusedeps.py,
	  pym/portage/tests/dep/test_get_operator.py: fix a few broken
	  tests

2007-02-10 03:19  antarus

	* TEST-NOTES: update test notes

2007-02-08 13:39  genone

	* bin/emerge, pym/emerge, pym/emerge/help.py, pym/emergehelp.py,
	  pym/portage/emergehelp.py: Create namespace for emerge

2007-02-08 04:38  antarus

	* bin/ebuild.sh, bin/isolated-functions.sh: die requires diefunc
	  and dump_trace too; duh; also move extdebug into
	  isolated-functions.sh

2007-02-08 04:22  zmedico

	* bin/repoman: Make the "lfull" output more succinct by omitting
	  categories for which there are no violations.

2007-02-08 02:38  zmedico

	* pym/portage/tests/dep/test_isvalidatom.py: Turn on strict dep
	  checking to fix the isvalidatom test.

2007-02-07 23:40  zmedico

	* pym/portage/__init__.py, pym/portage/manifest.py: Synchronize
	  required hash code in all relevant places.

2007-02-07 23:01  zmedico

	* bin/repoman: For bug #165783, handle a potential
	  InvalidDependString exception in repoman and report a
	  SRC_URI.syntax failure.

2007-02-07 22:24  zmedico

	* pym/portage/__init__.py: For bug #165783, handle a potential
	  InvalidDependString exception inside doebuild().

2007-02-07 21:54  zmedico

	* bin/repoman: Enable strict dep checking for repoman.

2007-02-07 21:47  zmedico

	* pym/portage/__init__.py: For bug #165783, handle a potential
	  InvalidDependString exception inside digestgen().

2007-02-07 21:11  zmedico

	* bin/dispatch-conf, bin/emerge: For bug #165780, make
	  config-protect code consistently ignore '.*~' and '.*.bak'.

2007-02-07 20:45  zmedico

	* bin/isolated-functions.sh: Only echo PORTAGE_LOG_FILE if it's
	  actually set (may not be if sesandbox is enabled).

2007-02-07 20:33  antarus

	* bin/ebuild.sh, bin/isolated-functions.sh: move die into
	  isolated-functions.sh

2007-02-07 19:54  zmedico

	* bin/emerge: For bug #165783, handle an InvalidDependString
	  exception triggered by an invalid SRC_URI.

2007-02-07 19:27  zmedico

	* bin/ebuild, bin/emerge, pym/portage/dep.py: For backward
	  compatibility with api consumers, _dep_check_strict behavior will
	  be explicitly enabled as necessary. Thanks to Brian
	  <dol-sen@telus.net> for reporting issues with porthole and
	  equery.

2007-02-06 21:45  zmedico

	* man/portage.5: Update modules doc for the new portage namespace.

2007-02-06 18:45  zmedico

	* man/make.conf.5: Document PORTAGE_WORKDIR_MODE for bug #8688.
	  Thanks to Peter Hjalmarsson in bug #164617.

2007-02-06 09:36  zmedico

	* pym/portage/__init__.py: Make sure to fetch files if
	  MANIFEST2_REQUIRED_HASH is missing.

2007-02-06 09:28  genone

	* pym/portage/manifest.py: Check if entries contain the required
	  hashes before writing the Manifest

2007-02-05 21:24  zmedico

	* bin/emerge: For bug #165382, show a helpful message if an
	  exception is raised from cpv_expand().

2007-02-05 20:13  zmedico

	* bin/emerge: Fix another UnboundLocalError (branches/prefix r5893)

2007-02-05 06:46  zmedico

	* pym/portage/__init__.py: Ensure that the code for bug #165342
	  only affects name collisions with virtuals.

2007-02-05 06:27  zmedico

	* pym/portage/__init__.py: For bug #165382, don't raise a
	  ValueError in cpv_expand() if there are only two matches and one
	  of them is a virtual. Prefer the non-virtual instead.

2007-02-05 01:22  zmedico

	* man/emerge.1: Document --config-root for bug #165334.

2007-02-05 00:00  zmedico

	* bin/repoman: For bug #165349, use the portage_versions regex (via
	  pkgsplit) instead of the incompatible ones that repoman currently
	  uses.

2007-02-03 23:49  zmedico

	* bin/emerge: Fix "UnboundLocalError: local variable 'portage'
	  referenced before assignment" caused by a local import hiding a
	  global import.

2007-02-03 12:03  zmedico

	* pym/portage/cache/util.py: In order to correctly handl the case
	  of target caches that don't have complete eclass entries,
	  validate the set of interited eclasses to make sure it is correct
	  (since timestamp validation is not applicable).

2007-02-03 11:16  zmedico

	* bin/ebuild.sh: Fix a typo from the previos commit.

2007-02-03 11:13  zmedico

	* bin/ebuild.sh: Use ! -type l to exclude symlinks better. Thanks
	  to marienz.

2007-02-03 10:26  zmedico

	* bin/ebuild.sh: For bug #165034, make sure that symlinks are
	  excluded from chmod calls.

2007-02-03 05:20  zmedico

	* pym/portage/tests/dep/test_isvalidatom.py: Make the tests pass.

2007-02-03 00:26  zmedico

	* pym/portage/__init__.py: For bug #165065, use the proper RESTRICT
	  setting when fetching files in digestgen().

2007-02-02 00:42  antarus

	* pym/portage/tests/portage: grrr I thought I removed this

2007-02-02 00:36  antarus

	* pym/portage/tests/__init__.py, pym/portage/tests/dep,
	  pym/portage/tests/news, pym/portage/tests/portage/dep,
	  pym/portage/tests/portage/news,
	  pym/portage/tests/portage/portage,
	  pym/portage/tests/portage/util,
	  pym/portage/tests/portage/versions, pym/portage/tests/util,
	  pym/portage/tests/versions: remove redundant directory now

2007-02-01 22:41  zmedico

	* pym/portage/__init__.py: For bug #153109, replace our old chflags
	  module with the one provided by the py-freebsd package. Thanks to
	  Diego Pettenò <flameeyes@gentoo.org> for the initial patch.

2007-02-01 20:13  antarus

	* man/make.conf.5: add warning about storing data in PORTDIR

2007-02-01 20:06  zmedico

	* bin/emerge: Rename dir.bz2 since that's the most likely case now.

2007-02-01 19:00  antarus

	* pym/portage/tests/portage/portage,
	  pym/portage/tests/portage/portage/__init__.py,
	  pym/portage/tests/portage/portage/dep,
	  pym/portage/tests/portage/portage/news,
	  pym/portage/tests/portage/portage/util,
	  pym/portage/tests/portage/portage/versions, tests: apparently I'm
	  retarded and missed some of the tests..

2007-02-01 18:58  antarus

	* pym/portage/tests, pym/portage/tests/__init__.py,
	  pym/portage/tests/portage/dep,
	  pym/portage/tests/portage/dep/test_dep_getusedeps.py,
	  pym/portage/tests/runTests: A somewhat more intelligent layout,
	  move tests into portaage namespace so we can import them easier,
	  seems to be a more common layout from what I've seen. Also
	  rewrite the test runner to work with new layout

2007-02-01 18:26  antarus

	* pym/portage/dep.py, tests/__init__.py,
	  tests/portage/dep/test_dep_getusedeps.py: fix doc typo; more test
	  fiddling

2007-02-01 07:09  zmedico

	* bin/emerge: Fix --newuse so that it works correctly with
	  --usepkg.

2007-02-01 06:15  zmedico

	* bin/emerge: Load the most current variables from /etc/profile.env
	  for post_emerge stuff.

2007-02-01 05:50  antarus

	* tests/portage/dep/test_dep_getcpv.py: fix regression in test
	  changes

2007-02-01 05:46  antarus

	* tests/portage/dep/test_dep_getcpv.py,
	  tests/portage/dep/test_get_operator.py: increase test coverage to
	  cover slots, uncovering a few corner cases that need fixing

2007-02-01 05:25  antarus

	* pym/portage/dep.py: Round one of dep_getusedeps()

2007-02-01 05:22  antarus

	* tests/portage/dep/test_dep_getusedep.py,
	  tests/portage/dep/test_dep_getusedeps.py: rename file

2007-02-01 05:22  antarus

	* tests/portage/dep/test_dep_getslot.py,
	  tests/portage/dep/test_dep_getusedep.py,
	  tests/portage/dep/test_isvalidatom.py: add some new tests

2007-01-31 22:46  zmedico

	* pym/portage/__init__.py: Don't use os.path.isdir() because it can
	  swallow errors related to filesystem/disk corruption.

2007-01-31 05:44  vapier

	* bin/quickpkg: try and fix $Rev$

2007-01-31 05:43  vapier

	* bin/quickpkg: try and fix $LastChangedRevision$

2007-01-31 05:41  vapier

	* bin/quickpkg: add some useful options

2007-01-31 00:07  zmedico

	* bin/ebuild.sh: Use find + xargs to avoid a potential 'Argument
	  list too long' from bash. Thanks to solar for reporting.

2007-01-30 23:28  zmedico

	* bin/ebuild.sh: For bug #164617, don't change permissions on
	  ${WORKDIR} with unpack().

2007-01-30 22:31  zmedico

	* bin/emerge-webrsync: For bug #164532, don't rely on ${USERLAND}
	  since the portage tree might be empty.

2007-01-30 20:52  zmedico

	* bin/emerge: Fix "UnboundLocalError: local variable 'portage'
	  referenced before assignment" caused by an unnecessary local
	  import hiding a global import.

2007-01-30 08:11  zmedico

	* bin/emerge: For bug #164363, shuffle the ip addresses returned
	  from socket.getaddrinfo().

2007-01-29 01:13  zmedico

	* bin/emerge: For bug #164078, don't trigger the CLEAN_DELAY
	  countdown for autoclean operations since those are most likely
	  unattended. Thanks to Dan <hydrogen@notyetimplemented.com> for
	  the initial patch.

2007-01-28 23:41  vapier

	* bin/ecompressdir: add support for transparently decompressing
	  gz/Z/bz2 files since some upstream packages will compress for us

2007-01-28 22:10  zmedico

	* bin/repoman: Minor cleanup for the LIVEVCS.stable code.

2007-01-28 20:31  genone

	* bin/repoman: Can't delete variable that doesn't exist anymore
	  (bug #164280)

2007-01-28 19:04  antarus

	* bin/env-update, tests/bin: use errno.EACCES as suggested by Brian
	  Harring

2007-01-28 10:53  vapier

	* bin/check-implicit-pointer-usage.py: translate unicode quotes to
	  ascii ones so we can keep our regex simple

2007-01-28 10:31  genone

	* bin/env-update: Catch EACCESS when running env-update, orignal
	  patch by <phajdan.jr@gmail.com> (bug #106061)

2007-01-28 08:07  genone

	* make.conf.txt, man/make.conf.5: Add a warning about confcache to
	  make.conf(5)

2007-01-28 01:08  zmedico

	* bin/emerge: Remove a stray print statement. Thanks to Rick Warner
	  in bug #125261.

2007-01-27 22:58  zmedico

	* bin/emerge, pym/portage/__init__.py: Ignore EEXIST from rmdir
	  since some kernels (such as solaris) return that instead of
	  ENOTEMPTY.

2007-01-27 19:41  vapier

	* bin/check-implicit-pointer-usage.py: add support for parsing of
	  unicode quotes

2007-01-27 18:23  antarus

	* tests/__init__.py: fix minor sed overzeallousness

2007-01-27 18:16  antarus

	* tests/portage/dep, tests/portage/dep/__init__.py,
	  tests/portage/dep/test_dep_getcpv.py,
	  tests/portage/dep/test_dep_getslot.py,
	  tests/portage/dep/test_get_operator.py,
	  tests/portage/dep/test_isjustname.py,
	  tests/portage/dep/test_isvalidatom.py,
	  tests/portage/dep/test_match_from_list.py, tests/portage/news,
	  tests/portage/news/__init__.py,
	  tests/portage/news/test_NewsItem.py, tests/portage/util,
	  tests/portage/util/__init__.py,
	  tests/portage/util/test_grabdict.py,
	  tests/portage/util/test_normalizedPath.py,
	  tests/portage/util/test_stackDictList.py,
	  tests/portage/util/test_stackDicts.py,
	  tests/portage/util/test_stackLists.py,
	  tests/portage/util/test_uniqueArray.py,
	  tests/portage/util/test_varExpand.py, tests/portage/versions,
	  tests/portage/versions/__init__.py,
	  tests/portage/versions/test_vercmp.py, tests/portage_dep,
	  tests/portage_news, tests/portage_util, tests/portage_versions:
	  Move tests into new directory structure

2007-01-27 18:14  antarus

	* tests/portage_news/test_NewsItem.py: add test to entice svn mv

2007-01-27 18:12  antarus

	* tests/__init__.py, tests/portage_dep/__init__.py,
	  tests/portage_dep/test_dep_getcpv.py,
	  tests/portage_dep/test_dep_getslot.py,
	  tests/portage_dep/test_get_operator.py,
	  tests/portage_dep/test_isjustname.py,
	  tests/portage_dep/test_isvalidatom.py,
	  tests/portage_dep/test_match_from_list.py,
	  tests/portage_news/__init__.py, tests/portage_util/__init__.py,
	  tests/portage_util/test_grabdict.py,
	  tests/portage_util/test_normalizedPath.py,
	  tests/portage_util/test_stackDictList.py,
	  tests/portage_util/test_stackDicts.py,
	  tests/portage_util/test_stackLists.py,
	  tests/portage_util/test_uniqueArray.py,
	  tests/portage_util/test_varExpand.py,
	  tests/portage_versions/__init__.py,
	  tests/portage_versions/test_vercmp.py: fix namespacing in tests

2007-01-27 04:49  vapier

	* bin/portageq: if requested argv cannot be matched to anything,
	  exit with non-zero status

2007-01-27 01:39  zmedico

	* bin/emerge: For consistency, do not imply --pretend with
	  --changelog since that prevents --changelog from being usable in
	  EMERGE_DEFAULTS_OPTS. Thanks to Ryan Hill <dirtyepic@gentoo.org>
	  in #151250.

2007-01-25 21:53  genone

	* pym/portage/const.py: Fix automatic path detection to account for
	  new location

2007-01-25 18:34  genone

	* pym/portage_exec.py: Fix broken symlink caused by exec module
	  rename

2007-01-25 17:41  genone

	* NEWS, RELEASE-NOTES: Document namespace sanitizing

2007-01-25 17:37  genone

	* bin/emerge, pym/portage/__init__.py: Namespace sanitizing, step 5

2007-01-25 17:25  genone

	* bin/archive-conf, bin/clean_locks, bin/dispatch-conf, bin/ebuild,
	  bin/emaint, bin/fix-db.py, bin/md5check.py, bin/repoman:
	  Namespace sanitizing, step 4

2007-01-25 17:17  genone

	* pym/portage/__init__.py, pym/portage/cache/metadata.py: Fix some
	  breakage caused by script malfunction

2007-01-25 17:07  genone

	* pym/portage/__init__.py, pym/portage/cache/anydbm.py,
	  pym/portage/cache/flat_hash.py, pym/portage/cache/flat_list.py,
	  pym/portage/cache/fs_template.py, pym/portage/cache/metadata.py,
	  pym/portage/cache/metadata_overlay.py,
	  pym/portage/cache/sql_template.py, pym/portage/cache/sqlite.py,
	  pym/portage/cache/template.py, pym/portage/cache/util.py,
	  pym/portage/cache/volatile.py, pym/portage/checksum.py,
	  pym/portage/data.py, pym/portage/elog_modules/mod_custom.py,
	  pym/portage/emergehelp.py, pym/portage/getbinpkg.py,
	  pym/portage/gpg.py, pym/portage/localization.py,
	  pym/portage/versions.py: Namespace sanitizing, step 3

2007-01-25 16:25  genone

	* pym/portage/cache/fs_template.py, pym/portage/cache/sqlite.py,
	  pym/portage/elog_modules/mod_custom.py,
	  pym/portage/elog_modules/mod_mail.py,
	  pym/portage/elog_modules/mod_mail_summary.py,
	  pym/portage/elog_modules/mod_save.py,
	  pym/portage/elog_modules/mod_save_summary.py,
	  pym/portage/elog_modules/mod_syslog.py: Namespace sanitizing,
	  step 2b

2007-01-25 16:20  genone

	* pym/portage/__init__.py, pym/portage/checksum.py,
	  pym/portage/data.py, pym/portage/debug.py, pym/portage/dep.py,
	  pym/portage/eclass_cache.py, pym/portage/exec.py,
	  pym/portage/gpg.py, pym/portage/localization.py,
	  pym/portage/locks.py, pym/portage/mail.py,
	  pym/portage/manifest.py, pym/portage/news.py,
	  pym/portage/output.py, pym/portage/process.py,
	  pym/portage/update.py, pym/portage/util.py,
	  pym/portage/versions.py: Namespace sanitizing, step 2
	  Rename portage.exec to portage.process to avoid syntax errors

2007-01-25 15:51  genone

	* pym/cache, pym/elog_modules: Adding compat symlinks for cache and
	  elog packages

2007-01-25 15:49  genone

	* pym/cache, pym/cvstree.py, pym/dispatch_conf.py,
	  pym/eclass_cache.py, pym/elog_modules, pym/emergehelp.py,
	  pym/getbinpkg.py, pym/output.py, pym/portage, pym/portage.py,
	  pym/portage/__init__.py, pym/portage/cache,
	  pym/portage/checksum.py, pym/portage/const.py,
	  pym/portage/cvstree.py, pym/portage/data.py,
	  pym/portage/debug.py, pym/portage/dep.py,
	  pym/portage/dispatch_conf.py, pym/portage/eclass_cache.py,
	  pym/portage/elog_modules, pym/portage/emergehelp.py,
	  pym/portage/exception.py, pym/portage/exec.py,
	  pym/portage/getbinpkg.py, pym/portage/gpg.py,
	  pym/portage/localization.py, pym/portage/locks.py,
	  pym/portage/mail.py, pym/portage/manifest.py,
	  pym/portage/news.py, pym/portage/output.py,
	  pym/portage/selinux.py, pym/portage/update.py,
	  pym/portage/util.py, pym/portage/versions.py,
	  pym/portage/xpak.py, pym/portage_checksum.py,
	  pym/portage_const.py, pym/portage_data.py, pym/portage_debug.py,
	  pym/portage_dep.py, pym/portage_exception.py,
	  pym/portage_exec.py, pym/portage_gpg.py,
	  pym/portage_localization.py, pym/portage_locks.py,
	  pym/portage_mail.py, pym/portage_manifest.py,
	  pym/portage_news.py, pym/portage_selinux.py,
	  pym/portage_update.py, pym/portage_util.py,
	  pym/portage_versions.py, pym/xpak.py: Namespace sanitizing, step
	  1

2007-01-24 01:40  genone

	* bin/repoman: demote KEYWORDS.missing to a warning to make
	  KEYWORDS='' valid

2007-01-23 23:49  zmedico

	* pym/portage.py: Fix broken line number counting for CONTENTS.

2007-01-23 21:38  zmedico

	* pym/portage.py: For bug #142279, detect and warn about null bytes
	  in CONTENTS.

2007-01-23 18:03  genone

	* man/portage.5: Update package.keywords section in portage(5) with
	  info about new ** token

2007-01-23 17:41  genone

	* NEWS, pym/portage.py: Add new ** for package.keywords token to
	  bypass keyword visibility layer

2007-01-22 11:24  zmedico

	* pym/portage.py: For bug #163219, handle binpkgs that have missing
	  PF metadata.

2007-01-21 22:14  zmedico

	* pym/portage.py, pym/portage_exception.py: For bug #163083, handle
	  an UnsupportedAPIException thrown from the prerm phase.

2007-01-21 07:20  zmedico

	* pym/portage.py: To ease transition while Manifest 1 is being
	  removed, only require hashes that will exist before and after the
	  transition.

2007-01-21 00:40  zmedico

	* pym/portage.py: Don't require MANIFEST2 hashes since that can
	  trigger excessive fetches when sufficient digests already exist.
	  Thanks to vapier for reporting.

2007-01-20 22:59  zmedico

	* man/emerge.1: Minor fixes thanks to Fabio Correa
	  <facorread@alexandria.cc> in bug #162647.

2007-01-20 22:02  zmedico

	* bin/ecompressdir: Use XARGS for portable xargs handling when find
	  doesn't find any files. (branches/2.1.2 r5740)

2007-01-20 20:07  zmedico

	* bin/emerge: For bug #161356, prevent an AttributeError if the
	  exception has no __module__ attribute.

2007-01-20 20:02  zmedico

	* pym/portage.py: For bug #161356, fix the SLOT match code to
	  handle a KeyError thrown due to a corrupt ebuild.

2007-01-20 16:06  genone

	* pym/portage_const.py, pym/portage_manifest.py: Some minor fixes
	  for manifest code

2007-01-20 13:48  vapier

	* doc/qa.docbook: fix programlisting output to match the sections
	  they are in

2007-01-20 13:43  vapier

	* doc/qa.docbook: forgot to document strict alias warnings

2007-01-19 06:50  zmedico

	* pym/portage_news.py: Fix syntax.

2007-01-19 01:16  zmedico

	* pym/portage.py: For bug #162404, when sesandbox is enabled, only
	  log if PORT_LOGDIR is explicitly enabled since it is possible
	  that local SELinux security policies do not allow ouput to be
	  piped out of the sesandbox domain.

2007-01-18 23:50  zmedico

	* bin/emerge: Simplify rsync timestamp.chk handling and print the
	  correct path for bug #50738. Thanks to jeka for reporting on irc.

2007-01-18 20:48  zmedico

	* pym/portage_dep.py: Raise an informative InvalidData exception
	  instead of 'TypeError: unsubscriptable object' when pkgsplit
	  returns None.

2007-01-18 20:37  zmedico

	* pym/portage.py: Validate ebuild names inside portdbapi.cp_list()
	  in order to prevent problems later on. Thanks to delusions for
	  reporting on irc.

2007-01-18 20:06  genone

	* pym/portage_news.py: Unified try-except-finally only works with
	  python-2.5

2007-01-18 20:03  antarus

	* pym/portage_news.py: don't force a comparison

2007-01-18 20:00  genone

	* pym/portage.py: Don't load a module if there is nothing to
	  process after filtering

2007-01-18 19:45  genone

	* cnf/make.conf: update make.conf.example with per-module filtering

2007-01-18 19:41  genone

	* pym/portage.py: Allow per-module filtering based on loglevels in
	  addition to the global PORTAGE_ELOG_CLASSES one, add wildcard
	  support for loglevels

2007-01-18 19:27  genone

	* pym/portage_news.py: more trivial fixes

2007-01-18 17:39  antarus

	* pym/portage_news.py: but news lib path is global, not an attr

2007-01-18 17:37  antarus

	* pym/portage_news.py: I really meant NEWS_LIB_PATH
	  (/var/lib/gentoo) but decent idea to have a timestamp per repo ;)

2007-01-18 16:58  genone

	* pym/portage_news.py: Attribute error

2007-01-18 16:45  genone

	* bin/portageq: Syntax error

2007-01-18 07:15  antarus

	* pym/portage_news.py: locking, try 100

2007-01-18 06:59  antarus

	* pym/portage_news.py: lock file around chown/chmod

2007-01-18 06:34  antarus

	* bin/emerge, pym/portage_news.py: fix apply_permissions import and
	  use keyworded args in the call, as well as PORTAGE_INST_UID
	  instead of root, also fix some spacies in emerge, thanks for Zac
	  for reporting

2007-01-18 06:23  antarus

	* bin/emerge, pym/portage_util.py: dump emerge's normpath in favor
	  of portage_util's normalize_path

2007-01-18 06:19  antarus

	* pym/portage_news.py: add try finally blocks around locking for
	  news

2007-01-18 04:18  vapier

	* bin/misc-functions.sh: arm supports sane exec stack stuff now

2007-01-18 04:17  vapier

	* bin/misc-functions.sh: superh supports sane exec stack stuff now

2007-01-18 01:53  vapier

	* doc, doc/Makefile, doc/custom.xsl, doc/fragment,
	  doc/fragment/date, doc/fragment/version, doc/portage.docbook,
	  doc/qa.docbook: start documenting qa notices so antarus stops
	  whining

2007-01-17 22:58  zmedico

	* pym/portage.py: Use elif where appropriate. Thanks to ferringb.

2007-01-17 21:42  zmedico

	* pym/portage.py: For bug #162404, spawn tee outside the sesandbox
	  domain so that it reads from a pipe between two domains.

2007-01-17 09:07  zmedico

	* bin/ebuild.sh: Remove one last reference to ${tarvars}.

2007-01-17 02:31  zmedico

	* pym/portage.py: Fix elimination of duplicate virtuals between the
	  binpkg repo and installed packages.

2007-01-16 23:49  zmedico

	* pym/portage.py: For --usepkgonly, allow _expand_new_virtuals() to
	  fall back to the vardb in case all binaries aren't available.

2007-01-16 23:05  zmedico

	* pym/portage.py: Prevent packages that are installed but masked
	  from being incorrectly flagged as "available" (unless
	  --usepkgonly is enabled, which currently has no package.mask
	  support).

2007-01-16 22:43  vapier

	* bin/ecompressdir: make sure we rename links and not just what
	  they point to #162451

2007-01-16 22:37  vapier

	* bin/isolated-functions.sh: make it executable

2007-01-16 21:59  zmedico

	* bin/ebuild.sh: Use the portable -o option for tar. Thanks to
	  Timothy Redaelli <drizzt@gentoo.org> for the patch.

2007-01-16 20:56  zmedico

	* pym/portage.py: Allow --usepkgonly/--getbinpkgonly to work with
	  installed deps when binpkgs aren't available for some packages.
	  Thanks to Brent Baude <ranger@gentoo.org> for reporting.

2007-01-16 20:08  zmedico

	* pym/portage.py: For consistency, respect the use_binaries flag
	  inside _expand_new_virtuals().

2007-01-16 16:59  antarus

	* bin/emerge, pym/portage_const.py, pym/portage_news.py: switch
	  news timestamp and unread/read storage to '/var/lib/gentoo' like
	  the GLEP states.

2007-01-16 16:37  antarus

	* pym/portage_news.py: If repo/profiles/news doesn't exist, return
	  0 updates

2007-01-16 16:35  antarus

	* tests/portage_dep/__init__.py, tests/portage_news,
	  tests/portage_news/__init__.py,
	  tests/portage_versions/__init__.py: fix a few typos in tests

2007-01-16 16:07  antarus

	* bin/emerge, bin/portageq: Various glep 42 fixes, fix up the
	  portageq calls to fail properly, rewrite the news checking code
	  to check news for all repos with a name.

2007-01-16 07:59  zmedico

	* bin/repoman: Replace mktemp with mkstemp since the former is
	  deprecated for security reasons.

2007-01-16 07:40  zmedico

	* bin/repoman: Fix broken commitmessagefile handling.

2007-01-16 02:30  zmedico

	* bin/repoman: For consistency, just use os.environ.

2007-01-16 02:19  zmedico

	* bin/repoman: Make repoman commit removals together with the other
	  changes (instead of with the final Manifest commit).

2007-01-16 01:51  antarus

	* pym/portage.py: dirty dirty lies

2007-01-16 01:37  vapier

	* cnf/make.conf: make.conf is not a manual so only list common
	  FEATURES #161985

2007-01-16 01:36  vapier

	* man/make.conf.5: document FEATURES=sesandbox #161985

2007-01-16 01:36  antarus

	* pym/portage.py, pym/portage_news.py: ferringb pointed out this
	  portroot parameter, ended up not using it, try an os.path.exists
	  to save a very common (and slow) except on missing repo_name
	  files for overlays, use a dict to facility a nicer regex
	  comparison loop for news restrictions.

2007-01-16 01:18  zmedico

	* bin/repoman: Enable repoman to commit a Manifest alone instead of
	  bailing out with "Didn't find any changed files".

2007-01-16 00:49  antarus

	* pym/portage_news.py: fix minor syntax issues with locking

2007-01-16 00:43  antarus

	* pym/portage_news.py: merge didn't bring in portage_news, no idea
	  why

2007-01-16 00:42  antarus

	* bin/emerge, bin/portageq, pym/portage.py, pym/portage_const.py:
	  merge glep42 into trunk

2007-01-16 00:40  antarus

	* pym/portage_locks.py: Clean up imports in portage_locks.py

2007-01-15 23:56  vapier

	* bin/misc-functions.sh: elevate the importance of 64bit clean code
	  on 64bit hosts

2007-01-15 23:07  zmedico

	* pym/portage.py: Make invalid deps non-fatal for some phases.

2007-01-15 22:37  zmedico

	* pym/portage.py: Clean up variables when finished.

2007-01-15 22:24  zmedico

	* pym/portage.py: For bug #162275, make doebuild validate *DEPEND
	  and bail out if necessary.

2007-01-15 21:21  antarus

	* bin/portageq: exithandler is not a portageq func, so ignore it

2007-01-14 22:59  zmedico

	* man/make.conf.5: Fix alphabetical order.

2007-01-14 22:53  zmedico

	* man/make.conf.5: Document DOC_SYMLINKS_DIR.

2007-01-14 22:03  zmedico

	* pym/portage.py: Don't warn about /etc/make.profile not being a
	  symlink if it has a parent file.

2007-01-14 21:56  zmedico

	* bin/ebuild.sh: Disable the test phase when USE=test is masked
	  (for consistency with the fix for bug #69021).

2007-01-14 20:44  zmedico

	* NEWS: For bug #69021, add news about FEATURES="test" implying
	  USE="test".

2007-01-14 20:05  zmedico

	* man/make.conf.5: For bug #161975, document the fact that
	  GENTOO_MIRRORS supports mounted filesystem mirrors.

2007-01-14 08:12  zmedico

	* man/ebuild.5, man/make.conf.5: Document PORTAGE_LOG_FILE, update
	  PORTAGE_TMPDIR path which now includes CATEGORY, and lots of
	  style/syntax fixes. Thanks to Arfrever Frehtes Taifersar Arahesis
	  <FFTA@WP.PL> from bug #161979.

2007-01-14 05:06  zmedico

	* bin/dohtml: Fix dohtml so that it continues to install files even
	  after some fail. Thanks to brad walker <bradmwalker@cableone.net>
	  in bug #149745.

2007-01-13 23:04  zmedico

	* pym/portage.py: Fix reversed arguments.

2007-01-13 22:51  zmedico

	* pym/portage.py: Fix 'TypeError: not all arguments converted
	  during string formatting'. Thanks to marienz.

2007-01-13 19:25  antarus

	* DEVELOPING, pym/portage.py, tests/portage_dep/test_dep_getcpv.py,
	  tests/portage_dep/test_dep_getslot.py,
	  tests/portage_dep/test_isjustname.py,
	  tests/portage_dep/test_isvalidatom.py: fix tabs with patch from
	  Grobian and bug # 161911, fix developing a bit

2007-01-13 18:52  vapier

	* bin/ebuild.sh: make sure people call
	  addread/addwrite/adddeny/addpredict correctly

2007-01-13 08:54  zmedico

	* bin/emerge: Catch InvalidData exceptions for bad atoms passed as
	  emerge arguments.

2007-01-13 04:52  zmedico

	* bin/prepalldocs: Fix a typo.

2007-01-13 03:52  zmedico

	* bin/emerge: Obey the silent parameter when parsing options.

2007-01-13 03:12  zmedico

	* man/make.conf.5: Document PORTAGE_COMPRESS and
	  PORTAGE_COMPRESS_FLAGS.

2007-01-13 02:54  zmedico

	* bin/emerge: For bug #144380, disable color at emerge startup and
	  then enable it only when it's absolutely sure that color should
	  be enabled (after EMERGE_DEFAULT_OPTS has been parsed).

2007-01-13 00:42  zmedico

	* bin/emerge: Use end_paragraph(1) instead of add_line_break() so
	  that there is really a blank line.

2007-01-13 00:36  zmedico

	* bin/emerge: Send the unmerge failure message to stderr.

2007-01-12 23:24  zmedico

	* bin/emerge: Send the slot collision notice to stderr and only
	  show minimal output in --quiet mode.

2007-01-12 23:07  antarus

	* pym/portage.py: remove the last of the string module from
	  portage.py

2007-01-12 19:32  antarus

	* tests/portage, tests/portage_dep, tests/portage_util,
	  tests/portage_versions: ignore py[co] in tests

2007-01-12 19:26  antarus

	* DEVELOPING: Add a few pretty basic comments on writing code,
	  particularly things that portage used to do (and still does) that
	  are...a bit out of style ;)

2007-01-12 11:53  zmedico

	* pym/portage_util.py: Fix another typo.

2007-01-12 11:49  zmedico

	* pym/portage.py: Fix more typos.

2007-01-12 10:30  zmedico

	* bin/emerge: Revert accidentally modified joins.

2007-01-12 10:08  zmedico

	* bin/md5check.py: Fix a typo.

2007-01-12 09:57  zmedico

	* bin/dispatch-conf: Fix a typo.

2007-01-12 09:08  antarus

	* pym/portage.py, pym/portage_util.py: purge string from
	  portage.py, fix minor bug in portage_util

2007-01-12 09:07  antarus

	* bin/repoman: purge string module from repoman

2007-01-12 09:00  antarus

	* pym/portage_dep.py: another annoy space bug

2007-01-12 08:55  antarus

	* bin/dispatch-conf, bin/emerge: fix "" " " bug

2007-01-12 08:30  antarus

	* bin/emerge: purge string module from emerge

2007-01-12 08:29  zmedico

	* pym/getbinpkg.py: Fix typos from the previous commit.

2007-01-12 08:27  zmedico

	* pym/getbinpkg.py: Use startswith and endswith to simplify code.

2007-01-12 08:19  antarus

	* bin/archive-conf, bin/chkcontents, bin/dispatch-conf, bin/dohtml,
	  bin/md5check.py, bin/portageq, bin/regenworld: More String
	  deprecation

2007-01-12 08:08  antarus

	* tests/portage/__init__.py, tests/portage_dep/__init__.py,
	  tests/portage_dep/test_dep_getcpv.py,
	  tests/portage_dep/test_dep_getslot.py,
	  tests/portage_dep/test_get_operator.py,
	  tests/portage_dep/test_isjustname.py,
	  tests/portage_dep/test_isvalidatom.py,
	  tests/portage_dep/test_match_from_list.py,
	  tests/portage_util/__init__.py,
	  tests/portage_util/test_grabdict.py,
	  tests/portage_util/test_normalizedPath.py,
	  tests/portage_util/test_stackDictList.py,
	  tests/portage_util/test_stackDicts.py,
	  tests/portage_util/test_stackLists.py,
	  tests/portage_util/test_uniqueArray.py,
	  tests/portage_util/test_varExpand.py,
	  tests/portage_versions/__init__.py: set Id on tests

2007-01-12 08:08  antarus

	* pym/portage_dep.py, pym/portage_locks.py, pym/portage_util.py,
	  pym/portage_versions.py, pym/xpak.py: more string deprecation

2007-01-12 07:58  antarus

	* pym/cvstree.py, pym/getbinpkg.py: Begin the deprecation of the
	  string module

2007-01-12 06:49  zmedico

	* pym/emergehelp.py: Remove a duplicate % character.

2007-01-12 06:18  zmedico

	* pym/portage.py: Fix incremental virtuals code for the new
	  stricter catpkgsplit behavior.

2007-01-12 06:10  zmedico

	* pym/portage_update.py: Prevent an InvalidData exception during
	  global updates due to the new stricter catpkgsplit behavior.

2007-01-12 05:52  zmedico

	* bin/ebuild.sh: For bug #88485, show the location of the build log
	  whenever a build fails.

2007-01-12 05:19  zmedico

	* pym/portage.py: Return early from finddigest if findname2 found
	  nothing.

2007-01-12 04:48  antarus

	* pym/portage.py: FIx a bunch of random Except: statements in
	  portage.py, most of them are IO/OS related

2007-01-12 04:28  antarus

	* pym/portage.py: os.cwd can return OSError (maybe IOError with
	  wrong perms for ./, will test actually), load_mod should be
	  IMportError, nuke a stupid try except around shuffle which used
	  to break years ago with old glibcs, remove try except around what
	  appears to be a regex? and make the try except around the unlink
	  a bit cleaner

2007-01-12 04:26  antarus

	* pym/getbinpkg.py: EOFError is also important according to Zac

2007-01-12 04:12  antarus

	* pym/getbinpkg.py: getbinpkg.py fix except: open can be IOERror or
	  OSError and cPickle can throw an unpicklingError

2007-01-12 04:07  antarus

	* pym/portage_dep.py, pym/portage_exec.py, pym/portage_versions.py:
	  comment the excepts in a few places

2007-01-12 03:51  antarus

	* pym/eclass_cache.py: Fix broad except statement, should only be
	  KeyError

2007-01-12 03:46  antarus

	* pym/portage_versions.py: portage_versions.py, more string.atoi ->
	  int, fix another except: that should be ValueError

2007-01-12 03:38  antarus

	* pym/portage_dep.py, pym/portage_versions.py: Change vercmp to use
	  int() instead of string atoi, catch ValueError in pkgcmp

2007-01-12 03:17  zmedico

	* bin/emerge, pym/portage.py: For bug #147512, don't print a
	  cryptic error message when an EnvironmentError occurs. Also,
	  allow the user to get a traceback via --debug.

2007-01-12 03:02  vapier

	* bin/misc-functions.sh: drop lazy bindings check once and for all
	  ... the system ldso should have the logic #71609

2007-01-12 02:44  zmedico

	* bin/isolated-functions.sh, pym/portage.py: Fix ebuild environment
	  color.map support so that it works properly through exec calls
	  (since the color variables can not be directly exported due to
	  env pollution).

2007-01-11 23:15  zmedico

	* pym/portage_versions.py: Allow catpkgsplit to be less strict for
	  atoms that come from installed packages (for backward
	  compatibility).

2007-01-11 22:30  vapier

	* bin/ecompressdir: use cached suffix value and if it is not valid,
	  lets warn

2007-01-11 22:28  vapier

	* bin/ecompressdir: dont compress files that are already compressed
	  and dont do sanity checking on the link dest as we cant properly
	  verify things like absolute symlinks

2007-01-11 22:21  zmedico

	* pym/portage_versions.py: Use a global to ensure that the
	  valid_category regex is cached.

2007-01-11 21:52  antarus

	* pym/portage_versions.py: SpanKY likes the latin categories

2007-01-11 21:39  antarus

	* pym/portage_versions.py: learn to spell

2007-01-11 21:38  antarus

	* pym/portage_dep.py, pym/portage_versions.py,
	  tests/portage_dep/test_isvalidatom.py: Handle the exception in
	  isvalidatom, change it to use a portage exceptoin, thanks to Zac
	  for pointing this out

2007-01-11 21:32  antarus

	* pym/portage_versions.py: Fix comments for catpkgsplit

2007-01-11 21:29  antarus

	* tests/portage_dep/test_isvalidatom.py: catch and validate new
	  ValueError Exception

2007-01-11 21:29  antarus

	* pym/portage_versions.py: Valid categories in catpkgsplit

2007-01-11 21:18  antarus

	* tests/portage_dep/test_isvalidatom.py: print the incorrect atom

2007-01-11 20:59  antarus

	* tests/portage_dep/test_dep_getcpv.py: add some invalid ops to
	  getcpv to make sure it returns the cpv still

2007-01-11 20:39  zmedico

	* bin/emerge: For bug #50738, inform the user about the location of
	  the timestamp file and that it can be removed to force sync.

2007-01-11 20:37  antarus

	* tests/portage_dep/test_isjustname.py: isjustname tests

2007-01-11 20:22  antarus

	* pym/portage_dep.py: elaborate a bit on isjustname()

2007-01-11 20:20  antarus

	* tests/portage_dep/test_dep_getslot.py: getslot tests

2007-01-11 19:49  antarus

	* tests/portage_dep/test_dep_getcpv.py: I owed brian harring 3.50,
	  for th previous advice about assertEqual/NotEqual, oh, add
	  dep_getcpv tests too

2007-01-11 19:43  antarus

	* tests/portage_dep/test_get_operator.py,
	  tests/portage_dep/test_isvalidatom.py,
	  tests/portage_dep/test_match_from_list.py,
	  tests/portage_util/test_normalizedPath.py,
	  tests/portage_util/test_stackDictList.py,
	  tests/portage_util/test_stackDicts.py,
	  tests/portage_util/test_stackLists.py: take some advice and use
	  AssertEqual/NotEqual

2007-01-11 19:28  antarus

	* tests/portage_dep/test_get_operator.py: add some invalid
	  operators to the test to denote that get_operator doesn't
	  validate them, also make sure some common mis-typed things are
	  tested (=> instead of >= fex)

2007-01-11 19:24  antarus

	* tests/portage_dep/test_get_operator.py: get_operator tests

2007-01-11 19:06  antarus

	* tests/portage_dep/test_isvalidatom.py,
	  tests/portage_util/test_grabdict.py: Commit unit tests, hey look
	  THEY ARE BROKEN

2007-01-11 19:02  antarus

	* pym/portage_util.py: docs for grabdict

2007-01-11 18:50  vapier

	* bin/dodoc, bin/doinfo, bin/ecompress, bin/ecompressdir,
	  bin/misc-functions.sh, bin/prepalldocs, bin/prepallinfo,
	  bin/prepallman, bin/prepinfo, bin/prepman: add support for
	  user-customizable compression #9870

2007-01-11 18:09  zmedico

	* pym/portage.py: Use dict.get() to prevent a potential (bug
	  unlikely) KeyError.

2007-01-11 17:34  zmedico

	* pym/portage_exception.py: Use isinstance(foo, basestring) so that
	  it can work with unicode strings too.

2007-01-11 10:08  genone

	* man/make.conf.5: Add note that any value enables EPAUSE_IGNORE

2007-01-11 09:09  genone

	* pym/portage.py: Make FEATURES=test imply USE=test

2007-01-11 09:07  genone

	* pym/portage_util.py: continue is only for loops

2007-01-11 09:03  antarus

	* tests/portage_util/test_stackLists.py: add stack_lists checks

2007-01-11 08:47  genone

	* pym/portage_util.py: Extend ignore filter for grablines (bug
	  #144445)

2007-01-11 08:45  antarus

	* tests/portage_util/test_stackDicts.py,
	  tests/portage_util/test_uniqueArray.py,
	  tests/portage_util/test_varExpand.py: More portage_util tests

2007-01-11 08:22  genone

	* pym/portage_exception.py: Don't escape strings in
	  PortageException as that breaks newline handling (bug 147785)

2007-01-11 07:52  genone

	* bin/emerge: Rename 'Last Sync' to 'Timestamp of tree' to clarify
	  the meaning (bug #150051)

2007-01-11 07:19  genone

	* cnf/make.conf: Add 'stricter' description, misc typo fixes, patch
	  by Max Lorenz (bug #153755)

2007-01-11 07:10  genone

	* cnf/make.conf, man/make.conf.5: Update CCACHE docs, patch by Ryan
	  Hill (bug #156865)

2007-01-11 06:58  genone

	* man/ebuild.5: Remove RESTRICT=sandbox docs until bug #161045 is
	  resolved

2007-01-11 06:18  zmedico

	* tests/__init__.py: Remove / character from module names.

2007-01-11 05:29  antarus

	* tests/__init__.py, tests/portage/test_match_from_list.py,
	  tests/portage_dep, tests/portage_dep/__init__.py,
	  tests/portage_dep/test_match_from_list.py: more test re-arranging
	  as Alec can't read what functions are in what files

2007-01-11 05:12  antarus

	* TEST-NOTES: edit test-notes

2007-01-11 05:10  antarus

	* tests/__init__.py: remove bogs test dir, add portage_versions

2007-01-11 05:09  antarus

	* tests/__init__.py, tests/portage/test_vercmp.py,
	  tests/portage_versions, tests/portage_versions/__init__.py,
	  tests/portage_versions/test_vercmp.py: Add a bit of path mangling
	  to allow deeper tests

2007-01-10 23:53  zmedico

	* bin/emerge: Rename depgraph._invalid_depgraph_is_acceptable() to
	  _accept_collisions() for a better description.

2007-01-10 23:46  zmedico

	* bin/emerge: Don't allow slot collision nodes to block other
	  packages since blocker validation is only able to account for one
	  package per slot.

2007-01-10 23:29  zmedico

	* bin/emerge: For bug #161422, make slot collisions non-fatal in
	  cases where an invalid depgraph is acceptable (--fetchonly, for
	  example).

2007-01-10 21:13  zmedico

	* tests/runTests: Fix sys.path so that imports work correctly.

2007-01-10 18:46  zmedico

	* tests/__init__.py: Fix module loading.

2007-01-10 13:51  antarus

	* TEST-NOTES: add a few tips on adding tests, and kinks in the
	  current system, I hope to fix the import bug soon

2007-01-10 13:45  antarus

	* tests/portage_util/test_util.py: remove monolithic test

2007-01-10 13:45  antarus

	* tests/portage_util/test_normalizedPath.py,
	  tests/portage_util/test_stackDictList.py,
	  tests/portage_util/test_stackDicts.py,
	  tests/portage_util/test_stackLists.py,
	  tests/portage_util/test_uniqueArray.py,
	  tests/portage_util/test_util.py,
	  tests/portage_util/test_varExpand.py: split out util tests

2007-01-10 13:38  antarus

	* tests/portage/test_atoms.py, tests/portage/test_vercmp.py: rename
	  atoms back to vercmp

2007-01-10 13:37  antarus

	* tests/portage/test_match_from_list.py: shift test cases around

2007-01-10 13:37  antarus

	* tests/portage/test_atoms.py: shift test cases around

2007-01-10 13:35  antarus

	* tests/__init__.py, tests/portage, tests/portage/__init__.py,
	  tests/portage/test_atoms.py, tests/portage_util,
	  tests/portage_util/__init__.py, tests/portage_util/test_util.py,
	  tests/test_atoms.py, tests/test_util.py: Take Genone's suggestion
	  and break the modules up into module oriented fashion. Tests for
	  portage.py go in portage/ and so on and so forth...

2007-01-10 12:52  antarus

	* tests/test_atoms.py: Fix Fail test

2007-01-10 12:50  zmedico

	* tests/test_atoms.py: Make the tests pass.

2007-01-10 12:30  antarus

	* tests/__init__.py, tests/test_atoms.py, tests/test_util.py,
	  tests/test_vercmp.py: rework test import code, rename test_vercmp
	  to be more generic, add tests for =* glob matches

2007-01-10 11:41  zmedico

	* pym/portage_dep.py: Use startwith to simplify =* matching.

2007-01-10 11:25  zmedico

	* pym/portage_dep.py: Minor fixes for the =* operator (I hope we're
	  done now :).

2007-01-10 11:02  genone

	* pym/portage_dep.py: I hate this thing

2007-01-10 10:02  genone

	* pym/portage_dep.py: minor performance improvement

2007-01-10 09:50  genone

	* pym/portage_dep.py: also sanitize mycpv for =* handling

2007-01-10 09:40  genone

	* pym/portage_dep.py: =* operator sucks

2007-01-10 09:07  genone

	* pym/portage_dep.py: Documenting the loop a bit

2007-01-10 08:55  genone

	* pym/portage_dep.py: Make the =* operator more robust

2007-01-10 08:34  genone

	* pym/portage_dep.py: Attach the problematic data to the exception
	  for debugging

2007-01-10 08:18  genone

	* pym/portage.py, pym/portage_dep.py: Stupid me, shouldn't jsut
	  move a part of the patch

2007-01-10 08:08  genone

	* pym/portage.py, pym/portage_dep.py: Always use vercmp for cpv
	  comparisons

2007-01-10 07:44  genone

	* man/emerge.1: Make env variable example about USE shell
	  independent

2007-01-10 06:18  genone

	* NEWS, bin/misc-functions.sh, pym/portage.py: create symlinks to
	  html documentation if DOC_SYMLINK_DIR is set, original patch by
	  TGL <degrenier@easyconnect.fr> (bug #67130)

2007-01-10 04:34  genone

	* pym/portage.py: make.globals has no business in profiles

2007-01-10 04:22  zmedico

	* bin/doman, bin/ebuild.sh, bin/isolated-functions.sh,
	  bin/misc-functions.sh, bin/preplib, bin/prepman, bin/prepstrip:
	  For bug #160075, send all 'QA Notice' messages to eqawarn. Also,
	  modify eqawarn to use vecho and send ouput to stderr.

2007-01-10 03:24  genone

	* man/ebuild.5, man/make.conf.5: Add elog related variables to
	  make.conf(5) with a pointer to make.conf.example. Add elog()
	  description to ebuild(5) and update einfo() description.

2007-01-10 02:26  genone

	* cnf/make.conf.x86.diff: Update x86 CFLAGS section, original patch
	  by Peter Gantner (bug #133402)

2007-01-10 01:40  genone

	* bin/ebuild.sh: Misc typo fixes, patch by Benno Schulenberg (bug
	  #157812)

2007-01-09 22:23  zmedico

	* bin/emerge: For bug #160971, rename dir.gz to dir.gz.old when
	  necessary to avoid problems with install-info. Thanks to Ed
	  Catmur <ed@catmur.co.uk> for the initial patch.

2007-01-09 20:34  zmedico

	* man/portage.5, pym/portage.py: For bug #161003, disallow virtuals
	  in package.provided and document it. Thanks to Robin Johnson
	  <robbat2@gentoo.org> for the initial patch.

2007-01-09 18:54  zmedico

	* pym/portage.py: For bug #161103, don't skip collision-protect
	  checks in cases where the beginning of the file path matches a
	  symlink but is not acually inside a symlinked directory (check
	  the path against symlink + os.path.sep).

2007-01-09 04:25  zmedico

	* pym/portage.py: Make digestgen() force fetch unless all required
	  digest types are available. Thanks to jokey for reporting on irc.

2007-01-09 02:51  zmedico

	* pym/portage.py: Split PORTAGE_ELOG_CLASSES outside the loop for
	  better efficiency.

2007-01-09 02:35  genone

	* NEWS: Update NEWS with eqawarn and 'ebuild foo test' changes

2007-01-09 02:18  antarus

	* pym/portage_const.py: This file apparently uses spaces to line
	  everything up pretty (I have weird tabs set, so spacies are good
	  :P)

2007-01-09 02:12  antarus

	* bin/ebuild.sh: Okies this works locally for me now (and Zac)

2007-01-09 01:56  genone

	* cnf/make.conf: Mention new QA loglevel in make.conf.example

2007-01-09 01:43  genone

	* bin/isolated-functions.sh, pym/elog_modules/mod_syslog.py: Add
	  new eqawarn function and QA loglevel to be used for QA messages

2007-01-09 01:34  antarus

	* bin/ebuild.sh: Zac pointed out that the retcodes would be wrong
	  if stuff failed...Yeah...

2007-01-09 01:23  genone

	* bin/ebuild.sh: Disable qa_source usage until it actually works

2007-01-09 01:21  genone

	* bin/ebuild, bin/ebuild.sh: Always run src_test when calling
	  'ebuild foo test'

2007-01-09 01:18  genone

	* pym/portage_const.py: Make PORTAGE_BASE_PATH dynamic based on
	  __file__

2007-01-08 23:47  antarus

	* bin/ebuild.sh: Antarus sucks at bash, thanks for Genone for
	  reporting this major bug.

2007-01-08 21:15  antarus

	* bin/ebuild.sh: Implement QA checks that attempt to detect changed
	  shopts and IFS in ebuild/eclass/profile code. Spit a warning if
	  that is the case. I expect this check will eventually reset the
	  shopts and IFS, but in this case it may break things that depend
	  on the current behavior

2007-01-08 16:20  zmedico

	* pym/cache/util.py: For bug #160893, ignore a KeyError during
	  cache cleansing since that key isn't wanted anyway.

2007-01-08 05:27  zmedico

	* NEWS: s/suffix/version prefix/ since it really is a prefix for
	  the version string.

2007-01-08 05:09  zmedico

	* NEWS: s/prefix/suffix/ Thanks to hydrogen for reporting on irc.

2007-01-07 17:59  zmedico

	* bin/repoman: Don't automatically fix digests in --pretend mode.

2007-01-06 23:07  zmedico

	* pym/portage.py: Don't swallow an IOError if it is thrown from the
	  aux_get call in portdbapi.getfetchlist().

2007-01-06 22:39  zmedico

	* bin/repoman: Fix the digestentry.unused check so that it works
	  properly when old-style files/digest-* don't exist.

2007-01-06 04:35  zmedico

	* bin/repoman: For bug #160310, remove the line continuation syntax
	  check since it's still possible for it to generate false
	  positives.

2007-01-06 02:10  zmedico

	* bin/repoman: For bug #160310, allow \ inside `` quotes in order
	  to prevent a false Line continuation ("\") Syntax Error.

2007-01-06 01:36  vapier

	* bin/misc-functions.sh: force C locale for now when parsing gcc
	  log files #160234

2007-01-06 01:06  vapier

	* bin/misc-functions.sh: revert previous changes ... ruby.eclass is
	  wrongly polluting env with nullglob

2007-01-06 00:30  zmedico

	* bin/misc-functions.sh: Fix one more potential false glob match.

2007-01-06 00:16  zmedico

	* bin/misc-functions.sh: Fix shell glob logic that leads to false
	  positives. Thanks to Flameeyes for reporting.

2007-01-05 22:39  zmedico

	* bin/emerge: For bug #160299, make sure that emerge sees a
	  somewhat valid COUNTER even when the counter is missing.

2007-01-05 11:29  zmedico

	* pym/portage.py: For python-2.3 compatibility, don't pass an
	  iterable into dict.update().

2007-01-05 01:26  zmedico

	* bin/repoman: Make repoman use portage.normalize_path instead of
	  os.path.normpath. This might solve an issue with incorrect
	  repolevel detection that was reported by drizzt.

2007-01-04 21:18  zmedico

	* pym/portage_data.py: Use -G instead of -g (typo from the previous
	  commit).

2007-01-04 21:13  zmedico

	* pym/portage_data.py: As a workaround for bug #147625, spawn `id
	  -g portage` in order to get a list of groups for the portage user
	  without the need to call grp.getgrall().

2007-01-04 03:23  zmedico

	* pym/getbinpkg.py: Make sure that myid is defined for the previous
	  commit.

2007-01-04 03:11  zmedico

	* pym/getbinpkg.py: When fetching metadata from a binhost,
	  reconnect if the http server closes the connection before sending
	  a valid response. Thanks to ranger for reporting.

2007-01-04 00:19  zmedico

	* pym/portage.py: Export EBUILD_PHASE="" when running
	  misc-function.sh in order to prevent bogus phase values coming
	  from ${T}/environment. Thanks to solar for reporting.

2007-01-04 00:06  zmedico

	* bin/emerge: Implement distlocks for --getbinpkg so that it works
	  properly when parallel-fetch is enabled. Thanks to Brent Baude
	  <ranger@gentoo.org> for reporting.

2007-01-03 22:32  zmedico

	* pym/portage_exec.py: Make sure stderr is flushed since os._exit
	  doesn't flush stdio buffers.

2007-01-03 22:30  zmedico

	* pym/getbinpkg.py: Make sure stderr is flushed since os._exit
	  doesn't flush stdio buffers.

2007-01-03 22:25  zmedico

	* pym/getbinpkg.py: Use os._exit instead of sys.exit in a forked
	  child process.

2007-01-03 06:46  zmedico

	* pym/portage.py: When using the spawn's returnpid parameter,
	  manually remove the returned pids from portage_exec.spawned_pids.

2007-01-03 02:50  genone

	* pym/dbapi: undo

2007-01-03 02:46  genone

	* pym/dbapi, pym/dbapi/__init__.py, pym/dbapi/binpkg.py,
	  pym/dbapi/ebuild.py, pym/dbapi/fake.py, pym/dbapi/vardb.py,
	  pym/portage.py: Allow - in elog module names

2007-01-03 02:32  vapier

	* bin/check-implicit-pointer-usage.py, bin/misc-functions.sh,
	  pym/portage.py: add support for scanning of build logs for common
	  issues #111436

2007-01-02 21:37  zmedico

	* pym/portage.py: Try to create DISTDIR before disabling fetch due
	  to it's nonexistence. Thanks to astinus for reporting.

2007-01-02 10:42  zmedico

	* bin/repoman, pym/portage.py: Optimize dep_zapdeps to work without
	  a vartree when called by repoman.

2007-01-02 04:54  zmedico

	* pym/portage.py: Don't bother to list the contents of directories
	  before they are unmerged since it triggers unnecessary stat
	  calls. Thanks to James Cloos <cloos@jhcloos.com> for reporting.

2007-01-02 03:31  vapier

	* bin/misc-functions.sh, bin/prepall: merge all of the QA related
	  checks together

2007-01-02 01:38  zmedico

	* pym/portage.py: Fix the writemsg noiselevel from the previous
	  commit.

2007-01-02 01:30  zmedico

	* pym/portage.py: For bug #159638, fix the UnboundLocalError in
	  vartree.getprovide().

2006-12-31 15:35  zmedico

	* bin/repoman: For bug #159224, use separate xmatch caches for each
	  value of ACCEPT_KEYWORDS.

2006-12-31 14:07  zmedico

	* pym/portage.py: Use slot atom matching to simplify detection of
	  downgrades relative to installed packages.

2006-12-31 03:28  zmedico

	* pym/cache/sqlite.py: For bug #159518, increase the "database is
	  locked" timeout.

2006-12-31 00:35  zmedico

	* pym/portage.py: Send errors in elog_process() to stderr via
	  writemsg.

2006-12-30 21:38  zmedico

	* bin/emerge, pym/portage.py: Use return values instead of direct
	  sys.exit(123) calls when a merge fails.

2006-12-30 21:14  zmedico

	* pym/portage.py: Use a try/finally block to ensure that the alarm
	  will always be cancelled appropriately.

2006-12-30 21:02  zmedico

	* pym/portage.py: For bug #141361, use an alarm signal to implement
	  a 1 minute timeout for processing inside an elog module.

2006-12-30 20:15  zmedico

	* pym/portage.py: Correct the package.mask lookup order in
	  getmaskingreason().

2006-12-30 20:06  zmedico

	* pym/portage.py: For bug #151326, prevent invalid comments from
	  being returned by portage.getmaskingreason().

2006-12-30 10:32  zmedico

	* bin/ebuild.sh: Punt the abort_unpack() handler since it's
	  pointless anyway.

2006-12-30 05:12  zmedico

	* bin/emerge: Fix 'TypeError: unpack non-sequence' that occurs if
	  myparent is None.

2006-12-30 04:49  zmedico

	* bin/emerge: Do some small fixes to prevent slot collision nodes
	  from interfering with the depgraph.

2006-12-30 04:11  zmedico

	* pym/portage.py: Improve the logic for bug #159360 to ensure that
	  an actual upgrade is selected without any downgrades.

2006-12-30 03:54  zmedico

	* bin/emerge, pym/portage.py: Be slightly more defensive when
	  loading the vdb/blockers caches.

2006-12-30 03:15  zmedico

	* bin/emerge: Sort the --info USE flags for bug #159161.

2006-12-30 02:27  zmedico

	* pym/portage.py: For bug #159360, make sure that the highest
	  available new-style virtual is selected even if it has depes that
	  aren't already installed.

2006-12-30 01:35  vapier

	* bin/prepall: detect incorrect absolute symlinks in libdirs

2006-12-30 01:21  vapier

	* bin/misc-functions.sh: fixup style

2006-12-29 23:18  zmedico

	* bin/emerge: Send stuff that's not a warning or error to stdout
	  rather than stderr.

2006-12-29 22:55  solar

	* bin/emerge: - keep things quiet when uninstalling

2006-12-29 22:24  zmedico

	* pym/portage.py: Do some minor cleanup in the dep_zapdeps
	  downgrade avoidance logic (while working toward a fix for bug
	  #159360).

2006-12-29 11:10  zmedico

	* bin/emerge: For bug #159310, don't show a slot collision notice
	  if there are unresolvable blockers.

2006-12-29 02:17  zmedico

	* bin/emerge: Add some docs for the blockers cache format.

2006-12-29 01:57  zmedico

	* bin/emerge: For bug #159161, make emerge --info show USE_EXPAND
	  flags similar to the way it does in merge list output.

2006-12-29 00:22  zmedico

	* bin/emerge: Use a pickle to cache blockers for all installed
	  packages so that dep_check doesn't have to be called for every
	  single installed package on every invocation of emerge.

2006-12-28 21:40  zmedico

	* pym/portage.py: For bug #159295 and python-2.3 compatibility,
	  don't assume that dict.update can use an iterable.

2006-12-28 21:14  zmedico

	* bin/prepstrip: For bug #159252, don't preserve file attributes
	  when copying files for installsources. Thanks to Ed Catmur
	  <ed@catmur.co.uk> for this patch.

2006-12-28 14:48  zmedico

	* pym/portage.py: Make vardbapi.cpv_counter() use aux_get for
	  caching.

2006-12-28 14:40  zmedico

	* pym/portage.py: Make vartree.getslot() use the dbapi for aux_get
	  caching.

2006-12-28 14:32  zmedico

	* pym/portage.py: Allow the list of keys cached by the vardb to
	  change without forcing a cache version bump.

2006-12-28 13:43  zmedico

	* man/emerge.1, pym/emergehelp.py: Update emerge --metadata docs
	  for more clarity.

2006-12-28 13:14  zmedico

	* pym/portage.py: Make portdbapi.flush_cache() consistent with
	  vardbapi.flush_cache().

2006-12-28 13:07  zmedico

	* bin/emerge, pym/portage.py: Use a pickle to cache vdb metadata.
	  This greatly improves the performance for loading the vdb when
	  the buffer cache is cold.

2006-12-28 01:39  antarus

	* man/emerge.1: try to give the emerge manpage a facelift, upgrade
	  clean and prune docs, change 'dependency' to 'atom', other minor
	  fixes

2006-12-27 00:11  zmedico

	* pym/portage.py: Allow dep_check to use the global db for
	  compatibility (fixes python-updater breakage).

2006-12-26 02:43  zmedico

	* pym/cache/volatile.py: Make _setitem do a deepcopy just in case.

2006-12-25 20:42  zmedico

	* bin/ebuild.sh: For bug #148603, when an ebuild dies, print
	  eclasses that are from overlays. Thanks to Alec Warner for the
	  initial patch.

2006-12-25 19:13  zmedico

	* bin/ebuild.sh: Use a SIGTERM signal to support a die call inside
	  of a subshell.

2006-12-25 09:15  zmedico

	* pym/portage_data.py: Make sure that portage_group_warning() will
	  be shown even in quiet mode.

2006-12-25 09:02  zmedico

	* bin/emerge: When the user has insufficient access privileges,
	  specify whether superuser access or portage group access is
	  required. When only portage group access is required but the user
	  is not in the portage group, call
	  portage_data.portage_group_warning() to remind people that the
	  portage group is a system administration group.

2006-12-25 06:04  zmedico

	* bin/emerge: Prevent the regen action from running in --pretend
	  mode.

2006-12-25 05:42  zmedico

	* pym/portage_data.py: Drop the warning messages for users that
	  aren't in the portage group since tpordbapi now correctly puts
	  the on-disk cache into readonly mode in this case (and allows
	  metadata generation in-memory if necessary).

2006-12-25 05:27  antarus

	* pym/portage.py: Docstrings for mergeme...

2006-12-25 04:52  antarus

	* pym/portage.py: more docstrings..

2006-12-24 23:49  zmedico

	* pym/portage.py: Make sure that bindbapi makes EAPI correctly
	  default to 0 in all possible cases.

2006-12-24 23:17  zmedico

	* pym/portage.py: Make bindbapi.aux_get() selectively cache
	  metadata in order to optimize dep matching (like portdbapi does).

2006-12-24 20:03  zmedico

	* pym/portage.py: Clone cached match results before returning them
	  from portdbapi.xmatch(). Thanks to Brian <dol-sen@telus.net> for
	  reporting this issue.

2006-12-24 06:20  antarus

	* pym/portage.py: cptot appears to be unused, punting it along with
	  this commented out function, it appears to be unused as well.

2006-12-24 06:19  antarus

	* pym/portage.py: Docstrings for doebuild

2006-12-24 06:10  antarus

	* pym/portage.py: More code cleanup, packagetree appears to be
	  completely unused, so lets remove it in favor of inheriting from
	  object

2006-12-24 02:04  antarus

	* man/emerge.1: Manpage fix for bug # 158983, thanks to Fabio
	  Correa for the patch

2006-12-23 20:09  zmedico

	* pym/cache/metadata_overlay.py: For forward compatibility, make
	  metadata_overlay pass any additional positional and keyword
	  parameters into the super constructor.

2006-12-23 19:15  zmedico

	* NEWS, RELEASE-NOTES: For bug #158931, add some release notes to
	  explain performance penalties for dependency calculations.

2006-12-23 16:13  antarus

	* pym/portage.py: move actionmap_deps out of global scope and into
	  doebuild where it is actually used, add docstrings to config
	  class in the meantime.

2006-12-23 15:53  antarus

	* pym/portage.py: More Docstrings in portage.py

2006-12-23 10:19  genone

	* pym/portage.py: disable display of elapsed time for
	  collision-protect as it's for benchmarking purposes and useless
	  to most people.

2006-12-23 10:06  genone

	* pym/elog_modules/mod_save_summary.py: List package in summary
	  logfile

2006-12-23 06:00  antarus

	* pym/portage.py: startime is set up in treewalk, so no need to do
	  it globally...

2006-12-23 05:17  zmedico

	* bin/emerge: Show the "Calculating dependencies .. done!" message
	  with --resume since the spinner now runs inside the depgraph
	  constructor. Thanks to antarus for reporting.

2006-12-23 04:06  zmedico

	* bin/repoman: Only write repo.stats and repo.fails when the
	  repoman user has write access to /var/cache/edb.

2006-12-23 01:56  zmedico

	* pym/portage.py: Combine two default EAPI settings in
	  portdbapi.aux_get().

2006-12-23 01:35  zmedico

	* bin/ebuild.sh: Fix inverted EAPI default logic.

2006-12-23 00:21  zmedico

	* pym/cache/metadata_overlay.py: Make metadata_overlay use the
	  autocommits attribute of the underlying database.

2006-12-23 00:11  zmedico

	* pym/cache/metadata_overlay.py, pym/portage.py: Pass a cache
	  instance into metadata_overlay since it doesn't have enough
	  information to construct one itself.

2006-12-22 23:27  zmedico

	* pym/cache/volatile.py: Add volatile cache module missing from the
	  previous commit.

2006-12-22 23:26  zmedico

	* pym/cache/flat_hash.py, pym/cache/metadata_overlay.py,
	  pym/portage.py: When an unprivileged user runs portage (not in
	  the portage group), use metadata_overlay together with a volatile
	  in-memory cache module in order to implement cache writes. This
	  allows, for example, a user who's not in the portage group to run
	  `ebuild foo.ebuild digest` (issue reported by Charlie Shepherd
	  <masterdriverz@gentoo.org>).

2006-12-22 22:55  antarus

	* pym/portage.py: Remove two old functions, appear to be relics
	  from 2.0.X branch, no longer used by portage or gentoolkit or
	  esearch

2006-12-22 22:29  antarus

	* pym/portage_exec.py: I hate docstrings

2006-12-22 22:22  zmedico

	* bin/ebuild.sh, pym/portage.py: Use a pipe instead of a temp file
	  for the depend phase.

2006-12-22 10:02  zmedico

	* bin/emerge: Revert the default choice for --ask --unmerge (bug
	  #158354) because people are complaining.

2006-12-22 01:19  zmedico

	* bin/emerge: For bug #158649, allow --buildpkgonly to bypass the
	  fakedb population like --nodeps does.

2006-12-22 00:53  zmedico

	* bin/ebuild.sh, pym/portage.py: Fix the "help" phase so that it
	  works without build dirs.

2006-12-21 08:09  zmedico

	* bin/emerge: Make emerge enable backward compatibility mode for
	  dep_check() calls on installed packages so that it can gracefully
	  invalid atoms or dep syntax.

2006-12-21 07:44  zmedico

	* pym/portage.py, pym/portage_dep.py: Create a backward
	  compatibility mode for dep_check() so that emerge can use it to
	  gracefully deal with installed packages that have invalid atoms
	  or dep syntax.

2006-12-21 02:45  zmedico

	* pym/portage.py: Use the return value from setdefault to avoid an
	  extra dict lookup.

2006-12-21 02:36  zmedico

	* pym/elog_modules/mod_mail_summary.py: For bug #158658, fix the
	  'TypeError: int argument required' that happens in the finalize()
	  routine.

2006-12-21 01:54  zmedico

	* pym/portage.py: For bug #158632, make aux_get caching safe for
	  missing values in cache entries.

2006-12-21 01:11  zmedico

	* bin/emerge: For installed packages with invalid depstrings, tell
	  the user the location of the *DEPEND files.

2006-12-21 00:32  zmedico

	* bin/emerge, pym/portage.py: When a removal phase fails, tell the
	  user where the ebuild is and advise them that the ebuild can be
	  removed in order to skip the removal phases.

2006-12-20 23:09  zmedico

	* bin/emerge: For bug #158558, ignore invalid depstrings for
	  packages that are being replaced anyway (otherwise the user would
	  be forced to manually unmerge the package).

2006-12-20 22:09  zmedico

	* pym/cache/metadata_overlay.py: More intelligently handle
	  CacheCorruption errors in the writable cache.

2006-12-20 21:19  zmedico

	* bin/emerge: For bug #158649, minimize portdb cache pulls for
	  installed packages when --nodeps is enabled. This patch also
	  allows the vardb lock to be released before doing any cache pulls
	  (even when --nodeps is not enabled), and updates the spinner
	  while the metadata is being pulled.

2006-12-20 19:29  zmedico

	* bin/emerge: Fix broken exception handling syntax causing strange
	  exception reported in bug #158608. Thanks to grobian for help
	  troubleshooting.

2006-12-20 04:09  zmedico

	* bin/emerge: Fix the invalid dependency message so there's no
	  confusion about which package has the problem.

2006-12-20 04:01  zmedico

	* bin/emerge: Give the user some advice whenever an invalid
	  dependency string is encountered.

2006-12-20 02:22  zmedico

	* pym/portage.py: Add missing newlines to the warning message
	  that's printed when the user has distlocks enabled together with
	  skiprocheck and the filesystem is readonly.

2006-12-20 02:17  zmedico

	* pym/portage.py: For bug #158608, don't attempt to use distlocks
	  when it's detected that the filesystem is readonly (unless
	  "skiprocheck" is in FEATURES for some strange reason).

2006-12-20 00:49  zmedico

	* pym/elog_modules/mod_save_summary.py: Fix an import statement
	  typo.

2006-12-19 23:30  zmedico

	* pym/portage.py: For bug #158558, make the unmerge phase do
	  automatic cleanup for broken vardbapi.move_ent() in portage
	  versions before 2.1.2.

2006-12-19 22:48  zmedico

	* pym/portage.py: For bug #158558, fix broken ebuild rename logic
	  in vardbapi.move_ent().

2006-12-19 22:26  zmedico

	* pym/portage.py: Make binarytree.move_ent() properly update PF.

2006-12-19 14:56  genone

	* NEWS, cnf/make.conf, pym/elog_modules/mod_mail_summary.py,
	  pym/elog_modules/mod_save_summary.py, pym/portage.py: New elog
	  modules for dismerging messages into a single file/mail

2006-12-19 08:12  zmedico

	* bin/emerge: Use a separate digraph to store parent/child
	  relationships (PDEPEND relationships are not reversed) so that
	  relationship is always known in case a slot collision occurs.

2006-12-19 07:16  zmedico

	* pym/portage.py: Increase cache hits in portdbapi.xmatch().

2006-12-19 03:11  zmedico

	* bin/emerge: For bug #158508, make --fetchonly display a list of
	  packages for which the fetch phase failed.

2006-12-19 00:10  zmedico

	* bin/emerge: For bug #158503, allow --nodeps to override blockers.

2006-12-18 06:22  zmedico

	* bin/emerge: For bug #158354, make "No" the default response for
	  unmerge actions.

2006-12-18 05:46  zmedico

	* bin/emerge: Just start with an empty dict in dep_check_trees
	  since nothing more is needed.

2006-12-18 03:47  zmedico

	* bin/emerge: Catch PortageException from portdbapi.aux_get since
	  it can happen when gpg is in FEATURES.

2006-12-18 03:31  zmedico

	* pym/portage.py: Make portdbapi cache SLOT in addition to EAPI and
	  KEYWORDS in order to further optimize dep matching/selection.

2006-12-18 01:14  zmedico

	* bin/emerge: Disable the spinner when --debug is enabled so that
	  it doesn't interfere.

2006-12-18 00:57  zmedico

	* bin/emerge: Make depclean skip empty depstrings.

2006-12-18 00:38  zmedico

	* bin/emerge: Do some minor cleanup of the --depclean code.

2006-12-17 20:41  zmedico

	* bin/emerge: Add --debug support for --depclean.

2006-12-17 20:32  zmedico

	* bin/emerge: Add a comment about the previous commit.

2006-12-17 20:29  zmedico

	* bin/emerge: Don't optimize depgraph.altlist() in reversed mode
	  since the optimization destroys --tree ouput.

2006-12-17 10:17  zmedico

	* bin/emerge: In depgraph.altlist(), pop as many leaf nodes as
	  possible when no relationship has been ignored. This can halve
	  the time taken for a large merge order calculation.

2006-12-17 01:30  vapier

	* bin/ebuild.sh: force environment.bz2 to be clobbered if it
	  already exists

2006-12-17 01:28  vapier

	* bin/ebuild.sh: remove pointless redirects to /dev/null when using
	  hasq()

2006-12-16 23:25  zmedico

	* pym/portage.py, pym/portage_dep.py: Make use_reduce raise an
	  InvalidDependString exception for use? conditionals that aren't
	  followed by parenthesis and add appropriate exception handling in
	  dep_check.

2006-12-16 21:42  zmedico

	* bin/emerge, pym/portage.py: Make dep_check validate all depstring
	  atoms in order to prevent problems from occuring later due to
	  unexpected invalid atoms.

2006-12-16 09:59  zmedico

	* pym/portage_update.py: Fix global updates error handling to
	  prevent a traceback with python-2.5 as reported in bug #158264.

2006-12-16 05:21  zmedico

	* bin/ebuild.sh: For bug #158177, force configure scripts that
	  automatically detect ccache to respect FEATURES="-ccache". Thanks
	  to Horst Schirmeier <gentoo@schirmeier.com> for this suggestion.

2006-12-16 03:26  zmedico

	* bin/repoman: Make repoman cache per-profile xmatch results.

2006-12-16 02:16  zmedico

	* pym/portage.py: Split ACCEPT_KEYWORDS before entering the loop
	  for better efficiency.

2006-12-16 02:14  zmedico

	* pym/portage.py: Make sure eapi is defined in order to prevent a
	  NameError.

2006-12-16 02:10  zmedico

	* pym/portage.py: Cache KEYWORDS and EAPI metadata values in order
	  to speed up portdbapi.gvisible() calls. This greatly improves
	  repoman performance (help emerge a little too).

2006-12-16 02:04  zmedico

	* bin/emerge: For bug #157897, show parent nodes in order to help
	  the user decide about what action to take.

2006-12-14 20:42  zmedico

	* bin/emerge: Cache blocked slots for better efficiency.

2006-12-14 07:21  zmedico

	* bin/emerge: Make --columns blockers output more consistent when
	  --quiet is not enabled.

2006-12-14 07:09  zmedico

	* bin/emerge: Remove pointless unpacking of the parent node.

2006-12-14 07:03  zmedico

	* bin/emerge: Remove redundant priority handling since that's
	  always handled in select_dep() for nodes that have parents.

2006-12-14 04:30  zmedico

	* bin/emerge: Fix the --onlydeps conditional logic in
	  depgraph.create(). These aren't real nodes and shouldn't be added
	  to the digraph, etc...

2006-12-14 01:57  zmedico

	* bin/emerge: Use depgraph.pkg_node_map so simplify comparison
	  against existing nodes at the beginning of depgraph.create().

2006-12-14 01:06  zmedico

	* bin/emerge: Update the comment about depgraph.pkg_node_map since
	  it now maps all nodes added to the graph.

2006-12-14 01:01  zmedico

	* bin/emerge: Fix a typo from the previous commit.

2006-12-14 00:57  zmedico

	* bin/emerge: For bug #157897, add slot collision handling in
	  depgraph.create(), since create() is called from places other
	  than select_dep().

2006-12-13 22:13  vapier

	* bin/emerge: handle --cols when displaying blockers

2006-12-13 21:50  zmedico

	* bin/emerge: For bug #157897, handle the case of multiple versions
	  within a single package slot have been pulled into the dependency
	  graph. If possible, the package that has already been pulled in
	  will be reused. Otherwise, an error message will advise the user
	  to mask an unwanted version.

2006-12-13 10:50  zmedico

	* bin/emerge: Remove redundant digraph.pkg_node_map node
	  insertions. Once per digraph.create() call will cover all nodes.

2006-12-13 10:40  zmedico

	* bin/emerge: Track slot atom to digraph node mappings as the
	  depgraph is built. This mapping will be used to detect node
	  collisions for bug #157897.

2006-12-13 01:19  zmedico

	* pym/portage.py: Move the biolerplate cpv_all() implementation
	  from portdbapi to dbapi.

2006-12-12 22:25  zmedico

	* bin/emerge: For bug #157897, ensure that only "merge" nodes are
	  stored in digraph.pkg_node_map.

2006-12-12 11:59  zmedico

	* bin/emerge: For bug #157897, only let depgraph.create() inject
	  "merge" nodes into the final state dbapi.

2006-12-12 07:45  zmedico

	* bin/emerge: For higher efficiency, call self.__int__() instead of
	  int(self).

2006-12-12 02:22  zmedico

	* bin/emerge: Optimize dep_check calls in
	  depgraph.validate_blockers() by using a fakedbapi instance
	  instead of the real pordbapi (minimizes available matches).

2006-12-12 01:47  zmedico

	* bin/emerge: Store dependency metadata in depgraph.mydbapi so that
	  it can be used in place of the portdb for optimized dep_check
	  calls in depgraph.validate_blockers().

2006-12-12 01:19  zmedico

	* bin/emerge: Centralize all of the vardb metadata mangling in
	  FakeVartree.

2006-12-11 22:43  zmedico

	* pym/portage.py: All portage.fetch() to succeed even if
	  FETCHCOMMAND and RESUMECOMMAND aren't defined.

2006-12-11 22:16  zmedico

	* pym/portage.py: Make the fetch phase bail out if FETCHCOMMAND or
	  RESUMECOMMAND are missing. Thanks to Flameeyes for reporting.

2006-12-11 21:38  zmedico

	* bin/emerge: For bug #157823, ignore blocker collisions between
	  two packages that are already installed if no merge is currently
	  scheduled for either of those package slots. These blockers will
	  be handled as necessary the next time that a merge of either
	  package is triggered.

2006-12-11 16:44  zmedico

	* bin/emerge: For bug #157823, don't forget to split the USE.

2006-12-11 09:48  zmedico

	* bin/emerge: Fix a typo from the previous commit.

2006-12-11 09:43  zmedico

	* bin/emerge: When there are multiple packages occupying the same
	  slot, only consider the one with the highest COUNTER. Thanks to
	  leio for reporting.

2006-12-11 01:24  zmedico

	* bin/emerge, pym/portage.py: Ensure that the root of the vdb
	  exists before attempting to lock it. Thanks to Flameeyes for
	  reporting.

2006-12-10 23:56  zmedico

	* bin/emerge: Ignore blockers when "--buildpkgonly" is enabled.

2006-12-10 20:36  zmedico

	* bin/repoman, pym/portage_dep.py: Add an allow_blockers parameter
	  to isvalidatom so that the behavior is optional. Thanks to Brian
	  Harring for the suggestion.

2006-12-10 19:55  zmedico

	* pym/portage_dep.py: For bug #157734, fix repoman isvalidatom()
	  checks. Thanks to Brian Harring for the patch.

2006-12-10 19:41  zmedico

	* pym/portage_dep.py: Don't collapse the tuple into a hash, since
	  dict can use __eq__ to avoid problems with hash collisions.
	  Thanks to Brian Harring for reporting.

2006-12-10 11:41  zmedico

	* pym/portage_dep.py: To minimize memory consumption and maximize
	  performance, use hash values for cache keys.

2006-12-10 10:59  zmedico

	* bin/emerge: Make sure the SLOT comes from the vardb instead of
	  the portdb (for multislot, etc..). Thanks to jakub for reporting.

2006-12-10 10:35  zmedico

	* bin/emerge: For bug #128809, optimize dep_check calls and enable
	  the blocker detection by default since the performance now seems
	  acceptable.

2006-12-10 09:52  zmedico

	* pym/portage.py: Initialize the match cache in the bindbapi
	  constructor.

2006-12-10 09:36  zmedico

	* pym/portage.py: Cache the results of fakedbapi.match() calls and
	  clear the cache automatically when necessary.

2006-12-10 08:09  zmedico

	* pym/portage.py: Use dep_getcpv() inside dep_expand() for code
	  sharing and caching.

2006-12-10 07:23  zmedico

	* pym/portage_dep.py: Cache results of dep_getcpv() calls.

2006-12-10 07:09  zmedico

	* pym/portage_dep.py: Cache the results of match_from_list() calls.

2006-12-10 06:35  zmedico

	* pym/portage.py: Avoid unnecessary dbapi.cp_list() calls inside
	  cpv_expand().

2006-12-10 00:31  zmedico

	* bin/emerge: For bug #128809, process blockers for all installed
	  packages. Due to the performance penalty incurred by additional
	  dep_check calls, this is only enabled with the --deep option.

2006-12-10 00:11  zmedico

	* bin/emerge: Escape a newline from the previous commit.

2006-12-09 23:34  zmedico

	* bin/emerge: Don't attempt to enforce merge order unless the
	  blocker parent is actually a "merge" node.

2006-12-09 23:10  zmedico

	* bin/emerge: This patch cleans up the blocker validation logic.
	  Unlike the previous implementation, this one carefully considers
	  each parent/block package relationship in order to ensure that no
	  unresolved blocks slip through.

2006-12-09 20:45  zmedico

	* bin/ebuild.sh: For bug #157369, clean when cleanup has been
	  triggered by changed timestamps. Also, allow FEATURES=keepwork to
	  override the ebuild mtime check.

2006-12-09 20:34  zmedico

	* bin/repoman: Clean up depstring/atom splitting and filtering.

2006-12-09 20:22  zmedico

	* pym/portage_dep.py: Add ? to the invalid atom characters.

2006-12-09 20:13  zmedico

	* pym/portage_dep.py: Make isvalidatom() (and thus repoman) reject
	  atoms containing |() characters. Thanks to Brian Harring for the
	  suggestion.

2006-12-09 19:30  zmedico

	* bin/repoman: Use portage.isvalidatom() for atom validation in
	  repoman.

2006-12-09 19:19  zmedico

	* pym/portage.py: Add use.force support to dep_check for repoman
	  especially. Thanks to Flameeyes for reporting and tesing.

2006-12-09 16:00  genone

	* bin/misc-functions.sh: adjust QA_* variable names for complex
	  values of like x86-fbsd

2006-12-09 08:05  zmedico

	* pym/portage.py: Fix a type from the previous commit.

2006-12-09 07:07  zmedico

	* pym/portage.py: Fix broken SLOT update logic in
	  fakedbapi.cpv_inject().

2006-12-09 05:10  zmedico

	* bin/emerge: Split some global updates functions out of depgraph
	  and use them for depclean when necessary.

2006-12-09 03:23  zmedico

	* bin/emerge: Use tuples for digraph nodes in order to avoid lots
	  of pointless join and split calls.

2006-12-09 03:05  zmedico

	* bin/emerge: Remove unused depgraph.match() method.

2006-12-09 01:08  zmedico

	* bin/emerge: Move the reset of the per-root initializations into
	  the loop.

2006-12-09 00:58  zmedico

	* bin/emerge: Go ahead and populate depgraph.mydbapi even when
	  --emptytree is enabled since it doesn't matter anymore (dep_check
	  now returns all deps anyway).

2006-12-09 00:09  zmedico

	* pym/portage.py: Remove locking from dbapi.aux_update()
	  implementations so that the caller can handle locking instead.

2006-12-09 00:02  zmedico

	* pym/portage.py: Clean up vardbapi.aux_get().

2006-12-08 22:52  zmedico

	* bin/repoman, man/make.conf.5: Remove all traces of FEATURES=cvs
	  since code for that feature no longer exists (apparently since
	  portage-2.1).

2006-12-08 18:34  zmedico

	* tests/__init__.py, tests/runTests: Indicate test failure with an
	  exit code.

2006-12-08 06:33  zmedico

	* bin/emerge: Break out of the loop if a CacheError occurs.

2006-12-08 06:32  zmedico

	* bin/emerge: Delete the exception object after use.

2006-12-08 06:28  zmedico

	* bin/emerge: For bug #157370, make `emerge --regen` cleanse stale
	  cache entries.

2006-12-08 02:40  zmedico

	* bin/emerge: Simplfy deprecated action parsing logic.

2006-12-08 02:32  zmedico

	* bin/emerge: Avoid bogus 'Deprecated use of action' warnings for
	  valid commands such as `emerge -s sync`.

2006-12-08 01:57  antarus

	* tests/__init__.py, tests/test_util.py, tests/test_vercmp.py: add
	  some portage_util tests

2006-12-08 01:51  genone

	* bin/emerge, make.conf.txt: Allow searching for action terms again

2006-12-08 01:36  antarus

	* pym/portage_util.py: minor syntax changes ( in is faster than
	  has_key ) and docstrings

2006-12-08 01:15  zmedico

	* pym/portage_locks.py: Make all lock files hidden for bug #142369.

2006-12-08 00:12  antarus

	* tests, tests/__init__.py, tests/runTests, tests/test_vercmp.py:
	  Add pretty basic vercmp unit testing...need more cases

2006-12-07 23:10  zmedico

	* pym/portage.py: s/zip/izip/ some more

2006-12-07 23:03  zmedico

	* bin/emerge: s/zip/izip/ Thanks to Brian Harring for the
	  suggestion.

2006-12-07 22:50  antarus

	* pym/portage_versions.py: A quick docstring for vercmp

2006-12-07 22:29  zmedico

	* pym/portage.py: Catch an exception instead of using a redundant
	  os.access call.

2006-12-07 22:25  antarus

	* pym/portage_versions.py: portage_versions lacks a header or
	  copyright notice :x

2006-12-07 22:23  zmedico

	* bin/emerge, pym/portage.py: Enable FakeVartree to populate the
	  virtuals so that the vdb doesn't have to be scanned separately.

2006-12-07 21:55  zmedico

	* bin/emerge, pym/portage.py: Share the same config instance
	  between portagetree and portdbapi instances since clone isn't
	  needed here. Also, trigger population of virtuals prior to
	  cloning in emerge. This reduces the number of times the virtuals
	  are populated from 3 to just 1.

2006-12-07 21:00  zmedico

	* pym/portage_versions.py: For bug #152127, make vercmp give less
	  value to implcit .0, so two versions that aren't literally equal
	  are not ambiguously given the same value (in sorting, for
	  example).

2006-12-07 20:09  zmedico

	* pym/portage_dep.py: Revert r5175 for bug #152127 since the
	  original = behavior seems more desirable. We can change the >=
	  and <= behavior instead.

2006-12-07 18:58  zmedico

	* pym/portage.py: Fix the 'TypeError: not all arguments converted
	  during string formatting' for bug #157385.

2006-12-07 09:01  zmedico

	* bin/ebuild: Make sure the ebuild path is properly normalized.

2006-12-07 08:56  zmedico

	* bin/ebuild: For bug #157393, fix up ebuild path normalization so
	  that it's compatible with portdbapi handling and works properly
	  with symlinks (like crossdev creates).

2006-12-07 06:52  zmedico

	* bin/repoman: Make repoman bail out if it's unable to generate the
	  Manifest.

2006-12-07 06:38  zmedico

	* pym/portage.py: Fix broken SRC_URI logic in doebuild.

2006-12-07 06:27  zmedico

	* pym/portage.py: Fix broken SRC_URI logic from the previous
	  commit.

2006-12-07 06:17  zmedico

	* pym/portage.py: For bug #157385, enable portage.digestgen() to
	  fetch any distfiles for which there are no existing digests.

2006-12-06 23:12  zmedico

	* bin/emerge: Fix indentation.

2006-12-06 23:10  zmedico

	* bin/emerge: Remove all traces of the unmerge raise_on_missing
	  parameter.

2006-12-06 23:07  zmedico

	* bin/emerge: Always silently ingnore missing packages during
	  unmerge.

2006-12-06 22:56  zmedico

	* bin/emerge: Fix depclean so the fake vartree is used in dep_check
	  calls.

2006-12-06 22:47  zmedico

	* bin/emerge: Allow depclean to silently skip packages unmerged
	  behind it's back.

2006-12-06 22:42  zmedico

	* bin/emerge: Use FakeVartree for vardb lock/cache during depclean.

2006-12-06 22:19  zmedico

	* bin/emerge: Delete the depgraph when it's no longer needed.

2006-12-06 22:12  zmedico

	* bin/emerge: Use a fake vartree for depgraph calculations. This
	  minimizes the time that a lock needs to be held on the vardb, and
	  allows in-memory global updates when necessary.

2006-12-06 20:39  zmedico

	* bin/emerge: Only call calc_changelog if there is an installed
	  version in the same slot.

2006-12-06 20:32  zmedico

	* bin/emerge: Remove dependence on the vartree api by using
	  equivalent vardbapi calls.

2006-12-06 19:36  zmedico

	* bin/emerge: Remove unused depgraph.is_newer_ver_installed()
	  method.

2006-12-06 19:27  zmedico

	* pym/portage.py: Implement fakedbapi.aux_update().

2006-12-06 18:47  zmedico

	* pym/portage_dep.py: Sync match_to_list >=, <=, etc.. code with
	  the new = code.

2006-12-06 18:37  zmedico

	* pym/portage_dep.py: Make match_to_list = behavior consistent with
	  >= and <= for bug #152127.

2006-12-04 22:21  zmedico

	* bin/emerge: Fix up mtimedb["ldpath"] references broken by the
	  previous commit.

2006-12-04 21:49  zmedico

	* bin/emerge: For bug #157134, make `emerge --digest` automatically
	  reload the config with FEATURES=digest enabled globally.

2006-12-04 10:07  zmedico

	* pym/portage.py: Use portage.chdir() instead of os.chdir() in
	  order to avoid an 'OSError: [Errno 2] No such file or directory'
	  if the working directory doesn't exist. Thanks to Caster for
	  reporting.

2006-12-04 01:55  zmedico

	* bin/ebuild: For `ebuild --force digest`, exempt the depend phase
	  from Manifest checks.

2006-12-04 01:37  zmedico

	* man/ebuild.5: Update the RESTRICT=binchecks docs. Thanks to jakub
	  for the suggestion and antarus for the patch.

2006-12-04 01:19  zmedico

	* bin/repoman: Make `repoman fix` work with the new ebuild Manifest
	  checks during depend phase.

2006-12-04 00:47  zmedico

	* pym/portage.py: When portdbapi.aux_get() generates a KeyError in
	  portage.getmaskingstatus(), handle it by reporting "corruption".

2006-12-03 19:17  vapier

	* bin/misc-functions.sh: drop RESTRICT=stricter since every aspect
	  it covers can be handled properly via other means

2006-12-03 03:37  zmedico

	* pym/portage.py: Move the global statement out of the try block so
	  that it's clearly in scope for the finally block.

2006-12-03 03:32  zmedico

	* pym/portage.py: Make portage.digestgen() automatically exempt the
	  depend phase from Manifest checks so that it works for repoman
	  without triggering a digest verification failure.

2006-12-02 21:57  zmedico

	* pym/portage.py: Skip digest checks when digest is in features.

2006-12-02 12:42  zmedico

	* pym/portage.py: Make sure that all depend phases triggered by the
	  digest phase are exempt from digest checks.

2006-12-02 10:19  zmedico

	* pym/portage.py: Make sure that *all* of the ebuilds are listed in
	  the Manifest.

2006-12-02 08:14  zmedico

	* pym/portage.py: Only attempt to verify the Manifest if the ebuild
	  is actually in a portage tree.

2006-12-02 08:07  zmedico

	* bin/emerge-webrsync: For consistent behavior in all timezones,
	  make emerge-webrsync use UTC time for decisions about which
	  snapshots to download.

2006-12-02 06:18  zmedico

	* pym/portage.py: Avoid checking the same Manifest several times in
	  a row during a regen with an empty cache.

2006-12-02 05:42  zmedico

	* pym/portage.py: Temporarily exempt the depend phase during the
	  help phase also.

2006-12-02 05:20  zmedico

	* pym/portage.py: For manifest and digest phases, use a global
	  variable to temporarily exempt the depend phase from manifest
	  checks (in cache regeneration is triggered).

2006-12-02 04:42  zmedico

	* pym/portage.py: Always verify the ebuild checksums before
	  executing it. Thanks to solar for the suggestion and antarus for
	  the initial patch.

2006-12-01 09:22  genone

	* make.conf.txt: use a link in CXXFLAGS section (the typo caused it
	  to be a target)

2006-12-01 09:21  genone

	* make.conf.txt: fix a few docutils errors

2006-12-01 08:44  genone

	* make.conf.txt: add ReST template to be used for
	  manpage/make.globals/make.conf.example generation later on

2006-11-29 20:26  solar

	* bin/misc-functions.sh: - no point in forking a call to true when
	  we can simply use the bash internal of : for true

2006-11-29 20:25  solar

	* bin/ebuild.sh: - make sure QUIET mode is exported to the
	  environment properly when using -q mode.

2006-11-26 14:14  zmedico

	* bin/dispatch-conf: For bug #8423, make dispatch-conf preserve
	  timestamps when possible.

2006-11-26 14:06  zmedico

	* bin/etc-update: For bug #8423, make etc-update preserve
	  timestamps when possible.

2006-11-26 12:50  zmedico

	* pym/portage.py: Update the dblink.isprotected() docstring.

2006-11-26 12:40  zmedico

	* pym/portage.py: Never overwrite an untouched config file and
	  trigger config protection instead (in case the new config has an
	  unwanted change). In cases where an installed package in the same
	  slot owns a protected file that will be merged, bump the mtime on
	  the installed file in order to ensure that it isn't unmerged.
	  Thanks to Ciaran McCreesh <ciaranm@ciaranm.org> for his
	  suggestion on bug #8423, comment #40.

2006-11-26 09:03  zmedico

	* pym/portage.py: For bug #8423, allow the merge phase to overwrite
	  untouched config files and also allow the unmerge phase to
	  unmerge untouched config files.

2006-11-23 12:36  zmedico

	* pym/portage.py: Allow -keyword to be matched since some ebuilds
	  use it. Thanks to Brian Harring reporting on bug #150585.

2006-11-23 12:10  zmedico

	* bin/emerge: For bug #156014, always round up the next kB so that
	  it doesn't show 0 kB when some small file still needs to be
	  fetched.

2006-11-23 03:13  zmedico

	* pym/portage.py: For bug #150585, stack package.keywords
	  incrementally so that -keyword works as expected for any
	  incremental variable. This brings the gvisible and
	  getmaskingstatus logic into sync so that the confusing (masked
	  by: ) message will not be generated in cases where
	  package.keywords contains -keyword followed by keyword.

2006-11-22 14:07  zmedico

	* pym/portage_util.py: Use portage_data.lchown for compatibility.

2006-11-22 13:01  zmedico

	* bin/emerge: Fix a KeyError in emerge --info <pkg> when there is
	  no matching ebuild in the tree. Thanks to Bo Ørsted Andresen
	  <bo.andresen@zlin.dk> for reporting.

2006-11-22 06:40  zmedico

	* pym/portage_util.py: Really fix bit mask support when preserving
	  S_ISUID and S_ISGID in apply_permissions.

2006-11-22 06:33  zmedico

	* pym/portage_util.py: Fix bit mask support when preserving S_ISUID
	  and S_ISGID in apply_permissions.

2006-11-22 06:20  zmedico

	* pym/portage_util.py: Fix apply_permissions logic for cases where
	  mode is unspecified.

2006-11-22 05:57  zmedico

	* bin/misc-functions.sh, pym/portage.py, pym/portage_util.py: For
	  bug #142993, make sure that chown and chgrp calls preserve
	  S_ISUID and S_ISGID mode bits.

2006-11-20 08:29  zmedico

	* bin/emerge: Enable PORTAGE_CONFIGROOT to be set via an new
	  --config-root option. Thanks to Daniel Barkalow
	  <barkalow@iabervon.org> for the initial patch (submitted on the
	  gentoo-portage-dev mailing list).

2006-11-20 08:11  zmedico

	* bin/emerge: Print a warning message if a user requests a package
	  from package.provided (since it won't be merged).

2006-11-20 07:38  zmedico

	* bin/emerge: For bug #155739, only check if a dep is in the args
	  when myroot == self.target_root.

2006-11-20 05:54  zmedico

	* bin/emerge, pym/portage.py: Allow the ROOT setting to come from
	  make.conf. Thanks to Daniel Barkalow <barkalow@iabervon.org> for
	  this patch (submitted on the gentoo-portage-dev mailing list).

2006-11-20 03:55  zmedico

	* bin/emerge: Remove more redundant package.provided handling that
	  is now covered by dep_wordreduce.

2006-11-20 03:45  zmedico

	* bin/emerge: Remove redundant package.provided handling that is
	  now covered by dep_wordreduce.

2006-11-20 03:39  zmedico

	* bin/emerge: For depclean, just pass in None for mydbapi (instead
	  of an empty fakedbapi instance) since that's now supported.

2006-11-20 03:35  zmedico

	* pym/portage.py: Allow dep_wordreduce to mark things satisfied by
	  package.provided even when mydbapi is None.

2006-11-20 03:03  zmedico

	* bin/emerge, pym/portage.py: Use mydbapi is None to eliminate the
	  return_all_deps parameter from dep_check and dep_zapdeps. The
	  result is the same and this way we avoid having an additional
	  parameter with overlapping meaning.

2006-11-19 00:01  zmedico

	* pym/portage.py: Fix portdbapi.cpv_all() so that it actually
	  returns a list of all available ebuilds.

2006-11-18 13:39  zmedico

	* bin/emerge: Use fake_vardb for cached aux_get calls.

2006-11-18 13:28  zmedico

	* bin/emerge: For bug #155559, force depclean dep_check calls to
	  preference installed packages.

2006-11-18 00:45  zmedico

	* NEWS, bin/emerge, bin/repoman, pym/portage.py,
	  pym/portage_const.py: Revert ACCEPT_LICENSE support, since
	  license group support is a requirement and it remain
	  unimplemented. This brings trunk back into sync with the 2.1.2
	  branch.

2006-11-17 15:06  zmedico

	* bin/fixpackages: s/settings/mysettings/ typo

2006-11-17 14:59  zmedico

	* bin/fixpackages: Make fixpackages use PORTAGE_NICENESS.

2006-11-17 14:54  zmedico

	* bin/emerge: For bug #155484, apply PORTAGE_NICENESS as soon as
	  possible (especially before global updates).

2006-11-17 10:23  zmedico

	* bin/emerge: Fix a typo that prevents emerge --clean from working
	  properly. Thanks to leio for reporting.

2006-11-17 09:20  zmedico

	* pym/portage.py: Integrate old-style virtuals handling into
	  _expand_new_virtuals() and prefer new-style over old-style
	  whenever they are available.

2006-11-17 02:01  zmedico

	* pym/portage.py: Fix _expand_new_virtuals so that it doesn't allow
	  any virtual deps to go unaccounted for.

2006-11-17 00:02  zmedico

	* pym/portage.py: Update the _expand_new_virtuals docstring with a
	  not about zero cost for new-style virtuals.

2006-11-16 23:50  zmedico

	* bin/emerge: Revert the depclean message, since new-style virtuals
	  will now be kept.

2006-11-16 23:29  zmedico

	* pym/portage.py: For bug #141118, make dep_zapdeps assign zero
	  cost to new-style virtuals.

2006-11-16 21:52  zmedico

	* pym/portage.py: Pull in the new-style virtuals and install them
	  so that the vdb has complete standalone dep info, in case a
	  portage tree isn't available.

2006-11-16 04:54  zmedico

	* bin/emerge: Add a note about removal of new-style virtuals in the
	  depclean output.

2006-11-16 04:26  zmedico

	* pym/portage.py: For bug #141118, make dep_check do recursive
	  expansion of new-style virtuals.

2006-11-15 09:00  zmedico

	* bin/emerge: Don't try to lock the vdb unless privileges are
	  sufficient.

2006-11-15 04:09  zmedico

	* bin/emerge: Automatically convert --ask to --pretend when the
	  user doesn't have the privileges for --ask. Thanks to Daniel
	  Barkalow <barkalow@iabervon.org> for the initial patch (submitted
	  on gentoo-portage mailing list).

2006-11-14 14:42  zmedico

	* bin/emerge: Only reload the config if global updates have
	  actually been performed.

2006-11-14 14:34  zmedico

	* pym/portage.py: Make portage.global_updates() return any updates
	  that may have been performed.

2006-11-14 14:07  zmedico

	* pym/portage.py: Fix a lock file leak.

2006-11-14 12:14  zmedico

	* pym/portage.py: Remove useless unmerge() call after
	  collision-protect has prevented anything from being merged.

2006-11-14 07:35  zmedico

	* bin/emerge, pym/portage.py: Make fakedbapi support generic
	  metadata instead of just slots.

2006-11-14 06:32  zmedico

	* bin/emerge: Cache depgraph.altlist results, since altlist is
	  called multiple times and can be time consuming for a large
	  depgraph.

2006-11-14 05:57  zmedico

	* bin/emerge: For bug #154897, show a summary of fetch restrictions
	  if there are any.

2006-11-14 05:51  zmedico

	* pym/portage.py: For bug #154986, show the usual "Filesize does
	  not match recorded size" message even for fetch restricted files.

2006-11-14 03:50  zmedico

	* pym/portage.py: Remove reentrance support for dblink.lockdb()
	  since it's no longer used and it won't necessarily work correctly
	  now that a global vdb lock is used.

2006-11-14 03:30  zmedico

	* pym/portage.py: Use try/finally to ensure that locks are properly
	  released in dblink.unmerge().

2006-11-14 02:43  zmedico

	* bin/emerge: Use try/finally to ensure that locks are properly
	  released in emergelog().

2006-11-14 02:29  zmedico

	* pym/portage_checksum.py: Use try/finally to ensure that locks are
	  properly released in perform_checksum().

2006-11-14 02:08  zmedico

	* pym/portage.py: Use try/finally to ensure that locks are properly
	  released in portdbapi.aux_get().

2006-11-13 23:59  zmedico

	* bin/emerge: For bug #154989, lock /var/db/pkg while determining
	  which packages to unmerge, then release the lock. The lock will
	  be reacquired/released for each individual unmerge, allowing
	  opportunities for other processes to acquire it.

2006-11-13 23:52  zmedico

	* pym/portage.py: For bug #154989, use a single lock on /var/db/pkg
	  since finer grained locking is unnecessary and often
	  insufficient.

2006-11-13 01:12  zmedico

	* bin/emerge: For bug #154919, when depclean is unable to resolve
	  dependencies, notify the user that it may be necessary to
	  manually uninstalled packages that no longer exist in the portage
	  tree.

2006-11-13 00:50  zmedico

	* pym/portage.py: For bug #154921, prevent an IndexError when a +
	  is in USE.

2006-11-12 07:05  zmedico

	* bin/emerge: Fix depgraph.pkg_node_map so that it properly
	  supports $ROOT.

2006-11-11 23:59  zmedico

	* pym/portage.py: For bug #154554, validate all profile virtuals
	  atoms.

2006-11-11 23:24  zmedico

	* bin/emerge: For initial gentoo-x86 checkout, if $PORTDIR exists
	  and is empty then remove it so that the gentoo-x86 checkout can
	  replace it.

2006-11-11 14:00  zmedico

	* bin/emerge: Fix initial cvs checkout logic for bug #100478.

2006-11-11 13:39  zmedico

	* bin/emerge: Fix emerge --sync with a cvs:// uri so that it runs
	  /etc/portage/bin/post_sync like it would with a normal rsync://
	  uri. Thanks to drizzt for reporting.

2006-11-11 10:13  zmedico

	* pym/portage.py: Make digestcheck() fail if an ebuild isn't listed
	  in the Manifest. Thanks to pva for reporting.

2006-11-09 10:44  zmedico

	* pym/portage_dep.py: Thanks again to Chris White for these
	  additional portage_dep docstrings.

2006-11-08 07:38  zmedico

	* pym/portage_dep.py: Thanks to Chris White for these portage_dep
	  docstrings.

2006-11-07 22:12  zmedico

	* bin/emerge: Add --newuse back to the suggested options in the
	  depclean warning message, since it's still needed in some cases.

2006-11-07 22:07  zmedico

	* bin/emerge: For bug #154207, add a note about package.provided to
	  the depclean warning message.

2006-11-07 11:45  zmedico

	* pym/portage.py: s/grabdict/grabdict_package/ for bug #63429.

2006-11-07 10:04  zmedico

	* bin/emerge: Remove some stray blocker validation logic.

2006-11-07 09:38  zmedico

	* bin/emerge: Plug some holes in the blocker validation logic so
	  that nothing can slip through.

2006-11-07 07:37  zmedico

	* bin/emerge: Thanks to Bo Ørsted Andresen <bo.andresen@zlin.dk>
	  for this output fix for bug #153847.

2006-11-07 07:14  zmedico

	* pym/portage_checksum.py: Thanks to Chris White for these
	  portage_checksum docstrings.

2006-11-07 05:58  zmedico

	* bin/emerge: Print the number of upgrades, downgrades, etc. next
	  to size of downloads. Thanks to Bo Ørsted Andresen
	  <bo.andresen@zlin.dk> for the initial patch from bug #153847.

2006-11-07 02:55  zmedico

	* bin/emerge: Fix validate_blockers() so that a package doesn't
	  block itself via a virtual that it provides.

2006-11-06 21:21  zmedico

	* pym/portage.py: Minimize getvirtuals() calls and dict lookups
	  inside dep_virtual().

2006-11-06 20:50  zmedico

	* bin/emerge, pym/portage.py: Simplify the new-style -> old-style
	  virtuals bridge by doing it implicitly for all virtuals instead
	  of explicit scanning for available new-style virtuals.

2006-11-06 19:52  zmedico

	* bin/emerge-webrsync: For bug #154220, run
	  /etc/portage/bin/post_sync at the end of emerge-webrsync.

2006-11-06 19:16  zmedico

	* pym/portage.py: Make config.add_new_virtuals() work properly even
	  if self.virtuals has previously been initialized.

2006-11-06 19:05  zmedico

	* bin/emerge, pym/portage.py: For bug #154223, bridge new-style
	  virtuals into old-style virtuals in order to prevent old-style
	  virtuals from making new-style virtuals invisible.

2006-11-06 10:17  zmedico

	* bin/emerge: Make sure the node is still in the graph so that a
	  KeyError can't happen.

2006-11-06 09:31  zmedico

	* bin/emerge: Remove old code the used to bump portage near the top
	  of the merge list. It's ineffective now that a complete depgraph
	  is built.

2006-11-06 09:26  zmedico

	* bin/emerge: Remove "update portage before proceeding" message
	  that is no longer relevant.

2006-11-06 09:19  zmedico

	* bin/emerge: Ensure that sys-apps/portage is as close as possible
	  to the beginning of the merge list. This is accomplished by
	  merging it before any soft deps that it may have.

2006-11-06 05:59  zmedico

	* bin/emerge: Prevent the --newuse check in depgraph.create() that
	  is intended for the ebuild type from being done on binary
	  packages (which can lead to a KeyError). The --newuse check for
	  binaries is elsewhere (in select_dep).

2006-11-04 04:44  zmedico

	* bin/ebuild.sh: Revert implicit rdepend behavior back to the way
	  it was in portage-2.0.51. Thanks to vapier for the patch. The
	  original change seems to have been an accidentally hunk
	  (referencing bug #58819) that was committed to cvs along with
	  another patch in revision 1.201.2.32 of ebuild.sh.

2006-11-04 02:32  zmedico

	* bin/emerge: Fix --ignore-default-opts for bug #153980.

2006-11-04 01:58  zmedico

	* pym/cache/util.py: Make sure trg is defined.

2006-11-04 01:55  zmedico

	* pym/cache/util.py: When transferring cache after sync, compare
	  all metadata to make sure it is identical (don't trust _mtime_
	  and _eclasses_ alone). Local tests show that this can add
	  approximately 15% more time to the metadata update, but it's
	  needed for things like bug #153591.

2006-11-04 00:22  zmedico

	* bin/ebuild.sh: Don't allow RESTRICT=ccache since it should work
	  and if not then it's a bug that ought to be fixed. Thanks to
	  vapier.

2006-11-03 22:32  zmedico

	* bin/ebuild.sh: Enable RESTRICT=ccache. Thanks to drizzt for
	  reporting.

2006-11-03 21:14  zmedico

	* bin/emerge: Silently omit info_pkgs that aren't installed. Thanks
	  to solar.

2006-11-03 20:32  zmedico

	* pym/portage.py: For bug #153951, fail with a simple "Permission
	  denied" error if the merge phase doesn't have write access to
	  $ROOT.

2006-11-02 10:03  zmedico

	* man/make.conf.5: Fix the USE_ORDER docs for bug #153764. Thanks
	  to Alec Warner for the initial patch.

2006-11-02 08:56  zmedico

	* pym/emergehelp.py: Remove broken nocolor() call, since thats
	  handled internally by the output module anyway.

2006-11-02 08:50  zmedico

	* pym/emergehelp.py: Add --color < y | n > help output for bug
	  #42115.

2006-11-02 08:30  zmedico

	* man/emerge.1: Document the new --color < y | n > option for bug
	  #42115.

2006-11-01 23:55  zmedico

	* bin/emerge, pym/output.py: Implement --color < y | n > for bug
	  #42115 and deprecate --nocolor. When --color is not specified,
	  rely on the old NOCOLOR variable and/or stdout auto-detection.

2006-11-01 10:10  zmedico

	* bin/archive-conf: For bug #116616, only run the post_process
	  phase if necessary.

2006-11-01 09:39  zmedico

	* bin/dispatch-conf: For bug #129670, skip the replace-cvs and
	  replace-wscomments tests if the diff exit code indicates two two
	  binary files that differ.

2006-11-01 07:06  zmedico

	* pym/portage.py: For bug #153282, automatically find the owner
	  package(s) in the event of a fatal file collision (since the
	  collision is fatal, the performance hit doesn't matter).

2006-10-31 23:25  zmedico

	* pym/portage.py: For bug #153295, make load_infodir ignore files
	  that contain null bytes.

2006-10-31 20:35  vapier

	* man/ebuild.5: recommend people use `emake` rather than `make`
	  when installing with DESTDIR

2006-10-31 13:45  zmedico

	* bin/dispatch-conf, cnf/dispatch-conf.conf: Add support for frozen
	  config files for which updates are automatically zapped. Thanks
	  to Bo Ørsted Andresen for the initial patch from bug #151685.

2006-10-31 06:46  zmedico

	* pym/portage.py: Fix a KeyError when the profile doesn't define
	  default USE.

2006-10-31 04:23  zmedico

	* NEWS, bin/archive-conf, bin/chkcontents, bin/clean_locks,
	  bin/dispatch-conf, bin/ebuild, bin/emaint, bin/emerge,
	  bin/env-update, bin/fix-db.py, bin/fixpackages, bin/md5check.py,
	  bin/pkgname, bin/portageq, bin/regenworld, bin/repoman, bin/xpak:
	  Rely on PYTHONPATH instead of PORTAGE_PYM_PATH for locating
	  portage's python modules, then fall back to an explicit sys.path
	  insertion if an ImportError occurs.

2006-10-30 08:40  zmedico

	* bin/dispatch-conf, pym/portage_util.py: Just use stat instead of
	  lstat for config protect, so that broken symlinks are just
	  ignored.

2006-10-30 01:48  zmedico

	* pym/portage.py: For getmaskingstatus messages, don't assume ARCH
	  is a valid keyword, since that assumption is not necessarily
	  correct for operating systems other than Linux. Thanks to Diego
	  Pettenò for reporting.

2006-10-29 22:25  zmedico

	* pym/portage.py: For bug #153295, do a sanity check for non-string
	  types in config.environ().

2006-10-29 14:01  zmedico

	* bin/emerge: Use a tuple for __slots__ so that it's immutable.

2006-10-28 22:51  zmedico

	* pym/portage.py: Don't forget to continue for invalid binpkgs.

2006-10-28 21:57  zmedico

	* pym/portage.py: Prevent an attribute error AttributeError for
	  invalid binary packages for which there is no CATEGORY data.

2006-10-28 10:37  zmedico

	* bin/misc-functions.sh, bin/prepall, pym/portage.py: Use mtree to
	  save/restore bsd file flags before/after prepall and
	  installation. Thanks to Diego Pettenò for this patch (related to
	  bug #153109).

2006-10-27 23:55  zmedico

	* bin/emerge: Avoid a TypeError with emerge -kN when there's no
	  matching ebuild.

2006-10-27 21:45  zmedico

	* pym/cache/template.py: Add backward compatibility code for cache
	  modules that override has_key instead of __contains__.

2006-10-27 08:14  zmedico

	* pym/emergehelp.py: Update help for greedy behavior of --update.

2006-10-27 08:10  zmedico

	* pym/emergehelp.py: Update help for --deep.

2006-10-27 08:05  zmedico

	* pym/emergehelp.py: Add --with-bdeps to emerge --help output.

2006-10-27 07:36  zmedico

	* pym/dispatch_conf.py: Don't bother to insert /usr/lib/portage/pym
	  into sys.path from inside a module. That's the caller's job.

2006-10-27 06:32  zmedico

	* bin/ebuild: Do not pass the "clean" parameter to doebuild since
	  it causes ${T} to be cleaned up when it shouldn't be. Thanks to
	  Mr_Bones_ for reporting.

2006-10-26 16:27  genone

	* pym/portage.py: show licenses or pointer to license files on
	  'masked by' message

2006-10-26 16:27  genone

	* bin/emerge, pym/portage.py: show licenses or pointer to license
	  files on 'masked by' message

2006-10-26 16:18  genone

	* pym/portage.py: add function getlicensetexts() to extract license
	  texts relevant to a given cpv (to be used by emerge masked by
	  display)

2006-10-26 15:47  genone

	* pym/portage.py: need a mutable config instance to use setcpv

2006-10-26 15:43  genone

	* bin/emerge, pym/portage.py: rename getmaskingreason() to
	  getpmaskcomment() to clarify its function, report each license as
	  a separate mask instead of combining them all together into a
	  single value for getmaskingstatus()

2006-10-26 13:49  genone

	* NEWS, bin/archive-conf, bin/chkcontents, bin/clean_locks,
	  bin/dispatch-conf, bin/ebuild, bin/emaint, bin/emerge,
	  bin/env-update, bin/fix-db.py, bin/fixpackages, bin/md5check.py,
	  bin/pkgname, bin/portageq, bin/regenworld, bin/repoman, bin/xpak,
	  pym/dispatch_conf.py: streamline portage pythonpath handling and
	  add an override analog to how the bash side does it

2006-10-26 08:10  zmedico

	* pym/cache/anydbm.py, pym/cache/flat_hash.py,
	  pym/cache/flat_list.py, pym/cache/metadata_overlay.py,
	  pym/cache/sql_template.py, pym/cache/sqlite.py,
	  pym/cache/template.py: Reverse the relationship between
	  __contains__ and has_key in all cache classes since python
	  handles the "in" operator more efficiently than a has_key method
	  call.

2006-10-26 06:39  zmedico

	* pym/cache/metadata.py: Test for basestring instead of
	  types.DictType so that the test more generic.

2006-10-25 23:02  zmedico

	* pym/eclass_cache.py: Fix broken is_eclass_data_valid comparison
	  logic.

2006-10-25 21:44  zmedico

	* pym/cache/template.py, pym/eclass_cache.py: For full
	  compatibility with older versions of portage, write the path in
	  the serialized _eclasses_ when possible.

2006-10-25 19:26  zmedico

	* pym/portage.py: For bug #152726, ignore hidden files in
	  vardbapi.cp_list().

2006-10-25 16:47  zmedico

	* pym/cache/template.py: For the time being, write a variation of
	  the old _eclass_ format so that cache written only forces a regen
	  for older versions of portage rather than a ValueError due to
	  failed long() conversion.

2006-10-25 02:36  zmedico

	* pym/cache/template.py: Improve reconstruct_eclasses error
	  handling.

2006-10-25 01:35  zmedico

	* man/make.conf.5, man/portage.5: Remove ACCEPT_LICENSE docs until
	  they're really implemented.

2006-10-24 19:34  zmedico

	* pym/portage.py: Disable ACCEPT_LICENSE support until the details
	  of license groups are decided and implemented.

2006-10-24 19:12  zmedico

	* pym/portage_const.py: Add ACCEPT_LICENSE back to incrementals so
	  that profiles can affect it.

2006-10-24 10:39  zmedico

	* pym/cache/flat_hash.py: Enable recognition of _mtime_ that
	  doesn't rely on cache mtime mangling.

2006-10-24 07:20  zmedico

	* pym/cache/template.py, pym/eclass_cache.py: Remove paths from
	  _eclasses_ serialization in the cache. This makes the mtimes of
	  the eclasses the only thing that distinguishes them, but the
	  probablility of collision is negligible. This same _eclasses_
	  format will be used to serialize eclass mtimes in cache that is
	  distributed via the rsync mirrors. The deserialization code can
	  handle mixtures of both the old and new formats.

2006-10-23 22:41  zmedico

	* bin/emerge: Don't display the "Please update portage" message in
	  --quiet mode. Thanks to solar.

2006-10-23 06:14  zmedico

	* pym/portage.py: In getmaskingstatus(), add missing check for * in
	  acceptable_licenses.

2006-10-22 21:15  zmedico

	* pym/portage.py: Don't put -* in the env layer, since that layer
	  isn't part of the incremental stacking in regenerate.

2006-10-22 20:56  zmedico

	* man/portage.5: Add package.license to the list of files.

2006-10-22 20:43  zmedico

	* pym/portage.py: Don't limit the size of USE in
	  config.load_infodir.

2006-10-22 20:39  zmedico

	* pym/portage.py: Make config.load_infodir also load the data into
	  the env layer in order to ensure that it has preference over what
	  may have been there.

2006-10-22 20:25  zmedico

	* NEWS: Add news about ACCEPT_LICENSE and package.license.

2006-10-22 20:23  zmedico

	* man/portage.5: Add some package.license docs.

2006-10-22 20:09  zmedico

	* man/portage.5: Put the package.keywords docs in alphabetical
	  order with the others.

2006-10-22 20:00  zmedico

	* man/make.conf.5: Add some ACCEPT_LICENSE docs.

2006-10-22 10:38  zmedico

	* bin/emerge: Fix gcc version parsing once again for bug #137786.
	  sigh. :)

2006-10-22 10:20  zmedico

	* pym/portage.py: s/str_matches/acceptable_licenses/ typo

2006-10-22 07:26  zmedico

	* bin/repoman, pym/portage.py, pym/portage_const.py: Add support
	  for masking of packages via ACCEPT_LICENSE and
	  /etc/portage/package.license. Thanks to Jason Stubbs for the
	  initial patch from bug #17367.

2006-10-22 05:55  zmedico

	* pym/portage.py: Do put empty incrementals in the environment if
	  they are already set.

2006-10-22 05:53  zmedico

	* pym/portage.py: Don't put empty incrementals in the environment.

2006-10-22 03:29  zmedico

	* pym/portage.py: Call load_infodir before the setup phase for
	  binary packages so that USE is properly set.

2006-10-22 02:56  zmedico

	* bin/emerge: Fix visibility checks so that binary packages aren't
	  masked just because there is no matching ebuild in the tree.

2006-10-21 23:40  zmedico

	* pym/portage.py: Use reset instead of regenerate (revert part of
	  the previous commit) in order to properly clear the env layer of
	  the config.

2006-10-21 23:05  zmedico

	* pym/portage.py: Optimize config.setcpv so that it only calls
	  regenerate when necessary. Thanks to Jason Stubbs for the initial
	  patch from bug #17367.

2006-10-21 12:17  zmedico

	* bin/emerge: Also check keyword visibility via gvisible.

2006-10-21 07:52  zmedico

	* pym/output.py: For bug #152157, don't send a redundant escape
	  sequence with ${PROMPT_COMMAND}.

2006-10-21 04:46  zmedico

	* NEWS: Add news about package.use in profiles and default USE in
	  ebuilds via +flag in IUSE.

2006-10-21 04:43  zmedico

	* man/portage.5: Add package.use to the list of files supported in
	  profiles.

2006-10-21 04:40  zmedico

	* NEWS: Add news about new-style virtuals being usable for
	  bootstrap deps on self.

2006-10-21 04:36  zmedico

	* bin/emerge: Remove redunant population of the fakedb in
	  depgraph.validate_blockers, since r4776 makes it unnecessary.

2006-10-21 04:32  zmedico

	* bin/emerge: Update the docs regarding delay of config.setinst
	  calls for bootstrap deps on old-style virtuals.

2006-10-21 04:19  zmedico

	* bin/emerge: Add nodes to the fakedb in depgraph.create instead of
	  depgraph.select_deps. It used to be in select_deps only for the
	  case of packages that depend on themselves for bootstrap, but
	  that hack isn't needed anymore because dep_check returns all deps
	  now.

2006-10-21 03:25  zmedico

	* bin/emerge: More filtering binary package for visiblity in greedy
	  atom handling.

2006-10-21 03:16  zmedico

	* bin/emerge: In greedy atom handlink, filter binary package for
	  visiblity.

2006-10-21 02:24  zmedico

	* bin/emerge: Apply the fix for bug #152175 to system/world greedy
	  behavior.

2006-10-21 01:26  zmedico

	* bin/emerge: For bug #152175, trigger greedy --update behavior
	  when an atom matches a slot that isn't installed yet.

2006-10-20 22:33  zmedico

	* pym/output.py: Allow an empty PROMPT_COMMAND for bug #152157.

2006-10-20 20:49  zmedico

	* bin/emerge: We there is a circular deps panic in reversed mode,
	  do the circular deps output without reversed mode since it should
	  reduce the noise level.

2006-10-20 12:45  zmedico

	* bin/emerge: Clean up the blocker validation logic so that
	  "blocks" nodes are no longer stored in the main digraph.

2006-10-20 07:39  zmedico

	* bin/dosed: Fix sed options from the previous commit so that it
	  doesn't create a backup file ending with "e". Thanks to grobian
	  for spotting this issue.

2006-10-20 06:04  zmedico

	* bin/dosed: Make dosed use sed -i instead of a temp file. Thanks
	  to Tim Cera for this patch from bug #152017.

2006-10-20 05:44  zmedico

	* bin/emerge: Remove special case of --emptytree in
	  depgraph.display(). Thanks to Jason Stubbs for this patch from
	  bug #152030.

2006-10-19 23:04  zmedico

	* pym/portage.py, pym/portage_data.py: For userpriv, call setgroups
	  with all groups that the portage user belongs to (bug #137610).

2006-10-19 21:48  zmedico

	* bin/emerge: Only call altlist() to validate blockers when
	  necessary.

2006-10-18 20:27  zmedico

	* bin/emerge: s/digraph.MEDIUM/DepPriority.MEDIUM/

2006-10-18 12:20  zmedico

	* bin/emerge: Handle unresolvable blockers properly for bug
	  #151822.

2006-10-18 11:35  zmedico

	* bin/emerge: Explicitly set the priority when a node is added to
	  enforce merge order for blocker avoidance.

2006-10-18 10:50  zmedico

	* bin/emerge: All packages to be added to the world favorites via
	  --noreplace, even when --ask is enabled. Thanks to leio for
	  reporting this issue.

2006-10-18 10:35  zmedico

	* bin/emerge: Don't initialize __weakref__ in the DepPriority
	  constructor.

2006-10-18 10:09  zmedico

	* bin/emerge: Add __weakref__ to __slots__ so that weakref support
	  isn't disabled.

2006-10-18 09:15  zmedico

	* bin/emerge: Fix --usepkg --newuse logic so that it doesn't throw
	  a KeyError if there's no matching ebuild in the tree.

2006-10-18 08:10  zmedico

	* bin/emerge: Remove the unused system slot from DepPriority.

2006-10-18 07:45  zmedico

	* bin/emerge: Fix a typo in xrange arguments from the previous
	  commit.

2006-10-18 07:32  zmedico

	* bin/emerge, pym/portage.py: Add more dependency priority levels
	  for merge order calculations. Previously, all installed deps were
	  categorized at the same level with other soft deps. Now there are
	  3 priority levels for soft deps: satisfied buildtime, satisfied
	  runtime, and other.

2006-10-17 21:51  zmedico

	* pym/portage.py: Eliminate an unnecessary string concatenation.

2006-10-17 21:32  zmedico

	* pym/portage_manifest.py: Make empty digest-* files 0 bytes
	  instead of 1 byte. Thanks to Sven Wegener for reporting this.

2006-10-17 21:10  zmedico

	* pym/portage_util.py: Fix CONFIG_PROTECT so that is works with
	  symlinked directories for bug #151502.

2006-10-17 20:46  zmedico

	* pym/portage.py: Filter empty elements in cumulative env-update
	  variables. Thanks to Brian Harring for this patch from bug
	  #151694.

2006-10-17 10:38  zmedico

	* bin/emerge: Encapsulate altlist calls (for blockers that depend
	  on merge order) in validate_blockers().

2006-10-17 10:21  zmedico

	* bin/misc-functions.sh: Add back the -v option for tar (removed
	  for bug #151146) in dyn_package(), but don't enable -v when
	  --quiet is enabled.

2006-10-17 09:49  zmedico

	* pym/portage_util.py: Add -* support to stack_lists() and use
	  dict.pop() for removal of flags when appropriate.

2006-10-17 09:40  zmedico

	* bin/emerge, pym/portage.py: Stack use.mask/package.use.mask
	  together at each level of the profile for bug #151586, and do the
	  same with use.force/package.use.force.

2006-10-17 04:31  zmedico

	* cnf/make.globals, pym/portage.py: Merge package.use and USE from
	  make.defaults together at each level of the profile stack. This
	  is analogous to how use.mask and package.use.mask are planned to
	  be merged for bug #151586.

2006-10-17 03:11  zmedico

	* bin/emerge: Use setdefault to avoid an extra dict lookup.

2006-10-17 02:27  zmedico

	* bin/emerge: Make --depclean treat DEPEND as soft deps instead of
	  forcing the user to have all build time deps installed.

2006-10-16 22:47  zmedico

	* bin/emerge: Always add blockers with priority=digraph.SOFT so
	  that blockers with multiple parents can't trigger a circular deps
	  panick.

2006-10-16 22:25  zmedico

	* bin/emerge: Fix altlist blocker validation logic so that the
	  correct nodes are added to the list when called in reverse mode.

2006-10-16 22:04  zmedico

	* bin/emerge: Blockers that depend on merge order must be validated
	  by depgraph.altlist(reversed=False) before the reverse tree is
	  generated, since the validation won't work in reverse mode.

2006-10-16 21:34  zmedico

	* bin/emerge: Remove blocker nodes from the digraph prior to the
	  merge order calculation so that they don't trigger false circular
	  dependencies as reported in comment #17 of bug #151331.

2006-10-16 18:18  zmedico

	* bin/emerge: When unable to navigate around blockers, add them
	  back to the main digraph so that the --tree display can show them
	  properly. This fixes the KeyError reported in comment #15 of bug
	  #151331

2006-10-16 16:36  genone

	* cnf/make.conf.sparc-fbsd.diff: add make.conf diff for sparc-fbsd
	  arch (from Uberlord)

2006-10-16 08:59  zmedico

	* bin/emerge, pym/portage.py: For bug #133908, prevent collisions
	  in ${PKGDIR}/All/ by automatically bumping colliding packages to
	  ${PKGDIR}/${CATEGORY}/ just before a collision would occur. Newly
	  built packages are always stored in ${PKGDIR}/All/, should this
	  be 100% compatible with previous behavior.

2006-10-15 20:32  zmedico

	* pym/portage_util.py: Simplify and optimize grabdict. Thanks to
	  Brian Harring for suggesting this.

2006-10-15 20:01  zmedico

	* pym/portage_util.py: Make grabdict incremental, so that keys
	  occuring multiple times will stack up instead of overwritting
	  eachother. Thanks to Sven Wegener for this suggestion.

2006-10-15 10:54  zmedico

	* pym/portage.py: Trigger binarytree population on
	  bindbapi.cpv_all() calls.

2006-10-15 09:53  zmedico

	* pym/cache/metadata.py: Add a missing method parameter.

2006-10-15 07:26  zmedico

	* pym/portage.py: Simplify binarytree.getname().

2006-10-15 06:51  zmedico

	* bin/ebuild.sh: Use globing to match *rm phases from the last
	  commit.

2006-10-15 06:40  zmedico

	* bin/ebuild.sh: Disable the ECLASS inherited illegally message
	  during *rm phases since it gives false alarms (bug #150442).

2006-10-15 05:59  zmedico

	* bin/emerge: Fix display of nomerge nodes and --tree for ROOT!=/.

2006-10-14 23:40  zmedico

	* bin/emerge: This patch implements intelligent navigation around
	  blockers in cases where the merge order can be adjusted (via hard
	  deps) such that two mutually blocking packages aren't installed
	  simultanously. This fixes bug #150879.

2006-10-14 21:13  zmedico

	* bin/emerge: Fix the USE flag handling in depgraph.display() for
	  bug #151331, comment #5.

2006-10-14 13:20  zmedico

	* bin/emerge: Fix a KeyError triggered by blockers in
	  depgraph.display() for bug #151331.

2006-10-14 04:07  zmedico

	* bin/ebuild.sh, bin/emerge, bin/repoman, cnf/make.globals,
	  pym/portage.py: Implement per-package default USE flags at the
	  ebuild and profile levels for bug #61732.

2006-10-14 03:35  zmedico

	* bin/emerge: For bug #151082, don't allow installed packages to
	  inappropriately satisfy packages that have been explicitly
	  requested as arguments.

2006-10-14 02:45  zmedico

	* bin/ebuild.sh: Always `unset DEPEND RDEPEND PDEPEND IUSE` prior
	  to sourcing the ebuild in order to ensure correct interaction
	  during the process of sourcing. Thanks to exg for reporting this
	  issue.

2006-10-14 02:17  zmedico

	* bin/misc-functions.sh: For bug #151146, don't use tar's --verbose
	  option during the package phase since it doesn't work the same
	  way anymore in tar-1.15.92 (new args have been tested with both
	  gnu tar-1.15.92 and bsdtar-1.3.1-r1).

2006-10-14 01:21  zmedico

	* bin/emerge: For bug #151238, fix --with-bdeps logic so that it
	  works correctly with --onlydeps.

2006-10-12 10:49  zmedico

	* pym/portage.py: Fix the new env-update lib dirs logic to properly
	  account for $ROOT.

2006-10-11 22:35  zmedico

	* man/emerge.1: Escape quotes for bug #150932.

2006-10-11 22:11  zmedico

	* pym/portage.py: Make an mtime change force an ldconfig run, since
	  it's possible that pre/postinst made changes in lib dirs (noted
	  by Brian Harring).

2006-10-11 21:51  zmedico

	* pym/portage.py: Use contents to avoid unnecessary ldconfig calls
	  for bug #136488.

2006-10-11 18:04  zmedico

	* bin/dosed: Use -e instead of -a for better cross-shell
	  compatibility. Thanks to exg.

2006-10-11 16:49  zmedico

	* bin/emerge: Append PORTAGE_RSYNC_EXTRA_OPTS after the default
	  options for bug #150883.

2006-10-11 16:27  zmedico

	* bin/emerge: Use grabfile instead of cat to display the
	  gentoo-release file.

2006-10-11 10:52  blubb

	* bin/ebuild.sh: disable path globbing when creating metadata keys;
	  bug 150866; thanks to brian harring for the patch

2006-10-11 07:13  zmedico

	* pym/portage_manifest.py: Make manifest2AuxfileFilter() slightly
	  more efficient and also ignore any hidden files.

2006-10-11 06:56  zmedico

	* pym/portage.py: For bug #150121, generate an error in
	  digestcheck() if a file is found that is not listed in the
	  Manifest.

2006-10-11 05:54  zmedico

	* bin/emerge, pym/portage.py: Move PORTAGE_BUILDDIR in to a
	  category subdirectory and clean up the category directory if
	  empty (while holding lock). This this will help avoid
	  PORTAGE_BUILDDIR collisions for parallel builds and will also
	  hack around bug #150454.

2006-10-11 03:20  vapier

	* bin/misc-functions.sh: do not abort for the time being with lazy
	  bindings and setuid apps and FEATURES=stricter

2006-10-10 21:23  zmedico

	* pym/portage.py: Add more self.modifying() checks in order to
	  detect modifcations to locked config objects.

2006-10-10 21:10  zmedico

	* bin/repoman: Don't lock repoman_settings because it needs to be
	  mutable.

2006-10-10 21:07  zmedico

	* bin/repoman: Remove an unnecessary assumption preventing the use
	  of CVS for an overlay.

2006-10-10 18:06  zmedico

	* bin/emerge: Fix breakage in generation of favorites list for bug
	  #150754.

2006-10-10 11:03  zmedico

	* pym/portage.py: Only unlink .installed after the
	  collision-protect has completed successfully (reported by axxo).

2006-10-10 08:35  zmedico

	* pym/portage_update.py: Only do a slotmove on a slot dep atom if
	  the slotmove atom has no operator (otherwise there's not enough
	  information to perform the slotmove).

2006-10-10 03:40  zmedico

	* bin/repoman: Print a more useful error message for bug #150488.

2006-10-10 02:59  zmedico

	* bin/etc-update: Add $ROOT and $PORTAGE_CONFIGROOT support for
	  etc-update. Thanks to Jonathan Adamczewski <jadamcze@utas.edu.au>
	  for this patch from bug #150370.

2006-10-10 02:27  zmedico

	* pym/portage.py: Simplify the needlessly complex virtuals
	  preferencing logic that lead to bug #150377.

2006-10-10 00:51  zmedico

	* pym/portage.py: Avoid unnecessary population of the bintree by
	  populating it as late as possible.

2006-10-09 21:40  zmedico

	* bin/emerge: Make --tree not imply --pretend anymore so that
	  people can put it in EMERGE_DEFAULT_OPTS.

2006-10-09 21:32  zmedico

	* bin/emerge: Make --newuse not imply --update anymore because that
	  restriction is unnecessary.

2006-10-09 20:44  zmedico

	* man/emerge.1: Document greedy atoms for the --update option.

2006-10-09 20:31  zmedico

	* man/emerge.1: Remove outdated mention of --update in the --deep
	  docs.

2006-10-09 20:26  zmedico

	* pym/portage.py: Catch UnpicklingError when loading the mtimedb
	  (reported by marienz).

2006-10-09 20:09  zmedico

	* pym/portage.py: Remove unnecessary config.reset() calls in
	  portage.create_trees().

2006-10-09 15:51  zmedico

	* bin/repoman: Fix typo s/upper/lower/.

2006-10-09 07:23  zmedico

	* bin/portageq: Remove unused PORTAGE_CALLER=portageq from the
	  environment.

2006-10-09 07:17  zmedico

	* bin/emerge: Remove unused PORTAGE_CALLER=emerge from the
	  environment.

2006-10-09 07:14  zmedico

	* bin/repoman, pym/portage.py: Use a local_config flag to replace
	  PORTAGE_CALLER == repoman conditionals.

2006-10-09 05:55  zmedico

	* bin/repoman: For repoman, hide the vardbapi from dep_zapdeps.

2006-10-08 23:37  zmedico

	* NEWS: Add news about multiple inheritance support in profiles.

2006-10-08 23:35  zmedico

	* bin/emerge: Generate the depgraph.args_keys list _before_
	  building the graph.

2006-10-08 23:25  zmedico

	* man/portage.5: Remove one more reference to use.defaults.

2006-10-08 23:21  zmedico

	* man/portage.5: Remove use.default documentation since we don't
	  use it anymore. Thanks to Arfrever Frehtes Taifersar Arahesis for
	  this patch from bug #149608.

2006-10-08 23:06  zmedico

	* pym/portage.py: Remove the single parent constraint in profiles.

2006-10-08 22:54  zmedico

	* bin/emerge: Clean up depgraph.select_files() to use one list of
	  tuples instead 2 separate lists.

2006-10-08 22:23  zmedico

	* pym/portage.py: Make the .installed invalidation conditional on
	  srcroot and destroot being located on the same filesystem
	  (st_dev).

2006-10-08 22:14  zmedico

	* pym/portage.py: Make the merge phase automatically invalidate the
	  ${PORTAGE_BUILDDIR}/.installed flag since it may move files out
	  of the image directory.

2006-10-08 21:43  zmedico

	* bin/emerge: For bug #150361, implement greedy matching of command
	  line atoms against relevant installed slots. This patch allows a
	  subset of installed slots to be pulled in via operators such as >
	  or <.

2006-10-08 20:52  zmedico

	* bin/emerge: Fix another bad package type assumption in
	  depgraph.display().

2006-10-08 20:50  zmedico

	* bin/emerge: Make system/world less greedy for bug #150251.

2006-10-08 18:21  zmedico

	* cnf/make.conf, man/make.conf.5: For bug #140021, remove
	  autoaddcvs from the docs. Thanks to exg for this patch.

2006-10-08 01:07  zmedico

	* pym/portage_update.py: Fix dep_transform breakage (regression
	  from r4596).

2006-10-07 22:14  zmedico

	* pym/portage.py: Stack negative user virtuals in the correct order
	  for incremental behavior.

2006-10-07 22:13  zmedico

	* pym/portage.py: For bug #150377, make virtual preferences in a
	  profile override the preferences of parent profiles.

2006-10-07 20:25  zmedico

	* cnf/make.globals: Remove redundant quotes from
	  PORTAGE_RSYNC_OPTS.

2006-10-07 19:56  zmedico

	* bin/emerge: Remove redunant quotes for bug #150381. This change
	  is related to the shlex posix mode used to fix bug #14215.

2006-10-07 17:10  zmedico

	* bin/emerge: Fix package type assumptions in depgraph.display()
	  for bug #150359.

2006-10-07 04:09  zmedico

	* RELEASE-NOTES: Add a heading for portage-2.1.2.

2006-10-07 04:05  zmedico

	* RELEASE-NOTES: Add a release note about --with-bdeps.

2006-10-07 04:01  zmedico

	* NEWS: Add news about major bug fixes in 2.1.2.

2006-10-06 23:18  zmedico

	* bin/emerge: Delete some temporary variables after use.

2006-10-06 22:03  zmedico

	* pym/portage_update.py: In update_dbentries(), use != rather than
	  "is not" to make sure that updates never occur unnecessarily.

2006-10-06 12:48  zmedico

	* bin/emerge: Reject installed packages if they have a matching
	  masked ebuild in the tree.

2006-10-06 10:26  zmedico

	* bin/emerge: For bug #48195, fall back to the installed packages
	  when there are no other choices. Global updates are automatically
	  performed on *DEPEND if necessary in order to clean up stale
	  atoms (we do single packages as necessary because it's too time
	  consuming to do the whole vdb at once).

2006-10-06 07:37  zmedico

	* bin/repoman: Make repoman generate a syntax error if a slot dep
	  is used with EAPI == 0.

2006-10-06 03:28  zmedico

	* pym/portage.py, pym/portage_util.py: Don't call varexpand inside
	  getconfig for env.d/profile.env values.

2006-10-06 02:48  zmedico

	* pym/portage_util.py: For bug #14215, put the shlex parser in
	  posix mode so that it properly recognizes escaped quotes.

2006-10-06 01:25  zmedico

	* pym/portage_util.py: For bug #150163, remove unnecessary
	  validation of new_protect_filename() parameters.

2006-10-06 00:54  zmedico

	* bin/emerge: For bug #150178, print an error message when emerge
	  is called with both --config and --pretend.

2006-10-05 12:09  zmedico

	* NEWS: Add news about slot deps.

2006-10-05 11:52  zmedico

	* pym/portage_dep.py: Improve best_match_to_list() and include
	  support for slot deps.

2006-10-05 11:15  zmedico

	* pym/portage_update.py: Fix package moves/slotmoves to work with
	  slot deps.

2006-10-05 09:03  zmedico

	* pym/portage_update.py: Just use a simple replace for the
	  needlessly complex dep_transform function. This will make it
	  compatible with slot deps.

2006-10-05 06:50  zmedico

	* bin/emerge: For bug #4698, use slot deps to ensure that all
	  installed slots are automatically updated.

2006-10-05 05:24  zmedico

	* pym/portage.py, pym/portage_dep.py: Add support for slot based
	  dep matching in all dbapi derived classes. The supported syntax
	  is ${CATEGORY}/${PN}:${SLOT} (identical to that used by paludis
	  and pkgcore).

2006-10-04 23:02  zmedico

	* pym/portage_dep.py: Share duplicate code between dep_getkey() and
	  dep_getcpv().

2006-10-04 08:17  zmedico

	* pym/portage.py: Don't create /cvs-src since the cvs.eclass will
	  do that automatically.

2006-10-04 08:04  zmedico

	* pym/portage.py: Fix a typo for the file mode in ${T}.

2006-10-04 07:37  zmedico

	* bin/emerge, pym/portage.py: Don't apply the sticky bits until we
	  have a complete plan for bug #149062.

2006-10-04 07:17  zmedico

	* pym/portage.py: Properly write all fifo and device nodes to
	  CONTENTS for bug #144781. Code to parse these entries has already
	  in place and they are never unmerged.

2006-10-04 06:10  zmedico

	* pym/portage.py: Remove redundant PORTAGE_BUILDDIR creation.

2006-10-04 05:09  zmedico

	* bin/emerge: When gathering a group of nodes to merge (with
	  circular RDEPEND), make sure not to prematurely merge any nodes
	  that have unsatisfied hard deps.

2006-10-04 04:37  zmedico

	* pym/portage.py: Make PORTAGE_BUILDDIR and subdirectories group
	  writable for now (reverts some of the changes from bug #149062).
	  One major problem is that the first phase (setup) is often run as
	  root. We need a way to tell portage about a less privileged user
	  that may need to be given permission on files and directories.

2006-10-03 22:18  zmedico

	* pym/portage.py: Don't set the gid unnecessarily on
	  $PORTAGE_BUILDDIR/distdir.

2006-10-03 22:09  zmedico

	* pym/portage.py: For userpriv support, chown files in ${T} if
	  necessary after priveleged phases.

2006-10-03 21:04  zmedico

	* bin/emerge, pym/portage.py: Use 01775 permissions for
	  subdirectories of PORTAGE_TMPDIR, and 0755 permissions for other
	  directories (bug #149062).

2006-10-03 19:03  zmedico

	* pym/portage.py: Use 755 permissions for
	  ${PORTAGE_WORKDIR}/distdir (bug #149062).

2006-10-03 18:33  zmedico

	* bin/emerge: Print a message about make.globals if PORTDIR is
	  undefined.

2006-10-03 07:05  zmedico

	* bin/emerge, pym/portage.py: Add a digraph.NONE constant to
	  represent no priority.

2006-10-03 06:45  zmedico

	* bin/emerge: Refector depgraph.altlist() reverse/ignore_priority
	  handling.

2006-10-03 01:51  zmedico

	* bin/emerge: Remove a len(nodes) == 1 test that's never True.

2006-10-03 01:40  zmedico

	* bin/emerge: In depgraph.altlist(), use a recursive fuction to
	  gather groups of nodes that RDEPEND on eachother.

2006-10-03 00:27  zmedico

	* pym/portage.py: Fix priority logic in digraph.add().

2006-10-02 22:39  zmedico

	* pym/portage_util.py: Optimize varexpand for bug #149900.

2006-10-02 22:21  zmedico

	* bin/emerge: Remove unnecessary set creation.

2006-10-02 22:08  zmedico

	* bin/emerge, pym/portage.py: Fix depgraph.altlist() so that it can
	  identify a group of nodes that completely satisfy eachothers
	  non-soft deps. This should complete the fix for bug #149881.

2006-10-02 19:29  zmedico

	* bin/emerge, pym/portage.py: Add medium priority level into the
	  digraph (in addition to the existing hard and

2006-10-01 23:15  zmedico

	* bin/quickpkg: For bug #149781, exclude symlinks to directories
	  when creating binary package with quickpkg.

2006-09-30 19:35  zmedico

	* man/emerge.1: Fix misspelling of dependencies for bug #149645.

2006-09-30 18:24  zmedico

	* bin/emerge: Emulate old --update world/system behavior for bug
	  #149527.

2006-09-30 04:06  zmedico

	* bin/emerge: Don't try to match call best_match_to_list() on
	  "blocks" nodes for bug #149576.

2006-09-29 21:56  zmedico

	* man/make.conf.5: Update CONFIG_PROTECT docs to reflect that files
	  are now supported.

2006-09-29 21:50  zmedico

	* man/make.conf.5: Update installsources docs for bug #149491.

2006-09-29 21:47  zmedico

	* man/make.conf.5: Document the new COLLISION_IGNORE variable.

2006-09-29 21:36  zmedico

	* pym/portage.py: For bug #149412, add a COLLISION_IGNORE user
	  config option that behaves similar to CONFIG_PROTECT_MASK, but
	  for collision-protect.

2006-09-29 21:07  zmedico

	* man/emerge.1: Document the new --with-bdeps option.

2006-09-29 20:37  zmedico

	* bin/emerge: Allow options contained in EMERGE_DEFAULT_OPTS to be
	  overridden by the real command line options.

2006-09-29 19:12  zmedico

	* bin/prepstrip: Move installed sources into ${CATEGORY}
	  subdirectories in order to prevent collisions for bug #149491.

2006-09-29 18:28  zmedico

	* pym/portage.py: Allow env.d file names with 3 characters. This is
	  a regression from r4451.

2006-09-29 17:47  zmedico

	* bin/ebuild.sh: Fix quoting of ${D} in make arguments for
	  einstall(). Thanks to Volkov Peter <pva@gentoo.org> for this
	  patch from bug #149494.

2006-09-29 17:41  zmedico

	* bin/ebuild.sh: Fix broken [ -z "" ] test. Thanks to Volkov Peter
	  <pva@gentoo.org> for this patch from bug #149494.

2006-09-29 05:36  zmedico

	* bin/emerge: Fix inverted --with-bdeps logic.

2006-09-29 02:10  zmedico

	* pym/output.py: Call sys.stdout.flush() after print statements so
	  that output has the correct order when multiple processes output
	  to a shared pipe.

2006-09-29 01:52  zmedico

	* bin/emerge: Properly treat myopts as a dict.

2006-09-29 01:26  zmedico

	* bin/emerge: Remove some unreachable code.

2006-09-29 01:14  zmedico

	* bin/emerge: Use dict.pop(k, None) to delete items if they exist.

2006-09-29 00:47  zmedico

	* bin/emerge: Store myopts in the mtimedb as a list for backward
	  compatibility.

2006-09-29 00:05  zmedico

	* bin/emerge: Add missing calls to iteritems() from the last
	  commit.

2006-09-28 23:02  zmedico

	* bin/emerge: Add a --with-bdeps=[y,n] option for bug #148870.

2006-09-28 18:29  zmedico

	* bin/emerge: Convert myopts into a dictionary so that it can be
	  used for more that boolean flags.

2006-09-28 17:36  zmedico

	* bin/emerge: Convert emerge option parsing to use python's
	  optparse module. This patch makes the minimum changes necessary
	  for the conversion and is supposed to be 100% compatible with
	  previous parsing behavior.

2006-09-28 00:15  zmedico

	* pym/cache/flat_hash.py: Catch a ValueError caused by corrupt
	  cache for bug #149134.

2006-09-27 16:50  zmedico

	* pym/portage.py: In dep_zapdeps preference selection, use package
	  names instead of the real atoms for an initial rough match
	  against installed packages. More specific preference selection is
	  handled later via slot and version comparison. Thanks to Jason
	  Stubbs for this patch from bug #147766.

2006-09-27 15:41  zmedico

	* pym/portage.py: Revert dep_zapdeps fakedbapi usage as per comment
	  #31 on bug #147766.

2006-09-27 08:44  zmedico

	* bin/emerge: Fix --update so that it updates direct dependencies
	  for bug #149208.

2006-09-27 07:01  zmedico

	* bin/emerge: Make sure that all packages are in the dbapi when
	  doing the blocker validation.

2006-09-27 06:22  zmedico

	* bin/emerge, pym/portage.py: Add SLOT support to fakedbapi then
	  use it for depgraph blocker handling and dep_zapdeps preference
	  selection.

2006-09-25 21:16  zmedico

	* pym/portage_data.py: Add a warning about the portage group and
	  the possiblility of exploits for bug #149062.

2006-09-25 20:40  zmedico

	* bin/emerge: Clean up the logic a little for bug #149092.

2006-09-25 20:07  zmedico

	* bin/emerge: Check the dep_check return value and fail with a
	  message if an error has occurred.

2006-09-25 18:26  zmedico

	* bin/emerge: Make `emerge world` (without --deep) work as expected
	  for bug #149092.

2006-09-25 16:22  vapier

	* bin/emerge: print errors to stderr, not stdout

2006-09-25 09:49  zmedico

	* pym/portage.py: For bug #149028, don't lock the tbz2 file because
	  the filesytem could be readonly or shared by a cluster.

2006-09-24 23:45  zmedico

	* bin/emerge, pym/portage.py: Clean up and simplify depgraph params
	  logic. This fixes bug #148893.

2006-09-24 21:30  zmedico

	* bin/emerge: Remove depgraph params for depclean since it no
	  longer uses the depgraph.

2006-09-24 07:49  zmedico

	* bin/emerge: In order to ensure correct merge order such that
	  build time dependencies will really be usable, don't treat
	  RDEPEND as soft_deps. Thanks for Jason Stubbs for recognizing
	  this issue.

2006-09-24 01:07  zmedico

	* pym/portage.py: Use the same directories for binary package
	  merges as would be used for source based merges (since the normal
	  PORTAGE_BUILDDIR is already used by the setup, preinst, and
	  postinst phases anyway).

2006-09-23 22:14  zmedico

	* pym/portage.py: Fix portage.pkgmerge() so that it locks files and
	  directories when in use.

2006-09-23 19:21  zmedico

	* bin/pkgmerge, bin/pkgmerge.new: Remove pkgmerge since it's
	  apparent that nobody uses it (it's been broken for a long time,
	  anyway).

2006-09-23 19:01  zmedico

	* bin/emerge, pym/portage.py: Remove doebuild_environment return
	  value checks since it no raises and exception if necessary.

2006-09-23 10:47  zmedico

	* pym/portage.py: Make doebuild_environment raise an exception so
	  that we never have to check the return value.

2006-09-23 10:30  zmedico

	* pym/portage.py: Only lock PORTAGE_BUILDDIR if the ebuild exists
	  (otherwise we don't run prerm and postrm).

2006-09-23 10:28  zmedico

	* pym/portage.py: Lock PORTAGE_BUILDDIR all the way through prerm,
	  unmerge, and postrm.

2006-09-23 09:47  zmedico

	* bin/emerge, pym/portage.py: Always check the return value of
	  doebuild_environment().

2006-09-23 09:07  zmedico

	* bin/emerge, pym/portage.py: Move PORTAGE_BUILDDIR locking out of
	  doebuild and into emerge in order to ensure that emerge maintains
	  it's lock through all phases.

2006-09-23 07:09  zmedico

	* bin/emerge: Remove outdated "Unable to run required binary"
	  messages that are now unreachable.

2006-09-23 06:56  zmedico

	* pym/portage.py: Move PORTAGE_LOG_FILE initialization from
	  doebuild to prepare_build_dirs.

2006-09-23 05:24  zmedico

	* bin/emerge: Pass in the correct arg= value to select_dep.

2006-09-23 05:13  zmedico

	* bin/emerge: Never allow packages explicitly requested on the
	  command line to be tagged "nomerge" unless --noreplace has been
	  specified. This patch accomplishes the same goal as r4494 but
	  without the potential for causing inconsistency in the depgraph.

2006-09-22 23:57  zmedico

	* bin/emerge: Ensure that soft_dep is a plain boolean (not vardb
	  match results).

2006-09-22 22:31  zmedico

	* pym/cache/flat_hash.py: Move the open call out of the inner try
	  block.

2006-09-22 22:20  zmedico

	* bin/emerge: Make it possible, once again, to use --noreplace to
	  add a package to the world file.

2006-09-22 21:49  zmedico

	* pym/cache/flat_hash.py: Use finally: to ensure that the file is
	  closed properly.

2006-09-22 21:26  zmedico

	* pym/cache/sqlite.py: Don't use LazyLoad for cache pulls because
	  it causes a race condition.

2006-09-22 21:17  zmedico

	* pym/cache/flat_hash.py: Improve and simplify __getitem__ error
	  handling.

2006-09-22 20:59  zmedico

	* pym/cache/flat_hash.py, pym/cache/metadata.py: Use fstat to when
	  retrieve cache timestamps and avoid a race.

2006-09-22 20:24  zmedico

	* bin/emerge, pym/cache/flat_list.py, pym/eclass_cache.py,
	  pym/portage.py, pym/portage_update.py: For compatibility with
	  float timestamps in python-2.5, convert st_mtime attributes to
	  long wherever portage expects 1s resolution.

2006-09-22 19:53  zmedico

	* pym/cache/flat_hash.py: Convert stat timestamps to long for
	  compatibility with python-2.5, which returns floats for
	  timestamps.

2006-09-22 19:50  zmedico

	* pym/cache/sqlite.py: Allow cache.sqlite to use sqlite3 from
	  python-2.5, if available.

2006-09-22 09:55  zmedico

	* bin/emerge, pym/portage.py: Revert r4495, since conversion from
	  nomerge to merge may put the depgraph into an inconsistent state
	  du to USE flag mismatch. This can be solved by checking all args
	  prior to marking packages as nomerge.

2006-09-22 09:18  blubb

	* bin/ebuild.sh: use EBUILD_SH_ARGS instead of $*; bug 148615

2006-09-22 08:11  zmedico

	* bin/emerge, pym/portage.py: Allow packages specified on the
	  command line to be retroactively upgraded from "nomerge" to
	  "merge" nodes.

2006-09-21 11:16  zmedico

	* bin/emerge: Fix another IndexError due to an assumption that
	  digraph nodes split into at least 4 parts.

2006-09-21 07:44  zmedico

	* bin/emerge: Prevent --update and/or --deep style behavior when
	  the user hasn't specified them. In these cases a full depgraph
	  isn't desired and we have to ignore the installed deps that are
	  now returned from dep_check.

2006-09-21 05:17  zmedico

	* bin/emerge: Prevent an IndexError caused by blocker nodes
	  splitting to 3 items instead of 4.

2006-09-21 03:13  zmedico

	* bin/emerge: Add a comment about old-style virtuals inside
	  depgraph.validate_blockers().

2006-09-21 03:02  zmedico

	* bin/emerge: Remove an inaccurate comment.

2006-09-21 02:54  zmedico

	* bin/emerge: Add a docstring for depgraph.validate_blockers().

2006-09-21 00:58  zmedico

	* bin/emerge: Fix depgraph.validate_blockers() logic so that
	  match_from_list works correctly.

2006-09-20 22:13  zmedico

	* bin/emerge: Thanks to Jason Stubbs for this patch from bug #16365
	  which invalidates any blocker that is made irrelevant by a
	  package upgrade.

2006-09-20 03:47  zmedico

	* pym/portage.py: As suggested by vapier, send emerge -fp output to
	  stdout and make it work together with --quiet.

2006-09-20 03:09  zmedico

	* bin/portageq: Make portageq exit successfully for -h or --help.

2006-09-19 22:01  zmedico

	* bin/portageq: Make portageq exit with nonzero status when called
	  incorrectly.

2006-09-19 18:07  zmedico

	* bin/emerge, pym/portage.py: For consistency, pass
	  ignore_soft_deps into digraph.hasallzeros().

2006-09-19 09:03  zmedico

	* pym/portage.py: Fix digraph.hasallzeros() breakage.

2006-09-19 07:20  zmedico

	* bin/ebuild: Properly close the caches before reloading portage.

2006-09-19 06:46  zmedico

	* bin/emerge, pym/portage.py: This is a new --tree implementation
	  by Jason Stubbs, from bug #147766.

2006-09-19 02:36  zmedico

	* pym/portage.py: Fix fetch resume logic for bug #145601 and
	  document the meaning of the "fetched" variable.

2006-09-19 01:58  zmedico

	* pym/portage.py: Fix digraph.debug_print inverted hard/soft logic.

2006-09-19 01:00  zmedico

	* bin/etc-update: Turn off file name globbing during expansion of
	  ${find_opts} for bug #148115.

2006-09-18 11:36  zmedico

	* bin/emerge: Allow packages matched by something in
	  package.provided to be explicitly merged by the user.

2006-09-18 10:36  zmedico

	* bin/emerge: Idendify soft deps in emerge --debug output.

2006-09-18 10:18  zmedico

	* bin/emerge: Thanks again to Jason Stubbs for this patch from bug
	  #147766 which represents PDEPEND relationships withing the
	  depgraph as reverse soft dependencies.

2006-09-18 08:31  zmedico

	* bin/emerge, pym/portage.py: Thanks to Jason Stubbs for this patch
	  from bug #147766 which enables creation of a full and complete
	  depgraph, leaving no dependencies unaccounted for. This will
	  allow more accurate merge order and proper detection of circular
	  dependencies!

2006-09-18 04:20  zmedico

	* bin/emerge: Ensure that the parent process gets the first fetch
	  when parallel-fetch is enabled.

2006-09-18 03:54  zmedico

	* pym/cache/anydbm.py, pym/cache/flat_hash.py,
	  pym/cache/flat_list.py, pym/cache/fs_template.py,
	  pym/cache/metadata.py, pym/cache/metadata_overlay.py,
	  pym/cache/sql_template.py, pym/cache/sqlite.py,
	  pym/cache/template.py, pym/cache/util.py: Replace relative
	  imports with absolute imports for forward compatibility with
	  python 2.6.

2006-09-18 03:14  zmedico

	* bin/emerge: Close the parallel-fetch log file descriptor when
	  it's no longer needed.

2006-09-17 20:32  zmedico

	* bin/emerge, pym/portage.py: Use mtimedb.filename == None to
	  disable mtimedb writes (instead of /dev/null).

2006-09-17 04:51  zmedico

	* bin/emerge: Reimplement parallel-fetch so that it simply spawns
	  `emerge --fetch --resume` via portage_exec.spawn. This prevents
	  potential issues with shared file descriptors and unsafe forks as
	  discussed in bug #147516. This patch makes sure that the spawned
	  emerge process does not write to emerge.log or the mtimedb.

2006-09-16 07:33  zmedico

	* pym/portage.py: In portage.commit_mtimedb(), use the commit()
	  method when possible, so that the mtimedb is only rewritten when
	  it has been modified.

2006-09-16 05:23  vapier

	* man/make.conf.5: document FEATURES=buildsyspkg #147729

2006-09-16 01:08  zmedico

	* bin/repoman: Add CATEGORY to the list of readonly variables.

2006-09-16 00:50  zmedico

	* bin/dispatch-conf: For bug #14321, make dispatch-conf scan for
	  individual files listed in CONFIG_PROTECT.

2006-09-16 00:45  zmedico

	* bin/etc-update: For bug #14321, make etc-update scan for
	  individual files listed in CONFIG_PROTECT.

2006-09-16 00:42  zmedico

	* bin/emerge: For bug #14321, make emerge scan for individual files
	  listed in CONFIG_PROTECT.

2006-09-16 00:38  zmedico

	* pym/portage.py, pym/portage_util.py: For bug #14321, add support
	  for individual files in CONFIG_PROTECT and CONFIG_PROTECT_MASK.

2006-09-15 10:49  zmedico

	* pym/portage.py: When it's detected that a previously remembered
	  update has been accepted, remove it from confmem.

2006-09-15 07:07  zmedico

	* pym/portage.py: Add support for SPACE_SEPARATED and
	  COLON_SEPARATED in /etc/env.d/ so that hard coded values are not
	  required.

2006-09-15 03:12  zmedico

	* pym/portage.py: Move all env.d file name filtering into a single
	  loop.

2006-09-15 02:07  zmedico

	* pym/portage.py: Simplify the confmem logic so that it's easier to
	  read.

2006-09-14 07:52  zmedico

	* pym/portage_locks.py: Remove an unused hardlink_active()
	  function.

2006-09-14 07:44  zmedico

	* pym/portage_locks.py: Simplify portage_locks.hardlink_is_mine()
	  so that it only checks the number of links. Nothing more is
	  needed.

2006-09-14 07:17  zmedico

	* pym/portage_locks.py: Remove all traces of atexit hardlock
	  cleanup code, since it doesn't work correctly anyway.

2006-09-14 06:33  zmedico

	* pym/portage_locks.py: In unhardlink_lockfile(), make sure not to
	  touch lockfilename unless we really have a lock. See bug #147453.

2006-09-14 02:26  vapier

	* man/make.conf.5: note that you need to use an absolute path for
	  ROOT #147427 by Brad Plant

2006-09-13 20:50  zmedico

	* pym/portage.py: Use configdict["env"].clear() instead of manual
	  deletion because the result is the same and it's much more
	  efficient.

2006-09-13 20:42  zmedico

	* pym/portage.py: For correct LINGUAS handling, don't export empty
	  USE_EXPAND variables unless the user config exports them as
	  empty. Thanks to Harald van Dijk <truedfx@gentoo.org> for this
	  patch from bug #147428.

2006-09-10 21:53  zmedico

	* pym/portage.py: Add KDEDIRS to colon_separated env-update vars as
	  requested by Carlo.

2006-09-10 21:34  zmedico

	* pym/portage_update.py: Fix a broken call to new_protect_filename
	  for bug #147010. This is a regression from r4400 (fix for bug
	  #146289).

2006-09-10 04:54  vapier

	* cnf/make.conf.sh.diff: diff for superh

2006-09-09 23:11  zmedico

	* pym/portage.py: For bug #80846, prevent false collisions caused
	  by symlinks. Thanks to Thomas Bettler <bettlertho@sis.unibe.ch>
	  for the initial patch.

2006-09-09 22:00  zmedico

	* pym/portage.py: In dblink.isowner(), correct the logic to test
	  the path itself (via lstat) rather than the referant in the case
	  of symlinks.

2006-09-08 20:37  zmedico

	* man/portage.5: Include a note about RESTRICT="fetch" in docs for
	  local mirrors (see bug #37455). Thanks to Carlo for reporting.

2006-09-07 08:31  zmedico

	* bin/ebuild.sh, pym/portage.py: Add PORTAGE_DEPCACHEDIR to
	  SANDBOX_PREDICT since it's legitimate for portageq calls to
	  trigger cache writes. See bug #144011.

2006-09-07 07:05  zmedico

	* bin/quickpkg: Make quickpkg respect PORTAGE_NICENESS.

2006-09-07 07:01  zmedico

	* bin/quickpkg: Substitute isolated-functions.sh in place of
	  /sbin/functions.sh.

2006-09-07 06:38  zmedico

	* bin/quickpkg: Condense a few portageq calls into one.

2006-09-07 06:08  zmedico

	* bin/misc-functions.sh: Make sure that the package phase has the
	  PYTHONPATH set correctly so that the xpak module is accessible.

2006-09-07 06:00  zmedico

	* bin/quickpkg: Optimize quickpkg so that it creates the binary
	  package directly in $PKGDIR/All. This eliminates the need for
	  tbz2tool and is the same approach used by the package phase in
	  misc-functions.sh.

2006-09-07 05:01  zmedico

	* bin/quickpkg: For bug #146564, include directories in packages
	  created by quickpkg. Note that tar's --no-recursion option causes
	  the directories to be selectively included without nessarily
	  including their contents.

2006-09-06 20:19  zmedico

	* pym/portage.py: Document that dblink.unmerge() does not perform
	  locking internally.

2006-09-06 20:07  zmedico

	* pym/portage.py: Properly lock the critical section of
	  portage.unmerge() for bug #101240.

2006-09-06 17:04  zmedico

	* pym/portage.py: Allow env_update to work if there are broken
	  symlinks in /etc/env.d/. See bug #146412.

2006-09-06 07:36  zmedico

	* bin/repoman: Remove ACCEPT_KEYWORDS from incrementals to that a
	  hypothetical config.regenerate() call won't affect it.

2006-09-06 07:23  zmedico

	* bin/repoman: Call dep_settings.setcpv() first so that
	  ACCEPT_KEYWORDS when setcpv calls reset. The backup_changes call
	  isn't working for some reason (reported by vapier).

2006-09-06 05:03  vapier

	* bin/ebuild.sh: unpack rar files with -o+ to force overwriting
	  #146508 by Paul Bredbury

2006-09-06 04:52  vapier

	* bin/ebuild.sh: make .compiled warning the same helpful format as
	  .installed

2006-09-06 04:48  vapier

	* bin/ebuild.sh: if user has FEATURES=noauto then dont check lame
	  .installed file

2006-09-05 20:30  zmedico

	* pym/portage.py: During env_update, raise a FileNotFound exception
	  if a file is unexpectedly removed by a concurrent process. See
	  bug #146412.

2006-09-04 23:58  zmedico

	* pym/portage.py: Add an additional note about $ROOT and USE flag
	  handling in dep_check.

2006-09-04 22:35  zmedico

	* bin/emerge: Revert r4403 since dep_check needs a config instance
	  for the $ROOT where the dependencies will be installed.

2006-09-04 21:29  zmedico

	* pym/portage.py: Only apply USE masks in dep_check when called by
	  repoman with use="all".

2006-09-04 20:56  zmedico

	* pym/portage.py: Use a set for masklist inside dep_check.

2006-09-04 19:50  zmedico

	* bin/emerge: For emerge dep_check calls, use a config instance
	  that has the correct state and the correct $ROOT.

2006-09-04 18:50  zmedico

	* bin/repoman: Move setcpv call (from the last commit) to a more
	  logical location.

2006-09-04 18:42  zmedico

	* bin/repoman, pym/portage.py: Add repoman support for
	  package.use.mask.

2006-09-04 17:59  zmedico

	* pym/portage_util.py: Since none of the code is written to handle
	  it, never return a tuple from new_protect_filename(). See bug
	  #146289.

2006-09-04 04:44  zmedico

	* pym/portage.py: Don't call dict.keys() unnecessarily for the
	  containment test in dblink.isowner().

2006-09-03 21:36  zmedico

	* NEWS, RELEASE-NOTES: Move notes about --depclean and --newuse
	  from NEWS to RELEASE-NOTES.

2006-09-03 21:27  zmedico

	* NEWS: Add news about --newuse being able to detect changes in
	  IUSE.

2006-09-03 20:47  zmedico

	* pym/portage.py: When aux_get can't find a matching ebuild, simply
	  raise a KeyError(cpv) and don't dump redundant messages to stderr
	  unless --debug is enabled.

2006-09-03 12:42  blubb

	* bin/ebuild.sh: moving the portage-specific sandbox-code out of
	  the ebuild-specific src_test

2006-09-03 05:20  zmedico

	* man/emerge.1: Describe each of the USE flag symbols that are
	  displayed in verbose mode (see bug #146060).

2006-09-02 23:24  zmedico

	* bin/emerge: Make code from the last 2 commits conditional on
	  merging == 0 and vardbapi.cpv_exists(mykey).

2006-09-02 22:59  zmedico

	* bin/emerge: Update the depgraph's USE flag cache so that's it's
	  consistent with installed packages.

2006-09-02 22:55  zmedico

	* bin/emerge: When creating the depgraph, use the correct USE flags
	  for packages that are already installed.

2006-08-29 21:28  zmedico

	* bin/etc-update: Use a specialized read_int function to read
	  integer input for bug #143881. This uses a subshell to work
	  around bash's tendency to break out of a loop whenever an integer
	  conversion fails.

2006-08-29 19:58  zmedico

	* pym/portage.py: Before the preinst phase, only call load_infodir
	  for binary packages. Otherwise, load_infodir will wipe settings
	  from doebuild_environment (such as CATEGORY).

2006-08-28 21:12  vapier

	* bin/etc-update: fix whitespace

2006-08-27 19:46  blubb

	* bin/misc-functions.sh: let's not fork too much

2006-08-27 18:54  blubb

	* bin/misc-functions.sh: make the multilib-strict check show all
	  files that violate the rule, not just the first one

2006-08-27 18:30  zmedico

	* pym/portage.py: Add a missing newline from the previous commit.

2006-08-27 16:46  blubb

	* pym/portage.py: don't display useless messages when using --quiet

2006-08-27 10:57  zmedico

	* bin/emerge: Display flags that have been removed from IUSE as
	  (-flag%) instead of !flag% and display newly added masked flags
	  without the % symbol in order to avoid ambiguity. See bug
	  #144661.

2006-08-27 10:15  zmedico

	* bin/emerge: For --newuse, ignore masked/forced flags when
	  comparing IUSE. See bug #144661.

2006-08-27 09:55  zmedico

	* bin/emerge: For --newuse, ignore masked/forced flags when
	  comparing IUSE. See bug #144661.

2006-08-26 23:48  zmedico

	* bin/emerge: Remove a redundant conditional from the last commit.

2006-08-26 23:27  zmedico

	* bin/emerge: Show the * symbol in addition to the % symbol when
	  the flags state transitions from nonexistent -> enabled or vice
	  versa.

2006-08-26 21:01  zmedico

	* NEWS: Add news about the new depclean algorithm.

2006-08-26 01:32  zmedico

	* bin/emerge: Recommend `emerge --update --deep world` prior to
	  depclean in order to make sure that all dependencies are
	  satisfied. See bug #145078.

2006-08-25 15:37  blubb

	* bin/misc-functions.sh: remove the MULTILIB_STRICT_EXEMPT default
	  as all profiles set it anyway

2006-08-25 14:57  blubb

	* bin/misc-functions.sh: ignore binutils wrt multilib-strict; bug
	  121641

2006-08-24 18:51  blubb

	* bin/isolated-functions.sh, bin/misc-functions.sh: only print the
	  "Removing /usr/share/info" if --quiet was not passed

2006-08-24 18:26  zmedico

	* pym/portage.py: Make symlink merge output respect --quiet. Thanks
	  to blubb for reporting.

2006-08-24 07:43  zmedico

	* bin/emerge: Display flags that have been removed from IUSE as
	  !flag% for bug #144661.

2006-08-24 03:51  zmedico

	* bin/prepstrip: For bug #144928, add -L to the rsync options
	  (transform symlink into referent). Thanks to Olivier Crete
	  <tester@gentoo.org> for this patch.

2006-08-22 17:15  vapier

	* bin/etc-update: include filename in submenu so we know exactly
	  what we are working on

2006-08-20 07:47  zmedico

	* pym/portage.py: Don't bother to lock CONFIG_MEMORY_FILE since
	  writedict is atomic anyway.

2006-08-20 07:12  zmedico

	* bin/emerge: Make depclean more friendly about unresolved atoms.
	  Thanks to jstubbs for this patch from bug #144486.

2006-08-19 22:10  vapier

	* man/portage.5: document the ability to make package. files
	  directories in /etc/portage #144381 by Caleb Cushing

2006-08-19 21:55  vapier

	* man/portage.5: eat some extraneous newlines

2006-08-19 17:57  vapier

	* man/ebuild.5: document ROOT #144331

2006-08-19 16:29  vapier

	* cnf/make.conf, man/make.conf.5: some INSTALL_MASK docs by
	  compnerd

2006-08-19 02:03  zmedico

	* bin/portageq: Make sure that portageq exits quietly when killed,
	  like emerge does.

2006-08-17 17:09  solar

	* pym/portage.py: - record the md5 checksum of the .tbz2 used at
	  merge time. This will become useful to know if we should refetch
	  a .tbz2 from a remote repo

2006-08-17 03:18  zmedico

	* bin/repoman: Remove an unused "objsadded" variable spotted by
	  antarus.

2006-08-17 01:51  zmedico

	* pym/portage.py: This is a new dep_zapdeps implementation. Thanks
	  to jstubbs for this patch from bug #143908.

2006-08-16 19:37  zmedico

	* bin/emerge: Add a depclean warning message, once again, because
	  it's never completely safe.

2006-08-16 05:28  zmedico

	* bin/emerge: This is a new and improved depclean implementation.
	  Thanks to jstubbs for this patch from bug #67179.

2006-08-14 19:45  zmedico

	* bin/emerge-webrsync: Add forgotten PORTAGE_TMPDIR to the portageq
	  call.

2006-08-14 19:40  zmedico

	* bin/emerge-webrsync: Use eval $(portageq envvar -v FOO BAR) to
	  collapse many portageq calls into 1.

2006-08-14 07:12  zmedico

	* bin/emerge: Update the virtuals even if the package already
	  exists in the fakedbapi since it may be necessary if the package
	  is being remerged.

2006-08-14 06:42  zmedico

	* bin/emerge: Revert most of r4086 because it broke circular
	  bootstrap dependencies for things like gwydion-dylan and ghc.
	  Thanks to araujo for reporting the breakage.

2006-08-13 05:35  zmedico

	* pym/portage_util.py: Make stack_dictlist return an empty
	  dictionary when there is nothing to stack. See bug #143730.

2006-08-13 05:19  zmedico

	* bin/emerge: For consistent results, sort the contents when
	  generating the info directory index. See bug #142652.

2006-08-11 20:12  zmedico

	* NEWS: Add news about use.force.

2006-08-11 20:08  zmedico

	* man/portage.5: Add some docs for use.force and package.use.force.

2006-08-11 19:46  zmedico

	* bin/emerge, pym/portage.py: Add support for use.force and
	  package.use.force in profiles.

2006-08-11 19:31  zmedico

	* pym/portage_util.py: Fix stack_dictlist() so that incremental
	  stacking behaves more like it does in config.regenerate().

2006-08-10 20:17  zmedico

	* bin/emerge: Display masked USE flags as (-flag) instead of (
	  -flag ) to save space.

2006-08-09 20:06  zmedico

	* bin/emerge: Use ( -flag ) to indicate flags that have been forced
	  off via use.mask.

2006-08-09 19:55  zmedico

	* bin/quickpkg: Force a sane umask in quickpkg for bug #143340.

2006-08-09 18:02  zmedico

	* pym/portage.py: Return early from global directory initialization
	  if the current user does not have write access to $ROOT.

2006-08-09 03:05  zmedico

	* bin/repoman: Remove a dead hunk of code spotted by antarus.

2006-08-08 03:13  zmedico

	* pym/portage.py: Remove unnecessary check for USE flags that start
	  with "-".

2006-08-07 23:53  vapier

	* man/ebuild.1: fixups from Benno Schulenberg #143079

2006-08-07 22:33  zmedico

	* pym/portage.py: When performing expansion of USE_EXPAND
	  variables, display warnings about invalid use of incremental
	  operators.

2006-08-07 18:53  zmedico

	* man/ebuild.5: Remove the dopython docs for bug #141935.

2006-08-07 02:42  zmedico

	* pym/getbinpkg.py: Cleanse stale metadata cache for binpkgs that
	  have been removed from the remote host. Thanks to André Luiz A.
	  G. Carvalho <alcarvalho@gmail.com> for the initial patch from bug
	  #107453.

2006-08-06 08:37  zmedico

	* pym/portage.py: Sort the USE flags.

2006-08-06 08:17  zmedico

	* man/portage.5: Add some package.use.mask docs.

2006-08-06 08:05  zmedico

	* bin/emerge: Fix rsync code to work with a username@ uri for bug
	  #141185. Thanks to David-John Miller
	  <anoyomouse@petermiller.co.za> for this patch.

2006-08-06 04:37  zmedico

	* pym/portage.py: Split the USE flags calculation out of the
	  generic incrementals loop and process it separately in order to
	  account for interaction with USE_EXPAND. All USE_EXPAND
	  environment variables are regenerated so that they are consistent
	  with the flags in USE. See bug #142909.

2006-08-06 02:34  zmedico

	* bin/emerge: Keep USE flags from / and $ROOT separate in the
	  depgraph. See bug #142918.

2006-08-06 00:32  zmedico

	* bin/repoman: Remove unused "cladded" variable reported by
	  antarus.

2006-08-06 00:18  zmedico

	* pym/portage.py: Allow USE_EXPAND vars to be overridden in the
	  environment for bug #142909.

2006-08-05 22:08  zmedico

	* bin/emerge: Add the date and time of the last sync to emerge
	  --info output. Thanks to Pablo Antonio <pabloa@gmail.com> for the
	  patch from bug #140163.

2006-08-05 12:23  solar

	* bin/emerge: - emerge -pqv should display USE flags; Bug 128598 -
	  David-John Miller, anoyomouse@petermiller.co.za

2006-08-05 07:02  zmedico

	* man/make.conf.5: Add notes about nostrip and installsources to
	  the splitdebug docs.

2006-08-05 06:56  zmedico

	* man/make.conf.5: Add some docs for the installsources feature.

2006-08-05 04:30  zmedico

	* bin/emerge: Add additional checks for --pretend and
	  --fetch-all-uri to ensure correct behavior. See bug #140552.

2006-08-05 01:37  vapier

	* bin/etc-update: add space before prompt

2006-08-04 23:04  zmedico

	* pym/portage.py: Ignore hidden files or directories in the
	  vardbapi.cpv_all() listing.

2006-08-04 19:09  zmedico

	* pym/portage.py: For completeness, clone self.puse and self.mycpv.

2006-08-04 18:57  zmedico

	* bin/emerge, pym/portage.py: Add support for package.use.mask in
	  the profile. It should behave exactly as use.mask currently does
	  except that it allows USE flags to be masked for specific
	  packages rather than for all packages. See bug #96368.

2006-08-04 13:43  genone

	* bin/regenworld: ignore packages that were just fetched from being
	  added to the worldfile

2006-08-04 05:30  zmedico

	* bin/prepstrip: Fix the installsources feature so that it works
	  even with splitdebug or nostrip. Thanks to Olivier Crete
	  <tester@gentoo.org> for this patch from bug #136197.

2006-08-04 03:13  zmedico

	* bin/prepstrip: Fix STRIP_MASK logic so that a match results in
	  stripitbaby=0.

2006-08-03 09:49  zmedico

	* pym/portage.py: Protect USE_EXPAND flags from -* in order to
	  preserve previous behavior which has changed due to the fix for
	  bug #142125.

2006-08-03 09:01  zmedico

	* pym/portage.py: Instead of self.puse, use self.mycpv to return
	  early from setcpv.

2006-08-03 06:30  zmedico

	* pym/portage.py: Expand USE_EXPAND flags earlier so that their
	  incremental stacking behaves just like it does for normal USE
	  flags. See bug #142125.

2006-08-03 02:27  zmedico

	* pym/portage.py: Use a recursive function to simplify the walking
	  of the profile paths. The number of parent profiles is
	  constrained to 1 but could easily be extended to allow multiple
	  inheritence.

2006-08-02 21:52  zmedico

	* man/ebuild.5: Remove dojar docs for bug #108517.

2006-08-02 18:56  zmedico

	* pym/portage.py: Remove the unnecessary "Previously fetched"
	  portion of the disfiles checksum output for bug #142271.

2006-08-02 07:12  zmedico

	* bin/emerge: Link the full handbook since it's guaranteed to
	  continue to work as per comment #12 of bug #142225. Also, add a
	  note about the architecture being irrelevant as per comment #10.

2006-08-02 06:02  zmedico

	* bin/emerge: Move code that updates depgraph state from
	  select_dep() to a more appropriate location in create(). This
	  fixes a bug in $ROOT handling, where the the $ROOT of the child
	  is used where the $ROOT of the parent should have been (similar
	  to bug #108449).

2006-08-02 04:42  zmedico

	* pym/portage.py: Grab /etc/profile.env from the target root
	  instead of the configroot.

2006-08-02 03:24  zmedico

	* pym/portage.py: Move profile.env to the bottom of the stack so
	  that, for example, it's possible for make.conf values to override
	  or stack incrementally with values from profile.env. See bug
	  #51370.

2006-08-02 03:01  zmedico

	* pym/portage.py: Remove duplicate profile.env values from the
	  environment so that they don't override updated profile.env
	  values later (profile.env is reloaded in each call to
	  self.regenerate). See bug #51370.

2006-08-01 17:44  zmedico

	* bin/dojar: Remove dojar for bug #108517.

2006-07-31 18:25  zmedico

	* bin/emerge: Don't write to emerge.log when --pretend is enabled
	  for bug #139449.

2006-07-31 03:03  zmedico

	* bin/emerge: When emerge exits to blockers, show a link to the
	  relevant section of the Gentoo Handbook. See bug #142225.

2006-07-31 02:11  zmedico

	* pym/portage_util.py: Only ignore ENOENT in getconfig() so that
	  more important errors don't go unnoticed.

2006-07-31 01:52  zmedico

	* pym/portage.py: Add matching quote (typo from last revision).

2006-07-31 01:51  zmedico

	* pym/portage.py, pym/portage_util.py: Catch ParseError from
	  getconfig during env_update for bug #142157.

2006-07-31 01:01  zmedico

	* bin/repoman: Remove pointless cvs dependent REPOROOTS code.
	  Thanks to Alec Warner <antarus@gentoo.org> for this patch.

2006-07-29 18:20  zmedico

	* bin/ebuild.sh, pym/portage.py, pym/portage_util.py: Stack
	  /etc/profile.env inside portage.config so that it doesn't stop
	  variables in inappropriate places. See bug #51370.

2006-07-28 19:06  zmedico

	* pym/portage.py: Make sure we doebuild uses the correct tree for
	  fetch lists when there are overlays.

2006-07-28 18:57  zmedico

	* bin/ebuild: Use the FetchlistDict to simplify code.

2006-07-28 17:46  zmedico

	* bin/ebuild: Pass in the path to the base of the current tree to
	  ensure that the correct fetchlist is used when there are overlays
	  present.

2006-07-28 07:37  zmedico

	* pym/portage.py: Add PKG_CONFIG_PATH to env_update incrementals
	  for bug #105384.

2006-07-28 06:32  zmedico

	* bin/ebuild, pym/portage_manifest.py: Allow a digest to be created
	  before any distfiles have been fetched for bug #141843.

2006-07-28 04:58  zmedico

	* bin/ebuild, pym/portage_manifest.py: Add a --force option for
	  `ebuild digest` so that the user doesn't have to manually remove
	  the Manifest and files/digest-* files when upstream changes the
	  identity of distfiles. See bug #141843.

2006-07-27 22:07  zmedico

	* pym/portage.py: Simplify permissions adjustment after a file is
	  fetched.

2006-07-27 21:30  zmedico

	* pym/portage.py: Move the filesystem mirrors code into the main
	  fetch loop.

2006-07-27 20:20  zmedico

	* pym/portage.py: Move permissions adjustment of previously fetched
	  files into the main fetch loop.

2006-07-27 19:11  zmedico

	* pym/portage.py: Fix ENOENT exception handler so that it only
	  wraps the relevant stat call.

2006-07-27 08:36  zmedico

	* pym/portage.py: Hide a password if a uri contains one (a custom
	  local mirror, for example). Thanks to nelchael for the patch.

2006-07-27 08:22  zmedico

	* pym/portage.py: Simplify fetch failure logic.

2006-07-27 08:12  zmedico

	* pym/portage.py: Ensure that that fetch restriction message is
	  only show once in --pretend mode.

2006-07-27 08:01  zmedico

	* pym/portage.py: Allow fetch restricted files to be fetched from
	  custom local mirrors as per bug #37455. This patch additionally
	  allows a mirror:// uri to override fetch restriction, but only
	  for the specified mirror (or a custom local mirror).

2006-07-27 06:20  zmedico

	* pym/portage.py: Move the initial check of previously fetched
	  files out of the locations loop so that that the same code path
	  can be used (patch to follow) when fetch is restricted and there
	  are no custom local mirrors. See bug #37455.

2006-07-26 22:26  zmedico

	* pym/portage_util.py: Fix unsafe deletion of a dictionary item
	  during iteration.

2006-07-25 05:42  zmedico

	* bin/emerge: When necessary, always print a list of missing atoms
	  even if --verbose is not enabled. Thanks to Caster
	  <caster@matfyz.cz> for this patch from bug #141643.

2006-07-25 04:57  zmedico

	* bin/emerge, pym/portage.py: Move the self dependency check from
	  digraph.addnode() to depgraph.create() since that's the only
	  place it's currently needed. This patch should not affect emerge
	  behavior.

2006-07-25 03:18  zmedico

	* bin/emerge, pym/portage.py: Add more dependencies to the digraph
	  in order to help prevent strange merge orders for bug #126748.

2006-07-24 16:05  zmedico

	* bin/emerge: s/difference/symmetric_difference/ for the last two
	  commits.

2006-07-24 15:48  zmedico

	* bin/emerge: For binary packages, trigger a rebuild with --newuse
	  when IUSE has changed for bug #116955.

2006-07-24 15:25  zmedico

	* bin/emerge: Trigger a rebuild with --newuse when IUSE has changed
	  for bug #116955.

2006-07-23 09:11  zmedico

	* bin/emerge: Simplify depgraph.select_dep() logic by using a list
	  of matched packages (instead of separate variables for ebuild and
	  binary packages).

2006-07-23 00:37  zmedico

	* pym/xpak.py: Return tuples instead of lists from getboth
	  functions and methods.

2006-07-23 00:31  zmedico

	* pym/xpak.py: Return a tuple from searchindex instead of a list.

2006-07-22 23:37  zmedico

	* pym/xpak.py: Make xsplit() return False on failure and True on
	  success for bug #141445.

2006-07-22 11:39  zmedico

	* pym/portage.py, pym/portage_dep.py: Move best_match_to_list,
	  match_from_list, and match_to_list from the core portage module
	  to portage_dep.

2006-07-22 11:19  zmedico

	* pym/portage.py, pym/portage_versions.py: Move portage.best() to
	  portage_versions.

2006-07-22 11:12  zmedico

	* pym/portage.py: Remove unused portage.match_from_list_original()
	  function.

2006-07-22 11:08  zmedico

	* bin/emerge: Use portage.best() to simplify package comparison.

2006-07-22 06:54  zmedico

	* bin/emerge: Just add the providers to the protected set without
	  bothering to check if they're in the vdb.

2006-07-22 00:33  zmedico

	* bin/emerge: Make depclean account for old-style virtuals so that
	  it doesn't remove the providers.

2006-07-21 22:31  zmedico

	* pym/portage.py: Make sure that PORTAGE_BUILDDIR exists before
	  attempting to lock it. Depending on the phase, either
	  BUILD_PREFIX or PKG_TMPDIR could be the parent, so we simply use
	  PORTAGE_BUILDDIR to cover both cases.

2006-07-21 20:28  zmedico

	* pym/portage.py: Collapse whitespace in aux_get calls for remote
	  binpkg metadata. See bug #141279.

2006-07-21 19:45  zmedico

	* pym/portage_update.py: Ignore hidden directories and files when
	  updating config files.

2006-07-21 18:36  zmedico

	* cnf/make.conf: Add a link for "Setting up your own local rsync
	  mirror" as suggested by jkt.

2006-07-21 08:41  zmedico

	* pym/portage.py, pym/portage_dep.py, pym/portage_update.py: Move
	  dep_transform from the portage_dep module to portage_update.

2006-07-21 07:19  zmedico

	* pym/portage.py, pym/portage_update.py: Move update_config_files
	  from the core portage module to portage_update.

2006-07-21 07:09  zmedico

	* pym/portage_util.py: Do the portage_checksum import in local
	  scope because of circular dependency.

2006-07-21 06:25  zmedico

	* pym/portage.py, pym/portage_util.py: Move new_protect_filename
	  from the core portage module to portage_util.

2006-07-21 05:59  zmedico

	* pym/portage.py, pym/portage_update.py: Move parse_updates from
	  the core portage module to portage_update.

2006-07-21 05:38  zmedico

	* pym/portage.py, pym/portage_dep.py: Move isjustname, isspecific,
	  dep_getkey, and dep_transform from the core portage module to
	  portage_dep.

2006-07-21 05:13  zmedico

	* pym/portage.py, pym/portage_util.py: Remove grabdict_package and
	  grabfile_package from the core portage module since the copies in
	  portage_util can now work by importing isvalidatom from
	  portage_dep.

2006-07-21 05:06  zmedico

	* pym/portage.py, pym/portage_dep.py: Move dep_getcpv,
	  get_operator, and isvalidatom from the core portage module to
	  portage_dep.

2006-07-21 03:41  zmedico

	* pym/portage.py: Blacklist some variables in the config
	  constructor so that they can't interfere with portage internals.

2006-07-20 21:47  zmedico

	* bin/etc-update: Fix broken if/elif statement.

2006-07-20 20:51  zmedico

	* bin/repoman: Fix a broken reference to portage.portdb.

2006-07-20 09:17  zmedico

	* pym/portage.py: Remove redundant initialization of directories
	  for cloned config instances.

2006-07-20 09:08  zmedico

	* pym/portage.py: Move initialization of config.uvlist into the
	  regenerate() method since that's the only place it's used.

2006-07-20 08:53  zmedico

	* pym/portage.py: Move initialization of self.lookuplist to a more
	  logical location for cloned config instances.

2006-07-20 08:12  zmedico

	* pym/portage.py: Remove redundant initialization of self.features
	  (and self.regenerate() call) for cloned config instances.

2006-07-20 07:43  blubb

	* cnf/make.conf: note that there is the possibility to have a local
	  rsync server; bug 141110

2006-07-20 07:32  zmedico

	* pym/portage.py: Remove redundant initialization of
	  PORTAGE_BIN_PATH and PORTAGE_PYM_PATH for cloned config
	  instances.

2006-07-20 07:26  zmedico

	* pym/portage.py: Remove redundant initialization of CBUILD for
	  cloned config instances.

2006-07-20 06:46  zmedico

	* pym/portage.py: Remove redundant definition of catsplit() which
	  is already imported from portage_versions. Thanks to ChrisWhite
	  for reporting.

2006-07-20 06:07  zmedico

	* pym/portage.py: Remove redundant copying of self.lookuplist and
	  self.uvlist for cloned config instances.

2006-07-20 05:59  zmedico

	* pym/portage.py: When cloning a config instance, use the copied
	  env instead of grabbing a new copy of os.environ.

2006-07-20 05:51  zmedico

	* pym/portage.py: Remove redundant processing of ROOT and
	  PORTAGE_CONFIGROOT for cloned config instances.

2006-07-20 05:21  zmedico

	* pym/portage.py: Remove redundant (and possibly problem causing)
	  copying of self.backupenv for cloned config instances.

2006-07-20 04:40  zmedico

	* pym/portage.py: Remove redundant processing of PORTDIR_OVERLAY
	  for cloned config instances.

2006-07-20 04:25  zmedico

	* pym/portage.py: Remove redundant initialization of
	  self.depcachedir for cloned config instances.

2006-07-20 04:14  zmedico

	* pym/portage.py: When a config instance is cloned, don't
	  initialize PORTAGE_GID since it would have been done already for
	  the instance being cloned.

2006-07-20 04:06  zmedico

	* pym/portage.py: When a config instance is cloned, don't set
	  default USE_ORDER since it would have been done already for the
	  instance being cloned.

2006-07-20 01:43  zmedico

	* pym/output.py: Handle a potential ValueError when parsing the
	  number of terminal columns.

2006-07-19 21:12  zmedico

	* bin/etc-update: Make user_special() return 1 if none of the
	  patterns in /etc/etc-update.special are matched.

2006-07-19 19:56  zmedico

	* pym/portage.py: Make PORTAGE_TMPDIR cannonical for sandbox before
	  it's exported to the ebuild environment for bug #140436.

2006-07-19 11:41  genone

	* bin/etc-update: add support to prevent auto-processing for
	  user-special files that match a pattern in
	  /etc/etc-update.special

2006-07-19 11:10  genone

	* bin/etc-update: use eval to allow shell expansion in config file

2006-07-19 11:00  genone

	* bin/etc-update: Only call portageq once

2006-07-19 10:40  zmedico

	* pym/portage.py: Remove redundant checksum output.

2006-07-19 10:36  genone

	* bin/etc-update: update mtime after replacing config files

2006-07-19 10:26  genone

	* bin/etc-update: add notice about remaining updates on exit

2006-07-19 10:21  genone

	* bin/etc-update: add option to discard config updates

2006-07-19 09:57  genone

	* bin/etc-update: Show full path when auto-merging

2006-07-19 09:55  genone

	* bin/etc-update: ensure we have the necessary access

2006-07-19 05:56  zmedico

	* pym/portage.py: Use the python implemention of ebegin/eend to
	  visually enhance the ouput for checksums.

2006-07-19 05:54  zmedico

	* pym/output.py: Add an EOutput class that provides a python
	  implementation of the familar e* funtions from
	  /sbin/functions.sh. Thanks to Alex Tarkovsky
	  <alextarkovsky@gmail.com> for this patch.

2006-07-19 05:51  zmedico

	* pym/portage.py: Don't try to create a log file unless
	  PORTAGE_BUILDDIR exists.

2006-07-19 01:13  zmedico

	* pym/portage.py: Use the portage gid for BUILD_PREFIX.

2006-07-19 01:11  zmedico

	* pym/portage.py: Ensure that BUILD_PREFIX has been created before
	  attempting to lock PORTAGE_BUILDDIR.

2006-07-18 23:40  zmedico

	* pym/portage.py: Do file locking on PORTAGE_BUILDDIR and use a
	  finally block to ensure that the lock is properly released. This
	  fixes bug #140971.

2006-07-18 21:50  zmedico

	* bin/repoman: Ensure a sane umask for repoman.

2006-07-18 18:21  blubb

	* bin/doman, bin/prepman: fix up doman and prepman so that they
	  work with the new .keep files in rev 3917

2006-07-18 17:09  blubb

	* bin/ebuild.sh: make .keep files package-dependant to fix bug
	  102436

2006-07-18 03:59  zmedico

	* bin/emerge: Use a set instead of a list for better efficiency.

2006-07-18 03:52  zmedico

	* bin/emerge: Simplify generation of the cleanlist for depclean.

2006-07-17 23:57  zmedico

	* bin/emerge: Fix depclean so that it cleans unneeded slots (unless
	  they are exempted by the system or world sets). See bug #140591.

2006-07-17 19:14  zmedico

	* pym/portage_versions.py: Add a docstring with epytext markup to
	  portage_versions.pkgcmp(). Thanks to chriswhite for this patch.

2006-07-17 18:48  zmedico

	* bin/repoman: Enable repoman to work with
	  portage.init_legacy_globals() disabled.

2006-07-17 17:49  zmedico

	* pym/portage.py: Remove redundant variable definitions.

2006-07-17 10:34  zmedico

	* pym/portage.py: Fix categories and arch.list handling for repoman
	  with overlays so that /etc/portage is not used.

2006-07-17 09:57  zmedico

	* pym/portage.py: Collapse two repoman PORTAGE_CALLER conditionals
	  into one.

2006-07-16 22:20  zmedico

	* bin/emerge: Add ipv6 --sync support for bug #37124. Thanks to
	  Bernhard Schmidt <berni@birkenwald.de> for the initial patch.

2006-07-16 20:47  zmedico

	* bin/emerge: Fix broken --usepkg masking logic for bug #140694.

2006-07-16 02:36  zmedico

	* pym/portage.py, pym/portage_util.py: Move the ConfigProtect class
	  to the portage_util module.

2006-07-16 01:28  zmedico

	* pym/portage.py: s/config_protect/ConfigProtect/ for the class
	  name.

2006-07-15 19:46  zmedico

	* bin/portageq: Add a new portageq metadata function that wraps
	  dbapi.aux_get() so that things like built_with_use in
	  eutils.eclass can retrieve metadata in manner that is independent
	  of the installed package database implementation.

2006-07-15 19:09  zmedico

	* pym/eclass_cache.py, pym/portage_file.py, pym/portage_locks.py:
	  Remove the portage_file module for bug #133591.

2006-07-15 19:03  zmedico

	* pym/portage.py, pym/portage_util.py: Move normalize_path into
	  portage_util.

2006-07-15 18:54  zmedico

	* pym/portage.py: Use normalize_path instead of using normpath
	  directly.

2006-07-15 18:34  zmedico

	* pym/portage.py: Simplify portage.normalize_path() logic.

2006-07-15 07:15  zmedico

	* bin/emerge: Use calculations to center --info header titles.

2006-07-15 05:36  zmedico

	* bin/emerge: As suggested by vapier, only show the "System
	  Settings" banner when myfiles is not empty.

2006-07-15 01:39  genone

	* RELEASE-NOTES: note change in search behavior in release notes

2006-07-15 01:37  genone

	* man/emerge.1, pym/emergehelp.py: update search docs

2006-07-15 01:27  genone

	* bin/emerge: disable regular expressions for search by default

2006-07-13 23:42  zmedico

	* bin/emerge: Fix gid typo from the last commit.

2006-07-13 23:33  zmedico

	* bin/emerge, pym/portage.py: Move the world file trimming out of
	  dblink.unmerge() since the world file is package set territory
	  and therefore doesn't belong inside dblink.

2006-07-13 19:29  zmedico

	* pym/portage.py: Make the merge phase bail out if srcroot doesn't
	  exist for bug #140159.

2006-07-13 19:08  zmedico

	* bin/emerge: Remove the unmerge_overlapping() function since
	  unmerge() now works properly in the case where ROOT!=/ thanks to
	  the fix for bugs #137446 and #131319.

2006-07-13 18:04  zmedico

	* bin/misc-functions.sh: Die at the beginning of install_qa_check
	  if ${D} doesn't exist. See bug #140159.

2006-07-13 08:23  zmedico

	* bin/emerge: Split depgraph.merge() to a separate MergeTask class.

2006-07-13 06:54  zmedico

	* pym/portage.py: Fix incorrect path handling in parts of symlink
	  merge logic.

2006-07-13 04:15  zmedico

	* pym/portage.py: Remove orphan srctarget variable.

2006-07-13 04:09  zmedico

	* pym/portage.py: Use startswith instead of slice or find.

2006-07-13 03:44  zmedico

	* pym/portage.py: Clean up various path joins in dblink.mergeme().

2006-07-13 02:22  zmedico

	* pym/portage.py: Don't swallow unknown exceptions from lstat()
	  during the merge phase.

2006-07-12 17:12  zmedico

	* pym/portage.py: Use startswith instead of slices to simplify
	  config protect code.

2006-07-12 09:59  zmedico

	* pym/portage.py: Use a safer method to join the path when deciding
	  if the current merge offset is config protected. The main problem
	  with corresponding change from r3836 is that the destroot
	  variable happens to be // when ROOT=/. See bug #140045.

2006-07-11 01:51  zmedico

	* pym/portage.py: Replace incorrect references to myrealdest (the
	  file name that appears in CONTENTS) with correct references to
	  mydest (the absolute destination path, prefixed with $ROOT). See
	  bug #120653.

2006-07-11 00:59  zmedico

	* pym/portage_checksum.py: Just use the raise statement alone to
	  re-raise exceptions.

2006-07-10 23:01  zmedico

	* bin/emerge: Allow emerge --info to show per-package settings for
	  bug #95741. Thanks to npmccallum for the initial patch.

2006-07-10 19:40  zmedico

	* bin/emerge: Don't call emergelog() from the parallel-fetch
	  process for bug #88837.

2006-07-10 19:12  zmedico

	* bin/emaint: Move code out of global scope.

2006-07-10 08:04  zmedico

	* bin/emerge: Use a list comprehension to simplify the code for bug
	  #55871.

2006-07-10 05:51  zmedico

	* bin/emerge: Move all the config adjustments that require the
	  config instance to be unlocked into a new adjust_config()
	  function. This allows the function to be applied to both of the
	  major config instances that exist when $ROOT != /.

2006-07-10 02:00  zmedico

	* bin/emerge: If category expansion fails against the portage tree,
	  remove the null/ prefix so that it may be given another chance to
	  expand against the binary package tree in select_dep(). See bug
	  #135834.

2006-07-10 01:08  zmedico

	* bin/emerge: Start at the end of the list so that the index works
	  properly after items are deleted.

2006-07-10 00:57  zmedico

	* bin/emerge: Allow binary packages to be installed with --usepkg
	  even when there is no ebuild in tree (but not when there is a
	  matching ebuild in the tree that is masked). See bugs #135834 and
	  #55871.

2006-07-09 22:27  zmedico

	* pym/portage.py: Implement fakedbapi.cpv_all() so that bindbapi
	  will inherit it.

2006-07-09 21:05  zmedico

	* pym/portage.py: Add a bindbapi.aux_update() method for database
	  maintenance. See bug #122089.

2006-07-09 20:34  zmedico

	* pym/portage.py: Use write_atomic for dblink metadata updates.

2006-07-09 20:31  zmedico

	* bin/emaint, pym/portage.py: Update error handling for
	  write_atomic calls to use PortageException.

2006-07-09 20:18  zmedico

	* pym/portage_util.py: Wrap common write_atomic exceptions for
	  easier error handling.

2006-07-09 20:09  zmedico

	* pym/portage.py: Add a vardbapi.aux_update() method for database
	  maintenance. See bug #122089.

2006-07-09 19:07  zmedico

	* bin/emerge: Use dbapi to unify config.setinst() call in
	  depgraph.select_dep().

2006-07-09 18:49  zmedico

	* bin/emerge: Use the abstract dbapi.aux_get() interface to unify
	  retrieval of IUSE in depgraph.create().

2006-07-09 18:43  zmedico

	* bin/emerge: Use the abstract dbapi.aux_get() interface to unify
	  retrieval of dependency strings in depgraph.create().

2006-07-08 23:12  zmedico

	* bin/emerge: Use a cmpsplit() function to simplify package
	  comparisons in depgraph.select_dep().

2006-07-08 23:03  zmedico

	* bin/emerge: Remove the merging=2 case to simplify merge/nomerge
	  logic.

2006-07-08 22:58  zmedico

	* bin/emerge: Fix indentation mistake from the last commit.

2006-07-08 22:55  zmedico

	* bin/emerge: Use set.intersection() to simplify --newuse
	  comparison.

2006-07-08 00:33  zmedico

	* pym/portage.py: Do config.reset() prior to the depend phase to
	  make sure that doebuild chooses the correct category. This fixes
	  a problem similar to bug #137105.

2006-07-07 21:57  zmedico

	* cnf/make.globals: Remove USE_EXPAND_HIDDEN from make.globals
	  since it's now included in the base profile.

2006-07-07 18:02  zmedico

	* pym/portage.py: Fix the NameError that occurs when
	  collision-protect triggers unmerge. See bug #139580.

2006-07-06 19:58  zmedico

	* pym/portage.py: Use copy.deepcopy() to ensure that state
	  comparison works properly.

2006-07-06 19:54  zmedico

	* pym/portage.py: Only commit the mtimedb if the internal state has
	  changed.

2006-07-06 18:01  zmedico

	* pym/portage.py: Export the path of the build log into the ebuild
	  env as suggested by Flameeyes.

2006-07-06 17:46  vapier

	* bin/misc-functions.sh: remove pointless line that just ruins the
	  display

2006-07-06 16:40  zmedico

	* bin/emerge: Clean up getportageversion() profile logic and fix a
	  ValueError that occurs when profile is None.

2006-07-06 02:46  zmedico

	* pym/portage.py: Remove global autouse cache since most people
	  don't use it anyway and it's broken in the case where $ROOT != /.

2006-07-06 02:30  zmedico

	* bin/emerge: Move the ARCH sanity check from the depgraph
	  constructor to a new validate_ebuild_environment() function and
	  call it before any action that requires an ebuild environment
	  (including search, which may result in metadata generation). So,
	  --sync, --metadata, and --info are currently the only actions
	  that are allowed without ARCH being defined.

2006-07-06 00:08  zmedico

	* pym/portage.py: Fix missing newline.

2006-07-05 22:36  zmedico

	* pym/portage.py: Cache a cloned config instance inside portdbapi
	  so that a new one doesn't have to be cloned each time metadata
	  generation is triggered.

2006-07-05 20:03  zmedico

	* bin/repoman: Make a backup of ACCEPT_KEYWORDS when repoman
	  changes it for each profile. This prevents it from being
	  discarded by config.reset() and was the root cause of bug
	  #132601. The cloning that was added in r3791 is a safeguard to
	  prevent problems like this.

2006-07-05 18:39  zmedico

	* pym/portage.py: Use a cloned config instance for the depend phase
	  in portdbapi.aux_get(). See bug #132601.

2006-07-05 17:57  zmedico

	* bin/repoman: Fix repoman breakage due to the fact that
	  portage.portagetree now creates it's own portdbapi instance.
	  Repoman will now use a single portdbapi instance instead of one
	  for each arch. The arch specific config instances are swapped in
	  on the fly. Hopefully this fixes bug #132601.

2006-07-05 05:24  zmedico

	* bin/emerge: Freeze all pordbapi instances.

2006-07-05 04:29  zmedico

	* bin/emerge: Run global updates asap and then reload the whole
	  config to make sure everything is consistent.

2006-07-05 03:41  zmedico

	* bin/emerge: Match blockers against the correct $ROOT for bug
	  #108449.

2006-07-05 03:07  zmedico

	* bin/emerge: Pass existing trees into load_emerge_config() so that
	  the existing portdbapi instances will be cleaned up by
	  portage.create_trees().

2006-07-05 02:42  zmedico

	* bin/emerge, pym/portage.py: Allow the loading of a completely
	  separate config for / and PORTAGE_CONFIGROOT. This fixes bug
	  #137446.

2006-07-04 00:29  zmedico

	* bin/emerge: Fix more $ROOT references for bug #137446.

2006-07-04 00:02  zmedico

	* bin/emerge: Fix $ROOT references in the depgraph class for bug
	  #137446.

2006-07-03 20:31  zmedico

	* pym/portage.py: Use the correct bintree and porttree for bug
	  #137446.

2006-07-03 19:52  zmedico

	* bin/emerge: Remove color from "none" reported by vapier.

2006-07-03 19:43  zmedico

	* bin/emerge: Remove commented code cruft.

2006-07-03 19:26  zmedico

	* bin/emerge: Do some basic validation of the mtimedb resume data
	  so that assumptions can be made later.

2006-07-03 17:35  zmedico

	* bin/emerge, pym/output.py: When displaying the resume merge list,
	  don't show the skipped package when --skipfirst is enabled. See
	  bug #121106.

2006-07-03 16:35  zmedico

	* bin/emerge: Commit the mtimedb for --skipfirst so that if the
	  user aborts the first package, the next --skipfirst will go on to
	  the next package instead of doing the same one again. This patch
	  simply reverts to the behavior that existed before.

2006-07-03 01:51  zmedico

	* pym/portage.py: Revert accidental hunk from the last commit.

2006-07-03 01:45  zmedico

	* pym/portage.py: Force fetch if the number of parsed digests does
	  not match the number of digest types that are supported. See bug
	  #138911.

2006-07-03 00:27  zmedico

	* pym/portage_manifest.py: When assume-digests is enabled, for
	  digest generation if the number of parsed digests does not match
	  the number of digest types that are supported. See bug #138911.

2006-07-02 18:15  zmedico

	* bin/repoman: Ignore hidden directories (such as .svn) when
	  building the scanlist.

2006-07-02 16:53  zmedico

	* bin/emerge: Commit the mtimedb prior to restart via excve for bug
	  #138837.

2006-07-02 08:07  zmedico

	* bin/repoman: Add support for arch.list in overlays (bug #137975).

2006-07-02 07:56  zmedico

	* bin/repoman: Add support for licenses in overlays (bug #137975).

2006-07-02 07:43  zmedico

	* bin/repoman: Add overlay support for use.local.desc in repoman.

2006-07-02 06:43  zmedico

	* bin/repoman: Fix import issues reported by pyflakes.

2006-07-02 06:24  zmedico

	* bin/repoman: Add a new parse_use_local_desc() function.

2006-07-02 01:14  zmedico

	* pym/portage.py: Fix NameError when collision-protect is enabled
	  for bug #138793.

2006-07-01 20:26  zmedico

	* pym/portage.py: Fix references to global settings in the
	  binarytree class that were reported by solar.

2006-07-01 19:57  zmedico

	* bin/emerge: Use GOOD, BAD, and WARN color classes where
	  appropriate. Thanks to Damien THEBAULT
	  <damien.thebault@laposte.net> for this patch from bug #138600.

2006-07-01 19:35  zmedico

	* bin/emerge: Use the BAD and GOOD color classes to remove hard
	  coded colors from the depclean warning message.

2006-07-01 18:05  zmedico

	* bin/emerge, pym/output.py: Add a new MERGE_LIST_PROGRESS color
	  class and remove hard coded yellow/green.

2006-07-01 15:18  solar

	* bin/emerge: - multi-package emerge now prints the sequence
	  highlighting count and cpv to visually stand out in
	  wondercolors...

2006-07-01 10:21  zmedico

	* pym/portage.py: Fix autouse so that it works with
	  init_legacy_globals() disabled.

2006-07-01 09:45  zmedico

	* bin/emerge: Trigger post_emerge() after the relevent actions and
	  commit the mtimedb there.

2006-07-01 09:16  zmedico

	* bin/emerge: Pass a config instance into movefile() to avoid
	  dependence on global variables.

2006-07-01 08:48  zmedico

	* bin/emerge: In order to ensure that emerge doesn't use any of
	  portage's legacy global variables, run emerge with
	  portage.init_legacy_globals() disabled.

2006-07-01 08:28  zmedico

	* pym/portage.py: Pass the trees into two more dep_zapdeps calls to
	  avoid dependence on global variables.

2006-07-01 05:57  zmedico

	* bin/emerge: Pass a more dbapi instances into doebuild to avoid
	  dependence on global variables.

2006-07-01 05:37  zmedico

	* bin/emerge: Pass a portdbapi instance into doebuild to avoid
	  dependence on global variables.

2006-07-01 05:03  zmedico

	* bin/emerge, pym/portage.py: Allow portage.getmaskingreason() to
	  operate without global variables.

2006-07-01 04:43  zmedico

	* bin/emerge, pym/portage.py: Allow portage.getmaskingstatus() to
	  operate without global variables.

2006-07-01 04:34  zmedico

	* pym/portage.py: Recycle the portdbapi instance at the and of
	  global_updates().

2006-07-01 02:39  zmedico

	* bin/emerge: Go ahead and dump a full traceback without having to
	  enable --debug. There's no sense in hiding valuable traceback
	  info like that.

2006-07-01 02:26  zmedico

	* pym/portage.py: Use PORTAGE_DEBUG=1 since that's all that portage
	  currently recognizes.

2006-06-30 18:38  zmedico

	* bin/emerge: Fix unmerge version spacing for bug #138611.

2006-06-30 18:12  zmedico

	* pym/portage.py: Integrate the load_mtimedb() function into the
	  MtimeDB class. This function is relatively new so nobody should
	  miss it.

2006-06-30 17:16  zmedico

	* bin/emerge: Remove redundant "portdb" parameters since pordbapi
	  instances are accessible via the "trees" paramters. There is
	  currently only one global pordbapi instance but eventually there
	  will be separate instances for / and $ROOT.

2006-06-30 14:48  zmedico

	* bin/emerge, pym/portage.py: Pass trees into dep_check and
	  dep_zapdeps calls in order to avoid dependance on global
	  variables.

2006-06-30 11:16  zmedico

	* bin/emerge, pym/portage.py: Fix pkgmerge() to work without
	  dependance on global variables.

2006-06-30 10:10  zmedico

	* bin/emerge, pym/portage.py: Pass a config instance into the
	  bindbapi and fakedbapi constructors in order to avoid dependance
	  on globals for dep_expand() calls.

2006-06-30 09:22  zmedico

	* bin/emerge: Pass missing parameters to doebuild in order to avoid
	  dependance on globals.

2006-06-30 09:09  zmedico

	* pym/portage.py: Pass the ldpath_mtimes for unmerging the
	  already-installed instance.

2006-06-30 09:02  zmedico

	* pym/portage.py: Fix missing target_root keyword parameter.

2006-06-30 08:54  zmedico

	* bin/emerge: Pass portdbapi instances into doebuild in order to
	  avoid dependance on globals.

2006-06-30 08:45  zmedico

	* pym/portage.py: Only use the global vartree when really
	  necessary.

2006-06-30 08:27  zmedico

	* pym/portage.py: Pass config and portdbapi instances into the
	  portagetree constructor.

2006-06-30 08:18  zmedico

	* pym/portage.py: Allow the portagetree constructor to work without
	  globals.

2006-06-30 07:22  zmedico

	* bin/emerge: Fix accidental replacement from r3705.

2006-06-30 07:20  zmedico

	* bin/emerge: Make use of the new mtimdb.commit() method.

2006-06-30 07:07  zmedico

	* pym/portage.py: Add an MtimeDB class to encapsulate the mtimedb.

2006-06-30 03:57  zmedico

	* bin/emerge: Replace global references to the mtimedb with local
	  references.

2006-06-30 03:26  zmedico

	* bin/emerge, pym/portage.py: Pass ldpath mtimes into the unmerge
	  operations.

2006-06-30 03:03  zmedico

	* bin/emerge, pym/portage.py: Trigger env_update() after each
	  unmerge operation.

2006-06-30 02:39  zmedico

	* bin/emerge: Remove a pointless "if" statement.

2006-06-30 02:12  zmedico

	* bin/emerge: Pass parameters into env_update() so that it doesn't
	  depend on global variables.

2006-06-29 22:37  zmedico

	* bin/emerge: After sync, reload portage before the metadata
	  transfer so that action_metadata() doesn't have to be concerned
	  with invalid settings.categories and such.

2006-06-29 21:22  zmedico

	* bin/emerge: Replace references to portage.portdb with local
	  references.

2006-06-29 19:02  zmedico

	* bin/emerge: Replace references to portage.root with local
	  settings[ROOT].

2006-06-29 08:21  zmedico

	* bin/emerge: Replace direct references to portage.db with local
	  references.

2006-06-29 07:46  zmedico

	* bin/emerge: Remove reference to global portage.db from
	  validate_merge_list().

2006-06-29 07:20  zmedico

	* bin/emerge: Replace direct references to portage.settings with
	  local references.

2006-06-29 05:11  zmedico

	* bin/emerge: Pass a vardbapi instance into getportageversion() so
	  that it doesn't have to construct one itself.

2006-06-29 04:53  zmedico

	* bin/emerge, pym/portage.py: Pass a config instance into each
	  dep_expand call.

2006-06-29 04:22  zmedico

	* pym/portage.py: Pass a config instance into the vardbapi
	  constructor so that it doesn't have to rely on global settings.

2006-06-29 04:18  zmedico

	* pym/portage.py: Pass a config instance into the vardbapi
	  constructor so that it doesn't have to rely on global settings.

2006-06-28 22:24  zmedico

	* pym/portage.py: Update symlinks in during package moves for bug
	  #138394.

2006-06-28 19:36  zmedico

	* bin/repoman: To simplify code, use startswith() instead of
	  slices.

2006-06-28 18:18  zmedico

	* pym/portage.py: Allow a config instance to be passed into
	  dep_expand so that it doesn't have to rely on global settings.

2006-06-28 18:11  zmedico

	* pym/portage.py: Allow a config instance to be passed into
	  cpv_expand so that it doesn't have to rely on global settings.

2006-06-28 05:59  zmedico

	* bin/emerge: Fix the writemsg noiselevel so that versions are
	  correctly shown even when --quiet is enabled.

2006-06-28 05:54  zmedico

	* bin/emerge: Add a missing space in the unmerge output that was
	  reported by vapier.

2006-06-28 05:26  vapier

	* bin/emerge, pym/output.py: retain current color schema by adding
	  a new color class for unmerging

2006-06-28 04:57  zmedico

	* pym/output.py: Set WARN=red to so that warnings appear red, as
	  they always have.

2006-06-28 02:38  antarus

	* pym/portage.py: readd Rev to portage.py for proper svn revisions
	  in portage.version

2006-06-27 20:33  zmedico

	* bin/emerge: Remove unnecessary --quiet check since writemsg
	  handles that already.

2006-06-27 20:26  zmedico

	* bin/emerge: Make unmerge() colors more consistent.

2006-06-27 20:10  zmedico

	* bin/emerge: Fix output colors for bug #138259.

2006-06-27 19:18  zmedico

	* bin/isolated-functions.sh: Make sure that variables containing
	  colors pollute the environment for bug #138246.

2006-06-27 09:33  zmedico

	* bin/emerge: Fix chk_updated_cfg_files() parameters for bug
	  #138131.

2006-06-27 09:23  zmedico

	* bin/emerge: Fix action_search() parameters for bug #138131.

2006-06-27 07:21  zmedico

	* bin/emerge: Pass an xterm_titles parameter into emergelog() so
	  that it doesn't need any global variables.

2006-06-27 04:37  zmedico

	* bin/emerge: When --buildpkg is enabled, merge directly from the
	  uncompressed install image instead of needlessly unpacking the
	  binary package. See bug #138105.

2006-06-27 04:19  antarus

	* bin/emerge: Docstrings galore in the dep resolver. Hoping to get
	  it better documented so it can be tweaked for some of the open
	  bugs against it. 99% of this should be docstrings, make sure I
	  didn't accidentally touch anything in there.

2006-06-26 21:21  zmedico

	* bin/emerge: For compatibility with revdep-rebuild, do not allow
	  NOCOLOR=false to override the isatty() check.

2006-06-26 19:31  zmedico

	* bin/emerge: Ignore SIGPIPE signals in order to prevent '[Errno
	  32] Broken pipe' exceptions from being raised when emerge output
	  is being piped. This reverts a behavior change from r3606.

2006-06-26 18:51  zmedico

	* bin/emerge: Turn off color automatically when stdout is a pipe,
	  but allow the behavior to be overridden via the NOCOLOR
	  environment variable.

2006-06-26 06:21  zmedico

	* bin/emerge: Use the cannonical path of $PORTDIR when transferring
	  metadata so that the _eclasses_ paths are consistent. See bug
	  #137965.

2006-06-26 05:39  zmedico

	* bin/isolated-functions.sh, pym/portage.py: Allow
	  /etc/portage/color.map to control colors associated with einfo,
	  ewarn, etc...

2006-06-26 04:02  zmedico

	* bin/emerge: Ensure that the PORTAGE_DEBUG environment variable
	  has a valid integer value.

2006-06-26 03:10  zmedico

	* bin/emerge: Fix a few global variable references and move all the
	  global scope code into an emerge_main() function.

2006-06-26 02:27  zmedico

	* bin/emerge: Don't run post_emerge() when --pretend is enabled.

2006-06-26 02:19  zmedico

	* bin/emerge: Remove direct references to the global mtimedb from
	  chk_updated_info_files().

2006-06-26 01:48  zmedico

	* bin/emerge, pym/portage.py: Remove all direct references to
	  global variables form post_emerge().

2006-06-25 21:14  zmedico

	* bin/emerge: Use the PORTAGE_DEBUG environment variable to replace
	  the global scope edebug variable.

2006-06-25 20:50  zmedico

	* bin/emerge: Replace a references to global scope CLEAN_DELAY and
	  EMERGE_WARNING_DELAY with the previously validated environment
	  variables.

2006-06-25 20:26  zmedico

	* bin/emerge: Ensure that CLEAN_DELAY and EMERGE_WARNING_DELAY
	  environment variables contain valid integer values.

2006-06-25 19:34  zmedico

	* bin/emerge: Remove the help() function.

2006-06-25 19:25  zmedico

	* bin/emerge: Remove an unused import.

2006-06-25 09:54  zmedico

	* pym/portage.py: Print a message to stderr if an error occurs when
	  updating a config file.

2006-06-25 09:43  zmedico

	* pym/portage.py: Pass in just the CONFIG_PROTECT info instead of
	  the whole config object.

2006-06-25 08:30  zmedico

	* pym/portage.py: Split the config protect functionality from the
	  dblink class to a new class and use it in
	  portage.update_config_files() (dblink requires a vartree and
	  that's not needed here).

2006-06-25 07:51  zmedico

	* pym/portage.py: Fix portage.update_config_files() so that it can
	  work with an arbitrary $ROOT and without any global variables.

2006-06-25 04:39  zmedico

	* bin/emerge: Split the command line argument parsing into a
	  function.

2006-06-25 02:15  zmedico

	* bin/env-update, bin/etc-update, bin/md5check.py: Remove
	  unnecessary PORTAGE_CALLER exports.

2006-06-25 01:52  zmedico

	* pym/portage.py: Pass a config object into the binarytree
	  constructor so that is doesn't have to use global settings for
	  key_expand calls.

2006-06-25 01:15  zmedico

	* pym/portage.py: Pass a config object into the vartree constructor
	  so that is doesn't have to use global settings for key_expand
	  calls.

2006-06-24 23:57  zmedico

	* bin/ebuild.sh: Skip the install phase when
	  ${PORTAGE_BUILDDIR}/.installed exists. See bug #137864.

2006-06-24 20:55  zmedico

	* pym/portage.py: Move the counter_tick methods from the dbapi
	  class to the vardbapi class.

2006-06-24 20:43  zmedico

	* pym/portage.py: Make the COUNTER regeneration logic account for
	  $ROOT as per bug #129054.

2006-06-24 18:26  zmedico

	* pym/portage.py: The mtimedb should not be relative to the target
	  $ROOT because the paths that it contains are currently relative
	  to "/".

2006-06-24 18:01  zmedico

	* bin/misc-functions.sh: s/Preform/Perform/ Thanks to exg for
	  reporting.

2006-06-24 07:52  zmedico

	* bin/emerge: Remove references to portage.settings from unmerge().

2006-06-24 07:47  zmedico

	* bin/emerge: Remove references to portage.root from unmerge().

2006-06-24 07:31  zmedico

	* pym/portage.py: Pass a config instance into key_expand calls so
	  that it doesn't rely on global settings.

2006-06-24 06:51  zmedico

	* bin/emerge, pym/portage.py: Remove all direct references to
	  global variables from unmerge().

2006-06-24 05:14  zmedico

	* bin/emerge: Remove all direct references to global variables from
	  getlist().

2006-06-24 04:43  zmedico

	* bin/emerge: Remove all references to global variables from
	  getportageversion().

2006-06-24 04:14  zmedico

	* bin/emerge: Fix getgccversion logic for bug #137786.

2006-06-24 04:03  zmedico

	* pym/portage.py: Remove the deprectated digestCheckFiles function.

2006-06-24 03:18  zmedico

	* pym/portage.py: Remove a few unused imports.

2006-06-24 03:12  zmedico

	* pym/portage.py: Remove a few unused imports.

2006-06-23 11:08  zmedico

	* bin/emerge: Split the --metadata action into a separate function
	  from --sync.

2006-06-23 10:22  zmedico

	* bin/emerge: Register emerge exit and signal handlers after
	  parsing options, just before the action phase.

2006-06-23 09:59  zmedico

	* bin/emerge: Minor import cleanups.

2006-06-23 09:52  zmedico

	* bin/emerge: Ensure that ^C interrupts are handled quietly.

2006-06-23 08:50  zmedico

	* bin/emerge: Shift all global scope code to the bottom.

2006-06-23 08:07  zmedico

	* bin/emerge: Fix extra imports and undefined variable found by
	  pyflakes.

2006-06-23 08:03  zmedico

	* bin/emerge: Fix error handling for getlist().

2006-06-23 07:29  zmedico

	* pym/portage_util.py: Sort filenames for predictable results.

2006-06-23 06:58  zmedico

	* bin/emerge: Do not import * for cooperation with pyflakes.

2006-06-23 06:28  zmedico

	* bin/emerge: Use secpass to determine whether emergelog exceptions
	  should be ignored.

2006-06-23 06:14  zmedico

	* bin/emerge: Remove unnecessary "myaction" parameter from the
	  depgraph constructor.

2006-06-23 06:09  zmedico

	* bin/emerge: Pass relevant global variables as parameters to
	  action_* functions.

2006-06-23 05:40  zmedico

	* bin/emerge: Document "deep" and remove unused "params" variable.

2006-06-23 05:20  zmedico

	* bin/emerge: Remove unused "merged" variable.

2006-06-23 04:35  zmedico

	* pym/portage.py: Prevent an inappropriate warning when a repoman
	  user's profile does not support sandbox. Thanks to exg for
	  reporting.

2006-06-23 03:41  zmedico

	* pym/portage_util.py: Test the basename for starting with "."
	  instead of the full path.

2006-06-23 03:35  zmedico

	* pym/portage_util.py: Fix a typo from r3611 (file != files).

2006-06-23 00:40  antarus

	* pym/portage_util.py: ignore .files in /etc/portage recursion

2006-06-22 19:41  zmedico

	* bin/dispatch-conf: Use portage_exec.find_binary since "which"
	  always returns 0 status on darwin. Thanks to exg for reporting.

2006-06-22 19:11  zmedico

	* bin/emerge: Simplify permission logic for emerge.log.

2006-06-22 17:51  zmedico

	* bin/emerge: Move the creation of depgraph params from global
	  scope to a function.

2006-06-22 17:16  zmedico

	* bin/isolated-functions.sh: As suggested by exg, include the
	  einfon code inside einfo instead of using the FUNCNAME hack
	  (FUNCNAME only works with >=bash-3.0).

2006-06-22 16:43  zmedico

	* pym/portage.py: Don't register signal handlers during module
	  import because it may override signal hadlers that were
	  registered by the calling code.

2006-06-22 16:43  blubb

	* man/emerge.1: mention the use of @ in -s; bug 137565

2006-06-22 15:10  zmedico

	* bin/emerge: Fix a broken reference to syslist and remove two
	  extras.

2006-06-22 14:40  zmedico

	* bin/emerge: Move emerge's default action code from global scope
	  to a function.

2006-06-22 14:27  zmedico

	* bin/emerge: Fix missing global "syslist" from r3594.

2006-06-22 14:24  zmedico

	* bin/emerge: Move the --depclean code from global scope to a
	  function.

2006-06-22 14:19  zmedico

	* bin/emerge: Move the --search code from global scope to a
	  function.

2006-06-22 14:11  zmedico

	* bin/emerge: Move the --info code from global scope to a function.

2006-06-22 14:08  zmedico

	* bin/emerge: Fix a collision with a previous variable named "p".

2006-06-22 13:15  zmedico

	* bin/emerge: Move the --config code from global scope to a
	  function.

2006-06-22 13:10  zmedico

	* bin/emerge: Move the --regen code from global scope to a
	  function.

2006-06-22 12:59  zmedico

	* bin/emerge: Move the --sync and --metadata code from global scope
	  to a function.

2006-06-22 11:33  zmedico

	* bin/emerge: Remove most direct references to global variables
	  from emerge's depgraph class.

2006-06-22 08:24  zmedico

	* bin/emerge: Remove unused "olddbapi" variable.

2006-06-22 08:17  zmedico

	* bin/emerge: Remove all global variables from emerge's search
	  class.

2006-06-22 06:51  zmedico

	* bin/emerge: Encapsulate emerge's spinner into an object.

2006-06-22 02:09  zmedico

	* pym/portage.py: Simplify PORT_LOGDIR intitialization.

2006-06-22 01:49  zmedico

	* pym/portage.py: Prevent and exception when PORT_LOGDIR is an
	  empty string.

2006-06-22 01:39  zmedico

	* pym/portage.py: Remove redundant PORT_LOGDIR validation from the
	  config constructor.

2006-06-22 01:33  zmedico

	* pym/portage.py: Don't bother to warn when PORT_LOGDIR="".

2006-06-22 01:24  zmedico

	* pym/portage.py: Make sure that PORT_LOGDIR is properly unset when
	  it is unusable. Thanks to solar for reporting issues with logs
	  landing in $PWD.

2006-06-21 00:43  zmedico

	* bin/emerge: By popular demand (including releng), revert the
	  unmerge behavior change from bug #118515 (r3186).

2006-06-20 22:51  zmedico

	* pym/cache/metadata_overlay.py: Make it easy to pass alternative
	  cache implementations into the constructor as suggested by Brian
	  Harring.

2006-06-20 22:39  zmedico

	* pym/cache/metadata_overlay.py: Use get() to simplify setitem
	  logic as suggested by Brian Harring.

2006-06-20 22:23  zmedico

	* pym/cache/template.py: Implement get() as part of the standard
	  mapping interface.

2006-06-20 21:55  zmedico

	* pym/cache/metadata_overlay.py: Fix it so that values are properly
	  saved in the writable layer. Previously they've been discarded,
	  leading to regen on each access (only in cases where the user has
	  altered an ebuild in the $PORTDIR).

2006-06-20 18:28  zmedico

	* pym/portage.py: Use wantnewlockfile=1 on /var/lib/portage/config
	  for bug #137269. r3540 is also related.

2006-06-19 21:28  zmedico

	* pym/portage_locks.py: To prevent infinite recursion when a lock
	  file has more than 1 hardlink, test for exactly 0 hardlinks
	  before recursing.

2006-06-19 18:15  genone

	* pym/portage.py: make sure that elog entries are also processed in
	  *rm phases and that they are only processed once

2006-06-19 03:09  zmedico

	* bin/emerge: Save timestamp.chk even when metadata-transfer is
	  disabled for bug #137177.

2006-06-19 01:37  solar

	* bin/emerge: - do not complain about redundant use of pretend and
	  verbose flags

2006-06-18 23:42  antarus

	* pym/portage.py: goodbye tokenize

2006-06-18 22:40  zmedico

	* pym/output.py: Put bright colors before dark colors for bug
	  #137206. Thanks to Benno Schulenberg <benno@nietvergeten.nl> for
	  this patch.

2006-06-18 21:22  zmedico

	* pym/portage_mail.py: Add missing sys import found by pyflakes.

2006-06-18 21:13  genone

	* pym/portage_mail.py: fix typo

2006-06-18 16:43  vapier

	* bin/misc-functions.sh: get rid of quotes in output

2006-06-18 03:12  zmedico

	* pym/portage.py: Prevent repoman frm using
	  /etc/portage/package.mask. This is a regression in 2.1.1_pre1
	  from svn r3495. See bug #133740. Thanks to sekretarz for
	  reporting this issue.

2006-06-18 00:43  zmedico

	* bin/emerge: Overwrite the existing fetch log so that it only
	  contains the most recent fetch.

2006-06-17 23:30  zmedico

	* bin/emerge: Log parallel-fetch output to
	  /var/log/emerge-fetch.log just in case it's needed. See bug
	  #137105.

2006-06-17 23:18  zmedico

	* bin/emerge, pym/portage.py: Make sure that doebuild gets the
	  correct CATEGORY. See bug #137105.

2006-06-17 21:50  vapier

	* man/emerge.1: Benno Schulenberg writes in #136818: tweak
	  --nocolor description

2006-06-17 21:49  vapier

	* man/emerge.1: Benno Schulenberg writes in #136818: tweak the
	  description of --info

2006-06-17 21:47  vapier

	* man/emerge.1: Benno Schulenberg writes in #136818: make the style
	  of the --pretend letter descriptions uniform

2006-06-17 21:43  vapier

	* man/emerge.1: Benno Schulenberg writes in #136818: put the
	  --config action in its alphabetical place while adjusting the
	  words and spaces a little.

2006-06-17 21:41  vapier

	* man/emerge.1: line wrap to 80 cols

2006-06-17 21:39  vapier

	* man/emerge.1: Benno Schulenberg writes in #136818: changes the
	  wording of the "set" parameter to be similar to its neighbours.

2006-06-17 15:56  zmedico

	* pym/portage_manifest.py: Force digest generation when
	  assume-digests is enabled but the file size does not match. See
	  bug #137032.

2006-06-16 20:13  zmedico

	* pym/portage_util.py: Import missing PermissionDenied class.
	  Thanks to marienz for reporting (and suggesting pyflakes).

2006-06-16 06:10  zmedico

	* pym/portage.py: Fix checksum error messages for bug #136947.
	  Thanks to truedfx for this patch.

2006-06-15 23:10  zmedico

	* pym/portage.py: Only attempt to unmerge the already-installed
	  instance if it actually exists. This patch prevents
	  self.settings.configdict["pkg"] from getting nuked by a call to
	  load_infodir on a nonexistent directory. By preserving
	  configdict["pkg"] here, the CATEGORY is available for the next
	  doebuild call (needed to create log names correctly).

2006-06-15 16:19  zmedico

	* bin/emerge: When --debug is enabled, do not raise a ValueError
	  for unresolved dependencies. See bug #126793.

2006-06-14 12:42  antarus

	* RELEASE-NOTES: more fixes to make it sound like I didn't write it
	  at 8:41am

2006-06-14 12:41  antarus

	* RELEASE-NOTES: idiot, use.defaults, not make.defaults

2006-06-14 12:35  antarus

	* RELEASE-NOTES: Add autouse removal to RELEASE-NOTES

2006-06-14 10:08  zmedico

	* bin/emerge: Give a useful error message when a dependency has an
	  ambiguous atom due to the category being unspecified. See bug
	  #123677.

2006-06-13 23:30  zmedico

	* bin/ebuild.sh: Source /etc/portage/bashrc after the
	  profile.bashrcs, since user env should be over to override the
	  profile env.

2006-06-13 20:46  antarus

	* bin/repoman: fix path to ebuild for dsd, bug # 135705

2006-06-13 19:55  zmedico

	* bin/ebuild.sh, pym/portage.py: Fix generation of ebuild log file
	  names for bug #136285.

2006-06-13 04:21  zmedico

	* bin/etc-update: Fix signal handling for bug #96331. Thanks to S.
	  Caglar Onur <caglar@pardus.org.tr> for this patch.

2006-06-13 03:50  zmedico

	* cnf/make.conf.x86-fbsd.diff: s/i686-unknown/i686-gentoo/ for bug
	  #136532.

2006-06-13 00:20  zmedico

	* pym/elog_modules/mod_save.py: Fix a typo from the last revision
	  (octal literals begin with 0).

2006-06-13 00:06  zmedico

	* pym/elog_modules/mod_save.py: Toggle the setgid bit on
	  $PORT_LOGDIR\elog\ for bug #136278.

2006-06-12 23:22  zmedico

	* bin/isolated-functions.sh: Prevent extra newlines in elog for
	  einfo invocations. See bug #136208.

2006-06-12 19:06  zmedico

	* pym/portage.py: For more simplicity, use os.rename instead of
	  spawning MOVE_BINARY (see bug #136404).

2006-06-12 18:24  zmedico

	* bin/emerge: Remove pointless closing of stdin that is done prior
	  to metadata transfer (See bug #136404).

2006-06-12 17:33  blubb

	* bin/emerge: removing windows-like senseless confirmation requests

2006-06-12 15:57  genone

	* pym/portage_mail.py: add date header for rfc2822 compliance

2006-06-12 03:51  zmedico

	* bin/repoman: Replace --include-masked with an inverse
	  --ignore-masked option for bug #85576.

2006-06-12 02:46  zmedico

	* pym/portage.py: Stack package.mask files in a more logical order
	  as specified in bug #133740.

2006-06-12 00:13  zmedico

	* pym/portage_util.py: Wrap more exceptions in ensure_dirs().

2006-06-11 23:51  zmedico

	* pym/portage_util.py: Wrap more exceptions when applying
	  permissions. Thanks to marienz for reporting.

2006-06-10 23:03  zmedico

	* bin/misc-functions.sh: Remove QA warning when files are installed
	  with portage uid/gid for bug #136313.

2006-06-10 22:54  antarus

	* bin/repoman: Fix LIVEVCS.stable for -* keywords

2006-06-10 22:50  genone

	* pym/portage_mail.py: override sender on sendmail invocation

2006-06-10 22:43  genone

	* cnf/make.conf, pym/portage_mail.py: add code to allow sendmail
	  binaries to be used instead of a smtp connection for sending
	  mails

2006-06-10 22:38  genone

	* pym/elog_modules/mod_mail.py, pym/portage_mail.py: refactor elog
	  mail stuff so it's reusable by other tools (like glsa-check)

2006-06-10 21:40  genone

	* NEWS, RELEASE-NOTES, bin/archive-conf, bin/chkcontents,
	  bin/clean_locks, bin/dispatch-conf, bin/dobin, bin/doconfd,
	  bin/dodir, bin/dodoc, bin/doenvd, bin/doexe, bin/dohard,
	  bin/dohtml, bin/doinfo, bin/doinitd, bin/doins, bin/dojar,
	  bin/dolib, bin/dolib.a, bin/dolib.so, bin/doman, bin/domo,
	  bin/dosbin, bin/dosed, bin/dosym, bin/ebuild, bin/ebuild.sh,
	  bin/emaint, bin/emake, bin/emerge, bin/emerge-webrsync,
	  bin/env-update, bin/env-update.sh, bin/etc-update,
	  bin/find-requires, bin/fix-db.py, bin/fixdbentries,
	  bin/fixpackages, bin/fowners, bin/fperms,
	  bin/isolated-functions.sh, bin/md5check.py, bin/md5check.sh,
	  bin/misc-functions.sh, bin/newbin, bin/newconfd, bin/newdoc,
	  bin/newenvd, bin/newexe, bin/newinitd, bin/newins, bin/newlib.a,
	  bin/newlib.so, bin/newman, bin/newsbin, bin/pemerge.py,
	  bin/pkgmerge, bin/pkgmerge.new, bin/pkgname,
	  bin/portage_gpg_update.sh, bin/portageq, bin/prepall,
	  bin/prepalldocs, bin/prepallinfo, bin/prepallman,
	  bin/prepallstrip, bin/prepinfo, bin/preplib, bin/prepman,
	  bin/prepstrip, bin/quickpkg, bin/regenworld, bin/repoman,
	  bin/sed, bin/xpak, cnf/dispatch-conf.conf, cnf/etc-update.conf,
	  cnf/make.conf, cnf/make.conf.alpha.diff,
	  cnf/make.conf.amd64.diff, cnf/make.conf.arm.diff,
	  cnf/make.conf.hppa.diff, cnf/make.conf.ia64.diff,
	  cnf/make.conf.mips.diff, cnf/make.conf.ppc.diff,
	  cnf/make.conf.ppc64.diff, cnf/make.conf.s390.diff,
	  cnf/make.conf.sparc.diff, cnf/make.conf.x86-fbsd.diff,
	  cnf/make.conf.x86.diff, cnf/make.globals, make-man-tarball.sh,
	  make.conf-repatch.sh, man/dispatch-conf.1, man/ebuild.1,
	  man/ebuild.5, man/emaint.1, man/emerge.1, man/env-update.1,
	  man/etc-update.1, man/make.conf.5, man/portage.5, man/quickpkg.1,
	  man/repoman.1, pym/cache/__init__.py, pym/cache/anydbm.py,
	  pym/cache/cache_errors.py, pym/cache/flat_hash.py,
	  pym/cache/flat_list.py, pym/cache/fs_template.py,
	  pym/cache/mappings.py, pym/cache/metadata.py,
	  pym/cache/metadata_overlay.py, pym/cache/sql_template.py,
	  pym/cache/sqlite.py, pym/cache/template.py, pym/cache/util.py,
	  pym/cvstree.py, pym/dispatch_conf.py, pym/eclass_cache.py,
	  pym/elog_modules/__init__.py, pym/elog_modules/mod_custom.py,
	  pym/elog_modules/mod_mail.py, pym/elog_modules/mod_save.py,
	  pym/elog_modules/mod_syslog.py, pym/emergehelp.py,
	  pym/getbinpkg.py, pym/output.py, pym/portage.py,
	  pym/portage_checksum.py, pym/portage_const.py,
	  pym/portage_data.py, pym/portage_debug.py, pym/portage_dep.py,
	  pym/portage_exception.py, pym/portage_exec.py,
	  pym/portage_file.py, pym/portage_gpg.py,
	  pym/portage_localization.py, pym/portage_locks.py,
	  pym/portage_manifest.py, pym/portage_update.py,
	  pym/portage_util.py, pym/portage_versions.py, pym/xpak.py,
	  src/bsd-flags/PKG-INFO, src/bsd-flags/chflags.c,
	  src/bsd-flags/setup.cfg, src/bsd-flags/setup.py,
	  src/python-missingos/ChangeLog, src/python-missingos/PKG-INFO,
	  src/python-missingos/README, src/python-missingos/missingos.c,
	  src/python-missingos/setup.cfg, src/python-missingos/setup.py,
	  src/tbz2tool.c, tabcheck.py, tarball.sh: make elog mail module
	  always set the 'From' header for rfc2822 compliance

2006-06-10 05:06  zmedico

	* pym/portage.py: Do not unmerge fifo files because, since their
	  mtime is not stored in CONTENTS, we can't be sure if they belong
	  to another package unless we search through all CONTENTS for all
	  installed packages. See bug #136199.

2006-06-10 00:25  solar

	* bin/misc-functions.sh: - Bug 136236 misc-functions.sh fails to
	  always honor RESTRICT=stricter - Donnie Berkholz
	  spyderous@gentoo.org

2006-06-09 09:06  zmedico

	* pym/portage.py: I meant to ignore an IndexError here, in case
	  mysettings["PORTDIR_OVERLAY"] becomes corrupted and the split has
	  an unexpected number of elements for some reason.

2006-06-08 22:10  zmedico

	* bin/sed: Use ${BASH_SOURCE[0]} instead of $_ because the former
	  is more dependable for preventing endless exec loops (see bug
	  #135470). Testing shows that this corrects the problem for the
	  libtool ebuild when sed is used to generate ltmain.shT.

2006-06-08 16:56  zmedico

	* pym/portage.py: Break out of the loop asap.

2006-06-08 16:15  zmedico

	* pym/portage.py: When an ebuild from overlay fails, display a
	  message indicating which overlay it came from (bug #136031).
	  Thanks to genstef for the initial patch.

2006-06-08 15:15  zmedico

	* man/portage.5: Add some documentation for
	  /etc/make.profile/profile.bashrc.

2006-06-08 13:57  zmedico

	* bin/emerge: Delete incomplete resume data before exiting due to
	  blockers. This prevents a 'mergelist' KeyError from occurring if
	  the user attempts to run `emerge --resume` immediately
	  afterwards. Thanks to axxo for reporting.

2006-06-08 13:26  zmedico

	* cnf/make.globals, pym/portage.py: Move hard coding of /etc/env.d
	  in CONFIG_PROTECT_MASK from portage.config.__getitem__() to
	  make.globals. Thanks to pauldv for reporting.

2006-06-08 12:25  zmedico

	* pym/portage.py: Revert r3468 because this type of functionality
	  belongs in profile.bashrc or an eclass.

2006-06-07 13:20  vapier

	* pym/portage.py: support for FEATURES=debug-build

2006-06-07 12:49  zmedico

	* pym/portage_data.py: Call the bogus lchown() once so that the
	  warning is seen asap.

2006-06-07 12:39  zmedico

	* pym/portage_data.py: If lchown is unavailable for some unexpected
	  reason, make all lchown calls print a warning message (bug
	  #135398).

2006-06-07 11:53  zmedico

	* pym/portage.py: Also bump the counter for the "merge" phase since
	  it calls spawnebuild (bug #135856).

2006-06-07 10:32  zmedico

	* pym/portage.py: Make sure that each new build attempt gets it's
	  own unique log file for bug #135856.

2006-06-06 04:10  zmedico

	* bin/emerge: Fix getgccversion() logic so that it works properly
	  with eselect compiler for bug #108393. Thanks to eradicator for
	  help with this patch.

2006-06-05 17:16  zmedico

	* bin/misc-functions.sh: Store the original suid bits when suidctl
	  is enabled for bug #135639. Thanks to
	  splite-gentoo@sigint.cs.purdue.edu for this patch.

2006-06-05 07:59  zmedico

	* bin/repoman: Put LIVEVCS.stable in qawarnings for now since it's
	  new and hasn't been thoroughly discussed.

2006-06-05 07:43  zmedico

	* bin/repoman: Add python 2.3 compatibility code for the set
	  builtin.

2006-06-05 05:51  zmedico

	* bin/emerge: Fix getgccversion() logic for bug #108393. Thanks to
	  eradicator for suggesting this logic.

2006-06-04 19:49  antarus

	* man/repoman.1: add LIVEVCS.stable to man repoman

2006-06-04 19:48  antarus

	* bin/repoman: Add live VCS check to repoman, fix misspelling

2006-06-04 15:33  zmedico

	* pym/portage.py: When generating digests, print a digest.assumed
	  QA warning if necessary in order to prevent confusion. Thanks to
	  jakub for suggesting this.

2006-06-04 03:42  zmedico

	* pym/portage.py: Raise a ParseError if the profile has a parent
	  file containing a nonexistant parent.

2006-06-04 03:29  zmedico

	* pym/portage.py: Raise a ParseError if the profile has a parent
	  file containing anything other than 1 parent.

2006-06-04 03:13  zmedico

	* pym/portage.py: Revert lazy loading of autouse because it is both
	  broken and useless.

2006-06-04 00:30  zmedico

	* cnf/make.conf: Escape the shell parameter expansions in the
	  PORTAGE_ELOG_COMMAND example for bug #135429.

2006-06-04 00:09  zmedico

	* bin/emerge: Restore the old behavior of performing global updates
	  when portage is reloaded after `emerge --sync` for bug #135446.

2006-06-03 19:21  zmedico

	* bin/emerge: Fix emerge's overlay display so that it works
	  properly with overlay paths that contain symlinks. This is
	  necessary due to pordbapi's internal use of cannonical paths.
	  Thanks to kevquinn for reporting.

2006-06-02 19:08  zmedico

	* bin/portageq: In portageq, catch a KeyError and print a message
	  to stderr. If the KeyError is raised, portageq prints a help
	  message which leads to bug #135278.

2006-06-02 09:32  zmedico

	* cnf/make.conf.x86-fbsd.diff: Update make.conf.example for
	  x86-fbsd with patch from Flameeyes for bug #135241.

2006-06-01 13:46  zmedico

	* bin/ebuild.sh: Fix unpack so that it works with 7z archives for
	  bug #135134. Thanks to Paul Bredbury <brebs@sent.com> for the
	  initial patch.

2006-06-01 11:15  zmedico

	* bin/emerge: Wrap at 80 columns for bug #135132.

2006-06-01 07:59  zmedico

	* bin/emerge: Fix --buildpkgonly so that the "clean" phase is run
	  afterwards. In other cases, "clean" is triggered automatically
	  after the package is merged.

2006-06-01 06:52  zmedico

	* man/ebuild.5, man/make.conf.5: Document RESTRICT="confcache" and
	  add a reference econf in the FEATURES="confcache" docs.

2006-06-01 01:40  antarus

	* pym/getbinpkg.py: Fix quoting for bug 109739

2006-05-30 09:10  zmedico

	* bin/emerge-webrsync: Use python to lookup the user and group
	  corresponding to PORTAGE_INST_UID and PORTAGE_INST_GID since
	  tarsync doesn't support numeric arguments for the user and group.
	  See bug #134885.

2006-05-30 08:23  zmedico

	* bin/emerge: Add some helpful troubleshooting tips to the depclean
	  warning message.

2006-05-30 03:52  zmedico

	* bin/prepstrip: Fix prepstrip so that it properly distiguishes
	  between stripped and unstripped binaries for bug #133420. Thanks
	  to robbat2 for this patch.

2006-05-29 19:00  blubb

	* bin/repoman: everybody hates repoman failing on modular X, so
	  make it a warning

2006-05-29 11:45  zmedico

	* pym/portage_selinux.py: Use the well know selinux_aux functions
	  for bug #134743.

2006-05-28 23:27  zmedico

	* bin/emerge, man/emerge.1, pym/emergehelp.py: Revert patch for
	  r3426 for bug 134466 and add warnings to docs.

2006-05-28 22:32  zmedico

	* man/make.conf.5: Update the default USE_ORDER setting in the man
	  page. Thanks to jakub for reporting.

2006-05-28 06:37  zmedico

	* cnf/make.conf, man/make.conf.5: Update FEATURES docs for
	  'assume-digests' and 'digest'. Thanks to robbat2 for reporting.

2006-05-27 21:03  zmedico

	* pym/portage.py: Ignore ENOENT errors that are expected to occur
	  in portage.fetch().

2006-05-27 04:53  zmedico

	* pym/portage.py, pym/portage_selinux.py: Remove dependence on a
	  patched version of libselinux for bug #122517.

2006-05-27 03:40  zmedico

	* pym/portage_util.py: Add noiselevel=-1 to writemsg calls in
	  portage_util.py for errors that shouldn't happen so that messages
	  are printed even when --quiet is used.

2006-05-27 03:27  zmedico

	* pym/portage.py: Add noiselevel=-1 to writemsg calls in portage.py
	  for errors that shouldn't happen so that messages are printed
	  even when --quiet is used.

2006-05-27 02:24  zmedico

	* bin/emerge: Add noiselevel=-1 to writemsg calls for fatal emerge
	  errors so that important errors are printed even when --quiet is
	  used.

2006-05-27 02:11  zmedico

	* bin/emerge: Fix emerge's userquery() so that it rejects empty
	  responses when the enter key is pressed for bug #134466.

2006-05-27 01:52  zmedico

	* pym/portage.py: Add noiselevel=-1 to writemsg calls for
	  legitimate errors in merge and unmerge phases so that important
	  errors are printed even when --quiet is used.

2006-05-27 01:45  zmedico

	* pym/portage.py: Add noiselevel=-1 to writemsg calls for
	  legitimate errors in portage.digestcheck() so that important
	  errors are printed even when --quiet is used.

2006-05-27 01:38  zmedico

	* pym/portage.py: Add noiselevel=-1 to writemsg calls for
	  legitimate errors in doebuild so that important errors are
	  printed even when --quiet is used.

2006-05-27 01:05  zmedico

	* pym/portage.py: Make sure that fetch errors are reported even
	  when --quiet is being used.

2006-05-27 00:59  zmedico

	* pym/portage.py: Only print a warning if absolutely necessary when
	  adjusting distfiles permissions for bug #112612.

2006-05-27 00:09  zmedico

	* bin/prepstrip: For availability in all stages, use rsync instead
	  of cpio for bug #124638.

2006-05-26 22:38  zmedico

	* bin/prepstrip: For portability, use cpio instead of `cp
	  --parents` for bug #124638.

2006-05-26 04:08  zmedico

	* pym/portage.py: Add some additional error handling for
	  OperationNotPermitted and ReadOnlyFileSystem exceptions (bug
	  #112612).

2006-05-26 03:38  zmedico

	* pym/portage.py: Fix the last revision so it also works for files
	  copied from local fsmirrors.

2006-05-26 03:27  zmedico

	* pym/portage.py: If necessary, apply appropriate permissions to
	  previously fetched files for bug #112612.

2006-05-26 01:59  zmedico

	* pym/portage.py: Reset DISTDIR to it's original value before
	  returning from doebuild() in order to prevent unexpected values
	  for DISTDIR later on.

2006-05-25 22:34  zmedico

	* man/ebuild.1: Fix CATEGORY spelling for bug #134362.

2006-05-25 13:30  antarus

	* cnf/make.conf: update the wget examples in make.conf

2006-05-25 13:09  antarus

	* cnf/make.globals: set a timeout on wget to 60 seconds to fix bug
	  101196; the old timeout was 15 minutes :/

2006-05-24 22:34  zmedico

	* man/ebuild.5: Add some documentation for RESTRICT="binchecks"
	  (bug #133804).

2006-05-24 16:11  solar

	* bin/misc-functions.sh, man/ebuild.5, man/make.conf.5: - More
	  updates from Kevin Q bug 131779 ; document the stricter feature
	  along with the QA_* handling

2006-05-24 10:42  solar

	* bin/misc-functions.sh: - final commit hopefully for QA_TEXTRELS
	  etc.

2006-05-24 08:12  zmedico

	* bin/ebuild.sh: When /usr/lib/distcc/bin does not exist, only add
	  a maximum of one distcc to CC and CXX for bug #84150.

2006-05-23 22:20  zmedico

	* bin/repoman: Fix repoman so that it works when the portage tree
	  structure contains symlinks for bug #109961.

2006-05-23 18:27  zmedico

	* cnf/make.globals: Add kernel to the default USE_EXPAND_HIDDEN.
	  Thanks to Flameeyes for reporting.

2006-05-23 17:51  antarus

	* bin/prepstrip: Fix prepstrip to work with restrict, thanks to
	  flameeyes and bug 134135

2006-05-23 09:33  zmedico

	* cnf/make.globals: Add ELIBC and USERLAND to USE_EXPAND_HIDDEN in
	  make.globals since the user can't change those flags easily.

2006-05-23 09:26  zmedico

	* man/make.conf.5: Add some documentation for USE_EXPAND_HIDDEN.

2006-05-23 09:04  zmedico

	* bin/emerge: Prevent a KeyError from occurring when
	  USE_EXPAND_HIDDEN is used for bug #134086.

2006-05-23 03:23  zmedico

	* cnf/make.conf: Document userfetch for bug #133975. Thanks to
	  RiverRat for this patch.

2006-05-22 09:05  zmedico

	* pym/portage_manifest.py: Fix a bug that causes hashes of random
	  types (mostly SHA1, from my experience) to be erroneously
	  discarded due to dictionary assignment instead up update.

2006-05-22 07:47  zmedico

	* bin/ebuild.sh: Don't warn about RESTRICT=test unless
	  FEATURES=test is enabled for bug #134004.

2006-05-22 05:59  zmedico

	* pym/portage.py: Fix userfetch so that it works regardless of
	  whether or not userpriv is enabled for bug #133995. I've used
	  portage_exec.spawn_bash() here because portage.spawn() should
	  really only be used for actual ebuild phases in doebuild() and
	  spawnebuild().

2006-05-21 21:48  zmedico

	* man/make.conf.5: Fix bad spelling of "privileges" in userpriv
	  docs.

2006-05-21 20:45  zmedico

	* man/make.conf.5: Document userfetch for bug #133975.

2006-05-21 18:59  zmedico

	* pym/portage_manifest.py: Don't include a redundant size field
	  with the other hashes when creating manifest2 entries. Thanks to
	  solar for reporting.

2006-05-21 04:41  zmedico

	* pym/portage.py: Validate the CATEGORY data in
	  portage.config.load_infodir() and print a warning message if
	  corruption is detected.

2006-05-19 09:55  zmedico

	* bin/emerge: In order to help protect users, make AUTOCLEAN case
	  insensitive.

2006-05-19 01:01  zmedico

	* pym/emergehelp.py: Add --nocolor to emerge's short help for bug
	  #133734. Thanks to gabebw@gmail.com for this patch.

2006-05-19 00:39  zmedico

	* bin/portageq: Catch a ValueError thrown from cpv_expand and use
	  it print an error message (to stderr) which includes a list of
	  packages for bug #133731. No changes to quickpkg are necessary
	  because it doesn't get anything from portageq on stdout in this
	  case and it simply assumes there is no match.

2006-05-18 08:59  zmedico

	* bin/prepstrip: Fix prepstrip split-debug paths for bug #133628.
	  Thanks to kevquinn for this patch.

2006-05-18 08:45  zmedico

	* bin/emerge: Revert r3371 because it doesn't fix the real problem
	  and get ROOT directly from portage.settings["ROOT"] since
	  self.pkgsettings["ROOT"] does not have the desired value.

2006-05-18 07:22  zmedico

	* bin/emerge: Catch PackageNotFound exceptions from unmerge() for
	  bug #133606.

2006-05-18 05:25  zmedico

	* bin/emerge: Correctly autoclean build time dependencies that have
	  been upgraded in / when ROOT!=/ for bug #133606. This patch
	  duplicates code from emerge's unmerge() function in order to
	  touch as little existing code as possible.

2006-05-17 22:30  zmedico

	* bin/emerge: When portage is upgraded, only restart emerge when
	  destroot="/". Also, clean up and fix the related logic in
	  depgraph.display().

2006-05-17 20:55  zmedico

	* pym/portage.py: Fix repoman to grab categores, arch.list, and
	  package.mask from the proper locations when scanning an overlay.
	  Thanks to mcummings for reporting.

2006-05-17 07:08  zmedico

	* cnf/make.conf.ppc64.diff: s/mtarget/mtune/g for bug #133528.

2006-05-17 05:44  zmedico

	* bin/emerge: Print a warning message when AUTOCLEAN is disabled
	  because it's quite dangerous.

2006-05-16 20:23  zmedico

	* pym/portage.py: Fix portage.getmaskingreason() so that it
	  properly stacks all available package.mask files for bug #104000.

2006-05-16 19:54  zmedico

	* cnf/make.conf: Add a warning message for AUTOCLEAN="no". Thanks
	  to jakub for reporting.

2006-05-16 06:10  zmedico

	* bin/emerge: Add + to the --changelog regex so that dvd+rw-tools
	  works for bug #133288.

2006-05-16 05:50  zmedico

	* man/emerge.1: Add some PORTAGE_CONFIGROOT documentation for bug
	  #131925. Thanks to Christian Heim for this patch.

2006-05-15 12:50  antarus

	* bin/emerge: Fix for bug 133363, thanks to <world.root@gmail.com>
	  for reporting.

2006-05-15 04:25  zmedico

	* pym/portage.py: Fix a typo from r3357.

2006-05-15 04:20  zmedico

	* pym/portage.py: Add back the rstrip(os.path.sep) which is needed
	  in the case where ROOT=/ (regression from r3356).

2006-05-15 03:06  zmedico

	* pym/portage.py: Revert the performance optimization from r3355 in
	  favor of maximum robustness.

2006-05-15 02:40  zmedico

	* pym/portage.py: Ensure that ${ROOT} is normalized for bug #90444.

2006-05-15 02:27  zmedico

	* pym/portage.py: Remove unnecessary and time consuming normpath
	  call for bug #90444.

2006-05-14 21:42  zmedico

	* pym/portage.py: Ensure a sane global umask for bug #133307
	  (regression from r3228).

2006-05-14 21:07  antarus

	* pym/portage_data.py: Wheel != secpass=1, so kill it. Wheel grants
	  you nothing wrt portage perms.

2006-05-14 13:42  vapier

	* bin/prepstrip: strip leading slash in output

2006-05-14 13:40  vapier

	* bin/isolated-functions.sh: you have to quote $@ or things can
	  break

2006-05-14 12:08  zmedico

	* pym/cache/flat_hash.py: Use iteritems() instead of items()
	  because an iterator uses less memory.

2006-05-14 11:39  zmedico

	* pym/cache/flat_hash.py: Write raw bytes instead of attempting to
	  encode as utf-8 for bug #133287.

2006-05-14 07:07  zmedico

	* pym/portage.py: Make portdbapi._init_cache_dirs() obey
	  self.depcachedir.

2006-05-14 06:24  zmedico

	* pym/portage.py: Make portdbapi obey self.depcachedir instead of
	  using portage_const.DEPCACHE_PATH directly.

2006-05-13 22:19  zmedico

	* bin/emerge: Allow `emerge --metadata` and `emerge --regen` for
	  users in the portage group(bug #133157).

2006-05-12 22:39  zmedico

	* man/portage.5: s/DEPEND atoms/package atoms/ for better wording

2006-05-12 21:40  zmedico

	* pym/portage.py: Make /etc/portage/bashrc relative to
	  PORTAGE_CONFIGROOT.

2006-05-12 21:13  zmedico

	* man/portage.5: Add some documentation for /etc/portage/modules
	  and metadata_overlay.

2006-05-12 18:41  zmedico

	* pym/portage.py: Revert r3339 because r3301 makes it unnecessary.
	  See bug #133055.

2006-05-11 23:54  antarus

	* bin/emerge: Minor 1 liner for bug 131657

2006-05-11 19:46  antarus

	* pym/portage.py: Fix bug 113055, Binpkg's need SLOT in mysettings

2006-05-10 03:52  zmedico

	* pym/portage.py: Neglect EOFError during mtimedb loading since
	  this error seems to be common when the mtimedb has been
	  corrupted.

2006-05-10 02:39  vapier

	* pym/portage.py, pym/portage_const.py: remove unused STICKIES
	  variable

2006-05-10 00:31  zmedico

	* bin/emerge: Only adjust priority for PORTAGE_NICENESS on the
	  first run for bug #132739.

2006-05-09 02:08  vapier

	* bin/ebuild.sh: slightly easier test to read for DISTDR/unpack
	  check

2006-05-08 20:26  zmedico

	* pym/portage.py: Use os.path.realpath instead of
	  portage.abssymlink to resolve /etc/make.profile because
	  abssymlink throws an OSError: [Errno 22] Invalid argument
	  exception when repoman passes in an absolute profile path that
	  isn't a symlink.

2006-05-08 17:55  zmedico

	* bin/ebuild.sh: Give a less confusing error message when unpack()
	  arguments begin with ${DISTDIR}. Thanks to Flameeyes for
	  reporting.

2006-05-08 07:48  zmedico

	* pym/portage.py: Prevent a TypeError exception when the
	  /etc/make.profile symlink is broken on nonexistent.

2006-05-08 06:24  zmedico

	* pym/portage.py: Catch FileNotFound exception and print a message
	  when a file listed in the Manifest could not be found.

2006-05-08 01:28  zmedico

	* bin/ebuild.sh, pym/portage.py: Move the fake $HOME that's used
	  for ebuilds from $PORTAGE_TMPDIR/portage/homedir to
	  $PORTAGE_BUILDDIR/homedir so that each build has a unique $HOME
	  for bug #130395.

2006-05-07 20:36  zmedico

	* pym/cache/metadata.py: Fix a potential NameError due to 'cpv'
	  being undefined in the namespace and also fix a potential
	  AttributeError due to an attempt to call reconstruct_eclasses()
	  on a dict object that has already been reconstructed in
	  flat_hash.database._parse_data().

2006-05-07 19:01  zmedico

	* pym/cache/flat_hash.py: Properly encode metadata strings as utf-8
	  in order to avoid "UnicodeEncodeError: 'ascii' codec can't encode
	  character" exception when
	  given a unicode string.

2006-05-07 06:54  zmedico

	* pym/cache/flat_hash.py: Replace inappropriate use of writelines
	  with normal write.

2006-05-06 18:37  zmedico

	* pym/portage.py: Fix portage.config handling of ROOT and
	  PORTAGE_CONFIGROOT for bug #132442.

2006-05-06 13:23  genone

	* bin/emerge: make rsync variable messages a bit less inviting

2006-05-06 11:52  zmedico

	* pym/portage.py: Catch a KeyError and report a missing digest for
	  bug #132410.

2006-05-06 02:34  zmedico

	* pym/cache/metadata.py: Remove the uppercase requirement on
	  flat_hash metadata keys so that _eclasses_ will work. This is
	  equivalent to the patch by Brian Harring that went into 2.0.54-r2
	  for forward compatibility with planned changes in the rsync
	  metadata cache.

2006-05-06 02:11  zmedico

	* pym/portage.py: Obey self.incrementals in config.regenerate()
	  instead of using portage_const.INCREMENTALS directly.

2006-05-05 21:04  zmedico

	* bin/emerge: Catch a KeyError and notify the user of a missing
	  digest for bug #132373.

2006-05-05 18:10  zmedico

	* pym/portage.py: Reimplement the fix for bug #79566 more cleanly
	  (the -* hack seems quite non-intuitive).

2006-05-04 18:00  zmedico

	* bin/ebuild.sh: Fix some small typos in ebuild.sh for bug #86151.
	  Thanks to Yoshino for this patch.

2006-05-04 10:15  zmedico

	* pym/portage.py: Make sure that cloned FEATURES are correctly
	  preserved by getting them directly from the backupenv instead of
	  going through the lookuplist (Bug #132196).

2006-05-04 02:44  zmedico

	* pym/portage.py, pym/portage_manifest.py: Bring back
	  FEATURES="assume-digests" for bug #132182.

2006-05-03 23:00  zmedico

	* bin/ebuild.sh: Improve the error message when an eclass is not
	  found and remove unnecesary ERRORMSG variable.

2006-05-03 19:02  zmedico

	* pym/cache/util.py: Catch an uncaught CacheCorruption for the
	  traceback from bug #126692.

2006-05-03 17:07  blubb

	* bin/ebuild: readd not-so pointless if statement

2006-05-02 19:29  blubb

	* bin/ebuild: remove pointless if statement

2006-05-02 18:53  blubb

	* man/ebuild.5: best_version doesn't return different codes
	  depending on whether it found a match or not, it's has_version;
	  bug 130655

2006-05-02 17:54  blubb

	* bin/clean_locks: catch ENOENT and ENOTDIR in clean_locks to
	  prevent ugly tracebacks; bug 124164

2006-05-02 16:10  blubb

	* bin/prepstrip: use hasq where appropriate

2006-05-02 13:15  blubb

	* pym/emergehelp.py: let 'emerge -h world' print a nice help
	  message powered by antarus; bug 67448

2006-05-02 13:08  blubb

	* pym/output.py: use escaping code that works for mrxvt too; thanks
	  to nelchael for the patch; bug 117509

2006-05-02 09:31  blubb

	* bin/ebuild.sh: revert rev 3300 as it has various issues and
	  doesn't fully solve the problem

2006-05-02 06:22  zmedico

	* pym/portage.py: Migrate old digest-* code in portage.fetch() to
	  be Manifest2 compatible.

2006-05-02 06:11  zmedico

	* pym/portage.py: fix a typo from the last revision

2006-05-02 06:10  zmedico

	* pym/portage.py: Properly join CUSTOM_MIRRORS_FILE with
	  PORTAGE_CONFIG_ROOT in portage.fetch().

2006-05-02 05:09  zmedico

	* pym/portage.py: Remove an extra aux_get call in doebuild and
	  combine it with another aux_get call in doebuild_environment.

2006-05-01 22:41  blubb

	* bin/ebuild.sh: don't let profile.env overwrite variables that are
	  already set; bug 130229

2006-05-01 22:13  zmedico

	* pym/cache/sqlite.py: Add a new sqlite cache module (one I wrote)
	  that has acceptable performance.

2006-05-01 21:54  zmedico

	* pym/cache/sqlite.py: Remove sqlite.py because it's performance is
	  unacceptable and it is therefore useless.

2006-05-01 21:33  blubb

	* bin/doexe, bin/doins, bin/doman, bin/prepall, bin/prepalldocs,
	  bin/prepallinfo, bin/prepallman, bin/prepinfo, bin/preplib,
	  bin/prepman, bin/prepstrip: replace hardcoded
	  /usr/lib/portage/bin with PORTAGE_BIN_PATH, defaulting to the
	  hardcoded value

2006-05-01 21:12  blubb

	* bin/doexe, bin/doins, bin/doman, bin/ebuild.sh,
	  bin/isolated-functions.sh, bin/misc-functions.sh, bin/prepall,
	  bin/prepalldocs, bin/prepallinfo, bin/prepallman, bin/prepinfo,
	  bin/preplib, bin/prepman, bin/prepstrip: make portage shut up if
	  --quiet is given; bug 62273

2006-05-01 18:51  blubb

	* bin/emaint, bin/repoman: revert my last commit except for the
	  parts i really wanted to commit

2006-05-01 18:34  blubb

	* bin/emaint, bin/isolated-functions.sh, bin/repoman: allow
	  escaping in elog_base() to fix bug 131913

2006-05-01 10:09  zmedico

	* pym/portage.py: Don't skip regenerate() because leads to 'Problem
	  resolving dependencies' from emerge. Thanks to swegener for
	  reporting.

2006-05-01 07:29  zmedico

	* bin/emerge, pym/portage.py: Make sure that emerge really removes
	  noauto from FEATURES for bug #131820.

2006-05-01 04:25  zmedico

	* pym/portage.py: Initial PORTAGE_CONFIGROOT support in the
	  portage.config class for bug #73350.

2006-04-30 16:06  antarus

	* pym/emergehelp.py, pym/portage_data.py: Add cfg-update to the
	  list of happy config file managers.

2006-04-30 14:17  solar

	* bin/misc-functions.sh: - People have started RESTRICTing
	  "stricter", which we would like to discourage. bug 131779
	  (kevquinn)

2006-04-30 14:16  solar

	* bin/prepstrip: - be sure to remove o+w bits on debug files

2006-04-30 11:57  zmedico

	* pym/portage.py: Pass a vartree instance into portage.unmerge() to
	  avoid globals.

2006-04-30 11:43  zmedico

	* pym/portage.py: Handle the doebuild's unmerge phase before
	  setting up logfile because unmerge doesn't use the log.

2006-04-30 11:38  zmedico

	* pym/portage.py: Avoid global db usage in doebuild() except when
	  absolutely necessary.

2006-04-30 11:00  zmedico

	* pym/emergehelp.py, pym/portage_data.py: Update portage config
	  update messages to mention dispatch-conf (in addition to
	  etc-update). Thanks to genstef for reporting this.

2006-04-30 09:08  zmedico

	* pym/portage.py: Print disfiles file names for bug #131774. I've
	  removed the [ OK ] from okaymsg because the wink makes it
	  redundant.

2006-04-30 08:39  vapier

	* pym/portage.py: retain important historical aspects of the
	  checksum messages

2006-04-30 08:38  zmedico

	* bin/ebuild.sh, bin/misc-functions.sh, pym/portage.py: Add
	  PORTAGE_BIN_PATH and PORTAGE_PYM_PATH to the enviroment and use
	  them to replace hard coded paths in ebuild.sh and
	  misc-functions.sh.

2006-04-30 08:02  zmedico

	* pym/output.py, pym/portage.py: Print [ OK ] messages (like eend)
	  when checksums are good. Thanks to fox2mike for suggesting this.

2006-04-29 16:49  antarus

	* bin/emerge: Remove 4 year old cvs sync code, fix login around
	  spawn, fix random raise

2006-04-29 11:58  zmedico

	* pym/portage.py: Remove all usage of the portage.root global from
	  portage.py.

2006-04-29 11:41  zmedico

	* pym/portage.py: Add a portage.config.selinux_enabled() accessor
	  and use it to remove all global usage of portage.selinux_enabled.

2006-04-29 10:33  zmedico

	* pym/portage.py: Prevent a NameError in commit_mtimedb() when the
	  portage.mtimedb attribute does not exist.

2006-04-29 10:16  zmedico

	* pym/portage.py: Move the legacy global initializations into a
	  function and allow them to be disabled via an experimental
	  PORTAGE_LEGACY_GLOBALS environment variable.

2006-04-29 08:53  zmedico

	* pym/portage.py: Pass mtimes through doebuild(), into
	  dblink.merge(), and finally to env_update().

2006-04-29 08:11  zmedico

	* pym/portage.py: Return early from portage.commit_mtimedb() when
	  mtimedb is None.

2006-04-29 08:04  zmedico

	* pym/portage.py: Enable portage.commit_mtimedb() to work without
	  globals.

2006-04-29 05:12  zmedico

	* pym/portage.py: Enable portage.pkgmerge() to work without
	  globals.

2006-04-29 04:47  zmedico

	* pym/portage.py: Enable portage.dep_zapdeps() to work without
	  globals.

2006-04-29 02:42  zmedico

	* pym/portage.py: Enable portage.env_update() to work without
	  globals.

2006-04-29 01:09  zmedico

	* bin/ebuild.sh: In the clean phase, for maximum chflags
	  portablility, make *unlnk flags optional and drop the USERLAND
	  test (bug #113536).

2006-04-29 00:40  zmedico

	* pym/portage.py, pym/portage_manifest.py: Catch Permission Denied
	  errors during manifest/digest generation for bug #131073.

2006-04-28 23:22  zmedico

	* bin/repoman: Fix PORTAGE_GPG_DIR handling so that ~/.gnupg/ works
	  correctly like the Manifest Signing Guide says it should. Thanks
	  to Tupone for reporting.

2006-04-28 21:46  zmedico

	* bin/emerge: Fix spelling of "hierarchy" for bug #131582 and raise
	  an exception for cleaner error handling.

2006-04-28 12:12  zmedico

	* pym/portage.py: Remove global db usage from portdbapi.gvisible().

2006-04-28 11:57  zmedico

	* bin/emerge: Only trigger the 'Using system located in ROOT'
	  message when ROOT!=/.

2006-04-28 11:41  zmedico

	* pym/portage.py: Remove global db usage from
	  portage.config.regenerate().

2006-04-28 11:06  zmedico

	* bin/emerge: Fix a typo from r3245.

2006-04-28 10:54  zmedico

	* pym/portage.py: Disable the FEATURES=cvs part of r3251 because it
	  prevents missing files from bein fetched when they need to be.

2006-04-28 10:35  zmedico

	* pym/portage.py: Make portage.vardbapi able to work without any
	  global variables.

2006-04-28 03:03  zmedico

	* bin/emerge, bin/fixpackages, pym/portage.py: Fix
	  portage.global_updates() and portage.do_vartree() so they don't
	  have to use any globals.

2006-04-27 22:26  zmedico

	* pym/portage.py: Remove usage of the portage.thirdpartymirrors
	  global variable.

2006-04-27 13:50  zmedico

	* pym/portage.py: Make FEATURES=cvs cause all distfiles to be
	  fetched if necessary (just like `ebuild digest`) and update the
	  code for Manifest2.

2006-04-27 09:16  zmedico

	* pym/portage.py: Only use one global statement to avoid bogus
	  python syntax warning.

2006-04-27 08:50  zmedico

	* pym/portage.py: Pass in mydbapi and vartree where relevant for
	  all doebuild calls in portage.py and add necessary support to
	  merge() and the dblink class.

2006-04-27 08:35  blubb

	* cnf/make.conf: escape $ in PORTAGE_ELOG_MAILSUBJECT; bug 131373

2006-04-27 06:02  zmedico

	* pym/portage.py: Add an option vartree parameter to doebuild(),
	  merge(), and the dblink constructor so that they don't have to
	  use globals.

2006-04-27 04:23  zmedico

	* pym/portage.py: Add optional mydbapi parameter to doebuild() so
	  that it doesn't have to use any globals.

2006-04-26 22:10  zmedico

	* bin/emerge, bin/repoman, pym/portage.py, pym/portage_manifest.py:
	  Make fetchlist_dict an optional parameter in the Manifest
	  constructor since it's required only for generation of a Manifest
	  (not needed for parsing and checking sums).

2006-04-26 10:56  zmedico

	* bin/repoman, pym/portage.py: Pass a portdbapi instance into
	  portage.digestgen() so that it doesn't have to use any globals.

2006-04-26 10:27  zmedico

	* bin/emerge, bin/repoman, pym/portage.py: Pass a portdbapi
	  instance into the FetchlistDict constructor so that it doesn't
	  have to use any globals.

2006-04-26 09:33  zmedico

	* pym/portage.py: Group together and clearly mark some deprecated
	  globals.

2006-04-26 09:14  zmedico

	* pym/portage.py: Move PORTAGE_MASTER_PID and BASH_ENV from global
	  scope to the doebuild_environment() function.

2006-04-26 08:19  zmedico

	* bin/repoman: Use the correct ACCEPT_KEYWORDS for each profile
	  (regression from r3231).

2006-04-26 04:08  zmedico

	* pym/portage.py: Remove portage.config.root (from r3229) and just
	  use config["ROOT"] to eliminate redundancy.

2006-04-26 03:36  zmedico

	* bin/repoman, pym/portage.py: Remove portage.config.groups
	  (formerly portage.groups) and instead use ACCEPT_KEYWORDS
	  directly (simplifies the code).

2006-04-26 02:04  zmedico

	* pym/portage.py: Fix portdbapi.aux_get(), findname2(), and
	  getfetchlist() so that the tree can be overridden by the caller
	  if necessary (ensures that metadata is pulled from the correct
	  tree when generating a manifest).

2006-04-25 21:24  zmedico

	* bin/repoman: Fix false variable.readonly match on continued
	  lines. Thanks to Flameeyes for reporting.

2006-04-25 20:33  zmedico

	* bin/emerge: Validate the resume merge list in --ask and --pretend
	  mode for bug #128455.

2006-04-25 19:38  zmedico

	* pym/portage.py: Make copies of the groups attribute before
	  modifying (regression from r3231).

2006-04-25 10:55  zmedico

	* bin/emerge, bin/repoman, pym/portage.py: Remove all dependence on
	  the portage.features global variable.

2006-04-25 10:08  zmedico

	* bin/repoman, pym/portage.py: Remove all usage of the
	  portage.archlist global variable.

2006-04-25 09:36  zmedico

	* bin/repoman, pym/portage.py: Remove all usage of the
	  portage.groups global variable.

2006-04-25 08:45  zmedico

	* bin/repoman, pym/portage.py: Remove all usage of
	  portage.usedefaults and portage.profiledir globals.

2006-04-25 07:46  zmedico

	* pym/portage.py: Move portage.root logic from global scope into
	  the portage.config class.

2006-04-25 06:58  zmedico

	* pym/portage.py: Move initialization of tmp, var/tmp,
	  var/lib/portage, and var/cache/edb from global scope to
	  portage.cofig._init_dirs().

2006-04-25 05:42  zmedico

	* pym/portage.py: Move cache dir initialization from global scope
	  to the portdbapi class.

2006-04-25 05:20  vapier

	* bin/sed: enable +x bits on sed

2006-04-25 05:11  zmedico

	* pym/portage.py: Move USER_VIRTUALS_FILE deprecation warning to
	  config.validate().

2006-04-25 04:40  zmedico

	* pym/portage.py: Split a config.validate() method and move
	  PORTAGE_TMPDIR sanity check to doebuild.

2006-04-25 04:04  zmedico

	* pym/portage.py: Move the make.profile symlink warning from global
	  scope to the config class.

2006-04-25 03:48  zmedico

	* pym/portage.py: Catch IOError when loading the mtimedb.

2006-04-25 03:42  zmedico

	* pym/portage.py: Move ACCEPT_KEYWORDS and PORTAGE_ARCHLIST
	  validation from global scope to the config class.

2006-04-25 03:13  zmedico

	* pym/portage.py: Move the mtimedb initialization code from global
	  scope to a function.

2006-04-25 01:44  zmedico

	* bin/emerge: Catch ValueError from cpv_expand for bug #131160.

2006-04-24 23:20  zmedico

	* pym/portage.py: Add a note concerning the separation of legacy
	  global initializations.

2006-04-24 22:35  zmedico

	* pym/portage.py: For better organization, migrate the
	  initialization of all major globals in portage.py to the bottom
	  of the file.

2006-04-24 22:03  zmedico

	* pym/portage.py: Make sure usage of portage.db and portage.mtimedb
	  is appropriately marked as global.

2006-04-24 21:50  zmedico

	* pym/portage.py: Make sure a usage of portage.settings is marked
	  as global.

2006-04-24 20:58  zmedico

	* pym/portage.py: Use tree="vartree" for prerm, postrm, and cleanrm
	  phases (see bug #131116).

2006-04-24 20:44  zmedico

	* pym/portage.py: Use one aux_get call instead of 2.

2006-04-24 12:37  zmedico

	* pym/portage.py: Use local myroot instead of portage.root global.

2006-04-24 11:29  zmedico

	* pym/portage.py: Replace finddigest usage with Manifest2
	  compatible code.

2006-04-24 10:41  zmedico

	* pym/portage.py: Pass a dbapi instance into doebuild_environment
	  so that it doesn't need to access the global db directly.

2006-04-24 10:29  zmedico

	* pym/portage.py: Remove a possibly unecessary try statement that
	  may swallow important exceptions.

2006-04-24 09:56  zmedico

	* pym/portage.py: Replace usage of global portage.settings with
	  self.mysettings instead.

2006-04-24 08:56  zmedico

	* pym/portage.py: Fix accidental usage of global settings instead
	  of self.

2006-04-24 00:36  zmedico

	* pym/portage.py: Do lazy initialization of
	  portage.db[root][porttree] and db[root][vartree] for quicker
	  portage import.

2006-04-24 00:08  zmedico

	* pym/portage.py: Move thirdpartymirrors stacking out of global
	  scope.

2006-04-23 23:19  zmedico

	* bin/emerge, pym/portage.py: Move deprecated profile check out of
	  global scope.

2006-04-23 23:02  antarus

	* bin/emerge: Minor emerge -V/--info fixes thanks to iggy, use
	  portage_const PROFILE_PATH

2006-04-23 22:15  zmedico

	* pym/portage.py, pym/portage_versions.py: Move endversion and
	  endversion_keys to portage_versions and import them for backward
	  compatibility.

2006-04-23 20:52  zmedico

	* bin/emerge, bin/fixpackages, pym/portage.py: Move
	  portage.global_updates() invocation out of portage.py and into
	  emerge/fixpackages where it belongs.

2006-04-23 16:36  antarus

	* bin/sed: Make sed wrapper not executable. Currently the wrapper
	  is installed via doexe in the ebuild from and gets the +x bit set
	  properly. I don't think we have any SVN users on BSD or Darwin.
	  In the future this wrapper will get installed automagically by
	  the ebuild ( it being in bin ) but will only be set executable on
	  non GNU platforms.

2006-04-23 15:55  antarus

	* bin/sed: Fix sed breakage for people with weird PATH, fix tabs.
	  Thanks to Flameeyes once again.

2006-04-23 14:31  blubb

	* bin/sed: set executable bit for sed-wrapper

2006-04-23 07:56  vapier

	* bin/emerge: tighten up output in pretend mode

2006-04-23 07:47  vapier

	* bin/emerge: fixup clean output

2006-04-23 07:26  vapier

	* bin/emerge: space arguments

2006-04-23 07:23  zmedico

	* pym/portage_manifest.py: Fix FileNotFound error when
	  ignoreMissing=True for bug #130928.

2006-04-23 06:34  zmedico

	* pym/portage_manifest.py: Replace hard coded "size" with
	  MANIFEST1_HASH_FUNCTIONS.

2006-04-23 06:22  zmedico

	* pym/portage_manifest.py: Remove bogus "size" manifest entries
	  reported by vapier.

2006-04-22 20:12  antarus

	* bin/sed: Add copyright header, thanks to Zac Medico for pointing
	  that out for me

2006-04-22 20:08  antarus

	* bin/sed: A sed wrapper for OSX/BSD courtesy of Flameeyes and
	  Spanky

2006-04-22 19:46  zmedico

	* bin/misc-functions.sh: Disable sandbox during package phase
	  interaction with $PKGDIR for compatibility with symlinks (See bug
	  #130824).

2006-04-22 01:10  zmedico

	* bin/clean_locks: Print the actual DISTDIR location in the help
	  ouput of clean_locks for bug #116676.

2006-04-22 00:59  zmedico

	* bin/emerge: s/Do you want me/Would you like/g for bug #112439.

2006-04-22 00:15  zmedico

	* bin/emerge: Exit with error status when the user has attempted to
	  unmerge a package that is not installed (bug #118515).

2006-04-21 22:34  zmedico

	* pym/portage.py: Fix partial download size calculation for bug
	  #116796.

2006-04-21 19:07  zmedico

	* bin/emerge, pym/portage_manifest.py: Fix `emerge -s` download
	  size calculation for bug #130750.

2006-04-21 06:40  zmedico

	* pym/portage.py: Implement portage.config.get() in order to
	  provide more of the standard mapping interface.

2006-04-21 05:50  zmedico

	* bin/repoman: Use os.path.join for PORTAGE_GPG_DIR and remove a
	  duplicate access check.

2006-04-20 23:19  vapier

	* bin/repoman: if PORTAGE_GPG_DIR is not set then default to
	  ~/.gnupg instead of just dumping an error

2006-04-20 20:13  zmedico

	* bin/repoman: Fix repoman --commitmsgfile logic. Thanks to
	  Christian Heim <phreak@gentoo.org> for reporting.

2006-04-20 18:06  zmedico

	* bin/isolated-functions.sh, pym/portage_const.py: Add and "other"
	  EBUILD_PHASE for bug #127585. Thanks to Patrick Avery
	  <pyromancer@gmail.com> for this patch.

2006-04-20 05:48  zmedico

	* bin/repoman: Update Manifest automatically in repoman commit mode
	  for bug #130541.

2006-04-19 04:52  vapier

	* bin/ebuild.sh: support *.bz #130406

2006-04-18 22:54  vapier

	* bin/etc-update: use just [[...]] instead of ((...)); especially
	  when dealing with user input

2006-04-18 11:10  zmedico

	* man/ebuild.5: s/GENTOO_MIRRORs/GENTOO_MIRRORS/

2006-04-18 09:56  zmedico

	* bin/repoman: Fix gpgsign logic for bug #57445.

2006-04-18 04:17  zmedico

	* pym/portage.py: Implement portage.config.setdefault() in order to
	  provide more of the standard mapping interface.

2006-04-17 19:57  zmedico

	* pym/portage_manifest.py: Ignore ENOENT errors when $FILESDIR
	  doesn't exist. Thanks to Christian Heim for reporting.

2006-04-17 07:38  vapier

	* bin/repoman: dont dump debug update info in quiet mode

2006-04-17 02:52  zmedico

	* pym/portage_manifest.py: Avoid rewritting the Manifest whenever
	  possible by comparing the existing manifest entries to the ones
	  that will be written.

2006-04-16 21:43  blubb

	* pym/emergehelp.py: touchup emerge --help: reorder and wrap lines.
	  credit goes to Benno Schulenberg; bug 121528

2006-04-16 21:29  blubb

	* pym/emergehelp.py: sync short options with the rest of emerge
	  --help; bug 124489

2006-04-16 21:16  blubb

	* bin/emerge: add instructions how to update portage when --sync
	  tells you to do so; bug 118715

2006-04-16 18:13  blubb

	* bin/misc-functions.sh: make misc-functions.sh executable as it's
	  called directly from the python side

2006-04-16 17:44  blubb

	* bin/misc-functions.sh: fix misuse of 'cat'

2006-04-16 04:50  vapier

	* bin/clean_locks: eat whitespace

2006-04-16 01:41  vapier

	* bin/misc-functions.sh: use a temp file but this time cut out the
	  duplicate calls to `find`

2006-04-16 01:17  zmedico

	* bin/misc-functions.sh: Make find arguments portable for bug
	  #129935 and remove temp file usage for bug #121368.

2006-04-15 23:05  zmedico

	* pym/portage_util.py: Override LazyItemsDict.update() so that it
	  works correctly with other instances of LazyItemsDict.

2006-04-15 19:29  vapier

	* bin/ebuild.sh: touchup syntax and dont execute the loop as many
	  times

2006-04-15 19:23  blubb

	* bin/ebuild.sh: use strip_duplicate_slashes instead of "for 1 2 3
	  do var=${var/\/\///}"

2006-04-15 19:16  blubb

	* bin/ebuild.sh: remove all unneeded slashes, not only // or ///

2006-04-15 18:42  blubb

	* bin/doexe, bin/dojar, bin/ebuild.sh, bin/etc-update,
	  bin/find-requires, bin/isolated-functions.sh,
	  bin/misc-functions.sh, bin/prepalldocs, bin/prepinfo,
	  bin/quickpkg: `` must die

2006-04-15 18:11  blubb

	* bin/ebuild.sh: some more hasq fixes

2006-04-15 18:01  blubb

	* bin/ebuild.sh: use has instead of bloated bash constructs

2006-04-15 12:10  blubb

	* bin/ebuild.sh: fix typo from rev 3151

2006-04-15 12:08  blubb

	* bin/ebuild.sh: only move $T/environment if it exists; bug 64926

2006-04-15 11:17  zmedico

	* pym/portage_manifest.py: Split out a reusable
	  Manifest._readManifest() method.

2006-04-15 05:26  zmedico

	* pym/portage.py, pym/portage_util.py: Add singleton support to
	  LazyItemsDict to make it easier to use with arbitrary function
	  calls.

2006-04-14 21:39  zmedico

	* pym/portage.py: Catch fetch_check FileNotFound exceptions for bug
	  #129962.

2006-04-14 11:03  zmedico

	* pym/portage.py: Run chflags only when needed for bug #129852.
	  Thanks to Diego Pettenò for the patch.

2006-04-14 10:00  zmedico

	* pym/portage.py: Preserve the mysettings["SLOT"] for bug #129720.

2006-04-14 08:51  zmedico

	* pym/portage.py: Fix a typo from the last revision.

2006-04-14 08:01  zmedico

	* pym/portage.py: Fix collision-protect logic so the correct cpv is
	  used for slot comparison.

2006-04-14 06:30  zmedico

	* pym/portage.py, pym/portage_util.py: Add an initial_items
	  parameter to the LazyItemsDict constructor in order to facilitate
	  integration with existing dict based code.

2006-04-13 21:59  zmedico

	* pym/portage.py, pym/portage_manifest.py: Fix digestcheck logic
	  for bug #129839.

2006-04-13 17:59  blubb

	* bin/etc-update: exit if user hits the cancel button in dialog
	  mode; bug 108137

2006-04-13 17:38  blubb

	* bin/etc-update: don't declare input as integer, or etc-update
	  will crash whenever the user enters some non-integer value; bug
	  55082

2006-04-13 16:49  blubb

	* bin/etc-update: ignore backup files when scanning for
	  ._cfg????_*; bug 121401

2006-04-13 16:19  blubb

	* bin/etc-update: don't display the ._cfg???? files anymore but
	  instead the number of updates for each file; bug 69845

2006-04-13 05:39  vapier

	* bin/emerge: fixes by solar for ROOT output when unmerging #129649
	  and make --quiet output a bit more useful

2006-04-13 03:50  zmedico

	* pym/portage.py, pym/portage_manifest.py: Fix manifest/digest
	  generation logic for bug #129737.

2006-04-12 09:52  zmedico

	* pym/portage.py: Use LazyItemsDict to avoid a vdb scan during
	  portage import when autouse is enabled.

2006-04-12 03:45  zmedico

	* pym/portage.py: Use cannonical paths for portdb.portrees to
	  ensure that, given pkgdir, FetchlistDict can determine the
	  correct path for the portage tree.

2006-04-12 02:46  zmedico

	* pym/portage.py, pym/portage_util.py: Create a generic
	  portage_util.LazyItemsDict and use it for lazy initialization
	  portage.db[root] items.

2006-04-11 21:11  zmedico

	* bin/dispatch-conf, bin/etc-update: Revert r3129 and r3130 because
	  they don't solve bug #129515.

2006-04-11 19:59  zmedico

	* pym/portage.py: Fix LazyDatabasesDict so that databases only need
	  to be created once.

2006-04-11 09:29  zmedico

	* bin/etc-update: Make etc-update play nice with symlinks for bug
	  #129515. Thanks to Patrick McLean for the initial patch.

2006-04-11 08:58  zmedico

	* bin/dispatch-conf: Make dispatch-conf play nice with symlinks for
	  bug #129515. Thanks to Patrick McLean for the initial patch.

2006-04-11 06:49  zmedico

	* pym/portage.py: Make qmerge imply noclean for bug #129559.

2006-04-11 05:34  zmedico

	* pym/portage.py: Implement lazy construction of global databases
	  db[root]["porttree"] and db[root]["bintree"] and automatically
	  populate
	  db[root]["bintree"] on access.

2006-04-11 04:12  zmedico

	* pym/portage.py: Support EBUILD_PHASE during more phases for bug
	  #129244.

2006-04-11 03:54  zmedico

	* bin/ebuild.sh, pym/portage.py: Support EBUILD_PHASE during
	  package and rpm phases for bug #129244.

2006-04-11 03:20  zmedico

	* pym/portage.py: Remove dead code from portage.digestcheck().

2006-04-11 03:02  zmedico

	* pym/portage.py: Remove the "db" parameter from digestcheck()
	  because it's not needed.

2006-04-11 02:57  zmedico

	* pym/portage.py: Remove the "db" parameter from digestParseFile()
	  because it's not needed.

2006-04-11 02:50  zmedico

	* pym/portage.py: Remove the "db" parameter from digestgen()
	  because it's not needed.

2006-04-11 01:51  zmedico

	* pym/portage.py: Fix FetchlistDict.keys() so it does the same
	  porttrees trick as __getitem__.

2006-04-11 01:37  zmedico

	* pym/portage.py: Fix FetchlistDict so usage of global portdb
	  leaves portdb.porttrees intact.

2006-04-11 00:53  vapier

	* bin/misc-functions.sh: kill off custom bash hacks and replace
	  with calls to find/xargs #121368

2006-04-10 12:07  jstubbs

	* pym/portage.py: Ensure that binarytree.populate is called even
	  when the first access is
	  via binarytree.dbapi.{aux_get,match}.

2006-04-10 08:51  zmedico

	* bin/repoman: Use os.path.join for cleaner joins.

2006-04-10 07:44  zmedico

	* bin/repoman: Make repoman ignore deeply nested CVS directories
	  and files they contain in order to prevent false file.name errors
	  (files with CVS directories may contain commas).

2006-04-10 04:38  zmedico

	* pym/portage.py: Add docstrings for FetchlistDict.

2006-04-10 04:28  zmedico

	* pym/portage.py: Simplify the porttrees logic for FetchlistDict.

2006-04-10 04:17  zmedico

	* pym/portage_manifest.py: Remove unnecessary calls to dict.keys()
	  from portage_manifest.

2006-04-10 03:37  zmedico

	* bin/repoman, pym/portage.py, pym/portage_manifest.py: Remove db
	  and mysettings from Manifest and replace them with a mapping
	  object that provides access to fetch lists for each cpv.

2006-04-10 01:42  zmedico

	* bin/repoman, pym/portage.py, pym/portage_manifest.py: Pass
	  DISTDIR into the Manifest constructor instead of getting it from
	  mysettings because mysettings will be eliminated soon.

2006-04-09 22:18  zmedico

	* pym/portage_checksum.py, pym/portage_manifest.py: Remove
	  dependency on the core portage module from portage_manifest.

2006-04-09 20:28  vapier

	* bin/dosym: simpler dosym to make mr bones happy

2006-04-09 09:10  zmedico

	* pym/portage.py: Remove dead code from portage.digestParseFile().

2006-04-09 09:00  zmedico

	* pym/portage.py, pym/portage_manifest.py: Encapsulate type
	  guessing logic in a new Manifest method.

2006-04-09 08:28  zmedico

	* pym/portage_checksum.py: For compatibility, return a tuple of 3
	  when an OSError is raised in portage_checksum.verify_all()

2006-04-09 04:50  zmedico

	* pym/portage.py: Move mf.create out of a loop because it should
	  only need to be called once.

2006-04-09 04:37  zmedico

	* pym/portage_manifest.py: Supply missing parameters to a
	  checkFileHashes call.

2006-04-08 10:11  zmedico

	* NEWS, bin/mirror.py: Remove bin/mirror.py because, according to
	  Brian Harring, it's obsoleted by mirror-dist.

2006-04-08 09:52  zmedico

	* pym/portage_contents.py: Remove pym/portage_contents.py because
	  it's not used. Thanks to Brian Harring for noticing.

2006-04-08 09:49  zmedico

	* pym/dcdialog.py: Remove pym/dcdialog.py because it's not used.
	  Thanks to antarus for noticing.

2006-04-08 09:45  zmedico

	* pym/portage_manifest.py, pym/portage_update.py: Add copyright
	  headers for portage_update and portage_manifest.

2006-04-08 08:16  zmedico

	* pym/cache/anydbm.py: Fix some minor issues with the anydbm cache
	  module. Thanks to Halcyon for reporting.

2006-04-08 07:18  zmedico

	* bin/emerge: Remove redundant "please tell me what to do" code,
	  which is now handled earlier.

2006-04-08 06:26  zmedico

	* bin/emerge: Fix myaction logic so that --resume works (with
	  --pretend) for non-root users.

2006-04-08 03:01  jstubbs

	* pym/portage.py: Protect string indexes during input stripping in
	  dep_getkey and dep_getcpv.
	  Bug #129193

2006-04-07 22:44  zmedico

	* bin/emerge: Fix myaction logic (myaction==None is actually valid,
	  regression from r3090).

2006-04-07 22:38  vapier

	* pym/portage.py: remove reference to a script that doesnt exist

2006-04-07 19:11  antarus

	* bin/emerge: Fix this random y that was in the last commit...I
	  blame nano :P

2006-04-07 19:02  antarus

	* bin/emerge: Fix a regression in security handling, emerge with no
	  options should print out helpful information, not tell you you
	  need to be root ;)

2006-04-07 16:55  antarus

	* bin/emerge: Thanks to jforman for finding this one, emerge was
	  not helpful when permissions on the world file are not so good,
	  so in the case of permission denied, we reraise, essentially
	  telling the user we can't read the world file. In the case of it
	  not existing, we assume the user knows what they are doing and we
	  print a squelchable warning message.

2006-04-07 09:39  zmedico

	* pym/portage_manifest.py: Optimize manifest2AuxfileFilter handling
	  of ignored directories. Thanks to Brian Harring for the patch.

2006-04-07 09:23  zmedico

	* pym/portage_util.py: Raise exceptions when appropriate in the
	  atomic_ofstream constructor for bug #129098.

2006-04-07 00:50  antarus

	* pym/portage.py: Speed up portage.config.keys()

2006-04-07 00:48  antarus

	* bin/emerge, bin/repoman, pym/getbinpkg.py, pym/portage.py,
	  pym/portage_file.py, pym/portage_locks.py,
	  pym/portage_manifest.py, pym/portage_util.py: Change == None to
	  is None

2006-04-06 21:05  blubb

	* bin/emerge: only display syncing progress for each file when
	  --verbose is set; thanks Olaf Hering, bug 128362

2006-04-06 19:47  blubb

	* bin/ebuild.sh: set PKG_CONFIG_PATH correct on multilib systems;
	  bug 126801

2006-04-06 19:28  blubb

	* bin/ebuild.sh: add /usr/local/{,s}bin to PATH; bug 117713

2006-04-06 10:58  blubb

	* pym/emergehelp.py: emerge info -> emerge --info

2006-04-06 05:37  antarus

	* bin/repoman: Remove really really old check during a cvs move.
	  Fix except statement to be saner

2006-04-06 02:06  zmedico

	* bin/repoman: Revert r3073 since it causes a regression (digestgen
	  needs to be run for each value of repoman_settings["O"]). See bug
	  #128946.

2006-04-05 18:58  zmedico

	* pym/portage.py: Revert FEATURES=noclean behavior so that clean is
	  only skipped after merge. Thanks to azarah for reporting.

2006-04-05 10:22  zmedico

	* pym/output.py: Move some color mappings to ensure that they do
	  not override the user defined color map.

2006-04-05 10:05  zmedico

	* pym/output.py: Add color code mappings for 16 colors in rgb
	  format.

2006-04-05 01:48  zmedico

	* pym/portage.py: Remove the srcroot parameter from env_update
	  because is doesn't work when portage.movefile merges files via
	  os.rename. To do this properly we need to pass in CONTENTS
	  instead.

2006-04-04 23:25  antarus

	* bin/repoman: Don't generate digests on --pretend for repoman.
	  Thanks go once again to exg@gentoo.org :)

2006-04-04 21:13  zmedico

	* pym/output.py, pym/portage_const.py, pym/portage_exception.py:
	  Add support for user configuration of colors in the output module
	  for bug #125120. Thanks to solar for the patch that this was
	  derived from.

2006-04-04 19:59  zmedico

	* pym/portage_manifest.py: Automatically create FILESDIR if
	  necessary when writing old style digests. Thanks to blubb for
	  reporting.

2006-04-04 19:17  blubb

	* cnf/make.conf: fix typo in make.conf and remove RSYNC_EXCLUDEFROM
	  since it's deprecated; bug 127614

2006-04-04 18:01  blubb

	* cnf/make.conf: fix make.conf indentation per bug 127868; thanks
	  to Paul Varner for the patch

2006-04-03 15:08  antarus

	* bin/repoman: It was pointed out that we have a Test-Manifest perl
	  package, which would get sadly excluded using the old string
	  match, so we fix it to match less ;)

2006-04-03 14:53  antarus

	* bin/repoman: Fix yet another typo of mine, thanks to exg

2006-04-03 13:40  antarus

	* bin/repoman: Fix ordering in cvs calls to be correct, thanks to
	  exg for the fix (again)

2006-04-03 10:43  jstubbs

	* pym/portage.py: s/parenreduce/paren_reduce/ comment fix.

2006-04-03 05:25  antarus

	* TODO: Remove out-dated TODO file

2006-04-03 05:08  zmedico

	* pym/portage.py: Fix a typo from r3058.

2006-04-03 05:07  antarus

	* bin/repoman: Fixes for repoman thanks to exg@gentoo.org and bug
	  #128451, Excludes Manifest regeneration in certain cases, adds
	  pretend gpg outut

2006-04-03 04:19  antarus

	* bin/emerge: Fix minor typo: reported by Brian Harring

2006-04-03 04:18  antarus

	* pym/portage.py: tsk tsk, fix a missing parenthesis :)

2006-04-03 04:16  antarus

	* pym/portage.py: Add a deprecation notice for those who are still
	  using tokenize ( hopefully no one :/ )

2006-04-03 03:59  zmedico

	* pym/portage.py, pym/portage_exception.py, pym/portage_util.py:
	  Move DISTDIR initialization from doebuild to fetch and handle
	  read-only file system errors for bug #128506.

2006-04-03 02:30  antarus

	* bin/repoman: Take sound advice and move all the use expand files
	  into desc/

2006-04-03 02:17  antarus

	* bin/emerge, bin/repoman: Make repoman check for USE expand
	  descriptions in other files so USE_EXPAND variables can have
	  longer/better/faster/stronger descriptions.

2006-04-02 08:05  jstubbs

	* pym/portage_exec.py: Make the reading of /proc/<pid>/fd/
	  impervious to the possible addition
	  of non-numerically named entries.

2006-04-02 05:53  zmedico

	* pym/portage_exec.py: Add a portage_exec.get_open_fds() function
	  for bug #128284. Thanks to Brian Harring for this patch.

2006-04-02 04:18  antarus

	* pym/portage_locks.py: More exception fixes...

2006-04-02 00:12  antarus

	* bin/emerge: Fixing stupid exception handling

2006-04-01 09:39  vapier

	* pym/portage.py: fix makelinks logic again

2006-04-01 08:08  zmedico

	* pym/portage.py: Rename local 'root' variable to parent_dir so
	  that it's not confused with portage.root

2006-04-01 07:34  zmedico

	* pym/portage.py: Fix ROOT handling for timestamps of lib
	  directories. Only run ldconfig when timestamps have changed (the
	  makelinks flag does not force ldconfig unless timestamps have
	  changed).

2006-04-01 04:53  vapier

	* pym/portage.py: need to still check makelinks

2006-04-01 04:27  zmedico

	* pym/portage.py: Fix env_update so it runs ldconfig when a lib dir
	  timestamp has changed unless srcroot is not None and no files
	  were installed into libdir.

2006-04-01 01:56  vapier

	* pym/portage.py: dont run ldconfig if a package doesnt actually
	  install any libraries

2006-03-30 11:46  zmedico

	* pym/portage_manifest.py: Fix manifest2AuxfileFilter so that it
	  correctly filters files such as 2.1_pre7/CVS/Entries.

2006-03-30 10:09  zmedico

	* pym/portage.py: Use ensure_dirs for CCACHE_DIR, CONFCACHE_DIR,
	  and DISTCC_DIR.

2006-03-30 09:41  zmedico

	* pym/portage.py, pym/portage_util.py: Add a reusable ensure_dirs()
	  function and use it for DISTDIR initialization.

2006-03-30 09:20  zmedico

	* pym/portage_util.py: The return value from apply_permissions now
	  indicates whether or not the permissions needed to be modified.

2006-03-30 04:54  zmedico

	* pym/portage.py: Handle distlocks subdir initialization together
	  with $DISTDIR and $DISTDIR/cvs-src.

2006-03-29 22:22  zmedico

	* pym/portage.py: Only do recursive permissions on $DISTDIR and
	  $DISTDIR/cvs-src when the top level permissions do not match.
	  Thanks to marienz for reporting.

2006-03-29 10:02  zmedico

	* bin/ebuild.sh: Compare distfiles timestamps with the files in
	  PORTAGE_ACTUAL_DISTDIR instead of with the symlinks in DISTDIR.
	  Thanks to Ed Catmur for this patch (bug #127930).

2006-03-29 09:25  zmedico

	* pym/portage_debug.py: Ignore more system libraries in
	  python-trace mode.

2006-03-29 08:51  zmedico

	* pym/portage_util.py: Automatically follow symlinks in the
	  atomic_ofstream constructor. See bug #127897.

2006-03-29 05:38  vapier

	* bin/emerge: add missing space in quiet col output

2006-03-29 03:17  zmedico

	* pym/output.py: Create a single colorize() function in the output
	  module and use it to generate all of the existing color
	  functions.

2006-03-28 05:27  genone

	* bin/emerge: Recommend PORTAGE_RSYNC_EXTRA_OPTS instead of
	  PORTAGE_RSYNC_OPTS

2006-03-27 15:46  solar

	* bin/ebuild.sh: - set sane perms on unpacking. If anybody hates
	  this than they are welcome to tie it into FEATURES= sfperms

2006-03-27 10:16  zmedico

	* pym/portage_manifest.py: Sort the hashes for manifest2 lines to
	  that output is reproducible.

2006-03-27 07:21  genone

	* pym/portage_manifest.py: sort digest/Manifest files by 1)
	  filetype (v2 only) 2) filename (v1+v2) 3) hashtype (v1 only)

2006-03-27 05:25  zmedico

	* pym/portage_manifest.py: Compare new digest data with old digest
	  data and rewrite the new digest only if they differ (forward port
	  r2951 from manifest1 to manifest2).

2006-03-27 03:08  zmedico

	* pym/portage_manifest.py: Use write_atomic for updates of old
	  style digest files.

2006-03-27 02:42  genone

	* bin/repoman: fix some nasty repoman tricks causing problems
	  (always use absolute paths with manifest2 code)

2006-03-27 01:49  zmedico

	* pym/portage_manifest.py: Split out a reusable
	  Manifest._createDigestLines1() method.

2006-03-27 01:21  zmedico

	* pym/portage_manifest.py: fix a typo from the last revision.

2006-03-27 01:05  zmedico

	* pym/portage_manifest.py: Split out a reusable
	  Manifest._parseDigests() method.

2006-03-26 07:00  zmedico

	* bin/emerge: Allow users in the portage group to fetch. Thanks to
	  truedfx for reporting this regression.

2006-03-26 06:35  genone

	* cnf/make.conf, cnf/make.globals, pym/elog_modules/mod_mail.py,
	  pym/elog_modules/mod_save.py: move some elog defaults into
	  make.globals, add new vars for mail from and subject (bug
	  #116637), change default location for mod_save logfiles to
	  PORT_LOGDIR/elog (bug #124165)

2006-03-26 06:29  zmedico

	* pym/portage.py: Clean up code for creation of CCACHEDIR,
	  CONFCACHEDIR, and DISTCC_DIR. Prevent excessive recursive stat
	  calls for bug #127563.

2006-03-26 05:54  genone

	* pym/portage.py: for collision-protect also check that only
	  versions with the same slot can overwrite each others files

2006-03-26 03:08  genone

	* pym/portage_manifest.py: fix AuxfileFilter to ignore all files in
	  svn or cvs dirs

2006-03-25 23:33  zmedico

	* pym/portage.py: Fix traceback for bug #127573. Thanks to
	  illuminata for reporting and antarus for the patch.

2006-03-25 13:57  zmedico

	* pym/portage.py: Add lazy loading of virtuals in
	  portage.do_vartree() for backward compatibility.

2006-03-25 05:44  genone

	* bin/repoman, man/repoman.1, pym/portage_manifest.py: Add files/
	  prefix for AUX files in manifest1 entries; fix digest.unused
	  check partially by checking all DIST entries against all SRC_URI
	  entries of a package (instead of per ebuild checks)

2006-03-25 01:04  zmedico

	* bin/emerge, bin/repoman, pym/portage.py: Load virtuals on demand
	  in order to avoid needless vdb scanning during a simple 'import
	  portage'. Virtuals are loaded during import, for initialization
	  of portage.settings, only when autouse is enabled (though autouse
	  is disabled by default).

2006-03-25 00:54  genone

	* pym/portage.py: only reuse distfile checksums if the file doesn't
	  exist

2006-03-25 00:45  genone

	* pym/portage.py, pym/portage_manifest.py: Make ebuild digest reuse
	  existing checksums

2006-03-25 00:32  genone

	* pym/portage.py: Make ebuild digest a bit more verbose

2006-03-25 00:18  genone

	* pym/portage_checksum.py: FileNotFoundException should be used
	  with the filename

2006-03-24 23:40  genone

	* pym/portage.py: PORTAGE_WORKDIR_MODE is octal

2006-03-24 23:09  genone

	* pym/portage_manifest.py: add missing manifest module

2006-03-24 21:31  genone

	* pym/portage.py, pym/portage_checksum.py, pym/portage_const.py:
	  Add manifest2 support.

2006-03-24 21:24  genone

	* pym/portage.py: Fix crappy error handling for
	  PORTAGE_WORKDIR_MODE

2006-03-24 18:14  genone

	* cnf/make.conf.alpha, cnf/make.conf.alpha.diff,
	  cnf/make.conf.amd64, cnf/make.conf.amd64.diff, cnf/make.conf.arm,
	  cnf/make.conf.arm.diff, cnf/make.conf.hppa,
	  cnf/make.conf.hppa.diff, cnf/make.conf.ia64,
	  cnf/make.conf.ia64.diff, cnf/make.conf.mips,
	  cnf/make.conf.mips.diff, cnf/make.conf.ppc,
	  cnf/make.conf.ppc.diff, cnf/make.conf.ppc64,
	  cnf/make.conf.ppc64.diff, cnf/make.conf.s390,
	  cnf/make.conf.s390.diff, cnf/make.conf.sparc,
	  cnf/make.conf.sparc.diff, cnf/make.conf.x86,
	  cnf/make.conf.x86-fbsd, cnf/make.conf.x86-fbsd.diff,
	  cnf/make.conf.x86.diff, make.conf-repatch.sh: Replacing arch
	  specific make.conf files with patches for the fallback make.conf
	  which should be applied in the ebuild.
	  Add a helper script to update patches if the main make.conf is
	  changed.

2006-03-24 08:33  zmedico

	* bin/misc-functions.sh: Create tbz2 package directly in
	  ${PKGDIR}/All to avoid need for temp file (inefficient) and avoid
	  selinux label issues for bug #127374.

2006-03-23 08:22  zmedico

	* bin/ebuild, bin/emerge, pym/portage_debug.py: Add a portage_debug
	  module and python-trace feature for --debug mode.

2006-03-23 02:18  zmedico

	* pym/portage.py: When the post preinst shell tasks fail, write a
	  message to stderr and return it's exit status so that die calls
	  (inside preinst_selinux_labels for example) can work correctly.

2006-03-23 01:47  zmedico

	* pym/portage.py: Write a message to stderr indicating when
	  install_qa_check fails. See bug #126442.

2006-03-23 01:27  zmedico

	* bin/ebuild.sh: Include the die call itself (including line
	  number) in the printed call stack when an ebuild dies.

2006-03-22 23:47  zmedico

	* bin/ebuild.sh: Enable bash tracing during sourcing of bashrc for
	  --debug mode. See bug #126442.

2006-03-20 11:59  zmedico

	* bin/emerge-webrsync: Make emerge-webrsync only do
	  metadata-transfer when necessary. Thanks to Patrick Lauer for
	  reporting.

2006-03-20 11:21  zmedico

	* bin/ebuild.sh, bin/isolated-functions.sh: Move has, hasq, and
	  hasv functions to isolated-functions.sh since they do not depend
	  on ebuild.sh.

2006-03-20 09:04  zmedico

	* pym/portage.py: Fix sandbox feature (broken since r2947).

2006-03-20 00:30  zmedico

	* bin/emerge: Do not split PORTAGE_RSYNC_EXTRA_OPTS and add it
	  directly to rsynccommand in order to preserve (hypothetical)
	  quoted whitespace.

2006-03-20 00:12  marienz

	* pym/portage.py: Move CacheError from the block of python imports
	  to the block of portage imports, fix spelling in error message.

2006-03-19 23:52  zmedico

	* bin/emerge: Miscellaneous fixes and cleanup for the rsync options
	  handling.

2006-03-19 21:10  zmedico

	* bin/emerge: Fix deprecated RSYNC_TIMEOUT handling (move it where
	  rsync_flags is defined) and direct error messages to stderr via
	  writemsg.

2006-03-19 17:48  genone

	* NEWS, RELEASE-NOTES: adding notes about new rsync option handling

2006-03-19 17:41  genone

	* cnf/make.conf: make the fallback make.conf more generic by
	  removing x86 specific stuff and removing CHOST completely

2006-03-19 17:36  genone

	* bin/emerge, cnf/make.conf, cnf/make.conf.alpha,
	  cnf/make.conf.amd64, cnf/make.conf.arm, cnf/make.conf.hppa,
	  cnf/make.conf.ia64, cnf/make.conf.mac, cnf/make.conf.mips,
	  cnf/make.conf.ppc, cnf/make.conf.ppc64, cnf/make.conf.s390,
	  cnf/make.conf.sparc, cnf/make.conf.x86, cnf/make.conf.x86-fbsd,
	  cnf/make.globals, man/make.conf.5: Add support for generic
	  PORTAGE_RSYNC_{EXTRA_,}OPTS, deprecate existing RSYNC_ variables,
	  rename RSYNC_RETRIES to PORTAGE_RSYNC_RETRIES

2006-03-19 07:05  vapier

	* bin/repoman: update -I long option

2006-03-19 06:46  vapier

	* bin/repoman: delete extraneous print

2006-03-19 06:14  zmedico

	* bin/ebuild.sh, bin/emerge: Add NOCOLOR support to ebuild.sh and
	  make emerge automatically add NOCOLOR to portage.settings when
	  --nocolor is specified. See bug #126756.

2006-03-19 04:48  zmedico

	* pym/portage.py: Compare new digest data with old digest data and
	  rewrite the new digest only if they differ. Thanks to AllanonJL
	  for reporting this issue.

2006-03-19 04:34  zmedico

	* pym/portage_util.py: Catch a possible OSError from the stat call
	  in atomic_ofstream.close().

2006-03-18 23:42  zmedico

	* pym/portage.py: Reset the selinux security context before
	  returning from spawn (regression from r2834). See bug #126711.

2006-03-18 22:42  zmedico

	* pym/portage.py: Fix typo from the last revision.

2006-03-18 22:40  zmedico

	* pym/portage.py: Stop swallowing IOError and TypeError exceptions
	  in portdbapi.gvisible(). Write instances of PortageException to
	  stderr. Thanks to marienz for reporting.

2006-03-18 21:11  zmedico

	* pym/cache/flat_hash.py: Prevent an IOError with errno != ENOENT
	  from being swallowed in flat_hash._setitem().

2006-03-18 20:43  zmedico

	* bin/emerge-webrsync: Fix typo in spelling of been in
	  emerge-webrsync. Thanks to bonsaikitten for reporting.

2006-03-18 20:29  zmedico

	* bin/dobin, bin/dosbin, bin/emerge-webrsync,
	  bin/misc-functions.sh: Make PORTAGE_INST_UID and PORTAGE_INST_GID
	  default to 0 in case of environment problems.

2006-03-18 19:59  antarus

	* pym/portage.py: Minor speedup for findname2, suggested by Brian
	  Harring

2006-03-18 19:47  zmedico

	* bin/ebuild.sh: Make successful inherit calls return success so
	  that \'source ${EBUILD}` returns success when an ebuild calls
	  inherit last.

2006-03-18 19:16  kito

	* pym/emergehelp.py: add short options for --one-shot and
	  --fetch-all-uri to --help output. Closes Bug #126626

2006-03-18 17:23  zmedico

	* pym/cache/flat_hash.py, pym/cache/flat_list.py: Replace hard
	  coded number 2 in cache modules with errno.ENOENT.

2006-03-18 07:36  zmedico

	* pym/portage.py: Change os.makedirs to makedirs (typo from r2934).

2006-03-18 07:13  zmedico

	* pym/portage.py: Fix a typo from the last revision.

2006-03-18 07:08  zmedico

	* pym/portage.py: Use one makedirs function for all directory
	  creations inside prepare_build_dirs.

2006-03-18 06:40  zmedico

	* bin/ebuild.sh: Fix PORTAGE_WORKDIR_MODE so that 0700 is correctly
	  substituted when PORTAGE_WORKDIR_MODE is unset or null.

2006-03-18 06:14  zmedico

	* pym/portage.py: Use loops to consolidate directory cleaning and
	  creation in prepare_build_dirs.

2006-03-18 04:03  zmedico

	* bin/ebuild.sh: Prevent "eclass-debug.log: No such file or
	  directory" messages that are produced during the "depend" phase
	  when ${T} doesn't exist.

2006-03-18 02:29  zmedico

	* pym/portage.py: Fix PORTAGE_WORKDIR_MODE parsing so that the
	  validated value is stored in mysettings.

2006-03-18 02:10  zmedico

	* pym/portage.py: Catch a possible SyntaxError from the eval
	  function when parsing PORTAGE_WORKDIR_MODE. Thanks to solar for
	  reporting.

2006-03-18 01:58  zmedico

	* pym/portage.py: Use apply_recursive_permissions for DISTCC_DIR.

2006-03-18 01:33  zmedico

	* pym/portage.py: Use apply_recursive_permissions for CCACHE_DIR.
	  Also fix a typo in error handling for CONFCACHE_DIR from r2912.

2006-03-18 00:36  zmedico

	* pym/portage.py: Use apply_recursive_permissions for
	  CONFCACHE_DIR.

2006-03-18 00:18  zmedico

	* pym/portage.py, pym/portage_util.py: Add a generic
	  apply_recursive_permissions function and use is for
	  $DISTDIR/cvs-src.

2006-03-17 23:00  zmedico

	* bin/emerge-webrsync: Fix deprecated emerge syntax in
	  emerge-webrsync for bug #126558.

2006-03-17 22:57  zmedico

	* bin/emerge-webrsync: Merge emerge-webrsync uid and gid fixes from
	  the prefix branch.

2006-03-17 22:41  zmedico

	* pym/portage.py: For better handling of $DISTDIR/cvs-src
	  permissions, use os.walk instead of spawning chgrp and chmod.

2006-03-17 21:24  zmedico

	* pym/portage.py: Fix error handling for $DISTDIR/cvs-src creation
	  and permissions in doebuild.

2006-03-17 21:11  zmedico

	* pym/portage_util.py: Fix typo in variable name from last
	  revision.

2006-03-17 21:04  zmedico

	* pym/portage_util.py: Fix the apply_permissions XOR logic so that
	  mask removes mode bits correctly.

2006-03-17 08:48  zmedico

	* pym/portage.py: Improve error handling in prepare_build_dirs for
	  PORT_LOGDIR. Fix doebuild 'logfile' which has caused broken
	  logging since r2894.

2006-03-17 07:26  zmedico

	* pym/portage.py: Error handling in prepare_build_dirs for
	  DISTCC_DIR.

2006-03-17 06:25  zmedico

	* pym/portage.py: Disable confcache when it's not possible to apply
	  correct group permissions to an existing file in CONFCACHE_DIR.

2006-03-17 06:14  zmedico

	* pym/portage.py: Improve error handling in the CONFCACHE_DIR
	  section of prepare_build_dirs. Thanks to solar for reporting this
	  issue.

2006-03-17 03:58  zmedico

	* bin/misc-functions.sh: Use `mv -f` to make sure mv does not
	  prompt for confirmation.

2006-03-17 02:38  zmedico

	* pym/portage_util.py: Fix permissions functions so that error
	  messages tell exactly which call failed.

2006-03-17 01:53  zmedico

	* pym/portage.py: Use the built-in bool() function to convert 1 or
	  0 to True or False as recommended by marienz.

2006-03-16 21:00  zmedico

	* bin/emerge: Add package atom validation to the `emerge --config`
	  action. Thanks to sekretarz for reporting and providing an
	  initial patch.

2006-03-16 09:37  zmedico

	* pym/portage.py: Implement __contains__ for portage.config so that
	  it calls has_key, enabling membership test operators (in and not
	  in) to work as expected.

2006-03-16 06:39  zmedico

	* pym/portage.py: Revert a hunk from r2834 because
	  PORTAGE_SANDBOX_T is used incorrectly where PORTAGE_FETCH_T
	  should be used for selinux fetch. Thanks to spb for reporting.

2006-03-16 05:11  vapier

	* bin/ebuild.sh: touchup some more misc bits of bash code

2006-03-16 04:57  zmedico

	* pym/portage.py: Move environment variables WORKDIR, D, and T from
	  prepare_build_dirs to doebuild_environment.

2006-03-16 04:18  vapier

	* bin/ebuild.sh: cleanup bash code in use*() and has*() functions
	  with the help of agriffis

2006-03-16 03:54  vapier

	* bin/ebuild.sh: add support for unpacking .tbz, .a, and .deb files

2006-03-16 03:30  zmedico

	* bin/ebuild.sh, cnf/make.globals, pym/portage.py: Add a new
	  PORTAGE_WORKDIR_MODE config variable so that the mode of WORKDIR
	  is no longer hard coded. See bug #8688.

2006-03-16 03:11  vapier

	* bin/ebuild.sh: declare more local variables to prevent env
	  pollution

2006-03-16 01:26  vapier

	* bin/ebuild.sh: - dont allow people to call `install` with -s via
	  insopts/diropts/exeopts/libopts and simplify them in general
	  - fix "nostrip" usage and DEBUGBUILD

2006-03-15 13:48  zmedico

	* pym/portage.py: Check the return value of prepare_build_dirs and
	  return early from doebuild if necessary.

2006-03-15 13:36  zmedico

	* pym/portage.py: Split the bulk of directory preparation out of
	  doebuild into a new prepare_build_dirs function.

2006-03-15 13:06  zmedico

	* pym/portage.py: Split the bulk of ebuild environment setup out of
	  doebuild into a new doebuild_environment function.

2006-03-15 01:17  zmedico

	* pym/portage.py: Use writemsg_stdout for update_ents and move_ent
	  routines. See bug #126111.

2006-03-15 00:36  vapier

	* bin/emerge: add --quiet support to --cols

2006-03-15 00:03  zmedico

	* bin/emerge: Generate depgraph.applied_useflags in the display
	  method as necessary for use with --resume. See bug #126120.

2006-03-14 22:42  zmedico

	* bin/dopython: Remove bin/dopython because it's not either used or
	  useful. Thanks to Brian Harring for noticing.

2006-03-14 21:59  zmedico

	* pym/portage.py: Send a global updates messages to stdout for bug
	  #126111.

2006-03-14 17:07  antarus

	* pym/portage.py: Comma's are for pussies ( fixing regression from
	  last reivision )

2006-03-14 16:30  antarus

	* pym/portage.py: marienz pointed out that 'raise e' actually
	  raises a new exception, which is not intended here, so we raise
	  instead of raising e

2006-03-14 16:18  antarus

	* bin/emerge: Catch keyboardinterrupt during imports, don't print
	  nasty tracebacks there, later on we have signal handlers for
	  control C

2006-03-14 16:17  antarus

	* pym/portage.py: Remove SystemExit's from portage imports, raise
	  on the correct exception, don't die if imports fail.

2006-03-14 15:46  antarus

	* pym/portage.py: Remove some SystemExit exceptions, make portage
	  behave during a ctrl+c

2006-03-14 09:05  zmedico

	* pym/portage_util.py: One more 'mode & 07777' in
	  apply_permissions.

2006-03-14 08:46  zmedico

	* pym/portage_util.py: Make that 'mode & 07777' for the previous
	  commit.

2006-03-14 08:39  zmedico

	* pym/portage_util.py: Use 'mode & 0777' to protect ourselves from
	  unwanted mode bits in apply_permissions.

2006-03-14 07:00  zmedico

	* pym/portage.py: Move the "noclean" feature check into clean phase
	  part of doebuild.

2006-03-14 06:39  zmedico

	* pym/portage.py: Use a separate PORTAGE_BUILDDIR for overlapping
	  install and unmerge phases in order to prevent interference
	  between {pre,post}inst and {pre,post}rm phases. See bug #125942.

2006-03-14 04:32  zmedico

	* pym/portage.py: Use apply_secpass_permissions for all permissions
	  in doebuild.

2006-03-14 04:26  zmedico

	* pym/portage_util.py: Make mode=-1 the default parameter for
	  apply_permissions in order to distinguish the behavior from
	  mode=0.

2006-03-14 03:39  zmedico

	* pym/portage.py: Fix some typos in the DISTDIR permissions
	  handling.

2006-03-14 02:31  zmedico

	* pym/portage_util.py: Make the apply_permissions function default
	  to exact matching of mode bits and add a "mask" parameter that
	  allows for XOR restriction of mode bits.

2006-03-14 00:57  zmedico

	* pym/portage.py: Handle FileNotFound errors instead of ENOENT
	  errors when doing permissions for the distlocks subdir.

2006-03-14 00:47  zmedico

	* pym/portage_util.py: Wrap possible exceptions raised by stat call
	  in apply_secpass_permissions.

2006-03-14 00:38  zmedico

	* pym/portage.py, pym/portage_exception.py, pym/portage_util.py:
	  Add a new OperationNotPermitted exception and use it to wrap
	  apply_permissions exceptions.

2006-03-14 00:08  zmedico

	* pym/portage.py: Use apply_secpass_permissions for DISTDIR
	  permissions.

2006-03-13 23:59  zmedico

	* pym/portage_util.py: Make portage_util.apply_stat_permissions()
	  wrap apply_secpass_permissions instead of plain old
	  apply_permissions.

2006-03-13 23:49  zmedico

	* pym/portage_util.py: Add a new
	  portage_util.apply_secpass_permissions() function that
	  intelligently attempts to apply as much of the requested
	  permissions as possible without generating an exception.

2006-03-13 21:24  zmedico

	* bin/emerge: Simplify emerge's secpass logic.

2006-03-13 19:59  zmedico

	* pym/portage_data.py: Document portage_data.secpass and give
	  secpass=0 to users that are not in the "portage" group.

2006-03-13 02:27  zmedico

	* pym/portage.py: Do not clean shared ${T} after the unmerge phase
	  when the new and old package are the same version (regression
	  from r2844). See bug #125942.

2006-03-13 00:15  zmedico

	* bin/emerge: Fix KeyError: 'mergelist' error (regression from
	  r2847). See bug #125993.

2006-03-12 13:30  zmedico

	* bin/misc-functions.sh: Use find -path instead of -name for
	  compatibility with both gnu and bsd userlands. See bug #125919.

2006-03-12 11:22  zmedico

	* pym/portage.py: Make portage.unmerge return 0 on success in order
	  to make `ebuild unmerge` exit nicely. Thanks to kosmikus for
	  reporting the "Could not run the required binary?" message.

2006-03-12 09:39  zmedico

	* pym/cache/util.py: Fix misuse of dict.fromkeys class method so
	  that cache cleansing works during `emerge --metadata` runs.

2006-03-12 09:31  vapier

	* bin/misc-functions.sh: ppc64 isnt ok just yet, so dont scan for
	  exec stacks

2006-03-12 08:37  zmedico

	* pym/portage.py: Use the ** operator for better unpacking of
	  actionmap args in spawnebuild.

2006-03-12 07:00  zmedico

	* pym/portage.py: Add the command (ebuild.sh or misc-functions.sh)
	  to the actionmap for spawnebuild.

2006-03-12 04:11  zmedico

	* bin/emerge: Add --tree to the blacklist when --resume is used.
	  See bug #54040.

2006-03-11 19:24  zmedico

	* pym/portage.py: Make the clean phase obey keeptemp in FEATURES.

2006-03-11 17:47  vapier

	* man/make.conf.5: default CCACHE_DIR doesnt use PORTAGE_TMPDIR, it
	  just happens to also reside there by default

2006-03-11 10:36  vapier

	* bin/quickpkg, pym/portage.py: backport portage-pkg path change
	  from savior branch

2006-03-11 10:33  vapier

	* bin/emerge: dont reset spinner for non-ttys if --quiet is in use

2006-03-11 07:25  zmedico

	* bin/emerge, pym/portage.py: Do automatic backup the resume list
	  when it's length is greater than 1 for bug #122527.

2006-03-11 07:14  zmedico

	* bin/ebuild.sh, cnf/make.globals: Move PORTAGE_INST_UID and
	  PORTAGE_INST_GID from ebuild.sh to make.globals so they can be
	  overridden.

2006-03-11 02:42  zmedico

	* bin/dobin, bin/dosbin: Make dobin and dosbin use PORTAGE_INST_UID
	  and PORTAGE_INST_GID.

2006-03-11 01:27  zmedico

	* pym/portage.py: Trigger the clean phase at the end of
	  dblink.unmerge() in order to remove cruft left by the pkg_*rm
	  phases.

2006-03-11 01:03  zmedico

	* bin/emerge, pym/portage.py: Do the clean phase at the end of
	  dblink.treewalk() to ensure that it is triggered when both source
	  and binary packages are merged. See bug #105706.

2006-03-11 00:28  zmedico

	* pym/portage.py: Consolidate duplicate "myebuild" logic in the
	  dblink.treewalk() method.

2006-03-10 23:53  zmedico

	* pym/portage.py: Do cleanup of cruft prior to the setup phase for
	  binary packages. See bug #85803.

2006-03-10 12:01  zmedico

	* bin/ebuild.sh: Fix dyn_clean in ebuild.sh so that it removes the
	  builddir correctly (if it is empty). See bug #105706.

2006-03-10 11:52  zmedico

	* bin/emerge: Fix emerge's "Post-Build Cleaning" so that it works
	  with --buildpkgonly in FEATURES. See bug #105706.

2006-03-10 08:17  zmedico

	* bin/ebuild.sh, bin/misc-functions.sh, pym/portage.py: Move
	  dyn_rpm and dyn_spec from ebuild.sh to misc-functions.sh.

2006-03-09 21:51  zmedico

	* bin/ebuild.sh, bin/misc-functions.sh, pym/portage.py: Move the
	  install phase qa checks from ebuild.sh to misc-functions.sh and
	  add the necessary support to spawnebuild.

2006-03-09 21:39  zmedico

	* bin/ebuild.sh: Remove "myarg" from the ebuild.sh env before it is
	  saved so that it doesn't interfere when ebuild.sh is sourced by
	  other scripts.

2006-03-09 10:58  zmedico

	* pym/portage.py: Add sesandbox to the spawnebuild actionmap.

2006-03-09 09:54  zmedico

	* pym/portage.py: Add a "sesandbox" flag to the spawn function so
	  that it can handle selinux context for the exec call (prevents
	  code duplication).

2006-03-09 04:48  zmedico

	* bin/ebuild.sh: Remove install_mask from ebuild.sh since it's in
	  misc-functions.sh now.

2006-03-09 04:15  zmedico

	* bin/ebuild.sh, bin/misc-functions.sh, pym/portage.py: Split
	  install_mask and parts of dyn_preinst from ebuild.sh to
	  misc-functions.sh and add the necessary support to doebuild.

2006-03-09 04:07  zmedico

	* bin/ebuild.sh, bin/misc-functions.sh, pym/portage.py,
	  pym/portage_const.py: Split dyn_package from ebuild.sh to
	  misc-functions.sh and add MISC_SH_BINARY support to spawnebuild.

2006-03-09 01:10  vapier

	* bin/ebuild.sh: add support for ebuild authors to mark stuff as
	  ignorable

2006-03-09 00:28  vapier

	* man/ebuild.5: misc updates

2006-03-09 00:21  vapier

	* bin/env-update, man/env-update.1: document new --no-ldconfig
	  option

2006-03-09 00:16  vapier

	* cnf/make.conf, cnf/make.conf.alpha, cnf/make.conf.amd64,
	  cnf/make.conf.arm, cnf/make.conf.hppa, cnf/make.conf.ia64,
	  cnf/make.conf.mac, cnf/make.conf.mips, cnf/make.conf.ppc,
	  cnf/make.conf.ppc64, cnf/make.conf.s390, cnf/make.conf.sparc,
	  cnf/make.conf.x86, cnf/make.conf.x86-fbsd, cnf/make.globals,
	  pym/emergehelp.py: update copyrights

2006-03-08 08:18  zmedico

	* bin/ebuild.sh: Move PKG_INSTALL_MASK functionality (see bug
	  #81025) from dyn_install to dyn_package because we don't want
	  PKG_INSTALL_MASK to affect the install phase (INSTALL_MASK is in
	  dyn_preinst).

2006-03-08 03:39  solar

	* bin/ebuild.sh: - commit initial split install masking code. this
	  commits adds new portage variable PKG_INSTALL_MASK for fine
	  tuning what gets added to the binary .tbz2 and xpak data. This
	  function will probably be later split out into a
	  misc-functions.sh by zac

2006-03-07 19:27  zmedico

	* bin/emerge: Make the parallel-fetch process sleep for 3 seconds
	  at the beginning in order to allow the parent process to have the
	  first fetch (rather than display a 'waiting for a lock' message).
	  Suggestion by Brian Harring.

2006-03-07 01:53  zmedico

	* pym/portage.py, pym/portage_update.py: Catch ENOENT errors when
	  $PORTDIR/profiles/updates does not exist.

2006-03-07 01:10  solar

	* bin/emerge: - make portage display the ROOT when unmerging a
	  selected package

2006-03-06 02:53  vapier

	* bin/ebuild.sh: only scan for exec stacks on linux/glibc hosts

2006-03-06 00:38  zmedico

	* bin/emaint, bin/emerge, bin/regenworld, pym/portage.py,
	  pym/portage_const.py: Remove the leading / from WORLD_FILE for
	  better cooperation with os.path.join (see bug #124471).

2006-03-05 22:30  vapier

	* bin/ebuild.sh: fix BASH_ARGV walking

2006-03-05 19:57  zmedico

	* pym/portage.py, pym/portage_const.py: Remove the leading / from
	  CONFIG_MEMORY_FILE for better cooperation with os.path.join (see
	  bug #124471).

2006-03-05 19:45  zmedico

	* pym/portage.py, pym/portage_checksum.py, pym/portage_const.py:
	  Remove the leading / from PRIVATE_PATH (var/lib/portage) for
	  better cooperation with os.path.join (see bug #124471).

2006-03-05 18:57  zmedico

	* pym/portage.py: Remove a dead and broken hunk of code that
	  attempts to remove files from an empty directory.

2006-03-05 15:01  solar

	* bin/ebuild.sh: - have scanelf nuke insecure rpaths

2006-03-05 00:10  zmedico

	* bin/emerge, pym/portage.py: Strip the leading slash from
	  WORLD_FILE so that os.path.join works correctly for bug #124471.
	  Thanks to Thomas de Grenier de Latour for finding the cause of
	  the problem and Jonathan Adamczewski for the initial report.

2006-03-04 06:54  zmedico

	* pym/portage.py: Remove the 'didupdate' variable from
	  global_updates() because it is no longer used.

2006-03-04 06:35  zmedico

	* pym/portage.py: Rename the global updates do_upgrade() function
	  to parse_updates().

2006-03-04 06:21  zmedico

	* pym/portage.py: Move all output out of the global updates
	  do_upgrade() function so that it only performs parsing and
	  validation.

2006-03-04 01:52  vapier

	* bin/ebuild.sh: add some URLs for people to learn more

2006-03-03 01:02  vapier

	* pym/portage.py: kill off pointless print

2006-03-02 19:10  zmedico

	* bin/emerge-webrsync: Make emerge-webrsync use renice for cleaner
	  PORTAGE_NICENESS handling (bug #124621).

2006-03-02 17:46  zmedico

	* bin/emerge-webrsync: Fix typo in emerge-webrsync PORTAGE_NICENESS
	  handling for bug #124621 (regression from r2623).

2006-03-02 04:25  zmedico

	* bin/dobin, bin/dosbin: Assume 0 for both uid and gid in dobin and
	  dosbin (bug #124568).

2006-03-02 00:18  vapier

	* bin/dobin, bin/dosbin: just use group 0 to workaround broken
	  systems #124568

2006-02-28 13:43  jstubbs

	* bin/emerge: Use ROOT when checking installed packages for
	  --pretend output

2006-02-28 06:40  zmedico

	* pym/portage.py, pym/portage_update.py: Split out a
	  portage_update.grab_updates() function so that it can be reused.

2006-02-28 00:24  zmedico

	* bin/ebuild.sh: Add a sanity check in dyn_clean() to make sure
	  that PORTAGE_BUILDDIR is not zero length for bug #124203.

2006-02-27 00:44  zmedico

	* bin/emerge: Make sure myopts does not contain duplicate options
	  for bug 124204.

2006-02-26 21:36  zmedico

	* pym/cache/metadata.py: Use rstrip("\n") instead of -1 index to
	  safely remove newline characters.

2006-02-26 13:10  zmedico

	* pym/cache/metadata_overlay.py: Add a new cache.metadata_overlay
	  module that layers a writable cache over a readonly cache.

2006-02-26 12:58  zmedico

	* cnf/make.conf, cnf/make.conf.alpha, cnf/make.conf.amd64,
	  cnf/make.conf.arm, cnf/make.conf.hppa, cnf/make.conf.ia64,
	  cnf/make.conf.mips, cnf/make.conf.ppc, cnf/make.conf.ppc64,
	  cnf/make.conf.s390, cnf/make.conf.sparc, cnf/make.conf.x86,
	  cnf/make.conf.x86-fbsd, man/make.conf.5: Add some docs for
	  metadata-transfer in make.conf.example and make.conf.5.

2006-02-26 12:05  zmedico

	* pym/portage_locks.py: Fix 'Bad file descriptor' error with
	  hardlink locking for bug 124140.

2006-02-26 10:27  zmedico

	* bin/emerge: Make `emerge --metadata` work even when
	  metadata-transfer is not in FEATURES.

2006-02-26 10:08  zmedico

	* bin/emerge, cnf/make.globals: Make the post-sync
	  metadata-transfer a FEATURE so that it can be optionally
	  disabled.

2006-02-26 07:51  zmedico

	* pym/cache/flat_hash.py: Only write known keys in flat_hash cache
	  entries (filter out UNUSED_* keys).

2006-02-26 05:39  zmedico

	* pym/cache/metadata.py: Fix cache.metadata.database so that it
	  correctly removes the newline character from the end of the line
	  when parsing flat_hash entries.

2006-02-26 05:35  zmedico

	* pym/cache/template.py: Make complete_eclass_entries variable name
	  consistent so that classes derived from cache.template.database
	  are compatible with the mirror_cache() function in the cache.util
	  module.

2006-02-25 15:46  antarus

	* pym/portage.py: Killing some old code that is never executed.

2006-02-25 06:03  antarus

	* pym/portage.py: Add a message to advise deleting corrupted binary
	  packages. Bug #86088

2006-02-25 05:11  antarus

	* pym/portage_exception.py: Adding a new exception class.

2006-02-24 01:43  vapier

	* bin/repoman: move the err/warn funcs together

2006-02-23 23:29  antarus

	* bin/repoman: Fix a missing parenthesis.

2006-02-23 18:27  antarus

	* RELEASE-NOTES: Fix typo, profile instead of profiles

2006-02-23 18:25  antarus

	* RELEASE-NOTES: update release notes

2006-02-23 18:20  antarus

	* bin/emerge, bin/repoman: Kill inject for good.

2006-02-23 18:18  antarus

	* man/emerge.1: Remove inject from the manpage. Bug # 120429.

2006-02-23 17:36  zmedico

	* bin/ebuild: Add NOCOLOR support to bin/ebuild for bug 78701.

2006-02-23 06:36  vapier

	* bin/prepallstrip: remove code that is duplicated in prepstrip

2006-02-23 05:45  vapier

	* bin/prepman: update syntax/style

2006-02-23 05:31  vapier

	* bin/prepman: warn if we were given a non-existent dir

2006-02-23 05:31  vapier

	* bin/prepallman: simply code to break down arguments to prepman

2006-02-23 05:25  vapier

	* bin/doman: dont warn in manpage exists but is empty

2006-02-23 05:24  vapier

	* bin/doman: disable compression in doman, just let `prepman`
	  handle it

2006-02-23 05:13  vapier

	* bin/doman: update syntax and add error checking #121317 by Simon
	  Stelling

2006-02-23 00:43  zmedico

	* bin/emerge: Revert emergelog output change from revision 2641 to
	  maintain compatibility with genlop (reported by fuzzyray).

2006-02-22 23:50  zmedico

	* pym/portage.py: Prevent output of '*' characters when there are
	  no updates but fixpackages is in features (reported by fuzzyray).

2006-02-22 21:20  antarus

	* bin/repoman: Suggestion from Brian Harring to remove extra
	  processing, condense code.

2006-02-21 09:57  zmedico

	* pym/portage.py: Fix typo from revision 2758.

2006-02-21 09:52  zmedico

	* pym/portage.py: Validate the names of update files in order to
	  filter out unwanted files such as CVS directories.

2006-02-21 06:07  zmedico

	* NEWS, RELEASE-NOTES: Some news and release notes for 2.1_pre5.

2006-02-21 01:44  zmedico

	* pym/output.py: Patch by Ed Catmur to add "gnome" to legal_terms
	  in output.py.

2006-02-21 01:16  zmedico

	* pym/output.py: Patch by marienz to generate default_xterm_title
	  just in time with python instead of the shell. Fixes "Bad
	  substitution" shell messages reported by flameeyes.

2006-02-20 23:42  vapier

	* bin/ebuild.sh: enable exec stack scanning on ppc64

2006-02-20 03:07  zmedico

	* pym/portage.py: Remove temporary file usage from move_ent and
	  move_slot_ent routines.

2006-02-19 23:52  zmedico

	* pym/portage.py: Remove temporary file usage from fixpackages
	  update_ents routine.

2006-02-19 23:28  zmedico

	* pym/xpak.py: Add a tbz2.get_data() method that returns the xpak
	  segment data as a dict.

2006-02-19 22:55  zmedico

	* pym/portage.py, pym/portage_update.py: Split out 2 reusable
	  functions from fixdbentries and put them in a new portage_update
	  module.

2006-02-19 20:47  zmedico

	* pym/xpak.py: In order do avoid the need for temporary files, add
	  a new tbz2.recompose_mem() method that uses an xpak segment from
	  memory.

2006-02-19 20:19  zmedico

	* pym/xpak.py: In order do avoid the need for temporary files, add
	  a new xpak_mem() function that creates an xpak_segment from a map
	  object.

2006-02-19 16:10  genone

	* RELEASE-NOTES: update release notes regarding deprecated stuff

2006-02-19 05:44  genone

	* qa: more obsolete stuff, qa is in ebuild.sh now

2006-02-19 05:42  genone

	* spec: this stuff was supposed to be dead for ages

2006-02-19 05:40  zmedico

	* pym/portage.py: Fix problem with /var/tmp/tbz2/tbz2 directory for
	  bug 113088.

2006-02-19 04:55  genone

	* bin/emerge, pym/emergehelp.py: deprecate 'emerge action' syntax
	  in favor of 'emerge --action'

2006-02-19 04:47  genone

	* man/emerge.1: remove documentation on --upgradeonly

2006-02-19 04:46  genone

	* bin/emerge, pym/emergehelp.py: finally remove --rsync

2006-02-19 04:43  genone

	* bin/emerge, pym/emergehelp.py: finally remove --upgradeonly

2006-02-19 01:13  zmedico

	* pym/portage.py: Update the mtimedb only after the updates have
	  been processed.

2006-02-19 00:16  zmedico

	* pym/portage.py: Split move_ent calls from do_upgrade() and do
	  them in global_updates() instead.

2006-02-19 00:01  zmedico

	* pym/portage.py: Fix 2 typos from revision 2735.

2006-02-18 23:39  zmedico

	* pym/portage.py: Clean up do_upgrade() and add atom validation.

2006-02-18 22:39  zmedico

	* pym/portage.py: Split the config file updates from do_upgrade
	  into a new update_config_files() function that does all updates
	  in one big batch.

2006-02-18 21:45  zmedico

	* pym/portage.py: Create a global_updates() function in order to
	  remove a chunk from the global scope.

2006-02-18 19:25  zmedico

	* pym/portage.py: Consider global updates that proceed quickly as a
	  single mtimedb transaction.

2006-02-18 19:18  zmedico

	* pym/portage.py: Split out a vardbapi.update_ents() method and
	  leave it unused for the moment since it's not currently being
	  used properly anyway (see bug 122089).

2006-02-18 02:25  zmedico

	* pym/portage.py, pym/xpak.py: Add a cleanup() method to xpak.tbz2
	  and do a sanity check there.

2006-02-18 01:39  zmedico

	* pym/portage.py: Add a return value to fixdbentries that indicates
	  whether or not modifications were performed. Use this to avoid
	  unnecessary recomposition of tbz2 files.

2006-02-17 23:25  zmedico

	* pym/portage.py: Filter out some more invalid updates before
	  fixpackages gets them.

2006-02-17 19:08  zmedico

	* pym/portage.py: Bring back myline variable inside do_upgrade
	  because it is needed (regression from rev 2726).

2006-02-17 18:56  zmedico

	* pym/portage.py: Store split lines in myupd so that they don't
	  need to be split again later.

2006-02-17 18:35  zmedico

	* pym/portage.py: Optimize fixpackages to do all updates in one big
	  batch so that each tbz2 is only recomposed once.

2006-02-17 07:56  zmedico

	* pym/portage.py: Make fixdbentries operate on an iterable instead
	  of a dict because order can matter.

2006-02-17 05:41  zmedico

	* pym/portage.py: optimize fixpackages (update_ents) to feed
	  batched package moves to fixdbentries

2006-02-17 05:35  zmedico

	* pym/portage.py: optimize fixdbentries by enabling it to process
	  packages moves in batches

2006-02-17 04:41  zmedico

	* pym/portage.py: remove invalid package moves from myupd so that
	  fixpackages doesn't process them

2006-02-16 13:10  genone

	* pym/portage.py, pym/portage_exception.py: Add basic sanity check
	  for global update entries

2006-02-16 04:51  ferringb

	* pym/portage_data.py: generalize the BSD checks.

2006-02-16 01:37  vapier

	* pym/portage_data.py: Robert Sebastian Gerus: add support for
	  DragonFly #122976

2006-02-15 18:40  zmedico

	* pym/portage_locks.py: fix case where myfd == None (regression
	  from revision 2714)

2006-02-15 17:47  zmedico

	* pym/portage_locks.py: fix a race and prevent unlinking of a file
	  locked by another process in portage_locks.unlockfile()

2006-02-15 11:21  ferringb

	* bin/ebuild.sh: silence extdebug errors when on bash2; it's
	  handled by the code already, just is fugly.

2006-02-14 22:38  zmedico

	* pym/portage_locks.py: fix race condition for bug 121819 by using
	  os.fstat(myfd).st_nlink instead of os.path.exists

2006-02-14 00:23  vapier

	* bin/repoman: get rid of pointless whitespace

2006-02-14 00:18  vapier

	* bin/dolib: cleanup output and syntax, make sure we exit with
	  non-zero status when something goes wrong #121317 by Simon
	  Stelling, and fix installing of relative symlinks

2006-02-14 00:12  vapier

	* bin/quickpkg: add support for ROOT by Joel Martin #122728

2006-02-13 05:26  genone

	* bin/repoman, man/repoman.1: Make repoman ebuild.invalidname
	  message a bit more useful

2006-02-13 01:21  zmedico

	* pym/portage.py: misc atomic_ofstream and write_atomic updates in
	  portage.py

2006-02-12 23:43  zmedico

	* pym/portage.py: use write_atomic for move_ent CATEGORY updates

2006-02-12 22:56  genone

	* pym/portage.py: fix dirsonly handling in listdir

2006-02-12 21:09  zmedico

	* pym/portage.py: use write_atomic for fixdbentries

2006-02-12 11:55  zmedico

	* pym/portage.py, pym/portage_checksum.py: fix
	  perform_checksum.perform_checksum() so that it wraps FileNotFound
	  exceptions

2006-02-12 07:52  zmedico

	* bin/emerge, man/emerge.1, man/make.conf.5: add a new emerge
	  --ignore-default-opts option for bug 121695

2006-02-12 03:09  zmedico

	* pym/portage.py: catch possible ENOENT error from
	  portage_checksum.perform_md5 for bug 24374

2006-02-12 02:42  zmedico

	* pym/portage.py: import errno at the top of portage.py

2006-02-11 10:43  solar

	* bin/ebuild.sh: - add portage to MULTILIB_STRICT_EXEMPT

2006-02-11 08:45  zmedico

	* bin/emerge: fix typo for bug 111098 (patch by
	  andre@fluffyspider.com.au)

2006-02-10 23:39  zmedico

	* pym/portage.py: use cached stat and lstat results to minimize the
	  number of stat calls in dblink.unmerge()

2006-02-10 22:07  zmedico

	* pym/portage_checksum.py: avoid unnecessary stat by catching
	  ENOENT error instead of using os.path.exists()

2006-02-10 07:00  zmedico

	* pym/portage.py: fix KeyError: '.' in dblink.unmerge() from bug
	  100479

2006-02-10 01:47  zmedico

	* bin/repoman: make repoman obey NOCOLOR for bug 77566 (patch by
	  antarus)

2006-02-09 20:26  zmedico

	* pym/portage.py: for each fetch ensure correct permissions on both
	  $DISTDIR and $DISTDIR/.locks (bug 117781)

2006-02-09 04:25  zmedico

	* pym/portage.py: use write_atomic for the counter file

2006-02-09 03:44  zmedico

	* pym/portage_util.py: use getattr instead of hasattr for detection
	  of base class destructor (recommended by marienz)

2006-02-09 03:38  vapier

	* bin/emake: eat the parent process with exec, YUM

2006-02-09 03:36  vapier

	* bin/doexe: touchup style

2006-02-09 01:38  zmedico

	* pym/portage.py: use atomic_ofstream for mtimedb commits

2006-02-09 01:10  zmedico

	* bin/emaint, bin/emerge, bin/regenworld, pym/portage.py: use new
	  write_atomic() function for all world file updates

2006-02-09 01:09  zmedico

	* pym/portage_util.py: add new atomic_ofstream class for safer
	  writes

2006-02-08 17:51  ferringb

	* pym/getbinpkg.py, pym/portage.py, pym/portage_util.py: cPickle
	  import protection; fall back to pickle if cPickle is unavailable.

2006-02-08 01:10  vapier

	* pym/portage.py: fix whitespace breakage introduced by
	  writemsg_stdout() changes

2006-02-07 14:39  jstubbs

	* bin/emerge: Remove references to --verbose and --quiet in
	  depgraph.display() and make
	  it work of a verbosity parameter instead.

2006-02-06 19:25  zmedico

	* bin/emerge, pym/portage.py, pym/portage_exec.py,
	  pym/portage_locks.py: wrap all relevant atexit usage due to
	  incompatibility with os.execv (needed for emerge to restart
	  itself)

2006-02-06 07:34  ferringb

	* bin/emerge: use sys.argv[0] for the path to emerge rather then
	  hard coding

2006-02-06 02:52  zmedico

	* bin/emerge: when emerge restarts itself, make
	  /usr/lib/portage/bin/emerge the first argument in the list passed
	  to os.execv (regression from revision 2667)

2006-02-06 01:41  marienz

	* pym/portage.py: Make sure confcache files are writable by the
	  portage group, not just the portage user.

2006-02-05 21:19  zmedico

	* bin/ebuild.sh, man/ebuild.5: add CATEGORY to ebuild.5 and declare
	  it readonly in ebuild.sh

2006-02-05 20:24  zmedico

	* bin/emerge: do commit_mtimedb() after each merge for bug 100300

2006-02-05 19:28  zmedico

	* bin/emerge: remove outdated "You may avoid the remerging of
	  packages" message

2006-02-05 19:22  zmedico

	* bin/emerge: replace existing "restarting emerge via exec()"
	  functionality with a new approach that uses --resume and myopts

2006-02-05 06:02  vapier

	* man/repoman.1: document more stuff

2006-02-05 06:02  vapier

	* man/ebuild.5, man/portage.5: mention mirror, not nomirror

2006-02-04 12:32  ferringb

	* pym/portage.py: aparently someone never heard of rstrip...

2006-02-04 07:34  antarus

	* bin/emerge: Adding a comment about normpath, and why we use our
	  own copy.

2006-02-04 07:22  zmedico

	* bin/emerge: remove stray quote introduced in revision 2645

2006-02-04 06:01  vapier

	* bin/dohard: touchup code like dosym

2006-02-04 06:01  vapier

	* bin/dosym: send error to stderr

2006-02-04 05:59  vapier

	* bin/dodir: use much simpler code as inspired by agriffis' fowners
	  work

2006-02-04 05:56  vapier

	* bin/dobin, bin/dosbin: cleanup code and handle errors better as
	  Simon Stelling says in Bug 121317

2006-02-04 05:33  vapier

	* bin/newbin, bin/newdoc, bin/newexe, bin/newins, bin/newlib.a,
	  bin/newlib.so, bin/newman, bin/newsbin: touchup code so we handle
	  errors better

2006-02-04 05:28  vapier

	* bin/doconfd, bin/doenvd, bin/doinitd: touchup code so we handle
	  errors better

2006-02-04 05:27  vapier

	* bin/newconfd, bin/newenvd, bin/newinitd: touchup code so we
	  handle errors better

2006-02-04 05:17  vapier

	* bin/dodir: Simon Stelling writes in Bug 121317:
	  currently, the do* scripts don't exit with a non-zero status when
	  a critical
	  command fails, except if it is the last one. install as much as
	  possible, then exit appropriately.

2006-02-04 03:38  jstubbs

	* bin/ebuild.sh, bin/emerge, cnf/etc-update.conf, pym/portage.py:
	  Remove all bug references

2006-02-04 03:06  jstubbs

	* bin/emerge: Add back emerge list header hiding when --quiet is
	  used.

2006-02-03 23:54  antarus

	* cnf/etc-update.conf: Fix bug #86067. Thanks to J\xc3\xbcrgen
	  H\xc3\xb6tzel <gentoo@hoetzel.info> for the emacs command

2006-02-03 23:08  antarus

	* bin/emerge: Fix for bug #119049

2006-02-03 17:47  antarus

	* bin/emerge: Shout out to RiverRat for reporting, fixup the output
	  to use the correct verbs, disable tree output for fetching since
	  it does not work.

2006-02-03 17:22  antarus

	* bin/emerge: Minor fixups with spelling, Thanks to Benno
	  Schulenberg <benno@nietvergeten.nl>, bug # 110382

2006-02-03 16:55  antarus

	* pym/emergehelp.py: This should have been excluded...

2006-02-03 16:52  antarus

	* bin/emerge, pym/emergehelp.py, pym/portage.py: Thanks to Benno
	  Schulenberg <benno@nietvergeten.nl> for the spelling/grammar
	  fixes, bug #80754

2006-02-03 05:14  ferringb

	* cnf/make.conf.alpha, cnf/make.conf.amd64, cnf/make.conf.arm,
	  cnf/make.conf.hppa, cnf/make.conf.ia64, cnf/make.conf.mips,
	  cnf/make.conf.ppc, cnf/make.conf.ppc64, cnf/make.conf.s390,
	  cnf/make.conf.sparc, cnf/make.conf.x86: confcache updates...

2006-02-03 05:12  ferringb

	* cnf/make.conf: confcache make.conf example...

2006-02-03 05:09  ferringb

	* man/make.conf.5: FEATURES="confcache" addition

2006-02-03 05:08  ferringb

	* NEWS, bin/ebuild.sh, pym/portage.py: confcache, baby.

2006-02-03 03:09  vapier

	* bin/prepallstrip: grab some fixes from prepstrip script

2006-02-03 03:08  vapier

	* bin/prepallinfo: style touchups

2006-02-03 03:07  vapier

	* bin/prepallman: exit with proper status rather than always 0

2006-02-03 01:54  vapier

	* pym/portage.py: s/cronological/chronological/ for you anal peeps

2006-02-02 16:04  antarus

	* bin/emerge: Revert change in -r2611, re-opening bug 121106. The
	  fix is not that simple...as usual :)

2006-02-02 12:58  ferringb

	* bin/emerge-webrsync: optional tarsync integration; thanks to
	  Johannes Fahrenkrug for doing the legwork.

2006-02-02 11:58  ferringb

	* bin/emerge-webrsync: added PORTAGE_NICENESS support.

2006-02-02 10:41  ferringb

	* bin/ebuild.sh: bug #116681 , better handling of
	  MULTILIB_STRICT_EXEMPT

2006-02-01 23:05  vapier

	* bin/ebuild.sh: touchup syntax/output of new $D/$D check

2006-02-01 20:56  solar

	* bin/ebuild.sh: - portage allows installing files into ${D}/${D}.
	  Simon Stelling bug #120941

2006-02-01 03:30  vapier

	* bin/repoman: touchup the way options are declared to prevent
	  bitrot, add a --quiet option and use it, and make the help output
	  useful

2006-01-31 23:28  antarus

	* bin/emerge: Fix for bug #121106, resume + skipfirst + pretend
	  would print the skipped package.
	  Thanks to Andrew D. Keyser (aka Legoguy) <andrewdk@sbcglobal.net>
	  for reporting.

2006-01-31 07:43  antarus

	* man/emerge.1, man/portage.5: Change the usage of a "class" of
	  packages into a "set" of packages.
	  world and system are now "sets" instead of "classes".

2006-01-31 06:33  zmedico

	* bin/emerge: remove red coloring from right ')' in 'dependency
	  required by' message reported by cardoe

2006-01-30 12:35  zmedico

	* bin/emerge: get --nospinner from myopts instead of sys.argv so
	  that it works with EMERGE_DEFAULT_OPTS

2006-01-30 04:19  vapier

	* bin/ebuild.sh: Chris PeBenito writes in #110857 for SELinux
	  updates:
	  1) change ebuild.sh code to use selinux configuration to
	  determine where the
	  file contexts are, rather than a setting in make.conf.
	  2) change portage support to a FEATURE rather than USE. This
	  enables the user
	  to disable the portage support if their setup is broken, while
	  still enabling
	  selinux support in any packages they might merge. I was going to
	  submit a patch
	  for portage.py, but the place it needs to be changed (line 7234
	  in rev
	  1.524.2.76/2.0.53_rc6), features (the variable) isn't filled yet,
	  so I was
	  unsure of the proper fix.

2006-01-29 14:31  vapier

	* bin/prepstrip: make sure all .debug files have the executable bit
	  cleared

2006-01-29 11:51  jstubbs

	* pym/portage.py, pym/portage_dep.py: Allow || ( ) deps that have
	  no default atoms (or turn out empty).
	  Released in 2.1_pre4-r1. #120803

2006-01-28 00:46  jstubbs

	* RELEASE-NOTES: Add note about --alphabetical

2006-01-28 00:42  jstubbs

	* bin/emaint: Disable the vdb check until it can be migrated to
	  filter-env.

2006-01-27 19:18  ferringb

	* bin/emaint: add the "/usr/lib/portage/pym" insert to deal with
	  osx (bit of a hack, but tiz the convention currently).

2006-01-27 05:02  vapier

	* bin/env-update, pym/portage.py: make env-update a bit more
	  flexible by adding a --no-ldconfig option

2006-01-27 04:57  vapier

	* pym/portage.py: touchup if logic

2006-01-27 04:51  jstubbs

	* bin/emerge, man/emerge.1, pym/emergehelp.py: Add support for an
	  --alphabetical option to emerge that restores the old
	  ordering of flags in --pretend output.

2006-01-27 04:50  jstubbs

	* bin/emerge, cnf/make.conf, cnf/make.conf.alpha,
	  cnf/make.conf.amd64, cnf/make.conf.arm, cnf/make.conf.hppa,
	  cnf/make.conf.ia64, cnf/make.conf.mips, cnf/make.conf.ppc,
	  cnf/make.conf.ppc64, cnf/make.conf.s390, cnf/make.conf.sparc,
	  cnf/make.conf.x86, cnf/make.conf.x86-fbsd, man/make.conf.5: Add
	  support for EMERGE_DEFAULT_OPTS configuration variable for
	  setting
	  options that emerge always considers to be specified.

2006-01-27 04:43  jstubbs

	* bin/repoman: Added a check for obsolete virtual/x11 usage in
	  dependencies.

2006-01-27 04:07  vapier

	* bin/ebuild.sh: m68k generates proper gnu stack markings

2006-01-25 11:39  genone

	* bin/repoman: Fix typo in error description

2006-01-24 17:41  genone

	* bin/repoman, man/repoman.1: Add a warning for KEYWORDS=-*

2006-01-24 17:00  genone

	* cnf/make.globals: Disable auto-use prior to code removal

2006-01-24 15:20  genone

	* bin/emaint: fix possible path and vdb location issues

2006-01-24 15:19  jstubbs

	* bin/repoman: Add further checks for correct DEPEND syntax

2006-01-24 15:16  jstubbs

	* pym/portage_dep.py: Provide more information with DEPEND syntax
	  exceptions

2006-01-24 14:54  jstubbs

	* pym/portage.py, pym/portage_dep.py: Move DEPEND empty sublist
	  processing back into use_reduce

2006-01-24 03:09  vapier

	* man/make.conf.5: patch by Alec Warner to document CCACHE_DIR
	  #65492

2006-01-23 22:39  vapier

	* bin/prepstrip: fix prepstrip after previous commit as pointed out
	  by Olivier Crete

2006-01-23 10:58  ferringb

	* bin/ebuild.sh: fixed up dump_trace, courtesy of spyderous

2006-01-23 07:55  ferringb

	* bin/ebuild.sh: Added usage info to dump_trace, and credit for the
	  code (eselect authors)

2006-01-23 07:49  ferringb

	* bin/ebuild.sh: updated diefunc "post the relevant info" msg

2006-01-23 07:48  ferringb

	* bin/ebuild.sh: bash tracebacks. :)

2006-01-23 01:29  vapier

	* bin/emerge: accept --skip-first and --skipfirst

2006-01-23 00:01  ferringb

	* pym/portage.py: verify_all occasionally returns longs rather then
	  strings.
	  Wouldn't be a problem, but the writemsg code isn't written to do
	  conversions on the fly... so, made it so it was.

2006-01-22 21:26  genone

	* bin/emaint: fixup

2006-01-22 21:05  genone

	* bin/ebuild.sh, bin/emaint: store all auxdbkeys in vdb and add a
	  new emaint target to create missing entries

2006-01-20 02:38  vapier

	* bin/ebuild.sh: also catch leading null runpaths

2006-01-18 11:56  vapier

	* cnf/make.conf, cnf/make.conf.alpha, cnf/make.conf.amd64,
	  cnf/make.conf.arm, cnf/make.conf.hppa, cnf/make.conf.ia64,
	  cnf/make.conf.mips, cnf/make.conf.ppc, cnf/make.conf.ppc64,
	  cnf/make.conf.s390, cnf/make.conf.sparc, cnf/make.conf.x86,
	  cnf/make.conf.x86-fbsd: s/maketest/test/

2006-01-17 04:15  vapier

	* bin/env-update: add -h/--help

2006-01-15 19:23  vapier

	* bin/dispatch-conf: fix traceback when EDITOR is not set in the
	  env #118976 by Paul Varner

2006-01-15 03:31  vapier

	* bin/prepstrip: fix inverted strip skip logic

2006-01-13 11:03  vapier

	* bin/repoman, man/make.conf.5: add FEATURES=assume-digests so i
	  dont have to keep hashing all the glibc tarballs whenever i want
	  to commit

2006-01-13 07:58  vapier

	* bin/prepstrip: clean up coding style/quoting, figure out what
	  objdump to run same as strip, and add support for STRIP_MASK

2006-01-12 11:16  ferringb

	* bin/emaint: don't inline code, do __name__=="__main__" so the
	  module can be used instead of strictly called.

2006-01-10 22:44  solar

	* bin/prepstrip: - dont save debug info twice

2006-01-09 13:07  ferringb

	* pym/portage.py: Always call prerm/postrm regardless if the
	  previous install had contents or not.

2006-01-09 06:29  vapier

	* man/make.conf.5: fix display of ebuild(1)

2006-01-09 06:27  vapier

	* bin/emerge: get rid of the word "downloaded" in the search output
	  because some people cant seem to handle it #81501

2006-01-09 02:51  ferringb

	* man/emerge.1: reorganization and a bit of clean up from Benno
	  Schulenberg , bug 84285

2006-01-09 02:32  vapier

	* bin/ebuild.sh: handle cross-compilers as well

2006-01-08 18:46  ferringb

	* pym/portage.py: fixed the '/' stray char output

2006-01-08 12:41  ferringb

	* bin/portageq: bug 118191 , puke properly when no args to envvar
	  are supplied.

2006-01-08 04:45  vapier

	* man/portage.5: add another common example for package.provided

2006-01-08 02:29  genone

	* NEWS: s/checksums/manifests/

2006-01-08 02:21  genone

	* NEWS: slightly improve news

2006-01-08 01:57  genone

	* pym/portage_checksum.py, pym/portage_const.py: reenable
	  multi-hash and make error message a bit more useful

2006-01-07 23:48  ferringb

	* pym/portage.py: bug 117440, added PORTAGE_ACTUAL_DISTDIR var to
	  make cvs/svn eclasses play nice since they're not part of our
	  SRC_URI scheme (yet).

2006-01-07 13:13  solar

	* bin/prepstrip: - FEATURES=installsources from Olivier Crete an
	  extention of splitdebug for better debugging when debugedit is
	  installed. bug 112907

2006-01-06 05:58  vapier

	* bin/dosym: touchup style

2006-01-06 00:49  vapier

	* bin/ebuild.sh: generate a log file for users to attach to bug
	  reports

2006-01-06 00:48  vapier

	* bin/prepall: touchup output slightly

2006-01-05 23:54  solar

	* bin/emerge: - set noiselevel when quiet is enabled

2006-01-05 09:19  ferringb

	* bin/emerge: bug 117849, when parallel-fetch is on don't write out
	  the mtimedb in the fetcher process

2006-01-05 08:37  ferringb

	* bin/repoman: filter '(' and ')' tokens also when checking for
	  invalid atoms.

2006-01-05 08:10  ferringb

	* bin/repoman: bug 42299, detect and fail invalid atoms in *DEPEND

2006-01-05 07:26  ferringb

	* cnf/make.conf, cnf/make.conf.alpha, cnf/make.conf.amd64,
	  cnf/make.conf.arm, cnf/make.conf.hppa, cnf/make.conf.ia64,
	  cnf/make.conf.mips, cnf/make.conf.ppc, cnf/make.conf.ppc64,
	  cnf/make.conf.s390, cnf/make.conf.sparc, cnf/make.conf.x86,
	  cnf/make.conf.x86-fbsd: adress -> address spelling typo.
	  
	  Sidenote, really should remove the 101 files and centralize this
	  damn thing..

2006-01-05 07:09  ferringb

	* pym/portage.py: force a realpath call for complaints about digest
	  files; better resolution is resetting DISTDIR post doebuild (see,
	  we really need
	  to break the beast up or decorate it), but this resolves 117264
	  in the meantime.

2006-01-05 05:33  ferringb

	* pym/portage.py, pym/portage_dep.py: 'k. reverted use_reduce
	  filtering of empty lists (was resulting in ["||"] as elements,
	  which are invalid), added
	  a recursive filter of empty sets/resolved || and && nodes; in the
	  process, keeps portage from using an empty bool as a satisfier in
	  || () restriction sets.

2006-01-05 05:24  vapier

	* bin/ebuild.sh: only complain about executable stacks on
	  architectures that actually support them

2006-01-05 03:56  vapier

	* bin/archive-conf, bin/chkcontents, bin/clean_locks,
	  bin/dispatch-conf, bin/dobin, bin/doconfd, bin/dodir, bin/dodoc,
	  bin/doenvd, bin/doexe, bin/dohard, bin/dohtml, bin/doinfo,
	  bin/doinitd, bin/doins, bin/dojar, bin/dolib, bin/dolib.a,
	  bin/dolib.so, bin/doman, bin/domo, bin/dopython, bin/dosbin,
	  bin/dosed, bin/dosym, bin/ebuild, bin/ebuild.sh, bin/emake,
	  bin/emerge, bin/emerge-webrsync, bin/env-update,
	  bin/env-update.sh, bin/etc-update, bin/find-requires,
	  bin/fix-db.py, bin/fixdbentries, bin/fixpackages, bin/fowners,
	  bin/fperms, bin/md5check.py, bin/md5check.sh, bin/mirror.py,
	  bin/newbin, bin/newconfd, bin/newdoc, bin/newenvd, bin/newexe,
	  bin/newinitd, bin/newins, bin/newlib.a, bin/newlib.so,
	  bin/newman, bin/newsbin, bin/pkgmerge, bin/pkgmerge.new,
	  bin/pkgname, bin/portage_gpg_update.sh, bin/portageq,
	  bin/prepall, bin/prepalldocs, bin/prepallinfo, bin/prepallman,
	  bin/prepallstrip, bin/prepinfo, bin/preplib, bin/prepman,
	  bin/prepstrip, bin/quickpkg, bin/regenworld, bin/repoman,
	  bin/xpak: update copyright years

2006-01-05 03:41  vapier

	* bin/fowners, bin/fperms: sync with savior branch

2006-01-04 08:57  ferringb

	* pym/portage_dep.py: el buggo pointed out via spyderous.
	  || ( a ( x? ( b ) y? ( c ) ) )
	  -x -y , was resulting in || ( a () )
	  
	  the main consumer of this, portage.dep_check is stupid, and was
	  assuming () was valid.
	  It's not, obviously.
	  
	  Long term bug, around in at least .51 . Should correct dep_check
	  handling of it also, but no reason to be
	  handing () in the result lists also.

2006-01-04 01:50  vapier

	* bin/preplib: use an echo rather than ewarn

2006-01-03 05:00  vapier

	* bin/isolated-functions.sh: re-import the e* functions from
	  baselayout since these ones are broken #117186

2006-01-03 03:27  vapier

	* bin/isolated-functions.sh: fix broken quoting

2006-01-03 03:25  vapier

	* bin/isolated-functions.sh: if youre going to rip code from
	  baselayout, you really need to do it from an up-to-date version
	  ... so re-import the KV functions and the color code so it doesnt
	  suck

2006-01-01 19:14  solar

	* pym/portage.py: - added writemsg_stdout function and make portage
	  use it internally

2006-01-01 19:12  solar

	* pym/portage_util.py: - added writemsg_stdout function and make
	  portage use it internally

2006-01-01 05:57  jstubbs

	* pym/output.py: Kill the double xterm title codes.

2005-12-31 05:27  jstubbs

	* bin/ebuild.sh: Add CTARGET back into the list of vars to be
	  written out for installed
	  packages.

2005-12-31 05:25  jstubbs

	* pym/portage.py: Redo virtuals code that relied on unique_array
	  keeping the original order.

2005-12-31 05:19  jstubbs

	* bin/ebuild.sh: BUILDIR => BUILDDIR

2005-12-31 05:05  jstubbs

	* bin/ebuild.sh: Update the `touch .unpacked` error message to
	  output the actual path in order
	  to match the other touch error messages.

2005-12-31 04:20  jstubbs

	* man/emerge.1: Updated --pretend example to document new USE flag
	  displays.

2005-12-31 03:58  jstubbs

	* bin/emerge: Unify the -p and -pv USE display functions and IUSE
	  additions in yellow
	  followed by a "%" character.

2005-12-30 07:19  jstubbs

	* pym/portage.py, pym/portage_checksum.py: Check and raise an
	  exception when a hash function is missing during digesting.

2005-12-30 06:48  jstubbs

	* pym/elog_modules/mod_mail.py: Split email addresses on the final
	  "@" so as to allow "@" within the username
	  portion of the address.

2005-12-30 06:37  jstubbs

	* pym/portage.py: Convert digest failure information to strings for
	  printing.

2005-12-30 04:10  jstubbs

	* pym/portage.py: Don't attempt to chmod/chown unless running as
	  root when calling simple
	  ebuild functions.

2005-12-30 04:02  jstubbs

	* pym/portage.py: Don't download distfiles when manifesting.

2005-12-30 03:34  jstubbs

	* bin/emerge: Don't print emaint warning for masked/non-existant
	  packages. When using
	  --verbose, print a warning for those packages.

2005-12-30 03:25  jstubbs

	* bin/emaint: Remove tests for masked/unavailable packages.

2005-12-29 11:03  vapier

	* bin/repoman: tweak multiline whitespace display cause i'm anal
	  like that

2005-12-27 13:15  ferringb

	* pym/portage_util.py: revert down to 2.3 python requirement via
	  avoiding sorted

2005-12-27 06:12  ferringb

	* pym/portage_exec.py: whitespace corrections, single space between
	  funcs, double between class blocks...

2005-12-27 06:09  ferringb

	* pym/portage_util.py: linear unique_array lifted from saviour,
	  lifted from a python cookbook.

2005-12-27 06:07  ferringb

	* pym/portage.py, pym/portage_util.py: ongoing portage_util
	  cleanup.
	  removed grabint, writeint;
	  rewrote stack_list to use a dict rather then doing a crapload of
	  linear searches.

2005-12-27 05:49  ferringb

	* pym/portage.py, pym/portage_util.py: bye bye crap grab_multiple
	  function.
	  list comp just as easily handles it.

2005-12-26 23:31  jstubbs

	* bin/emerge: Modify portage's settings object rather than the
	  original env.

2005-12-26 22:01  solar

	* man/make.conf.5: - add splitdebug FEATURE to make.conf.5

2005-12-26 20:09  solar

	* bin/emerge: - export env variable PORTAGE_QUIET when --quiet
	  option is passed

2005-12-26 16:11  jstubbs

	* bin/portageq: Sanitize the root parameter specified to portageq.

2005-12-26 16:03  solar

	* bin/ebuild.sh: - add back in 1 newline after trimming all the
	  extraneous ones

2005-12-26 15:42  solar

	* bin/ebuild.sh: - update fatal qa error handling

2005-12-26 15:32  jstubbs

	* bin/portageq: Export the ROOT environment variable when using
	  functions that take a <root>

2005-12-26 07:40  ferringb

	* pym/portage.py: final cleanups for indirect distfiles, exempt
	  fetch phase also.

2005-12-26 07:20  ferringb

	* pym/portage.py: don't generate the distfiles indirection for
	  digest/manifest doebuild calls

2005-12-26 06:56  vapier

	* bin/ebuild.sh: quote a bit more

2005-12-26 06:55  vapier

	* bin/ebuild.sh, pym/portage.py: rename BUILDDIR to
	  PORTAGE_BUILDDIR

2005-12-26 06:29  ferringb

	* NEWS, bin/ebuild.sh, pym/portage.py: 'DISTFILES indirection;
	  access $BUILDDIR/distdir instead of $DISTFILES , thus blocking
	  unstated access.

2005-12-25 21:31  solar

	* bin/ebuild.sh: - consolidate noman noinfo nodoc into a simple
	  loop and use INSTALL_MASK. Add debug to default list of
	  MULTILIB_STRICT_EXEMPT=

2005-12-25 12:41  jstubbs

	* bin/dohtml: Make dohtml return 1 when a passed file/dir doesn't
	  exist.

2005-12-25 11:00  jstubbs

	* bin/emerge: Don't show any use flags when using --quiet.

2005-12-25 10:58  jstubbs

	* bin/emerge: Don't try to resolve deps of blockers when using
	  --onlydeps.

2005-12-25 10:49  jstubbs

	* pym/portage.py, pym/portage_dep.py: Remove the now unnecessary
	  USE="*" hack.

2005-12-25 10:37  jstubbs

	* pym/portage.py: Allow overlays and the user profile to extend
	  arch.list.

2005-12-25 10:20  solar

	* bin/ebuild.sh: - trim extraneous spaces tabs form feeds and
	  newlines

2005-12-25 10:17  jstubbs

	* bin/repoman: Check for adequate spacing around "||", "(" and ")"
	  tokens.

2005-12-25 10:05  ferringb

	* bin/ebuild.sh: register_death_hook -> register_die_hook
	  thanks to axxo for the catch.

2005-12-25 10:01  ferringb

	* RELEASE-NOTES: convert release notes over to upgrade information

2005-12-25 09:58  ferringb

	* NEWS: news file, releasenotes data schlopped into it, plus couple
	  of updates.

2005-12-25 09:42  ferringb

	* bin/ebuild.sh: renaming the death hook registration func to
	  register_die_hook

2005-12-25 09:33  solar

	* bin/emerge: - initial commit of post --sync hook. postsync.d to
	  come at a later time

2005-12-25 09:11  jstubbs

	* pym/portage.py: Include symlinks themselves when checking
	  collision-protect.

2005-12-25 09:08  jstubbs

	* pym/portage.py: Skip to next directory after one has been removed
	  in unmerge().

2005-12-25 09:01  solar

	* bin/ebuild.sh: - use -n syntax like most of ebuild.sh

2005-12-25 08:39  jstubbs

	* pym/portage.py: Only do one round of directory removal attempts.
	  As symlinks are now removed
	  before directory removal begins, more than one round is
	  unnecessary.

2005-12-25 08:31  solar

	* bin/ebuild.sh: - remove intermediate var entry

2005-12-25 08:04  jstubbs

	* pym/portage.py: Factor out mtimedb saving code from portageexit()
	  into a new commit_mtimedb
	  function and call that rather than portageexit() after package
	  updates.

2005-12-25 07:42  jstubbs

	* pym/output.py: Use the env's PROMPT_COMMAND for resetting xterm
	  titles when available.
	  Otherwise use ${user}@${hostname}:${cwd}.

2005-12-25 07:27  solar

	* bin/ebuild.sh: - only record vdb entries when the value is non
	  null

2005-12-25 07:04  jstubbs

	* pym/portage.py: Fix mishandling of masked atoms in || ( .. )
	  dependencies.

2005-12-25 04:41  jstubbs

	* pym/portage_util.py: Fix typo in writeints()

2005-12-24 09:56  ferringb

	* pym/portage_util.py: bug 114133, write a tmp file then rename it
	  for write* funcs.
	  This removes the possibility of out of space errors to occur, and
	  blocks unexpected flat out bails (segfault fex) from hosing
	  important files.

2005-12-24 09:20  jstubbs

	* pym/portage_const.py: Limiting hashing to MD5 only until
	  behaviour improves in the case of the
	  needed python module not being installed. #116485

2005-12-24 09:17  jstubbs

	* pym/portage.py: Treat symlinks similar to regular files when
	  unmerging and remove them if the
	  mtime matches rather than only removing them if the target is no
	  longer valid.

2005-12-24 09:11  jstubbs

	* bin/emaint: Fix an incorrect variable reference triggered when
	  using --fix and --check
	  together. Patch by Ashley Stovall. # 116576

2005-12-23 12:38  jstubbs

	* bin/emerge: Fix an incorrect comparision self-comparison in USE
	  change calculation.

2005-12-23 11:55  jstubbs

	* bin/ebuild: Check if the specified package follows correct syntax
	  and error out if it
	  doesn't.

2005-12-23 02:46  jstubbs

	* pym/portage.py, pym/portage_util.py: Generalize
	  portage_util.dump_traceback() and make use of it if importing
	  a cache module fails.

2005-12-22 06:56  ferringb

	* pym/portage.py: if you're going to print an exception, bind the
	  exception when you catch it

2005-12-22 03:47  vapier

	* man/dispatch-conf.1, man/ebuild.1, man/ebuild.5, man/emaint.1,
	  man/emerge.1, man/env-update.1, man/etc-update.1,
	  man/make.conf.5, man/portage.5, man/quickpkg.1, man/repoman.1:
	  update date/version to stop people from pointless whining

2005-12-22 03:42  vapier

	* man/emerge.1, man/make.conf.5, man/portage.5: finish syncing
	  manpages between trunk/savior

2005-12-22 02:21  vapier

	* man/ebuild.5: quick sync manpages between trunk/savior

2005-12-21 16:10  jstubbs

	* bin/ebuild.sh: Added /dev/{stdin,stdout,stderr} to the default
	  sandbox permissions.

2005-12-21 16:04  jstubbs

	* bin/ebuild.sh: Mention bugs.gentoo.org when asking the user to
	  post config.log.

2005-12-21 16:00  jstubbs

	* bin/emaint: Separate masked and unavailable ebuilds and report
	  that masked ebuilds can be
	  handled with package.keywords or package.unmask when they are
	  detected.

2005-12-21 15:49  jstubbs

	* pym/portage.py: Missing return on load_mod.

2005-12-21 15:43  jstubbs

	* bin/emerge: Make --skipfirst imply --resume.

2005-12-21 15:35  jstubbs

	* pym/portage.py: Check that cache modules load correctly and fail
	  if they don't.

2005-12-21 15:27  solar

	* bin/emerge: - make quiet really mean it

2005-12-21 15:12  jstubbs

	* bin/emerge: USE flags in the to-be-installed package's IUSE but
	  not in currently installed
	  package's IUSE and not enabled were not being shown. USE_EXPAND
	  variable names
	  were being shown in lower case rather than upper case.

2005-12-21 14:57  jstubbs

	* bin/emerge: Don't show enabled flags when not using --verbose if
	  they haven't changed
	  since the last emerge. Show enabled flags in red rather than
	  green if the
	  previously merged package didn't support them.

2005-12-21 14:50  jstubbs

	* bin/emerge: Push portage to the top of the system and world lists
	  when updating.

2005-12-21 14:48  jstubbs

	* bin/emerge, pym/getbinpkg.py, pym/portage.py: Prevent traceback
	  on fetcher failure and properly check for error conditions
	  when fetching remote binary packages. #116276

2005-12-21 14:46  jstubbs

	* pym/portage_dep.py: Fix an incorrect positional check in *DEPEND
	  parsing.

2005-12-21 14:16  jstubbs

	* man/make.conf.5: Document the full-path-to-executable requirement
	  on FETCHCOMMAND and
	  RESUMECOMMAND as well as the relevant substitution placeholders.

2005-12-21 00:09  vapier

	* bin/prepstrip: dont use string substitution as this operation can
	  be quite slow on older bash versions (<=3.0) #116111

2005-12-20 14:49  jstubbs

	* pym/portage.py: Remove old debugging related error message.

2005-12-20 01:37  genone

	* bin/mirror.py: update to work with the verbose error messages

2005-12-20 01:31  genone

	* RELEASE-NOTES: update with multi-hash stuff and verbose digest
	  errormessages, remove some not-so-important information.

2005-12-19 23:58  genone

	* pym/portage.py, pym/portage_checksum.py: Make digest errors more
	  verbose

2005-12-19 22:29  genone

	* pym/portage.py, pym/portage_checksum.py, pym/portage_const.py:
	  adding multi-hash support

2005-12-19 17:53  genone

	* cnf/make.conf, cnf/make.conf.alpha, cnf/make.conf.amd64,
	  cnf/make.conf.arm, cnf/make.conf.hppa, cnf/make.conf.ia64,
	  cnf/make.conf.mips, cnf/make.conf.ppc, cnf/make.conf.ppc64,
	  cnf/make.conf.s390, cnf/make.conf.sparc, cnf/make.conf.x86,
	  cnf/make.conf.x86-fbsd: quote vars inside PORTAGE_ELOG_COMMAND

2005-12-19 17:39  genone

	* pym/elog_modules/mod_custom.py, pym/elog_modules/mod_save.py: fix
	  custom module (bug #116024)

2005-12-19 16:01  jstubbs

	* pym/portage.py: Make the dep_zapdeps a little bit more readable.

2005-12-19 14:27  jstubbs

	* pym/portage.py: Check if atoms are masked when scanning for which
	  || ( ) atom/list to use.

2005-12-19 14:00  jstubbs

	* pym/portage.py: Removed the now unnecessary dep_opconvert portage
	  function.

2005-12-19 12:21  ferringb

	* pym/portage.py: further type -> isinstance cleanup in dep crap

2005-12-19 12:20  ferringb

	* pym/portage.py: moved cpv funcs out of the block of dep funcs,
	  removed some type usage (use isinstance instead), and cleaned up
	  some of the
	  more c like code so it's pythonic...

2005-12-19 11:48  ferringb

	* cnf/make.conf: use spaces for space aligned text (kind of a duh)

2005-12-19 11:16  ferringb

	* cnf/make.conf: added parallel-fetch in...

2005-12-18 16:41  jstubbs

	* bin/emerge: Add USE display when --verbose is not used. Only
	  flags that are enabled,
	  have changed or are new but disabled are shown.

2005-12-18 16:13  jstubbs

	* bin/emerge: Restore previous --verbose USE flag style and prepare
	  for a minimal flag
	  display for when not using --verbose.

2005-12-18 14:02  jstubbs

	* bin/emerge: Quick hack to work around the extra package lookups
	  in porttree when checking
	  for issues in the world file. This restores the number of lookups
	  to be equal
	  with xcreate before it was refactored. Further refactoring will
	  improve style.

2005-12-18 11:38  ferringb

	* pym/cache/anydbm.py: removed unnecessary reconstruct_eclasses
	  import

2005-12-18 11:07  ferringb

	* bin/emerge, man/make.conf.5, pym/portage.py: parallel-fetch,
	  baby.

2005-12-18 11:02  ferringb

	* pym/cache/anydbm.py, pym/cache/template.py: couple of tweaks.
	  fixed up whitespacing for template, added a default __contains__
	  func to the template,
	  finally added serialize_eclasses class attribute; controls
	  whether __(get|set)item__ do _eclasses_ mangling on their own, or
	  leave it to the child class.
	  
	  updated anydbm to handle serializing itself

2005-12-17 17:13  jstubbs

	* pym/cache/anydbm.py: Unpack the _eclasses_ value as it's packed
	  by the database template's __setitem__ method.

2005-12-17 10:43  jstubbs

	* bin/emerge: Check if packages listed in the --resume list have
	  been removed from the
	  relevant trees and report the problem. #103564

2005-12-17 07:48  jstubbs

	* ChangeLog, ChangeLog.000: Remove old ChangeLog files as they will
	  now be auto-generated from commit
	  messages.

2005-12-17 05:59  jstubbs

	* bin/emerge, pym/portage.py: Check if atoms with matching keys
	  will result in higher versioned packages
	  when dealing with || ( ) type dependencies. #100876

2005-12-17 05:40  jstubbs

	* bin/prepall: Remove duplicate if statement.

2005-12-17 05:34  jstubbs

	* bin/ebuild: Fix missing ":" on except line.

2005-12-17 03:32  vapier

	* bin/preplib: deprecate preplib

2005-12-17 02:26  jstubbs

	* bin/emerge: Add --verbose to the list of options that need to be
	  removed from those
	  pulled from the mtimedb when using --resume. Patch by Alec Warner
	  (antarus). Code-style cleanups. #74990

2005-12-17 02:20  vapier

	* man/ebuild.5: remove preplib/preplib.so docs

2005-12-17 02:19  vapier

	* bin/preplib.so: nothing uses it so no point in keeping it ...
	  plus the ldconfig calls are glibc specific

2005-12-17 02:14  jstubbs

	* bin/emerge: Fail if not running as root and --resume is
	  attempted.
	  Patch by Alec Warner (antarus). #114550

2005-12-17 02:13  vapier

	* bin/prepall: sync with savior branch

2005-12-17 02:00  vapier

	* bin/ebuild.sh: add an add-ebuild-death-hook func so people dont
	  need to know about setting some variable

2005-12-17 01:55  jstubbs

	* bin/ebuild: Catch KeyError exception throw from aux_get.

2005-12-17 00:48  vapier

	* bin/ebuild.sh: touchup TEXTREL warning some more #115727

2005-12-17 00:29  vapier

	* bin/ebuild.sh: cleanup textrel qa notice

2005-12-16 15:55  jstubbs

	* bin/emerge: Prevent masked use flags from being shown in
	  packages' flag list.
	  Colorize negated flags if they have changed. Code style cleanups.

2005-12-16 15:40  jstubbs

	* bin/emerge: Change unmatched ' to " in use flag output.

2005-12-15 14:58  solar

	* bin/prepstrip: - initial commit of split elf debug code

2005-12-15 06:03  vapier

	* pym/portage.py: ferringb says: i pity the fool who doesnt use
	  better style

2005-12-15 04:51  vapier

	* pym/portage.py: Bug 115519 by Diego Petteno: Fix ldconfig command
	  ordering, add dragonfly support

2005-12-14 16:25  jstubbs

	* pym/portage_const.py: Add USE_EXPAND_HIDDEN so that users can
	  extend it without killing off
	  profile settings.

2005-12-14 06:28  ferringb

	* pym/portage_exec.py: Use soft limit, not hard limit.

2005-12-13 15:51  jstubbs

	* pym/portage.py: Prevent USE_EXPAND variables from bypassing
	  use.mask

2005-12-13 15:51  jstubbs

	* bin/emerge: Separate and format USE_EXPAND based variables found
	  in IUSE.

2005-12-11 05:05  jstubbs

	* pym/portage.py: Removed the specific check against PORTAGE_CALLER
	  with regard to fetching.

2005-12-10 20:02  vapier

	* bin/portageq: add a -v (verbose) option to envvar for easily
	  generating output for use in bash scripts

2005-12-10 02:09  vapier

	* pym/portage.py: fix the fetch/digest shortcuts so they dont break
	  normal runs of emerge/ebuild

2005-12-10 02:08  vapier

	* bin/emerge: make the --quiet option useful, touchup whitespace in
	  a few places, and add --cols as short for --columns for retards
	  like myself who cant remember how to spell

2005-12-10 02:07  vapier

	* bin/portageq: touchup in general, add support for -h/--help, and
	  delay importing portage so using -h/--help doesnt blow goats
	  because portage was imported

2005-12-10 01:59  vapier

	* man/ebuild.5: fix whitespace in depend atom as point out by chkno
	  #114956

2005-12-10 01:39  jstubbs

	* bin/repoman: Drop the virtuals related fatal errors down to
	  warnings.

2005-12-09 03:27  vapier

	* bin/env-update.sh: dont run depscan.sh anymore

2005-12-09 03:22  vapier

	* bin/emerge: eat whitespace -> YUM

2005-12-09 02:03  vapier

	* pym/portage.py: only digest/fetch files when the operation
	  warrants it

2005-12-07 23:43  jstubbs

	* bin/ebuild.sh, pym/portage.py: s/series/serious/ mistake

2005-12-07 23:22  vapier

	* bin/ebuild.sh: run all elf QA checks before aborting, and all
	  some packages (like binary-only) to prevent aborting since there
	  isnt much we can do about those craptastic developers

2005-12-07 00:55  vapier

	* bin/ebuild.sh: kill dead whitespace and make function def style
	  consistent

2005-12-07 00:51  vapier

	* bin/ebuild.sh, pym/portage.py: cleanse maketest once and for all

2005-12-07 00:49  vapier

	* bin/ebuild.sh: get rid of duplicated Test phase message in
	  src_test()

2005-12-07 00:47  vapier

	* bin/ebuild.sh: add a status message to src_compile() like
	  src_unpack()

2005-12-07 00:46  vapier

	* bin/ebuild.sh: use emake -j1 in default src_test() instead of
	  make

2005-12-07 00:43  vapier

	* pym/portage.py: if PORT_LOGDIR doesnt exist, then try to create
	  it automagically

2005-12-05 21:24  genone

	* RELEASE-NOTES: add a user-friendly list of changes

2005-12-01 08:04  vapier

	* man/repoman.1: Saleem Abdulrasool: document IUSE.invalid

2005-11-30 07:07  genone

	* pym/portage.py, pym/portage_util.py: add an option to grab* so
	  that if they're given a directory they'll recursively find all
	  files in it and treat them like one big file. Also make use of
	  this option for most of the config files.

2005-11-29 06:00  vapier

	* bin/ebuild: give a slightly better usage message

2005-11-29 03:44  vapier

	* man/ebuild.1: compnerd: document manifest action

2005-11-27 15:47  jstubbs

	* bin/ebuild.sh, bin/portageq: Kill of generation of CDEPEND for
	  binary and installed packages.
	  Patch by solar.

2005-11-27 08:52  vapier

	* bin/dodoc: Petteri says: exit with non-zero status if a file
	  wasnt found

2005-11-23 22:57  genone

	* pym/portage.py: kill stupid message about 'masked by -*'

2005-11-22 05:19  vapier

	* man/emerge.1: move --nocolor to OPTIONS instead of ACTIONS
	  #113225 by P Nienaber

2005-11-16 18:27  genone

	* ., bin, cnf, man, pym, pym/cache, pym/elog_modules, qa, qa/iuse,
	  spec, src, src/bsd-flags, src/python-missingos: Also ignore
	  compiled python files in all subdirs ;)

2005-11-15 19:28  genone

	* cnf/make.conf, cnf/make.conf.alpha, cnf/make.conf.amd64,
	  cnf/make.conf.arm, cnf/make.conf.hppa, cnf/make.conf.ia64,
	  cnf/make.conf.mips, cnf/make.conf.ppc, cnf/make.conf.ppc64,
	  cnf/make.conf.s390, cnf/make.conf.sparc, cnf/make.conf.x86,
	  cnf/make.conf.x86-fbsd: config additions for elog

2005-11-15 18:07  ferringb

	* bin/portageq: fix for portageq usage call (missing argv), via
	  Emanuele Giaquinta <e.giaquinta@glauco.it>

2005-11-15 00:28  vapier

	* man/emaint.1: manpage for emaint #112510

2005-11-13 16:07  genone

	* pym/portage.py, pym/portage_versions.py: Backport of version code
	  rewrite (bug 37406), should be completely backwards compatible
	  (and the algorithm has been tested on the whole tree multiple
	  times already).
	  Also adds some new features in version syntax like cvs version
	  prefixes (in the same package) and multiple suffixes.

2005-11-13 15:03  genone

	* pym/elog_modules/mod_syslog.py: minor glitch: EBUILD_PHASES is a
	  list, no need to split() it

2005-11-13 15:01  genone

	* pym/elog_modules, pym/elog_modules/__init__.py,
	  pym/elog_modules/mod_custom.py, pym/elog_modules/mod_mail.py,
	  pym/elog_modules/mod_save.py, pym/elog_modules/mod_syslog.py:
	  First bunch of simple logging modules.

2005-11-13 14:49  genone

	* bin/ebuild.sh, bin/isolated-functions.sh, pym/portage.py,
	  pym/portage_const.py: Add slightly modified elog_base patch
	  containing the basic framework for ebuild logging.

2005-11-13 11:28  vapier

	* pym/portage_data.py: add NetBSD to the BSD list #112393

2005-11-13 11:22  vapier

	* bin/ebuild.sh: tweak marking of D as readonly since we need to
	  play around with it in pkg_preinst

2005-11-13 08:57  ferringb

	* bin/emerge: don't do a sort if just doing percentage for emerge
	  --metadata

2005-11-13 00:26  jstubbs

	* pym/emergehelp.py: Documented `emerge --config` (#109496)

2005-11-13 00:20  jstubbs

	* bin/emaint: Added a description of emaint to `emaint --help`

2005-11-13 00:19  jstubbs

	* man/emerge.1: Documented `emerge --config` (#109496)

2005-11-09 20:06  ferringb

	* bin/ebuild.sh: pre/post hooks originally from 2.1, quick rewrite
	  by axxo for 2.0
	  Not to be used by ebuilds/eclasses (with the sole exception of
	  java eclass var reset till ebd is stabled), this is user hooks.

2005-11-09 12:56  jstubbs

	* bin/emerge: Limit --emptytree to only affect ${ROOT} (#34887)

2005-11-09 12:52  jstubbs

	* pym/portage_const.py: Add USE_EXPAND to INCREMENTALS (#105304)

2005-11-08 12:19  jstubbs

	* bin/emerge: Clean up reporting of the parent of an unsatisfied
	  atom.

2005-11-08 12:18  jstubbs

	* cnf/make.conf.ppc: Updated make.conf.ppc as requested by lu_zero
	  (#102656)

2005-11-06 08:36  jstubbs

	* .: Relocating current 2.0 branch to trunk.

2005-11-05 21:09  vapier

	* : clean up the last few sections so that they are consistent

2005-11-05 06:14  ferringb

	* : bye bye you decrepit POS cache implementation.

2005-11-05 06:13  ferringb

	* : integration chunk of the cache subsystem patch.
	  Will deal with UNUSED_0* after this

2005-11-05 06:09  ferringb

	* : replacement cache subsystem that's gestated in 2.1 and 3.0.
	  it rocks your world, baby.

2005-11-03 15:23  jstubbs

	* : Use os.path.splitext() rather than slicing strings to get at
	  file extensions. Patch by Jason Pepas.

2005-11-03 14:35  jstubbs

	* : Remove the now unused SANDBOX_PIDS_FILE

2005-11-03 14:34  jstubbs

	* : A couple of bug fixes, large cleanups, commenting and a bit of
	  dead code removal.

2005-11-03 14:30  jstubbs

	* : Start from 1st element rather than 2nd when doing checks on
	  *DEPEND

2005-11-02 23:56  vapier

	* : document sandbox and test RESTRICT

2005-11-02 23:55  vapier

	* : fix patch for PKGDIR #111222 by Armand

2005-11-02 23:54  vapier

	* : grab fixes from trunk

2005-11-02 23:54  vapier

	* : deprecate IMAGE

2005-11-01 01:33  vapier

	* : add support for unpacking lha files

2005-11-01 01:33  vapier

	* : merge tweaks from trunk

2005-11-01 01:33  vapier

	* : if STRIP begins with a -, make sure type doesnt error out

2005-11-01 01:32  vapier

	* : output a finished message

2005-10-30 07:23  jstubbs

	* : Add treetype instance member to dblink. Add treetype parameters
	  to
	  dblink.__init__() and merge(). Adjust all calls to dblink(),
	  merge()
	  and doebuild() to specify what tree should be used for aux_get().
	  Patch created with the help of Zac Medico (zmedico).

2005-10-29 04:25  jstubbs

	* : Don't add packages to the graph that are left as is due to
	  --upgrade-only.
	  This is necessary because later code assumes that packages are
	  either from
	  porttree or bintree whereas the --upgrade-only is almost
	  exclusively from
	  vartree.

2005-10-19 13:18  jstubbs

	* : Remove an extra space in a hyphenated string.

2005-10-19 13:15  jstubbs

	* : s/no/not/ typo

2005-10-16 15:25  jstubbs

	* : Removing --inject from emerge help summary

2005-10-16 14:27  jstubbs

	* : Clarifying the error message when path/to/ebuild is used on an
	  ebuild that isn't in a normal PORTDIR structure.

2005-10-16 08:46  jstubbs

	* : Typo :(

2005-10-16 08:25  jstubbs

	* : Return after detecting an invalid command line atom so as to
	  avoid spurious dependency errors.

2005-10-15 12:51  jstubbs

	* : Check if ebuild path is in vdb and check that vdb finds it okay
	  rather than always assuming "porttree".
	  If PORTDIR_OVERLAY needs to be adjusted, recheck to make sure the
	  ebuild is found correctly.
	  Pass which tree should be used to doebuild so that aux_get() are
	  performed on the correct tree.

2005-10-15 06:11  jstubbs

	* : Adjusting the clipping...

2005-10-15 06:09  jstubbs

	* : Adding svn revision property to portage.py's VERSION

2005-10-15 03:58  jstubbs

	* : Added missing quotes to stat_perms area of ebuild.sh (#93293)

2005-10-14 12:12  jstubbs

	* : Take the str() of the option passed to the callback so it can
	  be compared usefully later on.

2005-10-13 12:40  jstubbs

	* : Use realpath instead of abspath to ensure that symlinks are
	  correctly accounted for.

2005-10-11 12:46  jstubbs

	* : Set PORTDIR_OVERLAY (rather than PORTDIR) when portage wants to
	  use a different ebuild.
	  (Yields the same behaviour when stuff isn't missing in the same
	  tree and better behaviour when there is)

2005-10-11 07:34  ferringb

	* : reset EBUILD_DEATH_HOOKS prior to sourcing, due to stable's
	  re-sourcing of ebuild every run.
	  god stable env handling sucks. :/

2005-10-10 05:18  jstubbs

	* : Global var profiledir was only being set correctly when portage
	  was imported by emerge

2005-10-09 13:56  jstubbs

	* : cacheddir() would incorrectly return from the cache when the
	  cached entry is less than <mtime resolution> old. Fixed by axxo.

2005-10-07 13:08  jstubbs

	* : Rework to API behaviour rather than API documentation

2005-10-06 18:24  ferringb

	* : removing unused sandbox dirs.

2005-10-06 18:23  ferringb

	* : nuking this directory, since it's no longer used.

2005-10-06 14:10  jstubbs

	* : Restore the old behaviour that was dropped in the big
	  refactoring by making --update implied by world or system
	  targets.

2005-10-05 20:18  jstubbs

	* : Make --newuse switch on --update

2005-10-05 19:21  jstubbs

	* : Reverting behaviour of ebuild when FEATURES="-noauto"

2005-10-05 18:45  jstubbs

	* : Be sure to reset settings changes before each package is
	  merged.

2005-10-05 17:39  ferringb

	* : added EBUILD_DEATH_HOOKS , a way for ebuilds/eclasses to
	  register extra messages to spew if die is triggered

2005-10-05 17:33  jstubbs

	* : Restoring the metadata EAPI check code-style to match that of
	  the ebuild EAPI check.

2005-10-05 17:14  ferringb

	* : tweak, since the logic I just replaced was wrong (go me)

2005-10-05 17:11  ferringb

	* : save _mtime_ when EAPI nukes a cache entry, and a tweak to the
	  supported eapi check so it's lenient about spaces

2005-10-05 16:58  jstubbs

	* : Account for empty EAPI

2005-10-05 16:21  jstubbs

	* : Exclude distcc and and ccache setup from the "setup" phase.
	  Also make the redundant CCACHE_DIR default match what the python
	  side sets.

2005-10-05 15:49  jstubbs

	* : Make dispatch-conf's log file have 0600 permissions.

2005-10-05 15:42  jstubbs

	* : Add new tool to check and fix problems with the world file (to
	  begin with)

2005-10-05 15:40  jstubbs

	* : Suggest running emaint when problems with the world file are
	  detected.

2005-10-05 12:05  jstubbs

	* : Always return a list of the same length as the query in
	  vardbapi.aux_get()

2005-10-04 16:01  jstubbs

	* : Add path to utf-8 checks so that repoman doesn't break outside
	  of the package dir

2005-10-04 15:56  ferringb

	* : god this module sucked.
	  Removed all of the duplicate code.

2005-10-04 15:56  jstubbs

	* : Extra bracket typo :(

2005-10-04 15:17  jstubbs

	* : Removed the translation of aux_get exceptions to unsupported
	  eapi exceptions in doebuild (which led to a whole lotta changes
	  regarding str vs
	  int and unlikely yet possible compatibility stuff)

2005-10-04 14:31  ferringb

	* : don't declare -r the contents, declare -r the var name.

2005-10-04 14:25  jstubbs

	* : Big cleanup and added check regarding chosen ebuild.

2005-10-04 14:13  ferringb

	* : bug 107770 , fix A D and a few other vars being set implicitly
	  by readonly protection during setup phase.

2005-10-03 13:33  jstubbs

	* : Warn and ignore on invalid system/world atoms

2005-10-03 13:32  jstubbs

	* : Remove app-portage/portage-docs files from portage-2.0 branch

2005-10-03 13:28  ferringb

	* : final fixup (ebuild nameerror)

2005-10-03 13:25  ferringb

	* : fixing horkage when noauto is in use (nameerrors)

2005-10-02 14:50  jstubbs

	* : Make sure to include package.use flags with fetch-restricted
	  packages

2005-10-02 14:47  jstubbs

	* : Specify ebuildpath to merge() when using qmerge

2005-10-02 14:30  jstubbs

	* : Pass use list rather than config obj to portdbapi.fetch_check()

2005-10-02 14:29  jstubbs

	* : Fix typo wrt to lamba usage.

2005-10-02 03:52  ferringb

	* : saner handling of selinux_enabled

2005-10-01 15:30  jstubbs

	* : Remove the specific dependency on python-2.2.

2005-10-01 15:29  jstubbs

	* : Restore full range of possible atoms that can be given to
	  emerge by doing
	  atom validity checks using a dummy category if necessary.

2005-10-01 10:41  jstubbs

	* : Check if invalid atoms are only missing a category and let
	  those pass.

2005-10-01 09:12  ferringb

	* : touches up on file.name check, part of glep31

2005-10-01 07:52  ferringb

	* : fixed ebuild so
	  ebuild some-ebuild clean setup unpack # works like
	  ebuild some-ebuild clean unpack

2005-09-29 16:45  jstubbs

	* : Sort digests and manifests (to look nice and making them
	  diff'able)

2005-09-29 16:44  jstubbs

	* : Add some more info about where the problem is coming from when
	  atoms cannot be resolved.

2005-09-29 16:43  jstubbs

	* : Make depclean a little friendler (so that perhaps people will
	  read the messages? ;)

2005-09-29 16:42  jstubbs

	* : Ignore packages in system/world that are satisfied by packages
	  in package.provided.

2005-09-29 16:41  jstubbs

	* : Ignore files (such as metadata.xml) within portdir category
	  dirs.

2005-09-29 16:38  jstubbs

	* : Ignore blockers when fetching.

2005-09-29 16:37  jstubbs

	* : Remove specific reference to the Gentoo Handbook.

2005-09-29 16:36  jstubbs

	* : Refactored world graphing code to reuse the standard dependency
	  resolution paths.

2005-09-29 16:35  jstubbs

	* : Add -i to FBSD's ldconfig as requested.

2005-09-29 16:35  jstubbs

	* : Update the casing of "linux" on the default distfile mirror.

2005-09-29 16:34  jstubbs

	* : Harmless typo in signal catcher.

2005-09-29 16:33  jstubbs

	* : Prevent globbed atoms from having relative operators.

2005-09-29 16:32  jstubbs

	* : Fix incorrect Exception when checking LOGDIR permissions

2005-09-29 16:32  jstubbs

	* : Adhere to USE flags passed into fetch()

2005-09-29 16:31  jstubbs

	* : Security checks regarding installation of world-writable files.

2005-09-29 16:30  jstubbs

	* : Validation of user atoms.

2005-09-29 16:29  jstubbs

	* : add --newuse short option to emerge help

2005-09-29 16:29  jstubbs

	* : remove CDEPEND
	  ignore RDEPEND on --buildpkgonly

2005-09-29 16:28  jstubbs

	* : overridable lchown/lchgrp

2005-09-29 16:27  jstubbs

	* : zmedico's prelink optimization

2005-09-28 06:06  ferringb

	* : fixups to EAPI handling.

2005-09-28 05:35  ferringb

	* : file.name fixup for glep31 checks.

2005-09-28 04:45  ferringb

	* : bye bye global portageq's.

2005-09-28 00:02  ferringb

	* : eapi fix up for installation.

2005-09-26 23:45  ferringb

	* : typo fix.

2005-09-24 19:13  ferringb

	* : emerge --metadata ran as user, and silenced auxdb Corruption
	  exceptions when doing metadata transfer.

2005-09-24 18:51  ferringb

	* : update so that int 0 is stored (change to the logic test for
	  storing null vals)

2005-09-24 18:41  ferringb

	* : correction of eapi transfer for metadata -> local cache

2005-09-24 17:54  ferringb

	* : EAPI awareness, and flat_hash/flat_list autodetection for rysnc
	  cache.

2005-09-24 02:56  ferringb

	* : cleanse_cache cleanups.

2005-09-24 02:53  ferringb

	* : bug 106544 , glep31 enforcement checks

2005-09-24 00:28  vapier

	* man/repoman.1: repoman will work in any portage tree, but the
	  commit option will only work in a cvs tree

2005-09-24 00:26  vapier

	* man/ebuild.5: use() is silent, update notes

2005-09-20 22:05  ferringb

	* : syntax error (wth?), fixed it.

2005-09-20 13:20  ferringb

	* : added the bug number I missed on previous commit.

2005-09-20 13:13  ferringb

	* : bug 106363 , selinux failed import resulting in module hanging
	  around causing issues for the logic on the next re-import
	  import selinux == fail; next attempt, import selinux == non-fail
	  Python 'feature' of sorts.

2005-09-18 04:38  vapier

	* ChangeLog, bin/etc-update: add a sanity check for diff before
	  using it #48184

2005-09-16 02:27  vapier

	* : document the -* KEYWORD #97165

2005-09-08 16:31  ferringb

	* : fixing unpack so it works once again for tar :/

2005-09-08 13:55  jstubbs

	* : Only warn on removal of system virtuals if there is only one
	  satisfying package.

2005-09-08 02:23  vapier

	* : backport local unpacking support from trunk and add support for
	  jar

2005-09-08 02:22  vapier

	* bin/doman: if passing the -i18n option to doman, make sure we eat
	  the option and continue processing

2005-09-01 14:42  jstubbs

	* : 68928-spawn-command-isabs-zmedico.patch (spawn included "." in
	  PATH)
	  98727_sleep_locale_cleanup.patch (sleep was defined twice for "."
	  and "," locales)
	  98827_lchown_normal_files.patch (lchown was being used on
	  known-to-be-regular files)
	  98827_darwin_noop_lchown.patch (lchwon was aliased to chown on
	  darwin)
	  99101_ccache_perms_adjust.patch (perms test and adjustment didn't
	  match)
	  99120_uid_gid_mixup.patch (portage gid used in place of uid)
	  99418_merge_retcode_ignored.patch (dispatch-conf ignored result
	  of merge command)
	  100382_incomplete_world.patch (versioned atoms were not being
	  added to world)
	  broken-stat-perms.patch (result of conditional execution being
	  unconditionally tested)

2005-08-31 07:44  ferringb

	* : don't commit the remenants from applying a patch

2005-08-30 05:24  ferringb

	* : bye bye mr. cvs_id_string

2005-08-30 05:24  ferringb

	* : this file should've been killed long ago.

2005-08-30 05:16  ferringb

	* : header changes, $Header: -> $Id:

2005-08-30 04:07  ferringb

	* : re-adding the unpack function to stable someone yanked... :)

2005-08-28 08:37  jstubbs

	* : Migration (without history) of the current stable line to
	  subversion.

