=============================================================================
2.1.2_pre3
2006-10-13
trunk revision 4679
=============================================================================


NEWS
  4599 zmedico  Add news about slot deps.
  4609 zmedico  Add news about major bug fixes in 2.1.2.
  4629 zmedico  Add news about multiple inheritance support in profiles.


RELEASE-NOTES
  4610 zmedico  Add a release note about --with-bdeps.
  4611 zmedico  Add a heading for portage-2.1.2.


bin/dosed
  4660 zmedico  Use -e instead of -a for better cross-shell compatibility.
                Thanks to exg.


bin/ebuild.sh
  4657 blubb    disable path globbing when creating metadata keys; bug
                150866; thanks to brian harring for the patch
  4677 zmedico  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.
  4679 zmedico  Implement per-package default USE flags at the ebuild and
                profile levels for bug #61732.


bin/emerge
  4566 zmedico  Don't try to match call best_match_to_list() on "blocks"
                nodes for bug #149576.
  4567 zmedico  Emulate old --update world/system behavior for bug #149527.
  4571 zmedico  Add medium priority level into the digraph (in addition to
                the existing hard and
  4572 zmedico  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.
  4573 zmedico  Remove unnecessary set creation.
  4576 zmedico  In depgraph.altlist(), use a recursive fuction to gather
                groups of nodes that RDEPEND on eachother.
  4577 zmedico  Remove a len(nodes) == 1 test that's never True.
  4578 zmedico  Refector depgraph.altlist() reverse/ignore_priority handling.
  4579 zmedico  Add a digraph.NONE constant to represent no priority.
  4580 zmedico  Print a message about make.globals if PORTDIR is undefined.
  4582 zmedico  Use 01775 permissions for subdirectories of PORTAGE_TMPDIR,
                and 0755 permissions for other directories (bug #149062).
  4586 zmedico  When gathering a group of nodes to merge (with circular
                RDEPEND), make sure not to prematurely merge any nodes that
                have unsatisfied hard deps.
  4589 zmedico  Don't apply the sticky bits until we have a complete plan for
                bug #149062.
  4595 zmedico  For bug #4698, use slot deps to ensure that all installed
                slots are automatically updated.
  4600 zmedico  For bug #150178, print an error message when emerge is called
                with both --config and --pretend.
  4605 zmedico  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).
  4606 zmedico  Reject installed packages if they have a matching masked
                ebuild in the tree.
  4608 zmedico  Delete some temporary variables after use.
  4612 zmedico  Fix package type assumptions in depgraph.display() for bug
                #150359.
  4613 zmedico  Remove redunant quotes for bug #150381. This change is
                related to the shlex posix mode used to fix bug #14215.
  4619 zmedico  Make system/world less greedy for bug #150251.
  4620 zmedico  Fix another bad package type assumption in
                depgraph.display().
  4621 zmedico  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 <.
  4624 zmedico  Clean up depgraph.select_files() to use one list of tuples
                instead 2 separate lists.
  4628 zmedico  Generate the depgraph.args_keys list _before_ building the
                graph.
  4632 zmedico  Remove unused PORTAGE_CALLER=emerge from the environment.
  4641 zmedico  Make --newuse not imply --update anymore because that
                restriction is unnecessary.
  4642 zmedico  Make --tree not imply --pretend anymore so that people can
                put it in EMERGE_DEFAULT_OPTS.
  4649 zmedico  Fix breakage in generation of favorites list for bug #150754.
  4654 zmedico  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.
  4658 zmedico  Use grabfile instead of cat to display the gentoo-release
                file.
  4659 zmedico  Append PORTAGE_RSYNC_EXTRA_OPTS after the default options for
                bug #150883.
  4675 zmedico  For bug #151238, fix --with-bdeps logic so that it works
                correctly with --onlydeps.
  4678 zmedico  For bug #151082, don't allow installed packages to
                inappropriately satisfy packages that have been explicitly
                requested as arguments.
  4679 zmedico  Implement per-package default USE flags at the ebuild and
                profile levels for bug #61732.


bin/etc-update
  4645 zmedico  Add $ROOT and $PORTAGE_CONFIGROOT support for etc-update.
                Thanks to Jonathan Adamczewski <jadamcze@utas.edu.au> for
                this patch from bug #150370.


bin/misc-functions.sh
  4653 vapier   do not abort for the time being with lazy bindings and setuid
                apps and FEATURES=stricter
  4676 zmedico  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).


bin/portageq
  4633 zmedico  Remove unused PORTAGE_CALLER=portageq from the environment.


bin/quickpkg
  4570 zmedico  For bug #149781, exclude symlinks to directories when
                creating binary package with quickpkg.


bin/repoman
  4604 zmedico  Make repoman generate a syntax error if a slot dep is used
                with EAPI == 0.
  4630 zmedico  For repoman, hide the vardbapi from dep_zapdeps.
  4631 zmedico  Use a local_config flag to replace PORTAGE_CALLER == repoman
                conditionals.
  4636 zmedico  Fix typo s/upper/lower/.
  4646 zmedico  Print a more useful error message for bug #150488.
  4650 zmedico  Remove an unnecessary assumption preventing the use of CVS
                for an overlay.
  4651 zmedico  Don't lock repoman_settings because it needs to be mutable.
  4679 zmedico  Implement per-package default USE flags at the ebuild and
                profile levels for bug #61732.


cnf/make.conf
man/make.conf.5
  4618 zmedico  For bug #140021, remove autoaddcvs from the docs. Thanks to
                exg for this patch.


cnf/make.globals
  4614 zmedico  Remove redundant quotes from PORTAGE_RSYNC_OPTS.
  4679 zmedico  Implement per-package default USE flags at the ebuild and
                profile levels for bug #61732.


man/emerge.1
  4568 zmedico  Fix misspelling of dependencies for bug #149645.
  4639 zmedico  Remove outdated mention of --update in the --deep docs.
  4640 zmedico  Document greedy atoms for the --update option.
  4663 zmedico  Escape quotes for bug #150932.


man/portage.5
  4626 zmedico  Remove use.default documentation since we don't use it
                anymore. Thanks to Arfrever Frehtes Taifersar Arahesis for
                this patch from bug #149608.
  4627 zmedico  Remove one more reference to use.defaults.


pym/portage.py
  4571 zmedico  Add medium priority level into the digraph (in addition to
                the existing hard and
  4572 zmedico  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.
  4575 zmedico  Fix priority logic in digraph.add().
  4579 zmedico  Add a digraph.NONE constant to represent no priority.
  4581 zmedico  Use 755 permissions for ${PORTAGE_WORKDIR}/distdir (bug
                #149062).
  4582 zmedico  Use 01775 permissions for subdirectories of PORTAGE_TMPDIR,
                and 0755 permissions for other directories (bug #149062).
  4583 zmedico  For userpriv support, chown files in ${T} if necessary after
                priveleged phases.
  4584 zmedico  Don't set the gid unnecessarily on $PORTAGE_BUILDDIR/distdir.
  4585 zmedico  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.
  4587 zmedico  Remove redundant PORTAGE_BUILDDIR creation.
  4588 zmedico  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.
  4589 zmedico  Don't apply the sticky bits until we have a complete plan for
                bug #149062.
  4590 zmedico  Fix a typo for the file mode in ${T}.
  4591 zmedico  Don't create /cvs-src since the cvs.eclass will do that
                automatically.
  4594 zmedico  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).
  4603 zmedico  Don't call varexpand inside getconfig for env.d/profile.env
                values.
  4615 zmedico  For bug #150377, make virtual preferences in a profile
                override the preferences of parent profiles.
  4616 zmedico  Stack negative user virtuals in the correct order for
                incremental behavior.
  4622 zmedico  Make the merge phase automatically invalidate the
                ${PORTAGE_BUILDDIR}/.installed flag since it may move files
                out of the image directory.
  4623 zmedico  Make the .installed invalidation conditional on srcroot and
                destroot being located on the same filesystem (st_dev).
  4625 zmedico  Remove the single parent constraint in profiles.
  4631 zmedico  Use a local_config flag to replace PORTAGE_CALLER == repoman
                conditionals.
  4637 zmedico  Remove unnecessary config.reset() calls in
                portage.create_trees().
  4638 zmedico  Catch UnpicklingError when loading the mtimedb (reported by
                marienz).
  4643 zmedico  Avoid unnecessary population of the bintree by populating it
                as late as possible.
  4644 zmedico  Simplify the needlessly complex virtuals preferencing logic
                that lead to bug #150377.
  4648 zmedico  Only unlink .installed after the collision-protect has
                completed successfully (reported by axxo).
  4652 zmedico  Add more self.modifying() checks in order to detect
                modifcations to locked config objects.
  4654 zmedico  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.
  4655 zmedico  For bug #150121, generate an error in digestcheck() if a file
                is found that is not listed in the Manifest.
  4661 zmedico  Use contents to avoid unnecessary ldconfig calls for bug
                #136488.
  4662 zmedico  Make an mtime change force an ldconfig run, since it's
                possible that pre/postinst made changes in lib dirs (noted by
                Brian Harring).
  4664 zmedico  Fix the new env-update lib dirs logic to properly account for
                $ROOT.
  4679 zmedico  Implement per-package default USE flags at the ebuild and
                profile levels for bug #61732.


pym/portage_dep.py
  4593 zmedico  Share duplicate code between dep_getkey() and dep_getcpv().
  4594 zmedico  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).
  4598 zmedico  Improve best_match_to_list() and include support for slot
                deps.


pym/portage_manifest.py
  4656 zmedico  Make manifest2AuxfileFilter() slightly more efficient and
                also ignore any hidden files.


pym/portage_update.py
  4596 zmedico  Just use a simple replace for the needlessly complex
                dep_transform function. This will make it compatible with
                slot deps.
  4597 zmedico  Fix package moves/slotmoves to work with slot deps.
  4607 zmedico  In update_dbentries(), use != rather than "is not" to make
                sure that updates never occur unnecessarily.
  4617 zmedico  Fix dep_transform breakage (regression from r4596).
  4647 zmedico  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).


pym/portage_util.py
  4574 zmedico  Optimize varexpand for bug #149900.
  4601 zmedico  For bug #150163, remove unnecessary validation of
                new_protect_filename() parameters.
  4602 zmedico  For bug #14215, put the shlex parser in posix mode so that it
                properly recognizes escaped quotes.
  4603 zmedico  Don't call varexpand inside getconfig for env.d/profile.env
                values.


=============================================================================
2.1.2_pre2
2006-09-29
trunk revision 4565
=============================================================================


bin/ebuild
  4480 zmedico  Properly close the caches before reloading portage.


bin/ebuild.sh
  4495 blubb    use EBUILD_SH_ARGS instead of $*; bug 148615
  4556 zmedico  Fix broken [ -z "" ] test. Thanks to Volkov Peter
                <pva@gentoo.org> for this patch from bug #149494.
  4557 zmedico  Fix quoting of ${D} in make arguments for einstall(). Thanks
                to Volkov Peter <pva@gentoo.org> for this patch from bug
                #149494.


bin/emerge
  4467 zmedico  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.
  4468 zmedico  Use mtimedb.filename == None to disable mtimedb writes
                (instead of /dev/null).
  4469 zmedico  Close the parallel-fetch log file descriptor when it's no
                longer needed.
  4471 zmedico  Ensure that the parent process gets the first fetch when
                parallel-fetch is enabled.
  4472 zmedico  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!
  4473 zmedico  Thanks again to Jason Stubbs for this patch from bug #147766
                which represents PDEPEND relationships withing the depgraph
                as reverse soft dependencies.
  4474 zmedico  Idendify soft deps in emerge --debug output.
  4475 zmedico  Allow packages matched by something in package.provided to be
                explicitly merged by the user.
  4479 zmedico  This is a new --tree implementation by Jason Stubbs, from bug
                #147766.
  4482 zmedico  For consistency, pass ignore_soft_deps into
                digraph.hasallzeros().
  4486 zmedico  Thanks to Jason Stubbs for this patch from bug #16365 which
                invalidates any blocker that is made irrelevant by a package
                upgrade.
  4487 zmedico  Fix depgraph.validate_blockers() logic so that
                match_from_list works correctly.
  4488 zmedico  Add a docstring for depgraph.validate_blockers().
  4489 zmedico  Remove an inaccurate comment.
  4490 zmedico  Add a comment about old-style virtuals inside
                depgraph.validate_blockers().
  4491 zmedico  Prevent an IndexError caused by blocker nodes splitting to 3
                items instead of 4.
  4492 zmedico  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.
  4493 zmedico  Fix another IndexError due to an assumption that digraph
                nodes split into at least 4 parts.
  4494 zmedico  Allow packages specified on the command line to be
                retroactively upgraded from "nomerge" to "merge" nodes.
  4496 zmedico  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.
  4500 zmedico  For compatibility with float timestamps in python-2.5,
                convert st_mtime attributes to long wherever portage expects
                1s resolution.
  4505 zmedico  Make it possible, once again, to use --noreplace to add a
                package to the world file.
  4507 zmedico  Ensure that soft_dep is a plain boolean (not vardb match
                results).
  4508 zmedico  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.
  4509 zmedico  Pass in the correct arg= value to select_dep.
  4511 zmedico  Remove outdated "Unable to run required binary" messages that
                are now unreachable.
  4512 zmedico  Move PORTAGE_BUILDDIR locking out of doebuild and into emerge
                in order to ensure that emerge maintains it's lock through
                all phases.
  4513 zmedico  Always check the return value of doebuild_environment().
  4518 zmedico  Remove doebuild_environment return value checks since it no
                raises and exception if necessary.
  4522 zmedico  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.
  4523 zmedico  Remove depgraph params for depclean since it no longer uses
                the depgraph.
  4524 zmedico  Clean up and simplify depgraph params logic. This fixes bug
                #148893.
  4526 vapier   print errors to stderr, not stdout
  4527 zmedico  Make `emerge world` (without --deep) work as expected for bug
                #149092.
  4528 zmedico  Check the dep_check return value and fail with a message if
                an error has occurred.
  4529 zmedico  Clean up the logic a little for bug #149092.
  4539 zmedico  Add SLOT support to fakedbapi then use it for depgraph
                blocker handling and dep_zapdeps preference selection.
  4540 zmedico  Make sure that all packages are in the dbapi when doing the
                blocker validation.
  4541 zmedico  Fix --update so that it updates direct dependencies for bug
                #149208.
  4546 zmedico  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.
  4547 zmedico  Convert myopts into a dictionary so that it can be used for
                more that boolean flags.
  4548 zmedico  Add a --with-bdeps=[y,n] option for bug #148870.
  4549 zmedico  Add missing calls to iteritems() from the last commit.
  4550 zmedico  Store myopts in the mtimedb as a list for backward
                compatibility.
  4551 zmedico  Use dict.pop(k, None) to delete items if they exist.
  4552 zmedico  Remove some unreachable code.
  4553 zmedico  Properly treat myopts as a dict.
  4555 zmedico  Fix inverted --with-bdeps logic.
  4560 zmedico  Allow options contained in EMERGE_DEFAULT_OPTS to be
                overridden by the real command line options.


bin/etc-update
  4476 zmedico  Turn off file name globbing during expansion of ${find_opts}
                for bug #148115.


bin/pkgmerge (Removed)
bin/pkgmerge.new (Removed)
  4519 zmedico  Remove pkgmerge since it's apparent that nobody uses it (it's
                been broken for a long time, anyway).


bin/portageq
  4483 zmedico  Make portageq exit with nonzero status when called
                incorrectly.
  4484 zmedico  Make portageq exit successfully for -h or --help.


bin/prepstrip
  4559 zmedico  Move installed sources into ${CATEGORY} subdirectories in
                order to prevent collisions for bug #149491.


man/emerge.1
  4561 zmedico  Document the new --with-bdeps option.


man/make.conf.5
  4463 vapier   document FEATURES=buildsyspkg #147729
  4563 zmedico  Document the new COLLISION_IGNORE variable.
  4564 zmedico  Update installsources docs for bug #149491.
  4565 zmedico  Update CONFIG_PROTECT docs to reflect that files are now
                supported.


pym/cache/anydbm.py
pym/cache/fs_template.py
pym/cache/metadata_overlay.py
pym/cache/sql_template.py
pym/cache/template.py
pym/cache/util.py
  4470 zmedico  Replace relative imports with absolute imports for forward
                compatibility with python 2.6.


pym/cache/flat_hash.py
  4470 zmedico  Replace relative imports with absolute imports for forward
                compatibility with python 2.6.
  4499 zmedico  Convert stat timestamps to long for compatibility with
                python-2.5, which returns floats for timestamps.
  4501 zmedico  Use fstat to when retrieve cache timestamps and avoid a race.
  4502 zmedico  Improve and simplify __getitem__ error handling.
  4504 zmedico  Use finally: to ensure that the file is closed properly.
  4506 zmedico  Move the open call out of the inner try block.
  4545 zmedico  Catch a ValueError caused by corrupt cache for bug #149134.


pym/cache/flat_list.py
  4470 zmedico  Replace relative imports with absolute imports for forward
                compatibility with python 2.6.
  4500 zmedico  For compatibility with float timestamps in python-2.5,
                convert st_mtime attributes to long wherever portage expects
                1s resolution.


pym/cache/metadata.py
  4470 zmedico  Replace relative imports with absolute imports for forward
                compatibility with python 2.6.
  4501 zmedico  Use fstat to when retrieve cache timestamps and avoid a race.


pym/cache/sqlite.py
  4470 zmedico  Replace relative imports with absolute imports for forward
                compatibility with python 2.6.
  4498 zmedico  Allow cache.sqlite to use sqlite3 from python-2.5, if
                available.
  4503 zmedico  Don't use LazyLoad for cache pulls because it causes a race
                condition.


pym/eclass_cache.py
pym/portage_update.py
  4500 zmedico  For compatibility with float timestamps in python-2.5,
                convert st_mtime attributes to long wherever portage expects
                1s resolution.


pym/output.py
  4554 zmedico  Call sys.stdout.flush() after print statements so that output
                has the correct order when multiple processes output to a
                shared pipe.


pym/portage.py
  4464 zmedico  In portage.commit_mtimedb(), use the commit() method when
                possible, so that the mtimedb is only rewritten when it has
                been modified.
  4468 zmedico  Use mtimedb.filename == None to disable mtimedb writes
                (instead of /dev/null).
  4472 zmedico  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!
  4477 zmedico  Fix digraph.debug_print inverted hard/soft logic.
  4478 zmedico  Fix fetch resume logic for bug #145601 and document the
                meaning of the "fetched" variable.
  4479 zmedico  This is a new --tree implementation by Jason Stubbs, from bug
                #147766.
  4481 zmedico  Fix digraph.hasallzeros() breakage.
  4482 zmedico  For consistency, pass ignore_soft_deps into
                digraph.hasallzeros().
  4485 zmedico  As suggested by vapier, send emerge -fp output to stdout and
                make it work together with --quiet.
  4494 zmedico  Allow packages specified on the command line to be
                retroactively upgraded from "nomerge" to "merge" nodes.
  4496 zmedico  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.
  4500 zmedico  For compatibility with float timestamps in python-2.5,
                convert st_mtime attributes to long wherever portage expects
                1s resolution.
  4510 zmedico  Move PORTAGE_LOG_FILE initialization from doebuild to
                prepare_build_dirs.
  4512 zmedico  Move PORTAGE_BUILDDIR locking out of doebuild and into emerge
                in order to ensure that emerge maintains it's lock through
                all phases.
  4513 zmedico  Always check the return value of doebuild_environment().
  4514 zmedico  Lock PORTAGE_BUILDDIR all the way through prerm, unmerge, and
                postrm.
  4515 zmedico  Only lock PORTAGE_BUILDDIR if the ebuild exists (otherwise we
                don't run prerm and postrm).
  4516 zmedico  Make doebuild_environment raise an exception so that we never
                have to check the return value.
  4518 zmedico  Remove doebuild_environment return value checks since it no
                raises and exception if necessary.
  4520 zmedico  Fix portage.pkgmerge() so that it locks files and directories
                when in use.
  4521 zmedico  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).
  4524 zmedico  Clean up and simplify depgraph params logic. This fixes bug
                #148893.
  4525 zmedico  For bug #149028, don't lock the tbz2 file because the
                filesytem could be readonly or shared by a cluster.
  4539 zmedico  Add SLOT support to fakedbapi then use it for depgraph
                blocker handling and dep_zapdeps preference selection.
  4542 zmedico  Revert dep_zapdeps fakedbapi usage as per comment #31 on bug
                #147766.
  4543 zmedico  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.
  4558 zmedico  Allow env.d file names with 3 characters. This is a
                regression from r4451.
  4562 zmedico  For bug #149412, add a COLLISION_IGNORE user config option
                that behaves similar to CONFIG_PROTECT_MASK, but for
                collision-protect.


pym/portage_data.py
  4530 zmedico  Add a warning about the portage group and the possiblility of
                exploits for bug #149062.


=============================================================================
2.1.2_pre1
2006-09-15
trunk revision 4462
=============================================================================


bin/dispatch-conf
  4461 zmedico  For bug #14321, make dispatch-conf scan for individual files
                listed in CONFIG_PROTECT.


bin/emerge
  4459 zmedico  For bug #14321, make emerge scan for individual files listed
                in CONFIG_PROTECT.


bin/etc-update
  4460 zmedico  For bug #14321, make etc-update scan for individual files
                listed in CONFIG_PROTECT.


bin/repoman
  4462 zmedico  Add CATEGORY to the list of readonly variables.


cnf/make.conf.sh.diff (Added)
  4432 vapier   diff for superh


man/make.conf.5
  4443 vapier   note that you need to use an absolute path for ROOT #147427
                by Brad Plant


man/portage.5
  4429 zmedico  Include a note about RESTRICT="fetch" in docs for local
                mirrors (see bug #37455). Thanks to Carlo for reporting.


pym/portage.py
  4430 zmedico  In dblink.isowner(), correct the logic to test the path
                itself (via lstat) rather than the referant in the case of
                symlinks.
  4431 zmedico  For bug #80846, prevent false collisions caused by symlinks.
                Thanks to Thomas Bettler <bettlertho@sis.unibe.ch> for the
                initial patch.
  4434 zmedico  Add KDEDIRS to colon_separated env-update vars as requested
                by Carlo.
  4441 zmedico  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.
  4442 zmedico  Use configdict["env"].clear() instead of manual deletion
                because the result is the same and it's much more efficient.
  4450 zmedico  Simplify the confmem logic so that it's easier to read.
  4451 zmedico  Move all env.d file name filtering into a single loop.
  4452 zmedico  Add support for SPACE_SEPARATED and COLON_SEPARATED in
                /etc/env.d/ so that hard coded values are not required.
  4453 zmedico  When it's detected that a previously remembered update has
                been accepted, remove it from confmem.
  4458 zmedico  For bug #14321, add support for individual files in
                CONFIG_PROTECT and CONFIG_PROTECT_MASK.


pym/portage_locks.py
  4446 zmedico  In unhardlink_lockfile(), make sure not to touch lockfilename
                unless we really have a lock. See bug #147453.
  4447 zmedico  Remove all traces of atexit hardlock cleanup code, since it
                doesn't work correctly anyway.
  4448 zmedico  Simplify portage_locks.hardlink_is_mine() so that it only
                checks the number of links. Nothing more is needed.
  4449 zmedico  Remove an unused hardlink_active() function.


pym/portage_update.py
  4433 zmedico  Fix a broken call to new_protect_filename for bug #147010.
                This is a regression from r4400 (fix for bug #146289).


pym/portage_util.py
  4458 zmedico  For bug #14321, add support for individual files in
                CONFIG_PROTECT and CONFIG_PROTECT_MASK.


=============================================================================
2.1.1
2006-09-08
trunk revision 4425
=============================================================================


NEWS
  4345 zmedico  Add news about the new depclean algorithm.
  4394 zmedico  Add news about --newuse being able to detect changes in IUSE.
  4395 zmedico  Move notes about --depclean and --newuse from NEWS to
                RELEASE-NOTES.


RELEASE-NOTES
  4395 zmedico  Move notes about --depclean and --newuse from NEWS to
                RELEASE-NOTES.


bin/ebuild.sh
  4382 blubb    moving the portage-specific sandbox-code out of the
                ebuild-specific src_test
  4411 vapier   if user has FEATURES=noauto then dont check lame .installed
                file
  4412 vapier   make .compiled warning the same helpful format as .installed
  4413 vapier   unpack rar files with -o+ to force overwriting #146508 by
                Paul Bredbury
  4425 zmedico  Add PORTAGE_DEPCACHEDIR to SANDBOX_PREDICT since it's
                legitimate for portageq calls to trigger cache writes. See
                bug #144011.


bin/emerge
  4346 zmedico  Show the * symbol in addition to the % symbol when the flags
                state transitions from nonexistent -> enabled or vice versa.
  4347 zmedico  Remove a redundant conditional from the last commit.
  4348 zmedico  For --newuse, ignore masked/forced flags when comparing IUSE.
                See bug #144661.
  4349 zmedico  For --newuse, ignore masked/forced flags when comparing IUSE.
                See bug #144661.
  4350 zmedico  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.
  4378 zmedico  When creating the depgraph, use the correct USE flags for
                packages that are already installed.
  4379 zmedico  Update the depgraph's USE flag cache so that's it's
                consistent with installed packages.
  4380 zmedico  Make code from the last 2 commits conditional on merging == 0
                and vardbapi.cpv_exists(mykey).
  4403 zmedico  For emerge dep_check calls, use a config instance that has
                the correct state and the correct $ROOT.
  4406 zmedico  Revert r4403 since dep_check needs a config instance for the
                $ROOT where the dependencies will be installed.


bin/etc-update
  4364 vapier   fix whitespace
  4375 zmedico  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.


bin/misc-functions.sh
  4354 blubb    make the multilib-strict check show all files that violate
                the rule, not just the first one
  4355 blubb    let's not fork too much
  4421 zmedico  Make sure that the package phase has the PYTHONPATH set
                correctly so that the xpak module is accessible.


bin/quickpkg
  4419 zmedico  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.
  4420 zmedico  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.
  4422 zmedico  Condense a few portageq calls into one.
  4423 zmedico  Substitute isolated-functions.sh in place of
                /sbin/functions.sh.
  4424 zmedico  Make quickpkg respect PORTAGE_NICENESS.


bin/repoman
  4401 zmedico  Add repoman support for package.use.mask.
  4402 zmedico  Move setcpv call (from the last commit) to a more logical
                location.
  4414 zmedico  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).
  4415 zmedico  Remove ACCEPT_KEYWORDS from incrementals to that a
                hypothetical config.regenerate() call won't affect it.


man/emerge.1
  4381 zmedico  Describe each of the USE flag symbols that are displayed in
                verbose mode (see bug #146060).


pym/portage.py
  4351 blubb    don't display useless messages when using --quiet
  4353 zmedico  Add a missing newline from the previous commit.
  4374 zmedico  Before the preinst phase, only call load_infodir for binary
                packages. Otherwise, load_infodir will wipe settings from
                doebuild_environment (such as CATEGORY).
  4393 zmedico  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.
  4396 zmedico  Don't call dict.keys() unnecessarily for the containment test
                in dblink.isowner().
  4401 zmedico  Add repoman support for package.use.mask.
  4404 zmedico  Use a set for masklist inside dep_check.
  4405 zmedico  Only apply USE masks in dep_check when called by repoman with
                use="all".
  4407 zmedico  Add an additional note about $ROOT and USE flag handling in
                dep_check.
  4408 zmedico  During env_update, raise a FileNotFound exception if a file
                is unexpectedly removed by a concurrent process. See bug
                #146412.
  4416 zmedico  Allow env_update to work if there are broken symlinks in
                /etc/env.d/. See bug #146412.
  4417 zmedico  Properly lock the critical section of portage.unmerge() for
                bug #101240.
  4418 zmedico  Document that dblink.unmerge() does not perform locking
                internally.
  4425 zmedico  Add PORTAGE_DEPCACHEDIR to SANDBOX_PREDICT since it's
                legitimate for portageq calls to trigger cache writes. See
                bug #144011.


pym/portage_util.py
  4400 zmedico  Since none of the code is written to handle it, never return
                a tuple from new_protect_filename(). See bug #146289.


=============================================================================
2.1.1_rc1
2006-08-25
trunk revision 4344
=============================================================================


bin/emerge
  4239 zmedico  For consistent results, sort the contents when generating the
                info directory index. See bug #142652.
  4253 zmedico  Revert most of r4086 because it broke circular bootstrap
                dependencies for things like gwydion-dylan and ghc. Thanks to
                araujo for reporting the breakage.
  4254 zmedico  Update the virtuals even if the package already exists in the
                fakedbapi since it may be necessary if the package is being
                remerged.
  4267 zmedico  This is a new and improved depclean implementation. Thanks to
                jstubbs for this patch from bug #67179.
  4270 zmedico  Add a depclean warning message, once again, because it's
                never completely safe.
  4312 zmedico  Make depclean more friendly about unresolved atoms. Thanks to
                jstubbs for this patch from bug #144486.
  4322 zmedico  Display flags that have been removed from IUSE as !flag% for
                bug #144661.
  4344 zmedico  Recommend `emerge --update --deep world` prior to depclean in
                order to make sure that all dependencies are satisfied. See
                bug #145078.


bin/emerge-webrsync
  4257 zmedico  Use eval $(portageq envvar -v FOO BAR) to collapse many
                portageq calls into 1.
  4258 zmedico  Add forgotten PORTAGE_TMPDIR to the portageq call.


bin/etc-update
  4320 vapier   include filename in submenu so we know exactly what we are
                working on


bin/isolated-functions.sh
  4339 blubb    only print the "Removing /usr/share/info" if --quiet was not
                passed


bin/misc-functions.sh
  4339 blubb    only print the "Removing /usr/share/info" if --quiet was not
                passed
  4342 blubb    ignore binutils wrt multilib-strict; bug 121641
  4343 blubb    remove the MULTILIB_STRICT_EXEMPT default as all profiles set
                it anyway


bin/portageq
  4306 zmedico  Make sure that portageq exits quietly when killed, like
                emerge does.


bin/prepstrip
  4321 zmedico  For bug #144928, add -L to the rsync options (transform
                symlink into referent). Thanks to Olivier Crete
                <tester@gentoo.org> for this patch.


bin/repoman
  4272 zmedico  Remove an unused "objsadded" variable spotted by antarus.


cnf/make.conf
man/make.conf.5
  4308 vapier   some INSTALL_MASK docs by compnerd


man/ebuild.5
  4309 vapier   document ROOT #144331


man/portage.5
  4310 vapier   eat some extraneous newlines
  4311 vapier   document the ability to make package. files directories in
                /etc/portage #144381 by Caleb Cushing


pym/portage.py
  4271 zmedico  This is a new dep_zapdeps implementation. Thanks to jstubbs
                for this patch from bug #143908.
  4283 solar    - 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
  4313 zmedico  Don't bother to lock CONFIG_MEMORY_FILE since writedict is
                atomic anyway.
  4336 zmedico  Make symlink merge output respect --quiet. Thanks to blubb
                for reporting.


pym/portage_util.py
  4240 zmedico  Make stack_dictlist return an empty dictionary when there is
                nothing to stack. See bug #143730.


=============================================================================
2.1.1_pre5
2006-08-11
trunk revision 4216
=============================================================================


NEWS
  4216 zmedico  Add news about use.force.


bin/dojar (Removed)
  4081 zmedico  Remove dojar for bug #108517.


bin/ebuild
  4045 zmedico  Pass in the path to the base of the current tree to ensure
                that the correct fetchlist is used when there are overlays
                present.
  4046 zmedico  Use the FetchlistDict to simplify code.


bin/ebuild.sh
  4048 zmedico  Stack /etc/profile.env inside portage.config so that it
                doesn't stop variables in inappropriate places. See bug
                #51370.


bin/emerge
  4053 zmedico  When emerge exits to blockers, show a link to the relevant
                section of the Gentoo Handbook. See bug #142225.
  4068 zmedico  Don't write to emerge.log when --pretend is enabled for bug
                #139449.
  4086 zmedico  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).
  4087 zmedico  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.
  4151 zmedico  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.
  4155 zmedico  Add additional checks for --pretend and --fetch-all-uri to
                ensure correct behavior. See bug #140552.
  4159 solar    - emerge -pqv should display USE flags; Bug 128598 -
                David-John Miller, anoyomouse@petermiller.co.za
  4174 zmedico  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.
  4177 zmedico  Keep USE flags from / and $ROOT separate in the depgraph. See
                bug #142918.
  4179 zmedico  Fix rsync code to work with a username@ uri for bug #141185.
                Thanks to David-John Miller <anoyomouse@petermiller.co.za>
                for this patch.
  4211 zmedico  Use ( -flag ) to indicate flags that have been forced off via
                use.mask.
  4212 zmedico  Display masked USE flags as (-flag) instead of ( -flag ) to
                save space.
  4214 zmedico  Add support for use.force and package.use.force in profiles.


bin/etc-update
  4154 vapier   add space before prompt


bin/prepstrip
  4131 zmedico  Fix STRIP_MASK logic so that a match results in
                stripitbaby=0.
  4136 zmedico  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.


bin/quickpkg
  4210 zmedico  Force a sane umask in quickpkg for bug #143340.


bin/regenworld
  4150 genone   ignore packages that were just fetched from being added to
                the worldfile


bin/repoman
  4049 zmedico  Remove pointless cvs dependent REPOROOTS code. Thanks to Alec
                Warner <antarus@gentoo.org> for this patch.
  4176 zmedico  Remove unused "cladded" variable reported by antarus.
  4208 zmedico  Remove a dead hunk of code spotted by antarus.


man/ebuild.1
  4189 vapier   fixups from Benno Schulenberg #143079


man/ebuild.5
  4090 zmedico  Remove dojar docs for bug #108517.
  4186 zmedico  Remove the dopython docs for bug #141935.


man/make.conf.5
  4156 zmedico  Add some docs for the installsources feature.
  4157 zmedico  Add notes about nostrip and installsources to the splitdebug
                docs.


man/portage.5
  4180 zmedico  Add some package.use.mask docs.
  4215 zmedico  Add some docs for use.force and package.use.force.


pym/getbinpkg.py
  4182 zmedico  Cleanse stale metadata cache for binpkgs that have been
                removed from the remote host. Thanks to Andr?\195?\169 Luiz
                A. G. Carvalho <alcarvalho@gmail.com> for the initial patch
                from bug #107453.


pym/portage.py
  4044 zmedico  Add PKG_CONFIG_PATH to env_update incrementals for bug
                #105384.
  4047 zmedico  Make sure we doebuild uses the correct tree for fetch lists
                when there are overlays.
  4048 zmedico  Stack /etc/profile.env inside portage.config so that it
                doesn't stop variables in inappropriate places. See bug
                #51370.
  4050 zmedico  Catch ParseError from getconfig during env_update for bug
                #142157.
  4051 zmedico  Add matching quote (typo from last revision).
  4083 zmedico  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.
  4084 zmedico  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.
  4085 zmedico  Grab /etc/profile.env from the target root instead of the
                configroot.
  4089 zmedico  Remove the unnecessary "Previously fetched" portion of the
                disfiles checksum output for bug #142271.
  4091 zmedico  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.
  4112 zmedico  Expand USE_EXPAND flags earlier so that their incremental
                stacking behaves just like it does for normal USE flags. See
                bug #142125.
  4113 zmedico  Instead of self.puse, use self.mycpv to return early from
                setcpv.
  4114 zmedico  Protect USE_EXPAND flags from -* in order to preserve
                previous behavior which has changed due to the fix for bug
                #142125.
  4151 zmedico  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.
  4152 zmedico  For completeness, clone self.puse and self.mycpv.
  4153 zmedico  Ignore hidden files or directories in the vardbapi.cpv_all()
                listing.
  4175 zmedico  Allow USE_EXPAND vars to be overridden in the environment for
                bug #142909.
  4178 zmedico  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.
  4181 zmedico  Sort the USE flags.
  4187 zmedico  When performing expansion of USE_EXPAND variables, display
                warnings about invalid use of incremental operators.
  4191 zmedico  Remove unnecessary check for USE flags that start with "-".
  4209 zmedico  Return early from global directory initialization if the
                current user does not have write access to $ROOT.
  4214 zmedico  Add support for use.force and package.use.force in profiles.


pym/portage_util.py
  4048 zmedico  Stack /etc/profile.env inside portage.config so that it
                doesn't stop variables in inappropriate places. See bug
                #51370.
  4050 zmedico  Catch ParseError from getconfig during env_update for bug
                #142157.
  4052 zmedico  Only ignore ENOENT in getconfig() so that more important
                errors don't go unnoticed.
  4213 zmedico  Fix stack_dictlist() so that incremental stacking behaves
                more like it does in config.regenerate().


=============================================================================
2.1.1_pre4
2006-07-27
trunk revision 4043
=============================================================================


bin/doman
bin/prepman
  3918 blubb    fix up doman and prepman so that they work with the new .keep
                files in rev 3917


bin/ebuild
pym/portage_manifest.py
  4041 zmedico  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.
  4043 zmedico  Allow a digest to be created before any distfiles have been
                fetched for bug #141843.


bin/ebuild.sh
  3917 blubb    make .keep files package-dependant to fix bug 102436


bin/emerge
  3907 zmedico  Fix broken --usepkg masking logic for bug #140694.
  3908 zmedico  Add ipv6 --sync support for bug #37124. Thanks to Bernhard
                Schmidt <berni@birkenwald.de> for the initial patch.
  3914 zmedico  Fix depclean so that it cleans unneeded slots (unless they
                are exempted by the system or world sets). See bug #140591.
  3915 zmedico  Simplify generation of the cleanlist for depclean.
  3916 zmedico  Use a set instead of a list for better efficiency.
  3986 zmedico  Make depclean account for old-style virtuals so that it
                doesn't remove the providers.
  3987 zmedico  Just add the providers to the protected set without bothering
                to check if they're in the vdb.
  3988 zmedico  Use portage.best() to simplify package comparison.
  4013 zmedico  Simplify depgraph.select_dep() logic by using a list of
                matched packages (instead of separate variables for ebuild
                and binary packages).
  4014 zmedico  Trigger a rebuild with --newuse when IUSE has changed for bug
                #116955.
  4015 zmedico  For binary packages, trigger a rebuild with --newuse when
                IUSE has changed for bug #116955.
  4016 zmedico  s/difference/symmetric_difference/ for the last two commits.
  4019 zmedico  Add more dependencies to the digraph in order to help prevent
                strange merge orders for bug #126748.
  4021 zmedico  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.
  4022 zmedico  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.


bin/etc-update
  3928 genone   ensure we have the necessary access
  3929 genone   Show full path when auto-merging
  3930 genone   add option to discard config updates
  3931 genone   add notice about remaining updates on exit
  3932 genone   update mtime after replacing config files
  3934 genone   Only call portageq once
  3935 genone   use eval to allow shell expansion in config file
  3936 genone   add support to prevent auto-processing for user-special files
                that match a pattern in /etc/etc-update.special
  3953 zmedico  Make user_special() return 1 if none of the patterns in
                /etc/etc-update.special are matched.
  3972 zmedico  Fix broken if/elif statement.


bin/portageq
  3893 zmedico  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.


bin/repoman
  3912 zmedico  Enable repoman to work with portage.init_legacy_globals()
                disabled.
  3919 zmedico  Ensure a sane umask for repoman.
  3971 zmedico  Fix a broken reference to portage.portdb.


cnf/make.conf
  3966 blubb    note that there is the possibility to have a local rsync
                server; bug 141110
  3982 zmedico  Add a link for "Setting up your own local rsync mirror" as
                suggested by jkt.


pym/eclass_cache.py
pym/portage_file.py (Removed)
pym/portage_locks.py
  3892 zmedico  Remove the portage_file module for bug #133591.


pym/output.py
  3924 zmedico  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.
  3954 zmedico  Handle a potential ValueError when parsing the number of
                terminal columns.


pym/portage.py
  3889 zmedico  Simplify portage.normalize_path() logic.
  3890 zmedico  Use normalize_path instead of using normpath directly.
  3891 zmedico  Move normalize_path into portage_util.
  3894 zmedico  s/config_protect/ConfigProtect/ for the class name.
  3895 zmedico  Move the ConfigProtect class to the portage_util module.
  3909 zmedico  Collapse two repoman PORTAGE_CALLER conditionals into one.
  3910 zmedico  Fix categories and arch.list handling for repoman with
                overlays so that /etc/portage is not used.
  3911 zmedico  Remove redundant variable definitions.
  3920 zmedico  Do file locking on PORTAGE_BUILDDIR and use a finally block
                to ensure that the lock is properly released. This fixes bug
                #140971.
  3921 zmedico  Ensure that BUILD_PREFIX has been created before attempting
                to lock PORTAGE_BUILDDIR.
  3922 zmedico  Use the portage gid for BUILD_PREFIX.
  3923 zmedico  Don't try to create a log file unless PORTAGE_BUILDDIR
                exists.
  3925 zmedico  Use the python implemention of ebegin/eend to visually
                enhance the ouput for checksums.
  3933 zmedico  Remove redundant checksum output.
  3952 zmedico  Make PORTAGE_TMPDIR cannonical for sandbox before it's
                exported to the ebuild environment for bug #140436.
  3955 zmedico  When a config instance is cloned, don't set default USE_ORDER
                since it would have been done already for the instance being
                cloned.
  3956 zmedico  When a config instance is cloned, don't initialize
                PORTAGE_GID since it would have been done already for the
                instance being cloned.
  3957 zmedico  Remove redundant initialization of self.depcachedir for
                cloned config instances.
  3958 zmedico  Remove redundant processing of PORTDIR_OVERLAY for cloned
                config instances.
  3959 zmedico  Remove redundant (and possibly problem causing) copying of
                self.backupenv for cloned config instances.
  3960 zmedico  Remove redundant processing of ROOT and PORTAGE_CONFIGROOT
                for cloned config instances.
  3961 zmedico  When cloning a config instance, use the copied env instead of
                grabbing a new copy of os.environ.
  3962 zmedico  Remove redundant copying of self.lookuplist and self.uvlist
                for cloned config instances.
  3963 zmedico  Remove redundant definition of catsplit() which is already
                imported from portage_versions. Thanks to ChrisWhite for
                reporting.
  3964 zmedico  Remove redundant initialization of CBUILD for cloned config
                instances.
  3965 zmedico  Remove redundant initialization of PORTAGE_BIN_PATH and
                PORTAGE_PYM_PATH for cloned config instances.
  3967 zmedico  Remove redundant initialization of self.features (and
                self.regenerate() call) for cloned config instances.
  3968 zmedico  Move initialization of self.lookuplist to a more logical
                location for cloned config instances.
  3969 zmedico  Move initialization of config.uvlist into the regenerate()
                method since that's the only place it's used.
  3970 zmedico  Remove redundant initialization of directories for cloned
                config instances.
  3973 zmedico  Blacklist some variables in the config constructor so that
                they can't interfere with portage internals.
  3974 zmedico  Move dep_getcpv, get_operator, and isvalidatom from the core
                portage module to portage_dep.
  3975 zmedico  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.
  3976 zmedico  Move isjustname, isspecific, dep_getkey, and dep_transform
                from the core portage module to portage_dep.
  3977 zmedico  Move parse_updates from the core portage module to
                portage_update.
  3978 zmedico  Move new_protect_filename from the core portage module to
                portage_util.
  3980 zmedico  Move update_config_files from the core portage module to
                portage_update.
  3981 zmedico  Move dep_transform from the portage_dep module to
                portage_update.
  3984 zmedico  Collapse whitespace in aux_get calls for remote binpkg
                metadata. See bug #141279.
  3985 zmedico  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.
  3989 zmedico  Remove unused portage.match_from_list_original() function.
  3990 zmedico  Move portage.best() to portage_versions.
  3991 zmedico  Move best_match_to_list, match_from_list, and match_to_list
                from the core portage module to portage_dep.
  4019 zmedico  Add more dependencies to the digraph in order to help prevent
                strange merge orders for bug #126748.
  4021 zmedico  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.
  4027 zmedico  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.
  4028 zmedico  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).
  4029 zmedico  Ensure that that fetch restriction message is only show once
                in --pretend mode.
  4030 zmedico  Simplify fetch failure logic.
  4031 zmedico  Hide a password if a uri contains one (a custom local mirror,
                for example). Thanks to nelchael for the patch.
  4032 zmedico  Fix ENOENT exception handler so that it only wraps the
                relevant stat call.
  4033 zmedico  Move permissions adjustment of previously fetched files into
                the main fetch loop.
  4034 zmedico  Move the filesystem mirrors code into the main fetch loop.
  4037 zmedico  Simplify permissions adjustment after a file is fetched.


pym/portage_dep.py
  3974 zmedico  Move dep_getcpv, get_operator, and isvalidatom from the core
                portage module to portage_dep.
  3976 zmedico  Move isjustname, isspecific, dep_getkey, and dep_transform
                from the core portage module to portage_dep.
  3981 zmedico  Move dep_transform from the portage_dep module to
                portage_update.
  3991 zmedico  Move best_match_to_list, match_from_list, and match_to_list
                from the core portage module to portage_dep.


pym/portage_update.py
  3977 zmedico  Move parse_updates from the core portage module to
                portage_update.
  3980 zmedico  Move update_config_files from the core portage module to
                portage_update.
  3981 zmedico  Move dep_transform from the portage_dep module to
                portage_update.
  3983 zmedico  Ignore hidden directories and files when updating config
                files.


pym/portage_util.py
  3891 zmedico  Move normalize_path into portage_util.
  3895 zmedico  Move the ConfigProtect class to the portage_util module.
  3975 zmedico  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.
  3978 zmedico  Move new_protect_filename from the core portage module to
                portage_util.
  3979 zmedico  Do the portage_checksum import in local scope because of
                circular dependency.
  4026 zmedico  Fix unsafe deletion of a dictionary item during iteration.


pym/portage_versions.py
  3913 zmedico  Add a docstring with epytext markup to
                portage_versions.pkgcmp(). Thanks to chriswhite for this
                patch.
  3990 zmedico  Move portage.best() to portage_versions.


pym/xpak.py
  4006 zmedico  Make xsplit() return False on failure and True on success for
                bug #141445.
  4008 zmedico  Return a tuple from searchindex instead of a list.
  4009 zmedico  Return tuples instead of lists from getboth functions and
                methods.


=============================================================================
2.1.1_pre3
2006-07-15
trunk revision 3881
=============================================================================


RELEASE-NOTES
  3878 genone   note change in search behavior in release notes


bin/emaint
  3823 zmedico  Update error handling for write_atomic calls to use
                PortageException.
  3832 zmedico  Move code out of global scope.


bin/emerge
  3759 zmedico  Commit the mtimedb prior to restart via excve for bug
                #138837.
  3777 zmedico  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.
  3778 zmedico  When displaying the resume merge list, don't show the skipped
                package when --skipfirst is enabled. See bug #121106.
  3779 zmedico  Do some basic validation of the mtimedb resume data so that
                assumptions can be made later.
  3780 zmedico  Remove commented code cruft.
  3781 zmedico  Remove color from "none" reported by vapier.
  3783 zmedico  Fix $ROOT references in the depgraph class for bug #137446.
  3784 zmedico  Fix more $ROOT references for bug #137446.
  3785 zmedico  Allow the loading of a completely separate config for / and
                PORTAGE_CONFIGROOT. This fixes bug #137446.
  3786 zmedico  Pass existing trees into load_emerge_config() so that the
                existing portdbapi instances will be cleaned up by
                portage.create_trees().
  3787 zmedico  Match blockers against the correct $ROOT for bug #108449.
  3788 zmedico  Run global updates asap and then reload the whole config to
                make sure everything is consistent.
  3789 zmedico  Freeze all pordbapi instances.
  3796 zmedico  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.
  3798 zmedico  Clean up getportageversion() profile logic and fix a
                ValueError that occurs when profile is None.
  3814 zmedico  Use set.intersection() to simplify --newuse comparison.
  3815 zmedico  Fix indentation mistake from the last commit.
  3816 zmedico  Remove the merging=2 case to simplify merge/nomerge logic.
  3817 zmedico  Use a cmpsplit() function to simplify package comparisons in
                depgraph.select_dep().
  3818 zmedico  Use the abstract dbapi.aux_get() interface to unify retrieval
                of dependency strings in depgraph.create().
  3819 zmedico  Use the abstract dbapi.aux_get() interface to unify retrieval
                of IUSE in depgraph.create().
  3820 zmedico  Use dbapi to unify config.setinst() call in
                depgraph.select_dep().
  3827 zmedico  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.
  3828 zmedico  Start at the end of the list so that the index works properly
                after items are deleted.
  3829 zmedico  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.
  3830 zmedico  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 != /.
  3831 zmedico  Use a list comprehension to simplify the code for bug #55871.
  3833 zmedico  Don't call emergelog() from the parallel-fetch process for
                bug #88837.
  3834 zmedico  Allow emerge --info to show per-package settings for bug
                #95741. Thanks to npmccallum for the initial patch.
  3844 zmedico  Split depgraph.merge() to a separate MergeTask class.
  3854 zmedico  Remove the unmerge_overlapping() function since unmerge() now
                works properly in the case where ROOT!=/ thanks to the fix
                for bugs #137446 and #131319.
  3868 zmedico  Move the world file trimming out of dblink.unmerge() since
                the world file is package set territory and therefore doesn't
                belong inside dblink.
  3869 zmedico  Fix gid typo from the last commit.
  3876 genone   disable regular expressions for search by default
  3879 zmedico  As suggested by vapier, only show the "System Settings"
                banner when myfiles is not empty.
  3881 zmedico  Use calculations to center --info header titles.


bin/misc-functions.sh
  3800 vapier   remove pointless line that just ruins the display
  3852 zmedico  Die at the beginning of install_qa_check if ${D} doesn't
                exist. See bug #140159.


bin/repoman
  3748 zmedico  Add a new parse_use_local_desc() function.
  3749 zmedico  Fix import issues reported by pyflakes.
  3750 zmedico  Add overlay support for use.local.desc in repoman.
  3751 zmedico  Add support for licenses in overlays (bug #137975).
  3752 zmedico  Add support for arch.list in overlays (bug #137975).
  3760 zmedico  Ignore hidden directories (such as .svn) when building the
                scanlist.
  3790 zmedico  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.
  3792 zmedico  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.


cnf/make.globals
  3812 zmedico  Remove USE_EXPAND_HIDDEN from make.globals since it's now
                included in the base profile.


man/emerge.1
pym/emergehelp.py
  3877 genone   update search docs


pym/output.py
  3778 zmedico  When displaying the resume merge list, don't show the skipped
                package when --skipfirst is enabled. See bug #121106.


pym/portage.py
  3747 zmedico  Fix NameError when collision-protect is enabled for bug
                #138793.
  3773 zmedico  Force fetch if the number of parsed digests does not match
                the number of digest types that are supported. See bug
                #138911.
  3774 zmedico  Revert accidental hunk from the last commit.
  3782 zmedico  Use the correct bintree and porttree for bug #137446.
  3785 zmedico  Allow the loading of a completely separate config for / and
                PORTAGE_CONFIGROOT. This fixes bug #137446.
  3791 zmedico  Use a cloned config instance for the depend phase in
                portdbapi.aux_get(). See bug #132601.
  3793 zmedico  Cache a cloned config instance inside portdbapi so that a new
                one doesn't have to be cloned each time metadata generation
                is triggered.
  3795 zmedico  Fix missing newline.
  3797 zmedico  Remove global autouse cache since most people don't use it
                anyway and it's broken in the case where $ROOT != /.
  3802 zmedico  Export the path of the build log into the ebuild env as
                suggested by Flameeyes.
  3807 zmedico  Only commit the mtimedb if the internal state has changed.
  3808 zmedico  Use copy.deepcopy() to ensure that state comparison works
                properly.
  3811 zmedico  Fix the NameError that occurs when collision-protect triggers
                unmerge. See bug #139580.
  3813 zmedico  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.
  3821 zmedico  Add a vardbapi.aux_update() method for database maintenance.
                See bug #122089.
  3823 zmedico  Update error handling for write_atomic calls to use
                PortageException.
  3824 zmedico  Use write_atomic for dblink metadata updates.
  3825 zmedico  Add a bindbapi.aux_update() method for database maintenance.
                See bug #122089.
  3826 zmedico  Implement fakedbapi.cpv_all() so that bindbapi will inherit
                it.
  3836 zmedico  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.
  3837 zmedico  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.
  3838 zmedico  Use startswith instead of slices to simplify config protect
                code.
  3839 zmedico  Don't swallow unknown exceptions from lstat() during the
                merge phase.
  3840 zmedico  Clean up various path joins in dblink.mergeme().
  3841 zmedico  Use startswith instead of slice or find.
  3842 zmedico  Remove orphan srctarget variable.
  3843 zmedico  Fix incorrect path handling in parts of symlink merge logic.
  3857 zmedico  Make the merge phase bail out if srcroot doesn't exist for
                bug #140159.
  3868 zmedico  Move the world file trimming out of dblink.unmerge() since
                the world file is package set territory and therefore doesn't
                belong inside dblink.


pym/portage_checksum.py
  3835 zmedico  Just use the raise statement alone to re-raise exceptions.


pym/portage_manifest.py
  3772 zmedico  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.


pym/portage_util.py
  3822 zmedico  Wrap common write_atomic exceptions for easier error
                handling.


=============================================================================
2.1.1_pre2
2006-07-01
trunk revision 3746
=============================================================================


bin/dispatch-conf
  3610 zmedico  Use portage_exec.find_binary since "which" always returns 0
                status on darwin. Thanks to exg for reporting.


bin/ebuild.sh
  3646 zmedico  Skip the install phase when ${PORTAGE_BUILDDIR}/.installed
                exists. See bug #137864.


bin/emerge
  3524 zmedico  Make sure that doebuild gets the correct CATEGORY. See bug
                #137105.
  3525 zmedico  Log parallel-fetch output to /var/log/emerge-fetch.log just
                in case it's needed. See bug #137105.
  3526 zmedico  Overwrite the existing fetch log so that it only contains the
                most recent fetch.
  3534 solar    - do not complain about redundant use of pretend and verbose
                flags
  3537 zmedico  Save timestamp.chk even when metadata-transfer is disabled
                for bug #137177.
  3548 zmedico  By popular demand (including releng), revert the unmerge
                behavior change from bug #118515 (r3186).
  3591 zmedico  Encapsulate emerge's spinner into an object.
  3592 zmedico  Remove all global variables from emerge's search class.
  3593 zmedico  Remove unused "olddbapi" variable.
  3594 zmedico  Remove most direct references to global variables from
                emerge's depgraph class.
  3595 zmedico  Move the --sync and --metadata code from global scope to a
                function.
  3596 zmedico  Move the --regen code from global scope to a function.
  3597 zmedico  Move the --config code from global scope to a function.
  3598 zmedico  Fix a collision with a previous variable named "p".
  3599 zmedico  Move the --info code from global scope to a function.
  3600 zmedico  Move the --search code from global scope to a function.
  3601 zmedico  Move the --depclean code from global scope to a function.
  3602 zmedico  Fix missing global "syslist" from r3594.
  3603 zmedico  Move emerge's default action code from global scope to a
                function.
  3604 zmedico  Fix a broken reference to syslist and remove two extras.
  3608 zmedico  Move the creation of depgraph params from global scope to a
                function.
  3609 zmedico  Simplify permission logic for emerge.log.
  3615 zmedico  Remove unused "merged" variable.
  3616 zmedico  Document "deep" and remove unused "params" variable.
  3617 zmedico  Pass relevant global variables as parameters to action_*
                functions.
  3618 zmedico  Remove unnecessary "myaction" parameter from the depgraph
                constructor.
  3619 zmedico  Use secpass to determine whether emergelog exceptions should
                be ignored.
  3620 zmedico  Do not import * for cooperation with pyflakes.
  3622 zmedico  Fix error handling for getlist().
  3623 zmedico  Fix extra imports and undefined variable found by pyflakes.
  3624 zmedico  Shift all global scope code to the bottom.
  3625 zmedico  Ensure that ^C interrupts are handled quietly.
  3626 zmedico  Minor import cleanups.
  3627 zmedico  Register emerge exit and signal handlers after parsing
                options, just before the action phase.
  3628 zmedico  Split the --metadata action into a separate function from
                --sync.
  3632 zmedico  Fix getgccversion logic for bug #137786.
  3633 zmedico  Remove all references to global variables from
                getportageversion().
  3634 zmedico  Remove all direct references to global variables from
                getlist().
  3635 zmedico  Remove all direct references to global variables from
                unmerge().
  3637 zmedico  Remove references to portage.root from unmerge().
  3638 zmedico  Remove references to portage.settings from unmerge().
  3650 zmedico  Split the command line argument parsing into a function.
  3655 zmedico  Remove an unused import.
  3656 zmedico  Remove the help() function.
  3657 zmedico  Ensure that CLEAN_DELAY and EMERGE_WARNING_DELAY environment
                variables contain valid integer values.
  3658 zmedico  Replace a references to global scope CLEAN_DELAY and
                EMERGE_WARNING_DELAY with the previously validated
                environment variables.
  3659 zmedico  Use the PORTAGE_DEBUG environment variable to replace the
                global scope edebug variable.
  3660 zmedico  Remove all direct references to global variables form
                post_emerge().
  3661 zmedico  Remove direct references to the global mtimedb from
                chk_updated_info_files().
  3662 zmedico  Don't run post_emerge() when --pretend is enabled.
  3663 zmedico  Fix a few global variable references and move all the global
                scope code into an emerge_main() function.
  3664 zmedico  Ensure that the PORTAGE_DEBUG environment variable has a
                valid integer value.
  3666 zmedico  Use the cannonical path of $PORTDIR when transferring
                metadata so that the _eclasses_ paths are consistent. See bug
                #137965.
  3667 zmedico  Turn off color automatically when stdout is a pipe, but allow
                the behavior to be overridden via the NOCOLOR environment
                variable.
  3668 zmedico  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.
  3669 zmedico  For compatibility with revdep-rebuild, do not allow
                NOCOLOR=false to override the isatty() check.
  3670 antarus  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.
  3671 zmedico  When --buildpkg is enabled, merge directly from the
                uncompressed install image instead of needlessly unpacking
                the binary package. See bug #138105.
  3672 zmedico  Pass an xterm_titles parameter into emergelog() so that it
                doesn't need any global variables.
  3673 zmedico  Fix action_search() parameters for bug #138131.
  3674 zmedico  Fix chk_updated_cfg_files() parameters for bug #138131.
  3676 zmedico  Fix output colors for bug #138259.
  3677 zmedico  Make unmerge() colors more consistent.
  3678 zmedico  Remove unnecessary --quiet check since writemsg handles that
                already.
  3681 vapier   retain current color schema by adding a new color class for
                unmerging
  3682 zmedico  Add a missing space in the unmerge output that was reported
                by vapier.
  3683 zmedico  Fix the writemsg noiselevel so that versions are correctly
                shown even when --quiet is enabled.
  3690 zmedico  Pass a config instance into each dep_expand call.
  3691 zmedico  Pass a vardbapi instance into getportageversion() so that it
                doesn't have to construct one itself.
  3692 zmedico  Replace direct references to portage.settings with local
                references.
  3693 zmedico  Remove reference to global portage.db from
                validate_merge_list().
  3694 zmedico  Replace direct references to portage.db with local
                references.
  3695 zmedico  Replace references to portage.root with local settings[ROOT].
  3696 zmedico  Replace references to portage.portdb with local references.
  3697 zmedico  After sync, reload portage before the metadata transfer so
                that action_metadata() doesn't have to be concerned with
                invalid settings.categories and such.
  3699 zmedico  Pass parameters into env_update() so that it doesn't depend
                on global variables.
  3702 zmedico  Remove a pointless "if" statement.
  3703 zmedico  Trigger env_update() after each unmerge operation.
  3704 zmedico  Pass ldpath mtimes into the unmerge operations.
  3705 zmedico  Replace global references to the mtimedb with local
                references.
  3707 zmedico  Make use of the new mtimdb.commit() method.
  3708 zmedico  Fix accidental replacement from r3705.
  3712 zmedico  Pass portdbapi instances into doebuild in order to avoid
                dependance on globals.
  3715 zmedico  Pass missing parameters to doebuild in order to avoid
                dependance on globals.
  3716 zmedico  Pass a config instance into the bindbapi and fakedbapi
                constructors in order to avoid dependance on globals for
                dep_expand() calls.
  3717 zmedico  Fix pkgmerge() to work without dependance on global
                variables.
  3719 zmedico  Pass trees into dep_check and dep_zapdeps calls in order to
                avoid dependance on global variables.
  3720 zmedico  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.
  3722 zmedico  Fix unmerge version spacing for bug #138611.
  3724 zmedico  Go ahead and dump a full traceback without having to enable
                --debug. There's no sense in hiding valuable traceback info
                like that.
  3726 zmedico  Allow portage.getmaskingstatus() to operate without global
                variables.
  3727 zmedico  Allow portage.getmaskingreason() to operate without global
                variables.
  3728 zmedico  Pass a portdbapi instance into doebuild to avoid dependence
                on global variables.
  3729 zmedico  Pass a more dbapi instances into doebuild to avoid dependence
                on global variables.
  3732 zmedico  In order to ensure that emerge doesn't use any of portage's
                legacy global variables, run emerge with
                portage.init_legacy_globals() disabled.
  3733 zmedico  Pass a config instance into movefile() to avoid dependence on
                global variables.
  3734 zmedico  Trigger post_emerge() after the relevent actions and commit
                the mtimedb there.
  3742 solar    - multi-package emerge now prints the sequence highlighting
                count and cpv to visually stand out in wondercolors...
  3743 zmedico  Add a new MERGE_LIST_PROGRESS color class and remove hard
                coded yellow/green.
  3744 zmedico  Use the BAD and GOOD color classes to remove hard coded
                colors from the depclean warning message.
  3745 zmedico  Use GOOD, BAD, and WARN color classes where appropriate.
                Thanks to Damien THEBAULT <damien.thebault@laposte.net> for
                this patch from bug #138600.


bin/env-update
bin/etc-update
bin/md5check.py
  3649 zmedico  Remove unnecessary PORTAGE_CALLER exports.


bin/isolated-functions.sh
  3607 zmedico  As suggested by exg, include the einfon code inside einfo
                instead of using the FUNCNAME hack (FUNCNAME only works with
                >=bash-3.0).
  3665 zmedico  Allow /etc/portage/color.map to control colors associated
                with einfo, ewarn, etc...
  3675 zmedico  Make sure that variables containing colors pollute the
                environment for bug #138246.


bin/misc-functions.sh
  3528 vapier   get rid of quotes in output
  3642 zmedico  s/Preform/Perform/ Thanks to exg for reporting.


bin/repoman
  3686 zmedico  To simplify code, use startswith() instead of slices.


man/emerge.1
  3518 vapier   Benno Schulenberg writes in #136818: changes the wording of
                the "set" parameter to be similar to its neighbours.
  3519 vapier   line wrap to 80 cols
  3520 vapier   Benno Schulenberg writes in #136818: put the --config action
                in its alphabetical place while adjusting the words and
                spaces a little.
  3521 vapier   Benno Schulenberg writes in #136818: make the style of the
                --pretend letter descriptions uniform
  3522 vapier   Benno Schulenberg writes in #136818: tweak the description of
                --info
  3523 vapier   Benno Schulenberg writes in #136818: tweak --nocolor
                description
  3605 blubb    mention the use of @ in -s; bug 137565


pym/cache/metadata_overlay.py
  3544 zmedico  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).
  3546 zmedico  Use get() to simplify setitem logic as suggested by Brian
                Harring.
  3547 zmedico  Make it easy to pass alternative cache implementations into
                the constructor as suggested by Brian Harring.


pym/cache/template.py
  3545 zmedico  Implement get() as part of the standard mapping interface.


pym/output.py
  3532 zmedico  Put bright colors before dark colors for bug #137206. Thanks
                to Benno Schulenberg <benno@nietvergeten.nl> for this patch.
  3680 zmedico  Set WARN=red to so that warnings appear red, as they always
                have.
  3681 vapier   retain current color schema by adding a new color class for
                unmerging
  3743 zmedico  Add a new MERGE_LIST_PROGRESS color class and remove hard
                coded yellow/green.


pym/portage.py
  3524 zmedico  Make sure that doebuild gets the correct CATEGORY. See bug
                #137105.
  3527 zmedico  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.
  3533 antarus  goodbye tokenize
  3539 genone   make sure that elog entries are also processed in *rm phases
                and that they are only processed once
  3543 zmedico  Use wantnewlockfile=1 on /var/lib/portage/config for bug
                #137269. r3540 is also related.
  3586 zmedico  Make sure that PORT_LOGDIR is properly unset when it is
                unusable. Thanks to solar for reporting issues with logs
                landing in $PWD.
  3587 zmedico  Don't bother to warn when PORT_LOGDIR="".
  3588 zmedico  Remove redundant PORT_LOGDIR validation from the config
                constructor.
  3589 zmedico  Prevent and exception when PORT_LOGDIR is an empty string.
  3590 zmedico  Simplify PORT_LOGDIR intitialization.
  3606 zmedico  Don't register signal handlers during module import because
                it may override signal hadlers that were registered by the
                calling code.
  3614 zmedico  Prevent an inappropriate warning when a repoman user's
                profile does not support sandbox. Thanks to exg for
                reporting.
  3629 zmedico  Remove a few unused imports.
  3630 zmedico  Remove a few unused imports.
  3631 zmedico  Remove the deprectated digestCheckFiles function.
  3635 zmedico  Remove all direct references to global variables from
                unmerge().
  3636 zmedico  Pass a config instance into key_expand calls so that it
                doesn't rely on global settings.
  3643 zmedico  The mtimedb should not be relative to the target $ROOT
                because the paths that it contains are currently relative to
                "/".
  3644 zmedico  Make the COUNTER regeneration logic account for $ROOT as per
                bug #129054.
  3645 zmedico  Move the counter_tick methods from the dbapi class to the
                vardbapi class.
  3647 zmedico  Pass a config object into the vartree constructor so that is
                doesn't have to use global settings for key_expand calls.
  3648 zmedico  Pass a config object into the binarytree constructor so that
                is doesn't have to use global settings for key_expand calls.
  3651 zmedico  Fix portage.update_config_files() so that it can work with an
                arbitrary $ROOT and without any global variables.
  3652 zmedico  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).
  3653 zmedico  Pass in just the CONFIG_PROTECT info instead of the whole
                config object.
  3654 zmedico  Print a message to stderr if an error occurs when updating a
                config file.
  3660 zmedico  Remove all direct references to global variables form
                post_emerge().
  3665 zmedico  Allow /etc/portage/color.map to control colors associated
                with einfo, ewarn, etc...
  3679 antarus  readd Rev to portage.py for proper svn revisions in
                portage.version
  3684 zmedico  Allow a config instance to be passed into cpv_expand so that
                it doesn't have to rely on global settings.
  3685 zmedico  Allow a config instance to be passed into dep_expand so that
                it doesn't have to rely on global settings.
  3687 zmedico  Update symlinks in during package moves for bug #138394.
  3688 zmedico  Pass a config instance into the vardbapi constructor so that
                it doesn't have to rely on global settings.
  3689 zmedico  Pass a config instance into the vardbapi constructor so that
                it doesn't have to rely on global settings.
  3690 zmedico  Pass a config instance into each dep_expand call.
  3703 zmedico  Trigger env_update() after each unmerge operation.
  3704 zmedico  Pass ldpath mtimes into the unmerge operations.
  3706 zmedico  Add an MtimeDB class to encapsulate the mtimedb.
  3709 zmedico  Allow the portagetree constructor to work without globals.
  3710 zmedico  Pass config and portdbapi instances into the portagetree
                constructor.
  3711 zmedico  Only use the global vartree when really necessary.
  3713 zmedico  Fix missing target_root keyword parameter.
  3714 zmedico  Pass the ldpath_mtimes for unmerging the already-installed
                instance.
  3716 zmedico  Pass a config instance into the bindbapi and fakedbapi
                constructors in order to avoid dependance on globals for
                dep_expand() calls.
  3717 zmedico  Fix pkgmerge() to work without dependance on global
                variables.
  3719 zmedico  Pass trees into dep_check and dep_zapdeps calls in order to
                avoid dependance on global variables.
  3721 zmedico  Integrate the load_mtimedb() function into the MtimeDB class.
                This function is relatively new so nobody should miss it.
  3723 zmedico  Use PORTAGE_DEBUG=1 since that's all that portage currently
                recognizes.
  3725 zmedico  Recycle the portdbapi instance at the and of
                global_updates().
  3726 zmedico  Allow portage.getmaskingstatus() to operate without global
                variables.
  3727 zmedico  Allow portage.getmaskingreason() to operate without global
                variables.
  3731 zmedico  Pass the trees into two more dep_zapdeps calls to avoid
                dependence on global variables.
  3735 zmedico  Fix autouse so that it works with init_legacy_globals()
                disabled.
  3746 zmedico  Fix references to global settings in the binarytree class
                that were reported by solar.


pym/portage_locks.py
  3540 zmedico  To prevent infinite recursion when a lock file has more than
                1 hardlink, test for exactly 0 hardlinks before recursing.


pym/portage_mail.py
  3530 genone   fix typo
  3531 zmedico  Add missing sys import found by pyflakes.


pym/portage_manifest.py
  3517 zmedico  Force digest generation when assume-digests is enabled but
                the file size does not match. See bug #137032.


pym/portage_util.py
  3516 zmedico  Import missing PermissionDenied class. Thanks to marienz for
                reporting (and suggesting pyflakes).
  3611 antarus  ignore .files in /etc/portage recursion
  3612 zmedico  Fix a typo from r3611 (file != files).
  3613 zmedico  Test the basename for starting with "." instead of the full
                path.
  3621 zmedico  Sort filenames for predictable results.


=============================================================================
2.1.1_pre1
2006-06-15
trunk revision 3515
=============================================================================


RELEASE-NOTES
  3510 antarus  Add autouse removal to RELEASE-NOTES
  3511 antarus  idiot, use.defaults, not make.defaults
  3512 antarus  more fixes to make it sound like I didn't write it at 8:41am


bin/ebuild.sh
  3506 zmedico  Fix generation of ebuild log file names for bug #136285.
  3508 zmedico  Source /etc/portage/bashrc after the profile.bashrcs, since
                user env should be over to override the profile env.


bin/emerge
  3498 blubb    removing windows-like senseless confirmation requests
  3499 zmedico  Remove pointless closing of stdin that is done prior to
                metadata transfer (See bug #136404).
  3509 zmedico  Give a useful error message when a dependency has an
                ambiguous atom due to the category being unspecified. See bug
                #123677.
  3513 zmedico  When --debug is enabled, do not raise a ValueError for
                unresolved dependencies. See bug #126793.


bin/etc-update
  3505 zmedico  Fix signal handling for bug #96331. Thanks to S. Caglar Onur
                <caglar@pardus.org.tr> for this patch.


bin/isolated-functions.sh
  3501 zmedico  Prevent extra newlines in elog for einfo invocations. See bug
                #136208.


bin/misc-functions.sh
  3481 solar    - Bug 136236 misc-functions.sh fails to always honor
                RESTRICT=stricter - Donnie Berkholz spyderous@gentoo.org
  3483 genone   make elog mail module always set the 'From' header for
                rfc2822 compliance
  3488 zmedico  Remove QA warning when files are installed with portage
                uid/gid for bug #136313.


bin/repoman
  3487 antarus  Fix LIVEVCS.stable for -* keywords
  3496 zmedico  Replace --include-masked with an inverse --ignore-masked
                option for bug #85576.
  3507 antarus  fix path to ebuild for dsd, bug # 135705


cnf/make.conf
  3485 genone   add code to allow sendmail binaries to be used instead of a
                smtp connection for sending mails


cnf/make.conf.x86-fbsd.diff
  3504 zmedico  s/i686-unknown/i686-gentoo/ for bug #136532.


pym/elog_modules/mod_mail.py
  3483 genone   make elog mail module always set the 'From' header for
                rfc2822 compliance
  3484 genone   refactor elog mail stuff so it's reusable by other tools
                (like glsa-check)


pym/elog_modules/mod_save.py
  3502 zmedico  Toggle the setgid bit on $PORT_LOGDIR\elog\ for bug #136278.
  3503 zmedico  Fix a typo from the last revision (octal literals begin with
                0).


pym/portage.py
  3482 zmedico  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.
  3483 genone   make elog mail module always set the 'From' header for
                rfc2822 compliance
  3495 zmedico  Stack package.mask files in a more logical order as specified
                in bug #133740.
  3500 zmedico  For more simplicity, use os.rename instead of spawning
                MOVE_BINARY (see bug #136404).
  3506 zmedico  Fix generation of ebuild log file names for bug #136285.
  3514 zmedico  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).
  3515 zmedico  Fix checksum error messages for bug #136947. Thanks to
                truedfx for this patch.


pym/portage_mail.py (Added)
  3484 genone   refactor elog mail stuff so it's reusable by other tools
                (like glsa-check)
  3485 genone   add code to allow sendmail binaries to be used instead of a
                smtp connection for sending mails
  3486 genone   override sender on sendmail invocation
  3497 genone   add date header for rfc2822 compliance


pym/portage_util.py
  3493 zmedico  Wrap more exceptions when applying permissions. Thanks to
                marienz for reporting.
  3494 zmedico  Wrap more exceptions in ensure_dirs().


=============================================================================
2.1
2006-06-09
trunk revision 3476
=============================================================================


bin/emerge
  3450 zmedico  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.
  3451 zmedico  Restore the old behavior of performing global updates when
                portage is reloaded after `emerge --sync` for bug #135446.
  3459 zmedico  Fix getgccversion() logic for bug #108393. Thanks to
                eradicator for suggesting this logic.
  3463 zmedico  Fix getgccversion() logic so that it works properly with
                eselect compiler for bug #108393. Thanks to eradicator for
                help with this patch.
  3471 zmedico  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.


bin/misc-functions.sh
  3462 zmedico  Store the original suid bits when suidctl is enabled for bug
                #135639. Thanks to splite-gentoo@sigint.cs.purdue.edu for
                this patch.


bin/repoman
  3457 antarus  Add live VCS check to repoman, fix misspelling
  3460 zmedico  Add python 2.3 compatibility code for the set builtin.
  3461 zmedico  Put LIVEVCS.stable in qawarnings for now since it's new and
                hasn't been thoroughly discussed.


bin/sed
  3475 zmedico  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.


cnf/make.conf
  3452 zmedico  Escape the shell parameter expansions in the
                PORTAGE_ELOG_COMMAND example for bug #135429.


cnf/make.globals
  3470 zmedico  Move hard coding of /etc/env.d in CONFIG_PROTECT_MASK from
                portage.config.__getitem__() to make.globals. Thanks to
                pauldv for reporting.


man/portage.5
  3472 zmedico  Add some documentation for /etc/make.profile/profile.bashrc.


man/repoman.1
  3458 antarus  add LIVEVCS.stable to man repoman


pym/portage.py
  3453 zmedico  Revert lazy loading of autouse because it is both broken and
                useless.
  3454 zmedico  Raise a ParseError if the profile has a parent file
                containing anything other than 1 parent.
  3455 zmedico  Raise a ParseError if the profile has a parent file
                containing a nonexistant parent.
  3456 zmedico  When generating digests, print a digest.assumed QA warning if
                necessary in order to prevent confusion. Thanks to jakub for
                suggesting this.
  3464 zmedico  Make sure that each new build attempt gets it's own unique
                log file for bug #135856.
  3465 zmedico  Also bump the counter for the "merge" phase since it calls
                spawnebuild (bug #135856).
  3468 vapier   support for FEATURES=debug-build
  3469 zmedico  Revert r3468 because this type of functionality belongs in
                profile.bashrc or an eclass.
  3470 zmedico  Move hard coding of /etc/env.d in CONFIG_PROTECT_MASK from
                portage.config.__getitem__() to make.globals. Thanks to
                pauldv for reporting.
  3473 zmedico  When an ebuild from overlay fails, display a message
                indicating which overlay it came from (bug #136031). Thanks
                to genstef for the initial patch.
  3474 zmedico  Break out of the loop asap.
  3476 zmedico  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.


pym/portage_data.py
  3466 zmedico  If lchown is unavailable for some unexpected reason, make all
                lchown calls print a warning message (bug #135398).
  3467 zmedico  Call the bogus lchown() once so that the warning is seen
                asap.


=============================================================================
2.1_rc4
2006-06-02
trunk revision 3449
=============================================================================


bin/ebuild.sh
  3447 zmedico  Fix unpack so that it works with 7z archives for bug #135134.
                Thanks to Paul Bredbury <brebs@sent.com> for the initial
                patch.


bin/emerge
  3437 zmedico  Revert patch for r3426 for bug 134466 and add warnings to
                docs.
  3441 zmedico  Add some helpful troubleshooting tips to the depclean warning
                message.
  3445 zmedico  Fix --buildpkgonly so that the "clean" phase is run
                afterwards. In other cases, "clean" is triggered
                automatically after the package is merged.
  3446 zmedico  Wrap at 80 columns for bug #135132.


bin/emerge-webrsync
  3442 zmedico  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.


bin/portageq
  3449 zmedico  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.


bin/prepstrip
  3440 zmedico  Fix prepstrip so that it properly distiguishes between
                stripped and unstripped binaries for bug #133420. Thanks to
                robbat2 for this patch.


bin/repoman
  3439 blubb    everybody hates repoman failing on modular X, so make it a
                warning


cnf/make.conf
  3434 zmedico  Update FEATURES docs for 'assume-digests' and 'digest'.
                Thanks to robbat2 for reporting.


cnf/make.conf.x86-fbsd.diff
  3448 zmedico  Update make.conf.example for x86-fbsd with patch from
                Flameeyes for bug #135241.


man/ebuild.5
  3444 zmedico  Document RESTRICT="confcache" and add a reference econf in
                the FEATURES="confcache" docs.


man/emerge.1
pym/emergehelp.py
  3437 zmedico  Revert patch for r3426 for bug 134466 and add warnings to
                docs.


man/make.conf.5
  3434 zmedico  Update FEATURES docs for 'assume-digests' and 'digest'.
                Thanks to robbat2 for reporting.
  3436 zmedico  Update the default USE_ORDER setting in the man page. Thanks
                to jakub for reporting.
  3444 zmedico  Document RESTRICT="confcache" and add a reference econf in
                the FEATURES="confcache" docs.


pym/getbinpkg.py
  3443 antarus  Fix quoting for bug 109739


pym/portage.py
  3433 zmedico  Ignore ENOENT errors that are expected to occur in
                portage.fetch().


pym/portage_selinux.py
  3438 zmedico  Use the well know selinux_aux functions for bug #134743.


=============================================================================
2.1_rc3
2006-05-26
trunk revision 3430
=============================================================================


bin/ebuild.sh
  3408 zmedico  When /usr/lib/distcc/bin does not exist, only add a maximum
                of one distcc to CC and CXX for bug #84150.


bin/emerge
  3399 zmedico  Prevent a KeyError from occurring when USE_EXPAND_HIDDEN is
                used for bug #134086.
  3426 zmedico  Fix emerge's userquery() so that it rejects empty responses
                when the enter key is pressed for bug #134466.
  3427 zmedico  Add noiselevel=-1 to writemsg calls for fatal emerge errors
                so that important errors are printed even when --quiet is
                used.


bin/misc-functions.sh
  3409 solar    - final commit hopefully for QA_TEXTRELS etc.
  3410 solar    - More updates from Kevin Q bug 131779 ; document the
                stricter feature along with the QA_* handling


bin/prepstrip
  3403 antarus  Fix prepstrip to work with restrict, thanks to flameeyes and
                bug 134135
  3419 zmedico  For portability, use cpio instead of `cp --parents` for bug
                #124638.
  3420 zmedico  For availability in all stages, use rsync instead of cpio for
                bug #124638.


bin/repoman
  3405 zmedico  Fix repoman so that it works when the portage tree structure
                contains symlinks for bug #109961.


cnf/make.conf
  3392 zmedico  Document userfetch for bug #133975. Thanks to RiverRat for
                this patch.
  3413 antarus  update the wget examples in make.conf


cnf/make.globals
  3401 zmedico  Add ELIBC and USERLAND to USE_EXPAND_HIDDEN in make.globals
                since the user can't change those flags easily.
  3404 zmedico  Add kernel to the default USE_EXPAND_HIDDEN. Thanks to
                Flameeyes for reporting.
  3412 antarus  set a timeout on wget to 60 seconds to fix bug 101196; the
                old timeout was 15 minutes :/


man/ebuild.1
  3414 zmedico  Fix CATEGORY spelling for bug #134362.


man/ebuild.5
  3410 solar    - More updates from Kevin Q bug 131779 ; document the
                stricter feature along with the QA_* handling
  3411 zmedico  Add some documentation for RESTRICT="binchecks" (bug
                #133804).


man/make.conf.5
  3400 zmedico  Add some documentation for USE_EXPAND_HIDDEN.
  3410 solar    - More updates from Kevin Q bug 131779 ; document the
                stricter feature along with the QA_* handling


pym/portage.py
  3415 zmedico  Reset DISTDIR to it's original value before returning from
                doebuild() in order to prevent unexpected values for DISTDIR
                later on.
  3416 zmedico  If necessary, apply appropriate permissions to previously
                fetched files for bug #112612.
  3417 zmedico  Fix the last revision so it also works for files copied from
                local fsmirrors.
  3418 zmedico  Add some additional error handling for OperationNotPermitted
                and ReadOnlyFileSystem exceptions (bug #112612).
  3421 zmedico  Only print a warning if absolutely necessary when adjusting
                distfiles permissions for bug #112612.
  3422 zmedico  Make sure that fetch errors are reported even when --quiet is
                being used.
  3423 zmedico  Add noiselevel=-1 to writemsg calls for legitimate errors in
                doebuild so that important errors are printed even when
                --quiet is used.
  3424 zmedico  Add noiselevel=-1 to writemsg calls for legitimate errors in
                portage.digestcheck() so that important errors are printed
                even when --quiet is used.
  3425 zmedico  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.
  3428 zmedico  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.
  3430 zmedico  Remove dependence on a patched version of libselinux for bug
                #122517.


pym/portage_selinux.py (Added)
  3430 zmedico  Remove dependence on a patched version of libselinux for bug
                #122517.


pym/portage_util.py
  3429 zmedico  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.


=============================================================================
2.1_rc2
2006-05-22
trunk revision 3390
=============================================================================


bin/ebuild.sh
  3389 zmedico  Don't warn about RESTRICT=test unless FEATURES=test is
                enabled for bug #134004.


bin/emerge
  3346 zmedico  Allow `emerge --metadata` and `emerge --regen` for users in
                the portage group(bug #133157).
  3360 antarus  Fix for bug 133363, thanks to <world.root@gmail.com> for
                reporting.
  3362 zmedico  Add + to the --changelog regex so that dvd+rw-tools works for
                bug #133288.
  3366 zmedico  Print a warning message when AUTOCLEAN is disabled because
                it's quite dangerous.
  3369 zmedico  When portage is upgraded, only restart emerge when
                destroot="/". Also, clean up and fix the related logic in
                depgraph.display().
  3370 zmedico  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.
  3371 zmedico  Catch PackageNotFound exceptions from unmerge() for bug
                #133606.
  3372 zmedico  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.
  3378 zmedico  In order to help protect users, make AUTOCLEAN case
                insensitive.


bin/isolated-functions.sh
  3351 vapier   you have to quote $@ or things can break


bin/portageq
  3376 zmedico  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.


bin/prepstrip
  3352 vapier   strip leading slash in output
  3373 zmedico  Fix prepstrip split-debug paths for bug #133628. Thanks to
                kevquinn for this patch.


cnf/make.conf
  3364 zmedico  Add a warning message for AUTOCLEAN="no". Thanks to jakub for
                reporting.


cnf/make.conf.ppc64.diff
  3367 zmedico  s/mtarget/mtune/g for bug #133528.


man/emerge.1
  3361 zmedico  Add some PORTAGE_CONFIGROOT documentation for bug #131925.
                Thanks to Christian Heim for this patch.


man/make.conf.5
  3384 zmedico  Document userfetch for bug #133975.
  3385 zmedico  Fix bad spelling of "privileges" in userpriv docs.


man/portage.5
  3345 zmedico  s/DEPEND atoms/package atoms/ for better wording


pym/cache/flat_hash.py
  3349 zmedico  Write raw bytes instead of attempting to encode as utf-8 for
                bug #133287.
  3350 zmedico  Use iteritems() instead of items() because an iterator uses
                less memory.


pym/emergehelp.py
  3377 zmedico  Add --nocolor to emerge's short help for bug #133734. Thanks
                to gabebw@gmail.com for this patch.


pym/portage.py
  3347 zmedico  Make portdbapi obey self.depcachedir instead of using
                portage_const.DEPCACHE_PATH directly.
  3348 zmedico  Make portdbapi._init_cache_dirs() obey self.depcachedir.
  3354 zmedico  Ensure a sane global umask for bug #133307 (regression from
                r3228).
  3355 zmedico  Remove unnecessary and time consuming normpath call for bug
                #90444.
  3356 zmedico  Ensure that ${ROOT} is normalized for bug #90444.
  3357 zmedico  Revert the performance optimization from r3355 in favor of
                maximum robustness.
  3358 zmedico  Add back the rstrip(os.path.sep) which is needed in the case
                where ROOT=/ (regression from r3356).
  3359 zmedico  Fix a typo from r3357.
  3365 zmedico  Fix portage.getmaskingreason() so that it properly stacks all
                available package.mask files for bug #104000.
  3368 zmedico  Fix repoman to grab categores, arch.list, and package.mask
                from the proper locations when scanning an overlay. Thanks to
                mcummings for reporting.
  3382 zmedico  Validate the CATEGORY data in portage.config.load_infodir()
                and print a warning message if corruption is detected.
  3387 zmedico  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().


pym/portage_data.py
  3353 antarus  Wheel != secpass=1, so kill it. Wheel grants you nothing wrt
                portage perms.


pym/portage_manifest.py
  3383 zmedico  Don't include a redundant size field with the other hashes
                when creating manifest2 entries. Thanks to solar for
                reporting.
  3390 zmedico  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.


=============================================================================
2.1_rc1
2006-05-12
trunk revision 3343
=============================================================================


bin/clean_locks
  3309 blubb    catch ENOENT and ENOTDIR in clean_locks to prevent ugly
                tracebacks; bug 124164


bin/doexe
bin/doins
bin/doman
bin/prepall
bin/prepalldocs
bin/prepallinfo
bin/prepallman
bin/prepinfo
bin/preplib
bin/prepman
  3296 blubb    make portage shut up if --quiet is given; bug 62273
  3297 blubb    replace hardcoded /usr/lib/portage/bin with PORTAGE_BIN_PATH,
                defaulting to the hardcoded value


bin/ebuild
  3311 blubb    remove pointless if statement
  3312 blubb    readd not-so pointless if statement


bin/ebuild.sh
  3280 zmedico  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.
  3296 blubb    make portage shut up if --quiet is given; bug 62273
  3300 blubb    don't let profile.env overwrite variables that are already
                set; bug 130229
  3305 blubb    revert rev 3300 as it has various issues and doesn't fully
                solve the problem
  3316 zmedico  Improve the error message when an eclass is not found and
                remove unnecesary ERRORMSG variable.
  3319 zmedico  Fix some small typos in ebuild.sh for bug #86151. Thanks to
                Yoshino for this patch.
  3330 zmedico  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.
  3333 zmedico  Give a less confusing error message when unpack() arguments
                begin with ${DISTDIR}. Thanks to Flameeyes for reporting.
  3335 vapier   slightly easier test to read for DISTDR/unpack check


bin/emaint
bin/repoman
  3294 blubb    allow escaping in elog_base() to fix bug 131913
  3295 blubb    revert my last commit except for the parts i really wanted to
                commit


bin/emerge
  3275 antarus  Remove 4 year old cvs sync code, fix login around spawn, fix
                random raise
  3292 zmedico  Make sure that emerge really removes noauto from FEATURES for
                bug #131820.
  3321 zmedico  Catch a KeyError and notify the user of a missing digest for
                bug #132373.
  3325 genone   make rsync variable messages a bit less inviting
  3336 zmedico  Only adjust priority for PORTAGE_NICENESS on the first run
                for bug #132739.
  3340 antarus  Minor 1 liner for bug 131657


bin/isolated-functions.sh
  3294 blubb    allow escaping in elog_base() to fix bug 131913
  3296 blubb    make portage shut up if --quiet is given; bug 62273


bin/misc-functions.sh
  3280 zmedico  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.
  3289 solar    - People have started RESTRICTing "stricter", which we would
                like to discourage. bug 131779 (kevquinn)
  3296 blubb    make portage shut up if --quiet is given; bug 62273


bin/prepstrip
  3288 solar    - be sure to remove o+w bits on debug files
  3296 blubb    make portage shut up if --quiet is given; bug 62273
  3297 blubb    replace hardcoded /usr/lib/portage/bin with PORTAGE_BIN_PATH,
                defaulting to the hardcoded value
  3308 blubb    use hasq where appropriate


man/ebuild.5
  3310 blubb    best_version doesn't return different codes depending on
                whether it found a match or not, it's has_version; bug 130655


man/portage.5
  3342 zmedico  Add some documentation for /etc/portage/modules and
                metadata_overlay.


pym/cache/flat_hash.py
  3327 zmedico  Replace inappropriate use of writelines with normal write.
  3328 zmedico  Properly encode metadata strings as utf-8 in order to avoid
                "UnicodeEncodeError: 'ascii' codec can't encode character"
                exception when given a unicode string.


pym/cache/metadata.py
  3323 zmedico  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.
  3329 zmedico  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().


pym/cache/sqlite.py (Removed)
  3298 zmedico  Remove sqlite.py because it's performance is unacceptable and
                it is therefore useless.


pym/cache/util.py
  3313 zmedico  Catch an uncaught CacheCorruption for the traceback from bug
                #126692.


pym/emergehelp.py
  3283 zmedico  Update portage config update messages to mention
                dispatch-conf (in addition to etc-update). Thanks to genstef
                for reporting this.
  3290 antarus  Add cfg-update to the list of happy config file managers.
  3307 blubb    let 'emerge -h world' print a nice help message powered by
                antarus; bug 67448


pym/output.py
  3279 zmedico  Print [ OK ] messages (like eend) when checksums are good.
                Thanks to fox2mike for suggesting this.
  3306 blubb    use escaping code that works for mrxvt too; thanks to
                nelchael for the patch; bug 117509


pym/portage.py
  3279 zmedico  Print [ OK ] messages (like eend) when checksums are good.
                Thanks to fox2mike for suggesting this.
  3280 zmedico  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.
  3281 vapier   retain important historical aspects of the checksum messages
  3282 zmedico  Print disfiles file names for bug #131774. I've removed the [
                OK ] from okaymsg because the wink makes it redundant.
  3284 zmedico  Avoid global db usage in doebuild() except when absolutely
                necessary.
  3285 zmedico  Handle the doebuild's unmerge phase before setting up logfile
                because unmerge doesn't use the log.
  3286 zmedico  Pass a vartree instance into portage.unmerge() to avoid
                globals.
  3291 zmedico  Initial PORTAGE_CONFIGROOT support in the portage.config
                class for bug #73350.
  3292 zmedico  Make sure that emerge really removes noauto from FEATURES for
                bug #131820.
  3293 zmedico  Don't skip regenerate() because leads to 'Problem resolving
                dependencies' from emerge. Thanks to swegener for reporting.
  3301 zmedico  Remove an extra aux_get call in doebuild and combine it with
                another aux_get call in doebuild_environment.
  3302 zmedico  Properly join CUSTOM_MIRRORS_FILE with PORTAGE_CONFIG_ROOT in
                portage.fetch().
  3303 zmedico  fix a typo from the last revision
  3304 zmedico  Migrate old digest-* code in portage.fetch() to be Manifest2
                compatible.
  3317 zmedico  Bring back FEATURES="assume-digests" for bug #132182.
  3318 zmedico  Make sure that cloned FEATURES are correctly preserved by
                getting them directly from the backupenv instead of going
                through the lookuplist (Bug #132196).
  3320 zmedico  Reimplement the fix for bug #79566 more cleanly (the -* hack
                seems quite non-intuitive).
  3322 zmedico  Obey self.incrementals in config.regenerate() instead of
                using portage_const.INCREMENTALS directly.
  3324 zmedico  Catch a KeyError and report a missing digest for bug #132410.
  3326 zmedico  Fix portage.config handling of ROOT and PORTAGE_CONFIGROOT
                for bug #132442.
  3330 zmedico  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.
  3331 zmedico  Catch FileNotFound exception and print a message when a file
                listed in the Manifest could not be found.
  3332 zmedico  Prevent a TypeError exception when the /etc/make.profile
                symlink is broken on nonexistent.
  3334 zmedico  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.
  3337 vapier   remove unused STICKIES variable
  3338 zmedico  Neglect EOFError during mtimedb loading since this error
                seems to be common when the mtimedb has been corrupted.
  3339 antarus  Fix bug 113055, Binpkg's need SLOT in mysettings
  3341 zmedico  Revert r3339 because r3301 makes it unnecessary. See bug
                #133055.
  3343 zmedico  Make /etc/portage/bashrc relative to PORTAGE_CONFIGROOT.


pym/portage_const.py
  3337 vapier   remove unused STICKIES variable


pym/portage_data.py
  3283 zmedico  Update portage config update messages to mention
                dispatch-conf (in addition to etc-update). Thanks to genstef
                for reporting this.
  3290 antarus  Add cfg-update to the list of happy config file managers.


pym/portage_manifest.py
  3317 zmedico  Bring back FEATURES="assume-digests" for bug #132182.


=============================================================================
2.1_pre10
2006-04-29
trunk revision 3274
=============================================================================


bin/clean_locks
  3188 zmedico  Print the actual DISTDIR location in the help ouput of
                clean_locks for bug #116676.


bin/ebuild.sh
  3176 vapier   support *.bz #130406
  3264 zmedico  In the clean phase, for maximum chflags portablility, make
                *unlnk flags optional and drop the USERLAND test (bug
                #113536).


bin/emerge
  3184 zmedico  Fix `emerge -s` download size calculation for bug #130750.
  3186 zmedico  Exit with error status when the user has attempted to unmerge
                a package that is not installed (bug #118515).
  3187 zmedico  s/Do you want me/Would you like/g for bug #112439.
  3195 vapier   space arguments
  3196 vapier   fixup clean output
  3197 vapier   tighten up output in pretend mode
  3201 zmedico  Move portage.global_updates() invocation out of portage.py
                and into emerge/fixpackages where it belongs.
  3203 antarus  Minor emerge -V/--info fixes thanks to iggy, use
                portage_const PROFILE_PATH
  3204 zmedico  Move deprecated profile check out of global scope.
  3219 zmedico  Catch ValueError from cpv_expand for bug #131160.
  3233 zmedico  Remove all dependence on the portage.features global
                variable.
  3235 zmedico  Validate the resume merge list in --ask and --pretend mode
                for bug #128455.
  3243 zmedico  Pass a portdbapi instance into the FetchlistDict constructor
                so that it doesn't have to use any globals.
  3245 zmedico  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).
  3253 zmedico  Fix portage.global_updates() and portage.do_vartree() so they
                don't have to use any globals.
  3256 zmedico  Fix a typo from r3245.
  3258 zmedico  Only trigger the 'Using system located in ROOT' message when
                ROOT!=/.
  3261 zmedico  Fix spelling of "hierarchy" for bug #131582 and raise an
                exception for cleaner error handling.


bin/etc-update
  3175 vapier   use just [[...]] instead of ((...)); especially when dealing
                with user input


bin/fixpackages
  3201 zmedico  Move portage.global_updates() invocation out of portage.py
                and into emerge/fixpackages where it belongs.
  3253 zmedico  Fix portage.global_updates() and portage.do_vartree() so they
                don't have to use any globals.


bin/isolated-functions.sh
pym/portage_const.py
  3178 zmedico  Add and "other" EBUILD_PHASE for bug #127585. Thanks to
                Patrick Avery <pyromancer@gmail.com> for this patch.


bin/misc-functions.sh
  3189 zmedico  Disable sandbox during package phase interaction with $PKGDIR
                for compatibility with symlinks (See bug #130824).


bin/repoman
  3170 vapier   dont dump debug update info in quiet mode
  3173 zmedico  Fix gpgsign logic for bug #57445.
  3177 zmedico  Update Manifest automatically in repoman commit mode for bug
                #130541.
  3179 zmedico  Fix repoman --commitmsgfile logic. Thanks to Christian Heim
                <phreak@gentoo.org> for reporting.
  3180 vapier   if PORTAGE_GPG_DIR is not set then default to ~/.gnupg
                instead of just dumping an error
  3181 zmedico  Use os.path.join for PORTAGE_GPG_DIR and remove a duplicate
                access check.
  3230 zmedico  Remove all usage of portage.usedefaults and
                portage.profiledir globals.
  3231 zmedico  Remove all usage of the portage.groups global variable.
  3232 zmedico  Remove all usage of the portage.archlist global variable.
  3233 zmedico  Remove all dependence on the portage.features global
                variable.
  3236 zmedico  Fix false variable.readonly match on continued lines. Thanks
                to Flameeyes for reporting.
  3238 zmedico  Remove portage.config.groups (formerly portage.groups) and
                instead use ACCEPT_KEYWORDS directly (simplifies the code).
  3240 zmedico  Use the correct ACCEPT_KEYWORDS for each profile (regression
                from r3231).
  3243 zmedico  Pass a portdbapi instance into the FetchlistDict constructor
                so that it doesn't have to use any globals.
  3244 zmedico  Pass a portdbapi instance into portage.digestgen() so that it
                doesn't have to use any globals.
  3245 zmedico  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).
  3262 zmedico  Fix PORTAGE_GPG_DIR handling so that ~/.gnupg/ works
                correctly like the Manifest Signing Guide says it should.
                Thanks to Tupone for reporting.


bin/sed (Added)
  3190 antarus  A sed wrapper for OSX/BSD courtesy of Flameeyes and Spanky
  3191 antarus  Add copyright header, thanks to Zac Medico for pointing that
                out for me
  3198 blubb    set executable bit for sed-wrapper
  3199 antarus  Fix sed breakage for people with weird PATH, fix tabs. Thanks
                to Flameeyes once again.
  3200 antarus  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.
  3226 vapier   enable +x bits on sed


cnf/make.conf
  3248 blubb    escape $ in PORTAGE_ELOG_MAILSUBJECT; bug 131373


man/ebuild.5
  3174 zmedico  s/GENTOO_MIRRORs/GENTOO_MIRRORS/


pym/portage.py
  3172 zmedico  Implement portage.config.setdefault() in order to provide
                more of the standard mapping interface.
  3182 zmedico  Implement portage.config.get() in order to provide more of
                the standard mapping interface.
  3185 zmedico  Fix partial download size calculation for bug #116796.
  3201 zmedico  Move portage.global_updates() invocation out of portage.py
                and into emerge/fixpackages where it belongs.
  3202 zmedico  Move endversion and endversion_keys to portage_versions and
                import them for backward compatibility.
  3204 zmedico  Move deprecated profile check out of global scope.
  3205 zmedico  Move thirdpartymirrors stacking out of global scope.
  3206 zmedico  Do lazy initialization of portage.db[root][porttree] and
                db[root][vartree] for quicker portage import.
  3207 zmedico  Fix accidental usage of global settings instead of self.
  3208 zmedico  Replace usage of global portage.settings with self.mysettings
                instead.
  3209 zmedico  Remove a possibly unecessary try statement that may swallow
                important exceptions.
  3210 zmedico  Pass a dbapi instance into doebuild_environment so that it
                doesn't need to access the global db directly.
  3211 zmedico  Replace finddigest usage with Manifest2 compatible code.
  3212 zmedico  Use local myroot instead of portage.root global.
  3213 zmedico  Use one aux_get call instead of 2.
  3214 zmedico  Use tree="vartree" for prerm, postrm, and cleanrm phases (see
                bug #131116).
  3215 zmedico  Make sure a usage of portage.settings is marked as global.
  3216 zmedico  Make sure usage of portage.db and portage.mtimedb is
                appropriately marked as global.
  3217 zmedico  For better organization, migrate the initialization of all
                major globals in portage.py to the bottom of the file.
  3218 zmedico  Add a note concerning the separation of legacy global
                initializations.
  3220 zmedico  Move the mtimedb initialization code from global scope to a
                function.
  3221 zmedico  Move ACCEPT_KEYWORDS and PORTAGE_ARCHLIST validation from
                global scope to the config class.
  3222 zmedico  Catch IOError when loading the mtimedb.
  3223 zmedico  Move the make.profile symlink warning from global scope to
                the config class.
  3224 zmedico  Split a config.validate() method and move PORTAGE_TMPDIR
                sanity check to doebuild.
  3225 zmedico  Move USER_VIRTUALS_FILE deprecation warning to
                config.validate().
  3227 zmedico  Move cache dir initialization from global scope to the
                portdbapi class.
  3228 zmedico  Move initialization of tmp, var/tmp, var/lib/portage, and
                var/cache/edb from global scope to
                portage.cofig._init_dirs().
  3229 zmedico  Move portage.root logic from global scope into the
                portage.config class.
  3230 zmedico  Remove all usage of portage.usedefaults and
                portage.profiledir globals.
  3231 zmedico  Remove all usage of the portage.groups global variable.
  3232 zmedico  Remove all usage of the portage.archlist global variable.
  3233 zmedico  Remove all dependence on the portage.features global
                variable.
  3234 zmedico  Make copies of the groups attribute before modifying
                (regression from r3231).
  3237 zmedico  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).
  3238 zmedico  Remove portage.config.groups (formerly portage.groups) and
                instead use ACCEPT_KEYWORDS directly (simplifies the code).
  3239 zmedico  Remove portage.config.root (from r3229) and just use
                config["ROOT"] to eliminate redundancy.
  3241 zmedico  Move PORTAGE_MASTER_PID and BASH_ENV from global scope to the
                doebuild_environment() function.
  3242 zmedico  Group together and clearly mark some deprecated globals.
  3243 zmedico  Pass a portdbapi instance into the FetchlistDict constructor
                so that it doesn't have to use any globals.
  3244 zmedico  Pass a portdbapi instance into portage.digestgen() so that it
                doesn't have to use any globals.
  3245 zmedico  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).
  3246 zmedico  Add optional mydbapi parameter to doebuild() so that it
                doesn't have to use any globals.
  3247 zmedico  Add an option vartree parameter to doebuild(), merge(), and
                the dblink constructor so that they don't have to use
                globals.
  3249 zmedico  Pass in mydbapi and vartree where relevant for all doebuild
                calls in portage.py and add necessary support to merge() and
                the dblink class.
  3250 zmedico  Only use one global statement to avoid bogus python syntax
                warning.
  3251 zmedico  Make FEATURES=cvs cause all distfiles to be fetched if
                necessary (just like `ebuild digest`) and update the code for
                Manifest2.
  3252 zmedico  Remove usage of the portage.thirdpartymirrors global
                variable.
  3253 zmedico  Fix portage.global_updates() and portage.do_vartree() so they
                don't have to use any globals.
  3254 zmedico  Make portage.vardbapi able to work without any global
                variables.
  3255 zmedico  Disable the FEATURES=cvs part of r3251 because it prevents
                missing files from bein fetched when they need to be.
  3257 zmedico  Remove global db usage from portage.config.regenerate().
  3259 zmedico  Remove global db usage from portdbapi.gvisible().
  3263 zmedico  Catch Permission Denied errors during manifest/digest
                generation for bug #131073.
  3265 zmedico  Enable portage.env_update() to work without globals.
  3266 zmedico  Enable portage.dep_zapdeps() to work without globals.
  3267 zmedico  Enable portage.pkgmerge() to work without globals.
  3268 zmedico  Enable portage.commit_mtimedb() to work without globals.
  3269 zmedico  Return early from portage.commit_mtimedb() when mtimedb is
                None.
  3270 zmedico  Pass mtimes through doebuild(), into dblink.merge(), and
                finally to env_update().
  3271 zmedico  Move the legacy global initializations into a function and
                allow them to be disabled via an experimental
                PORTAGE_LEGACY_GLOBALS environment variable.
  3272 zmedico  Prevent a NameError in commit_mtimedb() when the
                portage.mtimedb attribute does not exist.
  3273 zmedico  Add a portage.config.selinux_enabled() accessor and use it to
                remove all global usage of portage.selinux_enabled.
  3274 zmedico  Remove all usage of the portage.root global from portage.py.


pym/portage_manifest.py
  3171 zmedico  Ignore ENOENT errors when $FILESDIR doesn't exist. Thanks to
                Christian Heim for reporting.
  3184 zmedico  Fix `emerge -s` download size calculation for bug #130750.
  3192 zmedico  Remove bogus "size" manifest entries reported by vapier.
  3193 zmedico  Replace hard coded "size" with MANIFEST1_HASH_FUNCTIONS.
  3194 zmedico  Fix FileNotFound error when ignoreMissing=True for bug
                #130928.
  3245 zmedico  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).
  3263 zmedico  Catch Permission Denied errors during manifest/digest
                generation for bug #131073.


pym/portage_versions.py
  3202 zmedico  Move endversion and endversion_keys to portage_versions and
                import them for backward compatibility.


=============================================================================
2.1_pre9
2006-04-16
trunk revision 3168
=============================================================================


bin/clean_locks
  3162 vapier   eat whitespace


bin/dispatch-conf
  3129 zmedico  Make dispatch-conf play nice with symlinks for bug #129515.
                Thanks to Patrick McLean for the initial patch.
  3132 zmedico  Revert r3129 and r3130 because they don't solve bug #129515.


bin/doexe
bin/dojar
bin/find-requires
bin/isolated-functions.sh
bin/prepalldocs
bin/prepinfo
bin/quickpkg
  3155 blubb    `` must die


bin/dosym
  3108 vapier   simpler dosym to make mr bones happy


bin/ebuild.sh
  3125 zmedico  Support EBUILD_PHASE during package and rpm phases for bug
                #129244.
  3151 blubb    only move $T/environment if it exists; bug 64926
  3152 blubb    fix typo from rev 3151
  3153 blubb    use has instead of bloated bash constructs
  3154 blubb    some more hasq fixes
  3155 blubb    `` must die
  3156 blubb    remove all unneeded slashes, not only // or ///
  3157 blubb    use strip_duplicate_slashes instead of "for 1 2 3 do
                var=${var/\/\///}"
  3158 vapier   touchup syntax and dont execute the loop as many times


bin/emerge
  3137 vapier   fixes by solar for ROOT output when unmerging #129649 and
                make --quiet output a bit more useful
  3165 blubb    add instructions how to update portage when --sync tells you
                to do so; bug 118715


bin/etc-update
  3130 zmedico  Make etc-update play nice with symlinks for bug #129515.
                Thanks to Patrick McLean for the initial patch.
  3132 zmedico  Revert r3129 and r3130 because they don't solve bug #129515.
  3138 blubb    don't display the ._cfg???? files anymore but instead the
                number of updates for each file; bug 69845
  3139 blubb    ignore backup files when scanning for ._cfg????_*; bug 121401
  3140 blubb    don't declare input as integer, or etc-update will crash
                whenever the user enters some non-integer value; bug 55082
  3141 blubb    exit if user hits the cancel button in dialog mode; bug
                108137
  3155 blubb    `` must die


bin/misc-functions.sh
  3118 vapier   kill off custom bash hacks and replace with calls to
                find/xargs #121368
  3155 blubb    `` must die
  3160 zmedico  Make find arguments portable for bug #129935 and remove temp
                file usage for bug #121368.
  3161 vapier   use a temp file but this time cut out the duplicate calls to
                `find`
  3163 blubb    fix misuse of 'cat'
  3164 blubb    make misc-functions.sh executable as it's called directly
                from the python side


bin/repoman
  3110 zmedico  Pass DISTDIR into the Manifest constructor instead of getting
                it from mysettings because mysettings will be eliminated
                soon.
  3111 zmedico  Remove db and mysettings from Manifest and replace them with
                a mapping object that provides access to fetch lists for each
                cpv.
  3115 zmedico  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).
  3116 zmedico  Use os.path.join for cleaner joins.


pym/emergehelp.py
  3166 blubb    sync short options with the rest of emerge --help; bug 124489
  3167 blubb    touchup emerge --help: reorder and wrap lines. credit goes to
                Benno Schulenberg; bug 121528


pym/portage.py
  3104 zmedico  Move mf.create out of a loop because it should only need to
                be called once.
  3106 zmedico  Encapsulate type guessing logic in a new Manifest method.
  3107 zmedico  Remove dead code from portage.digestParseFile().
  3110 zmedico  Pass DISTDIR into the Manifest constructor instead of getting
                it from mysettings because mysettings will be eliminated
                soon.
  3111 zmedico  Remove db and mysettings from Manifest and replace them with
                a mapping object that provides access to fetch lists for each
                cpv.
  3113 zmedico  Simplify the porttrees logic for FetchlistDict.
  3114 zmedico  Add docstrings for FetchlistDict.
  3117 jstubbs  Ensure that binarytree.populate is called even when the first
                access is via binarytree.dbapi.{aux_get,match}.
  3119 zmedico  Fix FetchlistDict so usage of global portdb leaves
                portdb.porttrees intact.
  3120 zmedico  Fix FetchlistDict.keys() so it does the same porttrees trick
                as __getitem__.
  3121 zmedico  Remove the "db" parameter from digestgen() because it's not
                needed.
  3122 zmedico  Remove the "db" parameter from digestParseFile() because it's
                not needed.
  3123 zmedico  Remove the "db" parameter from digestcheck() because it's not
                needed.
  3124 zmedico  Remove dead code from portage.digestcheck().
  3125 zmedico  Support EBUILD_PHASE during package and rpm phases for bug
                #129244.
  3126 zmedico  Support EBUILD_PHASE during more phases for bug #129244.
  3127 zmedico  Implement lazy construction of global databases
                db[root]["porttree"] and db[root]["bintree"] and
                automatically populate db[root]["bintree"] on access.
  3128 zmedico  Make qmerge imply noclean for bug #129559.
  3131 zmedico  Fix LazyDatabasesDict so that databases only need to be
                created once.
  3133 zmedico  Create a generic portage_util.LazyItemsDict and use it for
                lazy initialization portage.db[root] items.
  3134 zmedico  Use cannonical paths for portdb.portrees to ensure that,
                given pkgdir, FetchlistDict can determine the correct path
                for the portage tree.
  3135 zmedico  Use LazyItemsDict to avoid a vdb scan during portage import
                when autouse is enabled.
  3136 zmedico  Fix manifest/digest generation logic for bug #129737.
  3142 zmedico  Fix digestcheck logic for bug #129839.
  3143 zmedico  Add an initial_items parameter to the LazyItemsDict
                constructor in order to facilitate integration with existing
                dict based code.
  3144 zmedico  Fix collision-protect logic so the correct cpv is used for
                slot comparison.
  3145 zmedico  Fix a typo from the last revision.
  3146 zmedico  Preserve the mysettings["SLOT"] for bug #129720.
  3147 zmedico  Run chflags only when needed for bug #129852. Thanks to Diego
                Petten?\195?\178 for the patch.
  3148 zmedico  Catch fetch_check FileNotFound exceptions for bug #129962.
  3149 zmedico  Add singleton support to LazyItemsDict to make it easier to
                use with arbitrary function calls.


pym/portage_checksum.py
  3105 zmedico  For compatibility, return a tuple of 3 when an OSError is
                raised in portage_checksum.verify_all()
  3109 zmedico  Remove dependency on the core portage module from
                portage_manifest.


pym/portage_manifest.py
  3103 zmedico  Supply missing parameters to a checkFileHashes call.
  3106 zmedico  Encapsulate type guessing logic in a new Manifest method.
  3109 zmedico  Remove dependency on the core portage module from
                portage_manifest.
  3110 zmedico  Pass DISTDIR into the Manifest constructor instead of getting
                it from mysettings because mysettings will be eliminated
                soon.
  3111 zmedico  Remove db and mysettings from Manifest and replace them with
                a mapping object that provides access to fetch lists for each
                cpv.
  3112 zmedico  Remove unnecessary calls to dict.keys() from
                portage_manifest.
  3136 zmedico  Fix manifest/digest generation logic for bug #129737.
  3142 zmedico  Fix digestcheck logic for bug #129839.
  3150 zmedico  Split out a reusable Manifest._readManifest() method.
  3168 zmedico  Avoid rewritting the Manifest whenever possible by comparing
                the existing manifest entries to the ones that will be
                written.


pym/portage_util.py
  3133 zmedico  Create a generic portage_util.LazyItemsDict and use it for
                lazy initialization portage.db[root] items.
  3143 zmedico  Add an initial_items parameter to the LazyItemsDict
                constructor in order to facilitate integration with existing
                dict based code.
  3149 zmedico  Add singleton support to LazyItemsDict to make it easier to
                use with arbitrary function calls.
  3159 zmedico  Override LazyItemsDict.update() so that it works correctly
                with other instances of LazyItemsDict.


=============================================================================
2.1_pre8
2006-04-08
trunk revision 3101
=============================================================================


NEWS
bin/mirror.py (Removed)
  3101 zmedico  Remove bin/mirror.py because, according to Brian Harring,
                it's obsoleted by mirror-dist.


TODO (Removed)
  3064 antarus  Remove out-dated TODO file


bin/ebuild.sh
  3028 solar    - set sane perms on unpacking. If anybody hates this than
                they are welcome to tie it into FEATURES= sfperms
  3036 zmedico  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).
  3082 blubb    add /usr/local/{,s}bin to PATH; bug 117713
  3083 blubb    set PKG_CONFIG_PATH correct on multilib systems; bug 126801


bin/emerge
  2999 zmedico  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).
  3015 zmedico  Allow users in the portage group to fetch. Thanks to truedfx
                for reporting this regression.
  3029 genone   Recommend PORTAGE_RSYNC_EXTRA_OPTS instead of
                PORTAGE_RSYNC_OPTS
  3033 vapier   add missing space in quiet col output
  3051 antarus  Fixing stupid exception handling
  3056 antarus  Make repoman check for USE expand descriptions in other files
                so USE_EXPAND variables can have
                longer/better/faster/stronger descriptions.
  3061 antarus  Fix minor typo: reported by Brian Harring
  3084 blubb    only display syncing progress for each file when --verbose is
                set; thanks Olaf Hering, bug 128362
  3085 antarus  Change == None to is None
  3089 antarus  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.
  3090 antarus  Fix a regression in security handling, emerge with no options
                should print out helpful information, not tell you you need
                to be root ;)
  3091 antarus  Fix this random y that was in the last commit...I blame nano
                :P
  3093 zmedico  Fix myaction logic (myaction==None is actually valid,
                regression from r3090).
  3095 zmedico  Fix myaction logic so that --resume works (with --pretend)
                for non-root users.
  3096 zmedico  Remove redundant "please tell me what to do" code, which is
                now handled earlier.


bin/repoman
  2999 zmedico  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).
  3002 genone   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)
  3020 genone   fix some nasty repoman tricks causing problems (always use
                absolute paths with manifest2 code)
  3056 antarus  Make repoman check for USE expand descriptions in other files
                so USE_EXPAND variables can have
                longer/better/faster/stronger descriptions.
  3057 antarus  Take sound advice and move all the use expand files into
                desc/
  3062 antarus  Fixes for repoman thanks to exg@gentoo.org and bug #128451,
                Excludes Manifest regeneration in certain cases, adds pretend
                gpg outut
  3066 antarus  Fix ordering in cvs calls to be correct, thanks to exg for
                the fix (again)
  3067 antarus  Fix yet another typo of mine, thanks to exg
  3068 antarus  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 ;)
  3073 antarus  Don't generate digests on --pretend for repoman. Thanks go
                once again to exg@gentoo.org :)
  3078 zmedico  Revert r3073 since it causes a regression (digestgen needs to
                be run for each value of repoman_settings["O"]). See bug
                #128946.
  3079 antarus  Remove really really old check during a cvs move. Fix except
                statement to be saner
  3085 antarus  Change == None to is None


cnf/make.conf
  3014 genone   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)
  3069 blubb    fix make.conf indentation per bug 127868; thanks to Paul
                Varner for the patch
  3070 blubb    fix typo in make.conf and remove RSYNC_EXCLUDEFROM since it's
                deprecated; bug 127614


cnf/make.globals
pym/elog_modules/mod_mail.py
pym/elog_modules/mod_save.py
  3014 genone   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)


man/repoman.1
  3002 genone   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)


pym/cache/anydbm.py
  3097 zmedico  Fix some minor issues with the anydbm cache module. Thanks to
                Halcyon for reporting.


pym/dcdialog.py (Removed)
  3099 zmedico  Remove pym/dcdialog.py because it's not used. Thanks to
                antarus for noticing.


pym/emergehelp.py
  3080 blubb    emerge info -> emerge --info


pym/getbinpkg.py
pym/portage_file.py
  3085 antarus  Change == None to is None


pym/output.py
  3030 zmedico  Create a single colorize() function in the output module and
                use it to generate all of the existing color functions.
  3072 zmedico  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.
  3075 zmedico  Add color code mappings for 16 colors in rgb format.
  3076 zmedico  Move some color mappings to ensure that they do not override
                the user defined color map.


pym/portage.py
  2989 genone   Fix crappy error handling for PORTAGE_WORKDIR_MODE
  2990 genone   Add manifest2 support.
  2994 genone   PORTAGE_WORKDIR_MODE is octal
  2996 genone   Make ebuild digest a bit more verbose
  2997 genone   Make ebuild digest reuse existing checksums
  2998 genone   only reuse distfile checksums if the file doesn't exist
  2999 zmedico  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).
  3004 zmedico  Add lazy loading of virtuals in portage.do_vartree() for
                backward compatibility.
  3006 zmedico  Fix traceback for bug #127573. Thanks to illuminata for
                reporting and antarus for the patch.
  3012 genone   for collision-protect also check that only versions with the
                same slot can overwrite each others files
  3013 zmedico  Clean up code for creation of CCACHEDIR, CONFCACHEDIR, and
                DISTCC_DIR. Prevent excessive recursive stat calls for bug
                #127563.
  3037 zmedico  Only do recursive permissions on $DISTDIR and
                $DISTDIR/cvs-src when the top level permissions do not match.
                Thanks to marienz for reporting.
  3038 zmedico  Handle distlocks subdir initialization together with $DISTDIR
                and $DISTDIR/cvs-src.
  3040 zmedico  Add a reusable ensure_dirs() function and use it for DISTDIR
                initialization.
  3041 zmedico  Use ensure_dirs for CCACHE_DIR, CONFCACHE_DIR, and
                DISTCC_DIR.
  3043 vapier   dont run ldconfig if a package doesnt actually install any
                libraries
  3044 zmedico  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.
  3045 vapier   need to still check makelinks
  3046 zmedico  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).
  3047 zmedico  Rename local 'root' variable to parent_dir so that it's not
                confused with portage.root
  3048 vapier   fix makelinks logic again
  3058 zmedico  Move DISTDIR initialization from doebuild to fetch and handle
                read-only file system errors for bug #128506.
  3059 antarus  Add a deprecation notice for those who are still using
                tokenize ( hopefully no one :/ )
  3060 antarus  tsk tsk, fix a missing parenthesis :)
  3063 zmedico  Fix a typo from r3058.
  3065 jstubbs  s/parenreduce/paren_reduce/ comment fix.
  3074 zmedico  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.
  3077 zmedico  Revert FEATURES=noclean behavior so that clean is only
                skipped after merge. Thanks to azarah for reporting.
  3085 antarus  Change == None to is None
  3086 antarus  Speed up portage.config.keys()
  3092 vapier   remove reference to a script that doesnt exist
  3094 jstubbs  Protect string indexes during input stripping in dep_getkey
                and dep_getcpv. Bug #129193


pym/portage_checksum.py
  2990 genone   Add manifest2 support.
  2995 genone   FileNotFoundException should be used with the filename


pym/portage_const.py
  2990 genone   Add manifest2 support.
  3072 zmedico  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.


pym/portage_contents.py (Removed)
  3100 zmedico  Remove pym/portage_contents.py because it's not used. Thanks
                to Brian Harring for noticing.


pym/portage_debug.py
  3035 zmedico  Ignore more system libraries in python-trace mode.


pym/portage_exception.py
  3058 zmedico  Move DISTDIR initialization from doebuild to fetch and handle
                read-only file system errors for bug #128506.
  3072 zmedico  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.


pym/portage_exec.py
  3054 zmedico  Add a portage_exec.get_open_fds() function for bug #128284.
                Thanks to Brian Harring for this patch.
  3055 jstubbs  Make the reading of /proc/<pid>/fd/ impervious to the
                possible addition of non-numerically named entries.


pym/portage_locks.py
  3053 antarus  More exception fixes...
  3085 antarus  Change == None to is None


pym/portage_manifest.py (Added)
  2992 genone   add missing manifest module
  2997 genone   Make ebuild digest reuse existing checksums
  3002 genone   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)
  3011 genone   fix AuxfileFilter to ignore all files in svn or cvs dirs
  3017 zmedico  Split out a reusable Manifest._parseDigests() method.
  3018 zmedico  fix a typo from the last revision.
  3019 zmedico  Split out a reusable Manifest._createDigestLines1() method.
  3021 zmedico  Use write_atomic for updates of old style digest files.
  3022 zmedico  Compare new digest data with old digest data and rewrite the
                new digest only if they differ (forward port r2951 from
                manifest1 to manifest2).
  3024 genone   sort digest/Manifest files by 1) filetype (v2 only) 2)
                filename (v1+v2) 3) hashtype (v1 only)
  3026 zmedico  Sort the hashes for manifest2 lines to that output is
                reproducible.
  3042 zmedico  Fix manifest2AuxfileFilter so that it correctly filters files
                such as 2.1_pre7/CVS/Entries.
  3071 zmedico  Automatically create FILESDIR if necessary when writing old
                style digests. Thanks to blubb for reporting.
  3085 antarus  Change == None to is None
  3088 zmedico  Optimize manifest2AuxfileFilter handling of ignored
                directories. Thanks to Brian Harring for the patch.
  3098 zmedico  Add copyright headers for portage_update and
                portage_manifest.


pym/portage_update.py
  3098 zmedico  Add copyright headers for portage_update and
                portage_manifest.


pym/portage_util.py
  3034 zmedico  Automatically follow symlinks in the atomic_ofstream
                constructor. See bug #127897.
  3039 zmedico  The return value from apply_permissions now indicates whether
                or not the permissions needed to be modified.
  3040 zmedico  Add a reusable ensure_dirs() function and use it for DISTDIR
                initialization.
  3058 zmedico  Move DISTDIR initialization from doebuild to fetch and handle
                read-only file system errors for bug #128506.
  3085 antarus  Change == None to is None
  3087 zmedico  Raise exceptions when appropriate in the atomic_ofstream
                constructor for bug #129098.


=============================================================================
2.1_pre7
2006-03-24
trunk revision 2987
=============================================================================


NEWS
RELEASE-NOTES
  2957 genone   adding notes about new rsync option handling


bin/dobin
bin/dosbin
  2942 zmedico  Make PORTAGE_INST_UID and PORTAGE_INST_GID default to 0 in
                case of environment problems.


bin/dopython (Removed)
  2889 zmedico  Remove bin/dopython because it's not either used or useful.
                Thanks to Brian Harring for noticing.


bin/ebuild
pym/portage_debug.py (Added)
  2979 zmedico  Add a portage_debug module and python-trace feature for
                --debug mode.


bin/ebuild.sh
  2898 vapier   - dont allow people to call `install` with -s via
                insopts/diropts/exeopts/libopts and simplify them in general
                - fix "nostrip" usage and DEBUGBUILD
  2900 vapier   declare more local variables to prevent env pollution
  2901 zmedico  Add a new PORTAGE_WORKDIR_MODE config variable so that the
                mode of WORKDIR is no longer hard coded. See bug #8688.
  2902 vapier   add support for unpacking .tbz, .a, and .deb files
  2903 vapier   cleanup bash code in use*() and has*() functions with the
                help of agriffis
  2905 vapier   touchup some more misc bits of bash code
  2931 zmedico  Prevent "eclass-debug.log: No such file or directory"
                messages that are produced during the "depend" phase when
                ${T} doesn't exist.
  2933 zmedico  Fix PORTAGE_WORKDIR_MODE so that 0700 is correctly
                substituted when PORTAGE_WORKDIR_MODE is unset or null.
  2940 zmedico  Make successful inherit calls return success so that \'source
                ${EBUILD}` returns success when an ebuild calls inherit last.
  2952 zmedico  Add NOCOLOR support to ebuild.sh and make emerge
                automatically add NOCOLOR to portage.settings when --nocolor
                is specified. See bug #126756.
  2964 zmedico  Move has, hasq, and hasv functions to isolated-functions.sh
                since they do not depend on ebuild.sh.
  2971 zmedico  Enable bash tracing during sourcing of bashrc for --debug
                mode. See bug #126442.
  2972 zmedico  Include the die call itself (including line number) in the
                printed call stack when an ebuild dies.


bin/emerge
  2849 vapier   dont reset spinner for non-ttys if --quiet is in use
  2857 zmedico  Add --tree to the blacklist when --resume is used. See bug
                #54040.
  2864 zmedico  Fix KeyError: 'mergelist' error (regression from r2847). See
                bug #125993.
  2867 zmedico  Simplify emerge's secpass logic.
  2885 antarus  Catch keyboardinterrupt during imports, don't print nasty
                tracebacks there, later on we have signal handlers for
                control C
  2890 zmedico  Generate depgraph.applied_useflags in the display method as
                necessary for use with --resume. See bug #126120.
  2891 vapier   add --quiet support to --cols
  2908 zmedico  Add package atom validation to the `emerge --config` action.
                Thanks to sekretarz for reporting and providing an initial
                patch.
  2952 zmedico  Add NOCOLOR support to ebuild.sh and make emerge
                automatically add NOCOLOR to portage.settings when --nocolor
                is specified. See bug #126756.
  2955 genone   Add support for generic PORTAGE_RSYNC_{EXTRA_,}OPTS,
                deprecate existing RSYNC_ variables, rename RSYNC_RETRIES to
                PORTAGE_RSYNC_RETRIES
  2958 zmedico  Fix deprecated RSYNC_TIMEOUT handling (move it where
                rsync_flags is defined) and direct error messages to stderr
                via writemsg.
  2959 zmedico  Miscellaneous fixes and cleanup for the rsync options
                handling.
  2961 zmedico  Do not split PORTAGE_RSYNC_EXTRA_OPTS and add it directly to
                rsynccommand in order to preserve (hypothetical) quoted
                whitespace.
  2979 zmedico  Add a portage_debug module and python-trace feature for
                --debug mode.
  2999 zmedico  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).


bin/emerge-webrsync
  2923 zmedico  Merge emerge-webrsync uid and gid fixes from the prefix
                branch.
  2924 zmedico  Fix deprecated emerge syntax in emerge-webrsync for bug
                #126558.
  2942 zmedico  Make PORTAGE_INST_UID and PORTAGE_INST_GID default to 0 in
                case of environment problems.
  2943 zmedico  Fix typo in spelling of been in emerge-webrsync. Thanks to
                bonsaikitten for reporting.
  2965 zmedico  Make emerge-webrsync only do metadata-transfer when
                necessary. Thanks to Patrick Lauer for reporting.


bin/isolated-functions.sh
  2964 zmedico  Move has, hasq, and hasv functions to isolated-functions.sh
                since they do not depend on ebuild.sh.


bin/misc-functions.sh
  2860 vapier   ppc64 isnt ok just yet, so dont scan for exec stacks
  2863 zmedico  Use find -path instead of -name for compatibility with both
                gnu and bsd userlands. See bug #125919.
  2911 zmedico  Use `mv -f` to make sure mv does not prompt for confirmation.
  2942 zmedico  Make PORTAGE_INST_UID and PORTAGE_INST_GID default to 0 in
                case of environment problems.
  2986 zmedico  Create tbz2 package directly in ${PKGDIR}/All to avoid need
                for temp file (inefficient) and avoid selinux label issues
                for bug #127374.


bin/quickpkg
  2850 vapier   backport portage-pkg path change from savior branch


bin/repoman
  2953 vapier   delete extraneous print
  2954 vapier   update -I long option
  2999 zmedico  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).
  3002 genone   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)


cnf/make.conf
  2955 genone   Add support for generic PORTAGE_RSYNC_{EXTRA_,}OPTS,
                deprecate existing RSYNC_ variables, rename RSYNC_RETRIES to
                PORTAGE_RSYNC_RETRIES
  2956 genone   make the fallback make.conf more generic by removing x86
                specific stuff and removing CHOST completely


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
  2955 genone   Add support for generic PORTAGE_RSYNC_{EXTRA_,}OPTS,
                deprecate existing RSYNC_ variables, rename RSYNC_RETRIES to
                PORTAGE_RSYNC_RETRIES
  2987 genone   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.


cnf/make.conf.alpha.diff (Added)
cnf/make.conf.amd64.diff (Added)
cnf/make.conf.arm.diff (Added)
cnf/make.conf.hppa.diff (Added)
cnf/make.conf.ia64.diff (Added)
cnf/make.conf.mips.diff (Added)
cnf/make.conf.ppc.diff (Added)
cnf/make.conf.ppc64.diff (Added)
cnf/make.conf.s390.diff (Added)
cnf/make.conf.sparc.diff (Added)
cnf/make.conf.x86-fbsd.diff (Added)
cnf/make.conf.x86.diff (Added)
make.conf-repatch.sh (Added)
  2987 genone   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.


cnf/make.conf.mac (Removed)
  2955 genone   Add support for generic PORTAGE_RSYNC_{EXTRA_,}OPTS,
                deprecate existing RSYNC_ variables, rename RSYNC_RETRIES to
                PORTAGE_RSYNC_RETRIES


cnf/make.globals
  2901 zmedico  Add a new PORTAGE_WORKDIR_MODE config variable so that the
                mode of WORKDIR is no longer hard coded. See bug #8688.
  2955 genone   Add support for generic PORTAGE_RSYNC_{EXTRA_,}OPTS,
                deprecate existing RSYNC_ variables, rename RSYNC_RETRIES to
                PORTAGE_RSYNC_RETRIES


man/make.conf.5
  2851 vapier   default CCACHE_DIR doesnt use PORTAGE_TMPDIR, it just happens
                to also reside there by default
  2955 genone   Add support for generic PORTAGE_RSYNC_{EXTRA_,}OPTS,
                deprecate existing RSYNC_ variables, rename RSYNC_RETRIES to
                PORTAGE_RSYNC_RETRIES


man/repoman.1
  3002 genone   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)


pym/cache/flat_hash.py
  2938 zmedico  Replace hard coded number 2 in cache modules with
                errno.ENOENT.
  2944 zmedico  Prevent an IOError with errno != ENOENT from being swallowed
                in flat_hash._setitem().


pym/cache/flat_list.py
  2938 zmedico  Replace hard coded number 2 in cache modules with
                errno.ENOENT.


pym/cache/util.py
  2861 zmedico  Fix misuse of dict.fromkeys class method so that cache
                cleansing works during `emerge --metadata` runs.


pym/emergehelp.py
  2939 kito     add short options for --one-shot and --fetch-all-uri to
                --help output. Closes Bug #126626


pym/portage.py
  2850 vapier   backport portage-pkg path change from savior branch
  2854 zmedico  Make the clean phase obey keeptemp in FEATURES.
  2858 zmedico  Add the command (ebuild.sh or misc-functions.sh) to the
                actionmap for spawnebuild.
  2859 zmedico  Use the ** operator for better unpacking of actionmap args in
                spawnebuild.
  2862 zmedico  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.
  2865 zmedico  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.
  2870 zmedico  Use apply_secpass_permissions for DISTDIR permissions.
  2871 zmedico  Add a new OperationNotPermitted exception and use it to wrap
                apply_permissions exceptions.
  2873 zmedico  Handle FileNotFound errors instead of ENOENT errors when
                doing permissions for the distlocks subdir.
  2875 zmedico  Fix some typos in the DISTDIR permissions handling.
  2877 zmedico  Use apply_secpass_permissions for all permissions in
                doebuild.
  2878 zmedico  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.
  2879 zmedico  Move the "noclean" feature check into clean phase part of
                doebuild.
  2883 antarus  Remove some SystemExit exceptions, make portage behave during
                a ctrl+c
  2884 antarus  Remove SystemExit's from portage imports, raise on the
                correct exception, don't die if imports fail.
  2886 antarus  marienz pointed out that 'raise e' actually raises a new
                exception, which is not intended here, so we raise instead of
                raising e
  2887 antarus  Comma's are for pussies ( fixing regression from last
                reivision )
  2888 zmedico  Send a global updates messages to stdout for bug #126111.
  2892 zmedico  Use writemsg_stdout for update_ents and move_ent routines.
                See bug #126111.
  2893 zmedico  Split the bulk of ebuild environment setup out of doebuild
                into a new doebuild_environment function.
  2894 zmedico  Split the bulk of directory preparation out of doebuild into
                a new prepare_build_dirs function.
  2895 zmedico  Check the return value of prepare_build_dirs and return early
                from doebuild if necessary.
  2901 zmedico  Add a new PORTAGE_WORKDIR_MODE config variable so that the
                mode of WORKDIR is no longer hard coded. See bug #8688.
  2904 zmedico  Move environment variables WORKDIR, D, and T from
                prepare_build_dirs to doebuild_environment.
  2906 zmedico  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.
  2907 zmedico  Implement __contains__ for portage.config so that it calls
                has_key, enabling membership test operators (in and not in)
                to work as expected.
  2909 zmedico  Use the built-in bool() function to convert 1 or 0 to True or
                False as recommended by marienz.
  2912 zmedico  Improve error handling in the CONFCACHE_DIR section of
                prepare_build_dirs. Thanks to solar for reporting this issue.
  2913 zmedico  Disable confcache when it's not possible to apply correct
                group permissions to an existing file in CONFCACHE_DIR.
  2914 zmedico  Error handling in prepare_build_dirs for DISTCC_DIR.
  2915 zmedico  Improve error handling in prepare_build_dirs for PORT_LOGDIR.
                Fix doebuild 'logfile' which has caused broken logging since
                r2894.
  2919 zmedico  Fix error handling for $DISTDIR/cvs-src creation and
                permissions in doebuild.
  2922 zmedico  For better handling of $DISTDIR/cvs-src permissions, use
                os.walk instead of spawning chgrp and chmod.
  2925 zmedico  Add a generic apply_recursive_permissions function and use is
                for $DISTDIR/cvs-src.
  2926 zmedico  Use apply_recursive_permissions for CONFCACHE_DIR.
  2927 zmedico  Use apply_recursive_permissions for CCACHE_DIR. Also fix a
                typo in error handling for CONFCACHE_DIR from r2912.
  2928 zmedico  Use apply_recursive_permissions for DISTCC_DIR.
  2929 zmedico  Catch a possible SyntaxError from the eval function when
                parsing PORTAGE_WORKDIR_MODE. Thanks to solar for reporting.
  2930 zmedico  Fix PORTAGE_WORKDIR_MODE parsing so that the validated value
                is stored in mysettings.
  2932 zmedico  Use loops to consolidate directory cleaning and creation in
                prepare_build_dirs.
  2934 zmedico  Use one makedirs function for all directory creations inside
                prepare_build_dirs.
  2935 zmedico  Fix a typo from the last revision.
  2936 zmedico  Change os.makedirs to makedirs (typo from r2934).
  2941 antarus  Minor speedup for findname2, suggested by Brian Harring
  2945 zmedico  Stop swallowing IOError and TypeError exceptions in
                portdbapi.gvisible(). Write instances of PortageException to
                stderr. Thanks to marienz for reporting.
  2946 zmedico  Fix typo from the last revision.
  2947 zmedico  Reset the selinux security context before returning from
                spawn (regression from r2834). See bug #126711.
  2951 zmedico  Compare new digest data with old digest data and rewrite the
                new digest only if they differ. Thanks to AllanonJL for
                reporting this issue.
  2960 marienz  Move CacheError from the block of python imports to the block
                of portage imports, fix spelling in error message.
  2963 zmedico  Fix sandbox feature (broken since r2947).
  2973 zmedico  Write a message to stderr indicating when install_qa_check
                fails. See bug #126442.
  2974 zmedico  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.
  2989 genone   Fix crappy error handling for PORTAGE_WORKDIR_MODE
  2990 genone   Add manifest2 support.
  2994 genone   PORTAGE_WORKDIR_MODE is octal
  2996 genone   Make ebuild digest a bit more verbose
  2997 genone   Make ebuild digest reuse existing checksums
  2998 genone   only reuse distfile checksums if the file doesn't exist
  2999 zmedico  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).


pym/portage_checksum.py
  2990 genone   Add manifest2 support.
  2995 genone   FileNotFoundException should be used with the filename


pym/portage_const.py
  2990 genone   Add manifest2 support.


pym/portage_data.py
  2866 zmedico  Document portage_data.secpass and give secpass=0 to users
                that are not in the "portage" group.


pym/portage_exception.py
  2871 zmedico  Add a new OperationNotPermitted exception and use it to wrap
                apply_permissions exceptions.


pym/portage_manifest.py (Added)
  2992 genone   add missing manifest module
  2997 genone   Make ebuild digest reuse existing checksums
  3002 genone   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)


pym/portage_util.py
  2868 zmedico  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.
  2869 zmedico  Make portage_util.apply_stat_permissions() wrap
                apply_secpass_permissions instead of plain old
                apply_permissions.
  2871 zmedico  Add a new OperationNotPermitted exception and use it to wrap
                apply_permissions exceptions.
  2872 zmedico  Wrap possible exceptions raised by stat call in
                apply_secpass_permissions.
  2874 zmedico  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.
  2876 zmedico  Make mode=-1 the default parameter for apply_permissions in
                order to distinguish the behavior from mode=0.
  2880 zmedico  Use 'mode & 0777' to protect ourselves from unwanted mode
                bits in apply_permissions.
  2881 zmedico  Make that 'mode & 07777' for the previous commit.
  2882 zmedico  One more 'mode & 07777' in apply_permissions.
  2910 zmedico  Fix permissions functions so that error messages tell exactly
                which call failed.
  2917 zmedico  Fix the apply_permissions XOR logic so that mask removes mode
                bits correctly.
  2918 zmedico  Fix typo in variable name from last revision.
  2925 zmedico  Add a generic apply_recursive_permissions function and use is
                for $DISTDIR/cvs-src.
  2950 zmedico  Catch a possible OSError from the stat call in
                atomic_ofstream.close().


=============================================================================
2.1_pre6
2006-03-11
trunk revision 2847
=============================================================================


RELEASE-NOTES
  2776 antarus  update release notes
  2777 antarus  Fix typo, profile instead of profiles


bin/dobin
bin/dosbin
  2803 vapier   just use group 0 to workaround broken systems #124568
  2804 zmedico  Assume 0 for both uid and gid in dobin and dosbin (bug
                #124568).
  2845 zmedico  Make dobin and dosbin use PORTAGE_INST_UID and
                PORTAGE_INST_GID.


bin/doman
  2765 vapier   update syntax and add error checking #121317 by Simon
                Stelling
  2766 vapier   disable compression in doman, just let `prepman` handle it
  2767 vapier   dont warn in manpage exists but is empty


bin/ebuild
  2773 zmedico  Add NOCOLOR support to bin/ebuild for bug 78701.


bin/ebuild.sh
  2800 zmedico  Add a sanity check in dyn_clean() to make sure that
                PORTAGE_BUILDDIR is not zero length for bug #124203.
  2808 vapier   add some URLs for people to learn more
  2813 solar    - have scanelf nuke insecure rpaths
  2817 vapier   fix BASH_ARGV walking
  2819 vapier   only scan for exec stacks on linux/glibc hosts
  2825 solar    - 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
  2826 zmedico  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).
  2830 vapier   add support for ebuild authors to mark stuff as ignorable
  2831 zmedico  Split dyn_package from ebuild.sh to misc-functions.sh and add
                MISC_SH_BINARY support to spawnebuild.
  2832 zmedico  Split install_mask and parts of dyn_preinst from ebuild.sh to
                misc-functions.sh and add the necessary support to doebuild.
  2833 zmedico  Remove install_mask from ebuild.sh since it's in
                misc-functions.sh now.
  2836 zmedico  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.
  2837 zmedico  Move the install phase qa checks from ebuild.sh to
                misc-functions.sh and add the necessary support to
                spawnebuild.
  2838 zmedico  Move dyn_rpm and dyn_spec from ebuild.sh to
                misc-functions.sh.
  2840 zmedico  Fix dyn_clean in ebuild.sh so that it removes the builddir
                correctly (if it is empty). See bug #105706.
  2846 zmedico  Move PORTAGE_INST_UID and PORTAGE_INST_GID from ebuild.sh to
                make.globals so they can be overridden.


bin/emaint
bin/regenworld
  2818 zmedico  Remove the leading / from WORLD_FILE for better cooperation
                with os.path.join (see bug #124471).


bin/emerge
  2764 zmedico  Revert emergelog output change from revision 2641 to maintain
                compatibility with genlop (reported by fuzzyray).
  2775 antarus  Kill inject for good.
  2788 zmedico  Make the post-sync metadata-transfer a FEATURE so that it can
                be optionally disabled.
  2789 zmedico  Make `emerge --metadata` work even when metadata-transfer is
                not in FEATURES.
  2794 zmedico  Make sure myopts does not contain duplicate options for bug
                124204.
  2802 jstubbs  Use ROOT when checking installed packages for --pretend
                output
  2812 zmedico  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.
  2818 zmedico  Remove the leading / from WORLD_FILE for better cooperation
                with os.path.join (see bug #124471).
  2820 solar    - make portage display the ROOT when unmerging a selected
                package
  2824 zmedico  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.
  2839 zmedico  Fix emerge's "Post-Build Cleaning" so that it works with
                --buildpkgonly in FEATURES. See bug #105706.
  2843 zmedico  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.
  2847 zmedico  Do automatic backup the resume list when it's length is
                greater than 1 for bug #122527.


bin/emerge-webrsync
  2805 zmedico  Fix typo in emerge-webrsync PORTAGE_NICENESS handling for bug
                #124621 (regression from r2623).
  2806 zmedico  Make emerge-webrsync use renice for cleaner PORTAGE_NICENESS
                handling (bug #124621).


bin/env-update
man/env-update.1
  2828 vapier   document new --no-ldconfig option


bin/misc-functions.sh (Added)
  2831 zmedico  Split dyn_package from ebuild.sh to misc-functions.sh and add
                MISC_SH_BINARY support to spawnebuild.
  2832 zmedico  Split install_mask and parts of dyn_preinst from ebuild.sh to
                misc-functions.sh and add the necessary support to doebuild.
  2837 zmedico  Move the install phase qa checks from ebuild.sh to
                misc-functions.sh and add the necessary support to
                spawnebuild.
  2838 zmedico  Move dyn_rpm and dyn_spec from ebuild.sh to
                misc-functions.sh.


bin/prepallman
  2768 vapier   simply code to break down arguments to prepman


bin/prepallstrip
  2771 vapier   remove code that is duplicated in prepstrip


bin/prepman
  2769 vapier   warn if we were given a non-existent dir
  2770 vapier   update syntax/style


bin/repoman
  2762 antarus  Suggestion from Brian Harring to remove extra processing,
                condense code.
  2775 antarus  Kill inject for good.
  2779 antarus  Fix a missing parenthesis.
  2780 vapier   move the err/warn funcs together


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
  2791 zmedico  Add some docs for metadata-transfer in make.conf.example and
                make.conf.5.
  2827 vapier   update copyrights


cnf/make.conf.mac
pym/emergehelp.py
  2827 vapier   update copyrights


cnf/make.globals
  2788 zmedico  Make the post-sync metadata-transfer a FEATURE so that it can
                be optionally disabled.
  2827 vapier   update copyrights
  2846 zmedico  Move PORTAGE_INST_UID and PORTAGE_INST_GID from ebuild.sh to
                make.globals so they can be overridden.


man/ebuild.5
  2829 vapier   misc updates


man/emerge.1
  2774 antarus  Remove inject from the manpage. Bug # 120429.


man/make.conf.5
  2791 zmedico  Add some docs for metadata-transfer in make.conf.example and
                make.conf.5.


pym/cache/flat_hash.py
  2787 zmedico  Only write known keys in flat_hash cache entries (filter out
                UNUSED_* keys).


pym/cache/metadata.py
  2786 zmedico  Fix cache.metadata.database so that it correctly removes the
                newline character from the end of the line when parsing
                flat_hash entries.
  2793 zmedico  Use rstrip("\n") instead of -1 index to safely remove newline
                characters.


pym/cache/metadata_overlay.py (Added)
  2792 zmedico  Add a new cache.metadata_overlay module that layers a
                writable cache over a readonly cache.


pym/cache/template.py
  2785 zmedico  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.


pym/portage.py
  2763 zmedico  Prevent output of '*' characters when there are no updates
                but fixpackages is in features (reported by fuzzyray).
  2783 antarus  Add a message to advise deleting corrupted binary packages.
                Bug #86088
  2784 antarus  Killing some old code that is never executed.
  2801 zmedico  Split out a portage_update.grab_updates() function so that it
                can be reused.
  2807 vapier   kill off pointless print
  2809 zmedico  Move all output out of the global updates do_upgrade()
                function so that it only performs parsing and validation.
  2810 zmedico  Rename the global updates do_upgrade() function to
                parse_updates().
  2811 zmedico  Remove the 'didupdate' variable from global_updates() because
                it is no longer used.
  2812 zmedico  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.
  2814 zmedico  Remove a dead and broken hunk of code that attempts to remove
                files from an empty directory.
  2815 zmedico  Remove the leading / from PRIVATE_PATH (var/lib/portage) for
                better cooperation with os.path.join (see bug #124471).
  2816 zmedico  Remove the leading / from CONFIG_MEMORY_FILE for better
                cooperation with os.path.join (see bug #124471).
  2818 zmedico  Remove the leading / from WORLD_FILE for better cooperation
                with os.path.join (see bug #124471).
  2821 zmedico  Catch ENOENT errors when $PORTDIR/profiles/updates does not
                exist.
  2831 zmedico  Split dyn_package from ebuild.sh to misc-functions.sh and add
                MISC_SH_BINARY support to spawnebuild.
  2832 zmedico  Split install_mask and parts of dyn_preinst from ebuild.sh to
                misc-functions.sh and add the necessary support to doebuild.
  2834 zmedico  Add a "sesandbox" flag to the spawn function so that it can
                handle selinux context for the exec call (prevents code
                duplication).
  2835 zmedico  Add sesandbox to the spawnebuild actionmap.
  2837 zmedico  Move the install phase qa checks from ebuild.sh to
                misc-functions.sh and add the necessary support to
                spawnebuild.
  2838 zmedico  Move dyn_rpm and dyn_spec from ebuild.sh to
                misc-functions.sh.
  2841 zmedico  Do cleanup of cruft prior to the setup phase for binary
                packages. See bug #85803.
  2842 zmedico  Consolidate duplicate "myebuild" logic in the
                dblink.treewalk() method.
  2843 zmedico  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.
  2844 zmedico  Trigger the clean phase at the end of dblink.unmerge() in
                order to remove cruft left by the pkg_*rm phases.
  2847 zmedico  Do automatic backup the resume list when it's length is
                greater than 1 for bug #122527.


pym/portage_checksum.py
  2815 zmedico  Remove the leading / from PRIVATE_PATH (var/lib/portage) for
                better cooperation with os.path.join (see bug #124471).


pym/portage_const.py
  2815 zmedico  Remove the leading / from PRIVATE_PATH (var/lib/portage) for
                better cooperation with os.path.join (see bug #124471).
  2816 zmedico  Remove the leading / from CONFIG_MEMORY_FILE for better
                cooperation with os.path.join (see bug #124471).
  2818 zmedico  Remove the leading / from WORLD_FILE for better cooperation
                with os.path.join (see bug #124471).
  2831 zmedico  Split dyn_package from ebuild.sh to misc-functions.sh and add
                MISC_SH_BINARY support to spawnebuild.


pym/portage_exception.py
  2782 antarus  Adding a new exception class.


pym/portage_locks.py
  2790 zmedico  Fix 'Bad file descriptor' error with hardlink locking for bug
                124140.


pym/portage_update.py
  2801 zmedico  Split out a portage_update.grab_updates() function so that it
                can be reused.
  2821 zmedico  Catch ENOENT errors when $PORTDIR/profiles/updates does not
                exist.


=============================================================================
2.1_pre5
2006-02-21
trunk revision 2759
=============================================================================


NEWS
  2632 ferringb  confcache, baby.
  2757 zmedico   Some news and release notes for 2.1_pre5.


RELEASE-NOTES
  2746 genone    update release notes regarding deprecated stuff
  2757 zmedico   Some news and release notes for 2.1_pre5.


bin/dobin
bin/dosbin
  2654 vapier    cleanup code and handle errors better as Simon Stelling says
                 in Bug 121317


bin/doconfd
bin/doenvd
bin/doinitd
  2652 vapier    touchup code so we handle errors better


bin/dodir
  2650 vapier    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.
  2655 vapier    use much simpler code as inspired by agriffis' fowners work


bin/doexe
  2683 vapier    touchup style


bin/dohard
  2657 vapier    touchup code like dosym


bin/dolib
  2709 vapier    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


bin/dosym
  2656 vapier    send error to stderr


bin/ebuild.sh
  2606 vapier    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.
  2620 solar     - portage allows installing files into ${D}/${D}. Simon
                 Stelling bug #120941
  2621 vapier    touchup syntax/output of new $D/$D check
  2622 ferringb  bug #116681 , better handling of MULTILIB_STRICT_EXEMPT
  2632 ferringb  confcache, baby.
  2649 jstubbs   Remove all bug references
  2670 zmedico   add CATEGORY to ebuild.5 and declare it readonly in
                 ebuild.sh
  2693 solar     - add portage to MULTILIB_STRICT_EXEMPT
  2713 ferringb  silence extdebug errors when on bash2; it's handled by the
                 code already, just is fugly.
  2754 vapier    enable exec stack scanning on ppc64


bin/emaint
bin/regenworld
  2681 zmedico   use new write_atomic() function for all world file updates


bin/emake
  2684 vapier    eat the parent process with exec, YUM


bin/emerge
  2608 zmedico   get --nospinner from myopts instead of sys.argv so that it
                 works with EMERGE_DEFAULT_OPTS
  2609 zmedico   remove red coloring from right ')' in 'dependency required
                 by' message reported by cardoe
  2611 antarus   Fix for bug #121106, resume + skipfirst + pretend would
                 print the skipped package. Thanks to Andrew D. Keyser (aka
                 Legoguy) <andrewdk@sbcglobal.net> for reporting.
  2625 antarus   Revert change in -r2611, re-opening bug 121106. The fix is
                 not that simple...as usual :)
  2641 antarus   Thanks to Benno Schulenberg <benno@nietvergeten.nl> for the
                 spelling/grammar fixes, bug #80754
  2643 antarus   Minor fixups with spelling, Thanks to Benno Schulenberg
                 <benno@nietvergeten.nl>, bug # 110382
  2644 antarus   Shout out to RiverRat for reporting, fixup the output to use
                 the correct verbs, disable tree output for fetching since it
                 does not work.
  2645 antarus   Fix for bug #119049
  2648 jstubbs   Add back emerge list header hiding when --quiet is used.
  2649 jstubbs   Remove all bug references
  2658 zmedico   remove stray quote introduced in revision 2645
  2659 antarus   Adding a comment about normpath, and why we use our own
                 copy.
  2667 zmedico   replace existing "restarting emerge via exec()"
                 functionality with a new approach that uses --resume and
                 myopts
  2668 zmedico   remove outdated "You may avoid the remerging of packages"
                 message
  2669 zmedico   do commit_mtimedb() after each merge for bug 100300
  2672 zmedico   when emerge restarts itself, make
                 /usr/lib/portage/bin/emerge the first argument in the list
                 passed to os.execv (regression from revision 2667)
  2673 ferringb  use sys.argv[0] for the path to emerge rather then hard
                 coding
  2674 zmedico   wrap all relevant atexit usage due to incompatibility with
                 os.execv (needed for emerge to restart itself)
  2676 jstubbs   Remove references to --verbose and --quiet in
                 depgraph.display() and make it work of a verbosity parameter
                 instead.
  2681 zmedico   use new write_atomic() function for all world file updates
  2692 zmedico   fix typo for bug 111098 (patch by andre@fluffyspider.com.au)
  2696 zmedico   add a new emerge --ignore-default-opts option for bug 121695
  2739 genone    finally remove --upgradeonly
  2740 genone    finally remove --rsync
  2742 genone    deprecate 'emerge action' syntax in favor of 'emerge
                 --action'


bin/emerge-webrsync
  2623 ferringb  added PORTAGE_NICENESS support.
  2624 ferringb  optional tarsync integration; thanks to Johannes Fahrenkrug
                 for doing the legwork.


bin/newbin
bin/newdoc
bin/newexe
bin/newins
bin/newlib.a
bin/newlib.so
bin/newman
bin/newsbin
  2653 vapier    touchup code so we handle errors better


bin/newconfd
bin/newenvd
bin/newinitd
  2651 vapier    touchup code so we handle errors better


bin/prepallinfo
  2628 vapier    style touchups


bin/prepallman
  2627 vapier    exit with proper status rather than always 0


bin/prepallstrip
  2629 vapier    grab some fixes from prepstrip script


bin/prepstrip
  2605 vapier    make sure all .debug files have the executable bit cleared


bin/quickpkg
  2708 vapier    add support for ROOT by Joel Martin #122728


bin/repoman
  2612 vapier    touchup the way options are declared to prevent bitrot, add
                 a --quiet option and use it, and make the help output useful
  2688 zmedico   make repoman obey NOCOLOR for bug 77566 (patch by antarus)
  2707 genone    Make repoman ebuild.invalidname message a bit more useful
  2710 vapier    get rid of pointless whitespace


cnf/etc-update.conf
  2646 antarus   Fix bug #86067. Thanks to J\xc3\xbcrgen H\xc3\xb6tzel
                 <gentoo@hoetzel.info> for the emacs command
  2649 jstubbs   Remove all bug references


cnf/make.conf
  2634 ferringb  confcache make.conf example...


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
  2635 ferringb  confcache updates...


man/ebuild.5
  2665 vapier    mention mirror, not nomirror
  2670 zmedico   add CATEGORY to ebuild.5 and declare it readonly in
                 ebuild.sh


man/emerge.1
  2610 antarus   Change the usage of a "class" of packages into a "set" of
                 packages. world and system are now "sets" instead of
                 "classes".
  2696 zmedico   add a new emerge --ignore-default-opts option for bug 121695
  2741 genone    remove documentation on --upgradeonly


man/make.conf.5
  2633 ferringb  FEATURES="confcache" addition
  2696 zmedico   add a new emerge --ignore-default-opts option for bug 121695


man/portage.5
  2610 antarus   Change the usage of a "class" of packages into a "set" of
                 packages. world and system are now "sets" instead of
                 "classes".
  2665 vapier    mention mirror, not nomirror


man/repoman.1
  2666 vapier    document more stuff
  2707 genone    Make repoman ebuild.invalidname message a bit more useful


pym/emergehelp.py
  2641 antarus   Thanks to Benno Schulenberg <benno@nietvergeten.nl> for the
                 spelling/grammar fixes, bug #80754
  2642 antarus   This should have been excluded...
  2739 genone    finally remove --upgradeonly
  2740 genone    finally remove --rsync
  2742 genone    deprecate 'emerge action' syntax in favor of 'emerge
                 --action'


pym/getbinpkg.py
  2679 ferringb  cPickle import protection; fall back to pickle if cPickle is
                 unavailable.


pym/output.py
  2755 zmedico   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.
  2756 zmedico   Patch by Ed Catmur to add "gnome" to legal_terms in
                 output.py.


pym/portage.py
  2604 jstubbs   Allow || ( ) deps that have no default atoms (or turn out
                 empty). Released in 2.1_pre4-r1. #120803
  2626 vapier    s/cronological/chronological/ for you anal peeps
  2632 ferringb  confcache, baby.
  2641 antarus   Thanks to Benno Schulenberg <benno@nietvergeten.nl> for the
                 spelling/grammar fixes, bug #80754
  2649 jstubbs   Remove all bug references
  2660 ferringb  aparently someone never heard of rstrip...
  2671 marienz   Make sure confcache files are writable by the portage group,
                 not just the portage user.
  2674 zmedico   wrap all relevant atexit usage due to incompatibility with
                 os.execv (needed for emerge to restart itself)
  2677 vapier    fix whitespace breakage introduced by writemsg_stdout()
                 changes
  2679 ferringb  cPickle import protection; fall back to pickle if cPickle is
                 unavailable.
  2681 zmedico   use new write_atomic() function for all world file updates
  2682 zmedico   use atomic_ofstream for mtimedb commits
  2686 zmedico   use write_atomic for the counter file
  2687 zmedico   for each fetch ensure correct permissions on both $DISTDIR
                 and $DISTDIR/.locks (bug 117781)
  2689 zmedico   fix KeyError: '.' in dblink.unmerge() from bug 100479
  2691 zmedico   use cached stat and lstat results to minimize the number of
                 stat calls in dblink.unmerge()
  2694 zmedico   import errno at the top of portage.py
  2695 zmedico   catch possible ENOENT error from
                 portage_checksum.perform_md5 for bug 24374
  2697 zmedico   fix perform_checksum.perform_checksum() so that it wraps
                 FileNotFound exceptions
  2698 zmedico   use write_atomic for fixdbentries
  2700 genone    fix dirsonly handling in listdir
  2701 zmedico   use write_atomic for move_ent CATEGORY updates
  2703 zmedico   misc atomic_ofstream and write_atomic updates in portage.py
  2718 genone    Add basic sanity check for global update entries
  2721 zmedico   remove invalid package moves from myupd so that fixpackages
                 doesn't process them
  2722 zmedico   optimize fixdbentries by enabling it to process packages
                 moves in batches
  2723 zmedico   optimize fixpackages (update_ents) to feed batched package
                 moves to fixdbentries
  2724 zmedico   Make fixdbentries operate on an iterable instead of a dict
                 because order can matter.
  2725 zmedico   Optimize fixpackages to do all updates in one big batch so
                 that each tbz2 is only recomposed once.
  2726 zmedico   Store split lines in myupd so that they don't need to be
                 split again later.
  2727 zmedico   Bring back myline variable inside do_upgrade because it is
                 needed (regression from rev 2726).
  2728 zmedico   Filter out some more invalid updates before fixpackages gets
                 them.
  2729 zmedico   Add a return value to fixdbentries that indicates whether or
                 not modifications were performed. Use this to avoid
                 unnecessary recomposition of tbz2 files.
  2730 zmedico   Add a cleanup() method to xpak.tbz2 and do a sanity check
                 there.
  2731 zmedico   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).
  2732 zmedico   Consider global updates that proceed quickly as a single
                 mtimedb transaction.
  2733 zmedico   Create a global_updates() function in order to remove a
                 chunk from the global scope.
  2734 zmedico   Split the config file updates from do_upgrade into a new
                 update_config_files() function that does all updates in one
                 big batch.
  2735 zmedico   Clean up do_upgrade() and add atom validation.
  2736 zmedico   Fix 2 typos from revision 2735.
  2737 zmedico   Split move_ent calls from do_upgrade() and do them in
                 global_updates() instead.
  2738 zmedico   Update the mtimedb only after the updates have been
                 processed.
  2743 zmedico   Fix problem with /var/tmp/tbz2/tbz2 directory for bug
                 113088.
  2750 zmedico   Split out 2 reusable functions from fixdbentries and put
                 them in a new portage_update module.
  2752 zmedico   Remove temporary file usage from fixpackages update_ents
                 routine.
  2753 zmedico   Remove temporary file usage from move_ent and move_slot_ent
                 routines.
  2758 zmedico   Validate the names of update files in order to filter out
                 unwanted files such as CVS directories.
  2759 zmedico   Fix typo from revision 2758.


pym/portage_checksum.py
  2690 zmedico   avoid unnecessary stat by catching ENOENT error instead of
                 using os.path.exists()
  2697 zmedico   fix perform_checksum.perform_checksum() so that it wraps
                 FileNotFound exceptions


pym/portage_data.py
  2716 vapier    Robert Sebastian Gerus: add support for DragonFly #122976
  2717 ferringb  generalize the BSD checks.


pym/portage_dep.py
  2604 jstubbs   Allow || ( ) deps that have no default atoms (or turn out
                 empty). Released in 2.1_pre4-r1. #120803


pym/portage_exception.py
  2718 genone    Add basic sanity check for global update entries


pym/portage_exec.py
  2674 zmedico   wrap all relevant atexit usage due to incompatibility with
                 os.execv (needed for emerge to restart itself)


pym/portage_locks.py
  2674 zmedico   wrap all relevant atexit usage due to incompatibility with
                 os.execv (needed for emerge to restart itself)
  2712 zmedico   fix race condition for bug 121819 by using
                 os.fstat(myfd).st_nlink instead of os.path.exists
  2714 zmedico   fix a race and prevent unlinking of a file locked by another
                 process in portage_locks.unlockfile()
  2715 zmedico   fix case where myfd == None (regression from revision 2714)


pym/portage_update.py (Added)
  2750 zmedico   Split out 2 reusable functions from fixdbentries and put
                 them in a new portage_update module.


pym/portage_util.py
  2679 ferringb  cPickle import protection; fall back to pickle if cPickle is
                 unavailable.
  2680 zmedico   add new atomic_ofstream class for safer writes
  2685 zmedico   use getattr instead of hasattr for detection of base class
                 destructor (recommended by marienz)


pym/xpak.py
  2730 zmedico   Add a cleanup() method to xpak.tbz2 and do a sanity check
                 there.
  2747 zmedico   In order do avoid the need for temporary files, add a new
                 xpak_mem() function that creates an xpak_segment from a map
                 object.
  2748 zmedico   In order do avoid the need for temporary files, add a new
                 tbz2.recompose_mem() method that uses an xpak segment from
                 memory.
  2751 zmedico   Add a tbz2.get_data() method that returns the xpak segment
                 data as a dict.


qa (Removed)
  2745 genone    more obsolete stuff, qa is in ebuild.sh now


spec (Removed)
  2744 genone    this stuff was supposed to be dead for ages


=============================================================================
portage-2.1_pre4
2006-01-28
trunk revision 2601
=============================================================================


NEWS
  2545 genone    slightly improve news
  2546 genone    s/checksums/manifests/


RELEASE-NOTES
  2600 jstubbs   Add note about --alphabetical


bin/archive-conf
bin/chkcontents
bin/clean_locks
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/ebuild
bin/emake
bin/emerge-webrsync
bin/env-update.sh
bin/etc-update
bin/find-requires
bin/fix-db.py
bin/fixdbentries
bin/fixpackages
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/prepalldocs
bin/prepallinfo
bin/prepallman
bin/prepallstrip
bin/prepinfo
bin/prepman
bin/quickpkg
bin/regenworld
bin/xpak
  2526 vapier    update copyright years


bin/dispatch-conf
  2526 vapier    update copyright years
  2564 vapier    fix traceback when EDITOR is not set in the env #118976 by
                 Paul Varner


bin/dosym
  2526 vapier    update copyright years
  2540 vapier    touchup style


bin/ebuild.sh
  2526 vapier    update copyright years
  2527 vapier    only complain about executable stacks on architectures that
                 actually support them
  2539 vapier    generate a log file for users to attach to bug reports
  2552 vapier    handle cross-compilers as well
  2567 vapier    also catch leading null runpaths
  2568 genone    store all auxdbkeys in vdb and add a new emaint target to
                 create missing entries
  2572 ferringb  bash tracebacks. :)
  2573 ferringb  updated diefunc "post the relevant info" msg
  2574 ferringb  Added usage info to dump_trace, and credit for the code
                 (eselect authors)
  2575 ferringb  fixed up dump_trace, courtesy of spyderous
  2586 vapier    m68k generates proper gnu stack markings


bin/emaint
  2560 ferringb  don't inline code, do __name__=="__main__" so the module can
                 be used instead of strictly called.
  2568 genone    store all auxdbkeys in vdb and add a new emaint target to
                 create missing entries
  2569 genone    fixup
  2581 genone    fix possible path and vdb location issues
  2593 ferringb  add the "/usr/lib/portage/pym" insert to deal with osx (bit
                 of a hack, but tiz the convention currently).
  2599 jstubbs   Disable the vdb check until it can be migrated to
                 filter-env.


bin/emerge
  2526 vapier    update copyright years
  2534 ferringb  bug 117849, when parallel-fetch is on don't write out the
                 mtimedb in the fetcher process
  2537 solar     - set noiselevel when quiet is enabled
  2554 vapier    get rid of the word "downloaded" in the search output
                 because some people cant seem to handle it #81501
  2571 vapier    accept --skip-first and --skipfirst
  2588 jstubbs   Add support for EMERGE_DEFAULT_OPTS configuration variable
                 for setting options that emerge always considers to be
                 specified.
  2589 jstubbs   Add support for an --alphabetical option to emerge that
                 restores the old ordering of flags in --pretend output.


bin/env-update
  2526 vapier    update copyright years
  2565 vapier    add -h/--help
  2592 vapier    make env-update a bit more flexible by adding a
                 --no-ldconfig option


bin/fowners
bin/fperms
  2525 vapier    sync with savior branch
  2526 vapier    update copyright years


bin/isolated-functions.sh
  2518 vapier    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
  2519 vapier    fix broken quoting
  2520 vapier    re-import the e* functions from baselayout since these ones
                 are broken #117186


bin/portageq
  2526 vapier    update copyright years
  2550 ferringb  bug 118191 , puke properly when no args to envvar are
                 supplied.


bin/prepall
  2526 vapier    update copyright years
  2538 vapier    touchup output slightly


bin/preplib
  2521 vapier    use an echo rather than ewarn
  2526 vapier    update copyright years


bin/prepstrip
  2526 vapier    update copyright years
  2542 solar     - FEATURES=installsources from Olivier Crete an extention of
                 splitdebug for better debugging when debugedit is installed.
                 bug 112907
  2559 solar     - dont save debug info twice
  2561 vapier    clean up coding style/quoting, figure out what objdump to
                 run same as strip, and add support for STRIP_MASK
  2563 vapier    fix inverted strip skip logic
  2576 vapier    fix prepstrip after previous commit as pointed out by
                 Olivier Crete


bin/repoman
  2526 vapier    update copyright years
  2532 ferringb  bug 42299, detect and fail invalid atoms in *DEPEND
  2533 ferringb  filter '(' and ')' tokens also when checking for invalid
                 atoms.
  2562 vapier    add FEATURES=assume-digests so i dont have to keep hashing
                 all the glibc tarballs whenever i want to commit
  2580 jstubbs   Add further checks for correct DEPEND syntax
  2583 genone    Add a warning for KEYWORDS=-*
  2584 genone    Fix typo in error description
  2587 jstubbs   Added a check for obsolete virtual/x11 usage in
                 dependencies.


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
  2531 ferringb  adress -> address spelling typo. Sidenote, really should
                 remove the 101 files and centralize this damn thing..
  2566 vapier    s/maketest/test/
  2588 jstubbs   Add support for EMERGE_DEFAULT_OPTS configuration variable
                 for setting options that emerge always considers to be
                 specified.


cnf/make.globals
  2582 genone    Disable auto-use prior to code removal


man/emerge.1
  2553 ferringb  reorganization and a bit of clean up from Benno Schulenberg
                 , bug 84285
  2589 jstubbs   Add support for an --alphabetical option to emerge that
                 restores the old ordering of flags in --pretend output.


man/make.conf.5
  2555 vapier    fix display of ebuild(1)
  2562 vapier    add FEATURES=assume-digests so i dont have to keep hashing
                 all the glibc tarballs whenever i want to commit
  2577 vapier    patch by Alec Warner to document CCACHE_DIR #65492
  2588 jstubbs   Add support for EMERGE_DEFAULT_OPTS configuration variable
                 for setting options that emerge always considers to be
                 specified.


man/portage.5
  2549 vapier    add another common example for package.provided


man/repoman.1
  2583 genone    Add a warning for KEYWORDS=-*


pym/emergehelp.py
  2589 jstubbs   Add support for an --alphabetical option to emerge that
                 restores the old ordering of flags in --pretend output.


pym/output.py
  2515 jstubbs   Kill the double xterm title codes.


pym/portage.py
  2517 solar     - added writemsg_stdout function and make portage use it
                 internally
  2528 ferringb  '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.
  2529 ferringb  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.
  2543 ferringb  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).
  2551 ferringb  fixed the '/' stray char output
  2556 ferringb  Always call prerm/postrm regardless if the previous install
                 had contents or not.
  2570 ferringb  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.
  2578 jstubbs   Move DEPEND empty sublist processing back into use_reduce
  2591 vapier    touchup if logic
  2592 vapier    make env-update a bit more flexible by adding a
                 --no-ldconfig option


pym/portage_checksum.py
pym/portage_const.py
  2544 genone    reenable multi-hash and make error message a bit more useful


pym/portage_dep.py
  2522 ferringb  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.
  2528 ferringb  '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.
  2578 jstubbs   Move DEPEND empty sublist processing back into use_reduce
  2579 jstubbs   Provide more information with DEPEND syntax exceptions


pym/portage_util.py
  2516 solar     - added writemsg_stdout function and make portage use it
                 internally



=============================================================================
portage-2.1_pre3
2005-12-31
trunk revision 2511
=============================================================================


NEWS (Added)
  2463 ferringb  news file, releasenotes data schlopped into it, plus couple
                 of updates.
  2474 ferringb  'DISTFILES indirection; access $BUILDDIR/distdir instead of
                 $DISTFILES , thus blocking unstated access.


RELEASE-NOTES
  2464 ferringb  convert release notes over to upgrade information


bin/dohtml
  2472 jstubbs   Make dohtml return 1 when a passed file/dir doesn't exist.


bin/ebuild.sh
  2453 solar     - only record vdb entries when the value is non null
  2456 solar     - remove intermediate var entry
  2458 solar     - use -n syntax like most of ebuild.sh
  2462 ferringb  renaming the death hook registration func to
                 register_die_hook
  2465 ferringb  register_death_hook -> register_die_hook thanks to axxo for
                 the catch.
  2467 solar     - trim extraneous spaces tabs form feeds and newlines
  2473 solar     - consolidate noman noinfo nodoc into a simple loop and use
                 INSTALL_MASK. Add debug to default list of
                 MULTILIB_STRICT_EXEMPT=
  2474 ferringb  'DISTFILES indirection; access $BUILDDIR/distdir instead of
                 $DISTFILES , thus blocking unstated access.
  2475 vapier    rename BUILDDIR to PORTAGE_BUILDDIR
  2476 vapier    quote a bit more
  2480 solar     - update fatal qa error handling
  2481 solar     - add back in 1 newline after trimming all the extraneous
                 ones
  2507 jstubbs   Update the `touch .unpacked` error message to output the
                 actual path in order to match the other touch error
                 messages.
  2508 jstubbs   BUILDIR => BUILDDIR
  2510 jstubbs   Add CTARGET back into the list of vars to be written out for
                 installed packages.


bin/emaint
  2492 jstubbs   Remove tests for masked/unavailable packages.


bin/emerge
  2461 solar     - initial commit of post --sync hook. postsync.d to come at
                 a later time
  2470 jstubbs   Don't try to resolve deps of blockers when using --onlydeps.
  2471 jstubbs   Don't show any use flags when using --quiet.
  2483 solar     - export env variable PORTAGE_QUIET when --quiet option is
                 passed
  2485 jstubbs   Modify portage's settings object rather than the original
                 env.
  2493 jstubbs   Don't print emaint warning for masked/non-existant packages.
                 When using --verbose, print a warning for those packages.
  2504 jstubbs   Unify the -p and -pv USE display functions and IUSE
                 additions in yellow followed by a "%" character.


bin/portageq
  2479 jstubbs   Export the ROOT environment variable when using functions
                 that take a <root>
  2482 jstubbs   Sanitize the root parameter specified to portageq.


bin/repoman
  2466 jstubbs   Check for adequate spacing around "||", "(" and ")" tokens.
  2491 vapier    tweak multiline whitespace display cause i'm anal like that


man/emerge.1
  2505 jstubbs   Updated --pretend example to document new USE flag displays.


man/make.conf.5
  2484 solar     - add splitdebug FEATURE to make.conf.5


pym/elog_modules/mod_mail.py
  2497 jstubbs   Split email addresses on the final "@" so as to allow "@"
                 within the username portion of the address.


pym/output.py
  2454 jstubbs   Use the env's PROMPT_COMMAND for resetting xterm titles when
                 available. Otherwise use ${user}@${hostname}:${cwd}.


pym/portage.py
  2452 jstubbs   Fix mishandling of masked atoms in || ( .. ) dependencies.
  2455 jstubbs   Factor out mtimedb saving code from portageexit() into a new
                 commit_mtimedb function and call that rather than
                 portageexit() after package updates.
  2457 jstubbs   Only do one round of directory removal attempts. As symlinks
                 are now removed before directory removal begins, more than
                 one round is unnecessary.
  2459 jstubbs   Skip to next directory after one has been removed in
                 unmerge().
  2460 jstubbs   Include symlinks themselves when checking collision-protect.
  2468 jstubbs   Allow overlays and the user profile to extend arch.list.
  2469 jstubbs   Remove the now unnecessary USE="*" hack.
  2474 ferringb  'DISTFILES indirection; access $BUILDDIR/distdir instead of
                 $DISTFILES , thus blocking unstated access.
  2475 vapier    rename BUILDDIR to PORTAGE_BUILDDIR
  2477 ferringb  don't generate the distfiles indirection for digest/manifest
                 doebuild calls
  2478 ferringb  final cleanups for indirect distfiles, exempt fetch phase
                 also.
  2486 ferringb  bye bye crap grab_multiple function. list comp just as
                 easily handles it.
  2487 ferringb  ongoing portage_util cleanup. removed grabint, writeint;
                 rewrote stack_list to use a dict rather then doing a
                 crapload of linear searches.
  2494 jstubbs   Don't download distfiles when manifesting.
  2495 jstubbs   Don't attempt to chmod/chown unless running as root when
                 calling simple ebuild functions.
  2496 jstubbs   Convert digest failure information to strings for printing.
  2498 jstubbs   Check and raise an exception when a hash function is missing
                 during digesting.
  2509 jstubbs   Redo virtuals code that relied on unique_array keeping the
                 original order.


pym/portage_checksum.py
  2498 jstubbs   Check and raise an exception when a hash function is missing
                 during digesting.


pym/portage_dep.py
  2469 jstubbs   Remove the now unnecessary USE="*" hack.


pym/portage_exec.py
  2489 ferringb  whitespace corrections, single space between funcs, double
                 between class blocks...


pym/portage_util.py
  2486 ferringb  bye bye crap grab_multiple function. list comp just as
                 easily handles it.
  2487 ferringb  ongoing portage_util cleanup. removed grabint, writeint;
                 rewrote stack_list to use a dict rather then doing a
                 crapload of linear searches.
  2488 ferringb  linear unique_array lifted from saviour, lifted from a
                 python cookbook.
  2490 ferringb  revert down to 2.3 python requirement via avoiding sorted



=============================================================================
portage-2.1_pre2
2005-12-25
trunk revision 2450
=============================================================================


bin/ebuild
  2440 jstubbs   Check if the specified package follows correct syntax and
                 error out if it doesn't.


bin/ebuild.sh
  2428 jstubbs   Mention bugs.gentoo.org when asking the user to post
                 config.log.
  2429 jstubbs   Added /dev/{stdin,stdout,stderr} to the default sandbox
                 permissions.


bin/emaint
  2427 jstubbs   Separate masked and unavailable ebuilds and report that
                 masked ebuilds can be handled with package.keywords or
                 package.unmask when they are detected.
  2444 jstubbs   Fix an incorrect variable reference triggered when using
                 --fix and --check together. Patch by Ashley Stovall. #
                 116576


bin/emerge
  2392 jstubbs   Check if packages listed in the --resume list have been
                 removed from the relevant trees and report the problem.
                 #103564
  2396 ferringb  parallel-fetch, baby.
  2398 jstubbs   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.
  2399 jstubbs   Restore previous --verbose USE flag style and prepare for a
                 minimal flag display for when not using --verbose.
  2400 jstubbs   Add USE display when --verbose is not used. Only flags that
                 are enabled, have changed or are new but disabled are shown.
  2419 jstubbs   Prevent traceback on fetcher failure and properly check for
                 error conditions when fetching remote binary packages.
                 #116276
  2420 jstubbs   Push portage to the top of the system and world lists when
                 updating.
  2421 jstubbs   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.
  2422 jstubbs   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.
  2423 solar     - make quiet really mean it
  2425 jstubbs   Make --skipfirst imply --resume.
  2441 jstubbs   Fix an incorrect comparision self-comparison in USE change
                 calculation.


bin/mirror.py
  2414 genone    update to work with the verbose error messages


bin/prepstrip
  2416 vapier    dont use string substitution as this operation can be quite
                 slow on older bash versions (<=3.0) #116111


cnf/make.conf
  2401 ferringb  added parallel-fetch in...
  2402 ferringb  use spaces for space aligned text (kind of a duh)
  2409 genone    quote vars inside PORTAGE_ELOG_COMMAND


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
  2409 genone    quote vars inside PORTAGE_ELOG_COMMAND


man/dispatch-conf.1
man/ebuild.1
man/emaint.1
man/env-update.1
man/etc-update.1
man/quickpkg.1
man/repoman.1
  2434 vapier    update date/version to stop people from pointless whining


man/ebuild.5
  2432 vapier    quick sync manpages between trunk/savior
  2434 vapier    update date/version to stop people from pointless whining


man/emerge.1
man/portage.5
  2433 vapier    finish syncing manpages between trunk/savior
  2434 vapier    update date/version to stop people from pointless whining


man/make.conf.5
  2396 ferringb  parallel-fetch, baby.
  2417 jstubbs   Document the full-path-to-executable requirement on
                 FETCHCOMMAND and RESUMECOMMAND as well as the relevant
                 substitution placeholders.
  2433 vapier    finish syncing manpages between trunk/savior
  2434 vapier    update date/version to stop people from pointless whining


pym/cache/anydbm.py
  2393 jstubbs   Unpack the _eclasses_ value as it's packed by the database
                 template's __setitem__ method.
  2395 ferringb  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
  2397 ferringb  removed unnecessary reconstruct_eclasses import


pym/cache/template.py
  2395 ferringb  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


pym/elog_modules/mod_custom.py
pym/elog_modules/mod_save.py
  2408 genone    fix custom module (bug #116024)


pym/getbinpkg.py
  2419 jstubbs   Prevent traceback on fetcher failure and properly check for
                 error conditions when fetching remote binary packages.
                 #116276


pym/portage.py
  2396 ferringb  parallel-fetch, baby.
  2403 ferringb  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...
  2404 ferringb  further type -> isinstance cleanup in dep crap
  2405 jstubbs   Removed the now unnecessary dep_opconvert portage function.
  2406 jstubbs   Check if atoms are masked when scanning for which || ( )
                 atom/list to use.
  2407 jstubbs   Make the dep_zapdeps a little bit more readable.
  2410 genone    adding multi-hash support
  2412 genone    Make digest errors more verbose
  2415 jstubbs   Remove old debugging related error message.
  2419 jstubbs   Prevent traceback on fetcher failure and properly check for
                 error conditions when fetching remote binary packages.
                 #116276
  2424 jstubbs   Check that cache modules load correctly and fail if they
                 don't.
  2426 jstubbs   Missing return on load_mod.
  2437 ferringb  if you're going to print an exception, bind the exception
                 when you catch it
  2439 jstubbs   Generalize portage_util.dump_traceback() and make use of it
                 if importing a cache module fails.
  2445 jstubbs   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.


pym/portage_checksum.py
  2410 genone    adding multi-hash support
  2412 genone    Make digest errors more verbose


pym/portage_const.py
  2410 genone    adding multi-hash support
  2446 jstubbs   Limiting hashing to MD5 only until behaviour improves in the
                 case of the needed python module not being installed.
                 #116485


pym/portage_dep.py
  2418 jstubbs   Fix an incorrect positional check in *DEPEND parsing.


pym/portage_util.py
  2439 jstubbs   Generalize portage_util.dump_traceback() and make use of it
                 if importing a cache module fails.
  2447 ferringb  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.
  2450 jstubbs   Fix typo in writeints()



=============================================================================
portage-2.1_pre1
2005-12-17
trunk revision 2391
=============================================================================


ChangeLog (Removed)
ChangeLog.000 (Removed)
  2390 jstubbs   Remove old ChangeLog files as they will now be
                 auto-generated from commit messages.


RELEASE-NOTES (Added)
  2339 genone    add a user-friendly list of changes


bin/dispatch-conf
  1960 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)
  2053 jstubbs   Harmless typo in signal catcher.
  2099 jstubbs   Make dispatch-conf's log file have 0600 permissions.


bin/dodoc
  2319 vapier    Petteri says: exit with non-zero status if a file wasnt
                 found


bin/doman
  1988 vapier    if passing the -i18n option to doman, make sure we eat the
                 option and continue processing


bin/ebuild
  2064 ferringb  fixed ebuild so ebuild some-ebuild clean setup unpack #
                 works like ebuild some-ebuild clean unpack
  2079 ferringb  fixing horkage when noauto is in use (nameerrors)
  2080 ferringb  final fixup (ebuild nameerror)
  2084 jstubbs   Big cleanup and added check regarding chosen ebuild.
  2110 jstubbs   Reverting behaviour of ebuild when FEATURES="-noauto"
  2124 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)
  2129 jstubbs   Use realpath instead of abspath to ensure that symlinks are
                 correctly accounted for.
  2135 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.
  2137 jstubbs   Typo :(
  2323 vapier    give a slightly better usage message
  2379 jstubbs   Catch KeyError exception throw from aux_get.
  2387 jstubbs   Fix missing ":" on except line.


bin/ebuild.sh
  1947 ferringb  re-adding the unpack function to stable someone yanked... :)
  1960 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)
  1990 vapier    backport local unpacking support from trunk and add support
                 for jar
  1992 ferringb  fixing unpack so it works once again for tar :/
  2022 ferringb  EAPI awareness, and flat_hash/flat_list autodetection for
                 rysnc cache.
  2032 ferringb  eapi fix up for installation.
  2033 ferringb  bye bye global portageq's.
  2035 ferringb  fixups to EAPI handling.
  2045 jstubbs   overridable lchown/lchgrp
  2049 jstubbs   Security checks regarding installation of world-writable
                 files.
  2083 ferringb  bug 107770 , fix A D and a few other vars being set
                 implicitly by readonly protection during setup phase.
  2085 ferringb  don't declare -r the contents, declare -r the var name.
  2101 jstubbs   Exclude distcc and and ccache setup from the "setup" phase.
                 Also make the redundant CCACHE_DIR default match what the
                 python side sets.
  2106 ferringb  added EBUILD_DEATH_HOOKS , a way for ebuilds/eclasses to
                 register extra messages to spew if die is triggered
  2122 ferringb  reset EBUILD_DEATH_HOOKS prior to sourcing, due to stable's
                 re-sourcing of ebuild every run. god stable env handling
                 sucks. :/
  2132 jstubbs   Added missing quotes to stat_perms area of ebuild.sh
                 (#93293)
  2225 vapier    add support for unpacking lha files
  2249 vapier    deprecate IMAGE
  2267 ferringb  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.
  2302 vapier    tweak marking of D as readonly since we need to play around
                 with it in pkg_preinst
  2306 genone    Add slightly modified elog_base patch containing the basic
                 framework for ebuild logging.
  2321 jstubbs   Kill of generation of CDEPEND for binary and installed
                 packages. Patch by solar.
  2341 vapier    use emake -j1 in default src_test() instead of make
  2342 vapier    add a status message to src_compile() like src_unpack()
  2343 vapier    get rid of duplicated Test phase message in src_test()
  2344 vapier    cleanse maketest once and for all
  2345 vapier    kill dead whitespace and make function def style consistent
  2346 vapier    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
  2347 jstubbs   s/series/serious/ mistake
  2377 vapier    cleanup textrel qa notice
  2378 vapier    touchup TEXTREL warning some more #115727
  2380 vapier    add an add-ebuild-death-hook func so people dont need to
                 know about setting some variable


bin/emaint (Added)
  2098 jstubbs   Add new tool to check and fix problems with the world file
                 (to begin with)
  2117 jstubbs   Rework to API behaviour rather than API documentation
  2130 jstubbs   Take the str() of the option passed to the callback so it
                 can be compared usefully later on.
  2222 vapier    output a finished message
  2298 jstubbs   Added a description of emaint to `emaint --help`


bin/emerge
  1960 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)
  1991 jstubbs   Only warn on removal of system virtuals if there is only one
                 satisfying package.
  2021 ferringb  cleanse_cache cleanups.
  2025 ferringb  emerge --metadata ran as user, and silenced auxdb Corruption
                 exceptions when doing metadata transfer.
  2026 ferringb  typo fix.
  2046 jstubbs   remove CDEPEND ignore RDEPEND on --buildpkgonly
  2048 jstubbs   Validation of user atoms.
  2056 jstubbs   Refactored world graphing code to reuse the standard
                 dependency resolution paths.
  2057 jstubbs   Remove specific reference to the Gentoo Handbook.
  2058 jstubbs   Ignore blockers when fetching.
  2060 jstubbs   Ignore packages in system/world that are satisfied by
                 packages in package.provided.
  2061 jstubbs   Make depclean a little friendler (so that perhaps people
                 will read the messages? ;)
  2062 jstubbs   Add some more info about where the problem is coming from
                 when atoms cannot be resolved.
  2066 jstubbs   Check if invalid atoms are only missing a category and let
                 those pass.
  2068 jstubbs   Restore full range of possible atoms that can be given to
                 emerge by doing atom validity checks using a dummy category
                 if necessary.
  2074 jstubbs   Pass use list rather than config obj to
                 portdbapi.fetch_check()
  2076 jstubbs   Make sure to include package.use flags with fetch-restricted
                 packages
  2082 jstubbs   Warn and ignore on invalid system/world atoms
  2097 jstubbs   Suggest running emaint when problems with the world file are
                 detected.
  2107 jstubbs   Be sure to reset settings changes before each package is
                 merged.
  2112 jstubbs   Make --newuse switch on --update
  2114 jstubbs   Restore the old behaviour that was dropped in the big
                 refactoring by making --update implied by world or system
                 targets.
  2136 jstubbs   Return after detecting an invalid command line atom so as to
                 avoid spurious dependency errors.
  2138 jstubbs   Clarifying the error message when path/to/ebuild is used on
                 an ebuild that isn't in a normal PORTDIR structure.
  2199 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.
  2203 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).
  2256 jstubbs   Use os.path.splitext() rather than slicing strings to get at
                 file extensions. Patch by Jason Pepas.
  2258 ferringb  integration chunk of the cache subsystem patch. Will deal
                 with UNUSED_0* after this
  2264 jstubbs   Clean up reporting of the parent of an unsatisfied atom.
  2266 jstubbs   Limit --emptytree to only affect ${ROOT} (#34887)
  2301 ferringb  don't do a sort if just doing percentage for emerge
                 --metadata
  2349 vapier    eat whitespace -> YUM
  2357 vapier    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
  2363 jstubbs   Separate and format USE_EXPAND based variables found in
                 IUSE.
  2375 jstubbs   Change unmatched ' to " in use flag output.
  2376 jstubbs   Prevent masked use flags from being shown in packages' flag
                 list. Colorize negated flags if they have changed. Code
                 style cleanups.
  2382 jstubbs   Fail if not running as root and --resume is attempted. Patch
                 by Alec Warner (antarus). #114550
  2385 jstubbs   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
  2389 jstubbs   Check if atoms with matching keys will result in higher
                 versioned packages when dealing with || ( ) type
                 dependencies. #100876


bin/env-update.sh
  2350 vapier    dont run depscan.sh anymore


bin/etc-update
  1998 vapier    add a sanity check for diff before using it #48184
  2224 vapier    merge tweaks from trunk
  2250 vapier    grab fixes from trunk


bin/isolated-functions.sh (Added)
  2306 genone    Add slightly modified elog_base patch containing the basic
                 framework for ebuild logging.


bin/portageq
  2311 ferringb  fix for portageq usage call (missing argv), via Emanuele
                 Giaquinta <e.giaquinta@glauco.it>
  2321 jstubbs   Kill of generation of CDEPEND for binary and installed
                 packages. Patch by solar.
  2356 vapier    touchup in general, add support for -h/--help, and delay
                 importing portage so using -h/--help doesnt blow goats
                 because portage was imported
  2359 vapier    add a -v (verbose) option to envvar for easily generating
                 output for use in bash scripts


bin/prepall
  2381 vapier    sync with savior branch
  2388 jstubbs   Remove duplicate if statement.


bin/preplib
  2386 vapier    deprecate preplib


bin/preplib.so (Removed)
  2383 vapier    nothing uses it so no point in keeping it ... plus the
                 ldconfig calls are glibc specific


bin/prepstrip
  2223 vapier    if STRIP begins with a -, make sure type doesnt error out
  2374 solar     - initial commit of split elf debug code


bin/repoman
  2020 ferringb  bug 106544 , glep31 enforcement checks
  2034 ferringb  file.name fixup for glep31 checks.
  2065 ferringb  touches up on file.name check, part of glep31
  2089 jstubbs   Add path to utf-8 checks so that repoman doesn't break
                 outside of the package dir
  2203 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).
  2258 ferringb  integration chunk of the cache subsystem patch. Will deal
                 with UNUSED_0* after this
  2352 jstubbs   Drop the virtuals related fatal errors down to warnings.


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.ppc64
cnf/make.conf.s390
cnf/make.conf.sparc
cnf/make.conf.x86
cnf/make.conf.x86-fbsd
  2312 genone    config additions for elog


cnf/make.conf.ppc
  2263 jstubbs   Updated make.conf.ppc as requested by lu_zero (#102656)
  2312 genone    config additions for elog


cnf/make.globals
  2054 jstubbs   Update the casing of "linux" on the default distfile mirror.


man/alternatives.eclass.5 (Removed)
man/check-kernel.eclass.5 (Removed)
man/check-reqs.eclass.5 (Removed)
man/cvs.eclass.5 (Removed)
man/distutils.eclass.5 (Removed)
man/ebook.eclass.5 (Removed)
man/eutils.eclass.5 (Removed)
man/fixheadtails.eclass.5 (Removed)
man/flag-o-matic.eclass.5 (Removed)
man/font.eclass.5 (Removed)
man/fortran.eclass.5 (Removed)
man/games.eclass.5 (Removed)
man/horde.eclass.5 (Removed)
man/libtool.eclass.5 (Removed)
man/perl-module.eclass.5 (Removed)
man/python.eclass.5 (Removed)
man/rpm.eclass.5 (Removed)
man/ruby.eclass.5 (Removed)
man/ssl-cert.eclass.5 (Removed)
man/stardict.eclass.5 (Removed)
man/subversion.eclass.5 (Removed)
man/tla.eclass.5 (Removed)
man/toolchain-funcs.eclass.5 (Removed)
man/versionator.eclass.5 (Removed)
man/vim-plugin.eclass.5 (Removed)
man/vim.eclass.5 (Removed)
  2081 jstubbs   Remove app-portage/portage-docs files from portage-2.0
                 branch


man/dispatch-conf.1
man/env-update.1
man/etc-update.1
man/make.conf.5
  2260 vapier    clean up the last few sections so that they are consistent


man/ebuild.1
  2260 vapier    clean up the last few sections so that they are consistent
  2322 vapier    compnerd: document manifest action


man/ebuild.5
  2018 vapier    use() is silent, update notes
  2252 vapier    document sandbox and test RESTRICT
  2260 vapier    clean up the last few sections so that they are consistent
  2355 vapier    fix whitespace in depend atom as point out by chkno #114956
  2384 vapier    remove preplib/preplib.so docs


man/emaint.1 (Added)
  2310 vapier    manpage for emaint #112510


man/emerge.1
  2260 vapier    clean up the last few sections so that they are consistent
  2297 jstubbs   Documented `emerge --config` (#109496)
  2315 vapier    move --nocolor to OPTIONS instead of ACTIONS #113225 by P
                 Nienaber


man/portage.5
  1996 vapier    document the -* KEYWORD #97165
  2260 vapier    clean up the last few sections so that they are consistent


man/quickpkg.1
  2251 vapier    fix patch for PKGDIR #111222 by Armand
  2260 vapier    clean up the last few sections so that they are consistent


man/repoman.1
  2019 vapier    repoman will work in any portage tree, but the commit option
                 will only work in a cvs tree
  2260 vapier    clean up the last few sections so that they are consistent
  2325 vapier    Saleem Abdulrasool: document IUSE.invalid


pym/cache (Added)
pym/cache/__init__.py (Added)
pym/cache/anydbm.py (Added)
pym/cache/cache_errors.py (Added)
pym/cache/flat_hash.py (Added)
pym/cache/flat_list.py (Added)
pym/cache/fs_template.py (Added)
pym/cache/mappings.py (Added)
pym/cache/metadata.py (Added)
pym/cache/sql_template.py (Added)
pym/cache/sqlite.py (Added)
pym/cache/template.py (Added)
pym/cache/util.py (Added)
  2257 ferringb  replacement cache subsystem that's gestated in 2.1 and 3.0.
                 it rocks your world, baby.


pym/eclass_cache.py (Added)
  2258 ferringb  integration chunk of the cache subsystem patch. Will deal
                 with UNUSED_0* after this


pym/elog_modules (Added)
pym/elog_modules/__init__.py (Added)
pym/elog_modules/mod_custom.py (Added)
pym/elog_modules/mod_mail.py (Added)
pym/elog_modules/mod_save.py (Added)
  2307 genone    First bunch of simple logging modules.


pym/elog_modules/mod_syslog.py (Added)
  2307 genone    First bunch of simple logging modules.
  2308 genone    minor glitch: EBUILD_PHASES is a list, no need to split() it


pym/emergehelp.py
  2047 jstubbs   add --newuse short option to emerge help
  2139 jstubbs   Removing --inject from emerge help summary
  2150 jstubbs   Remove an extra space in a hyphenated string.
  2299 jstubbs   Documented `emerge --config` (#109496)


pym/portage.py
  1960 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)
  2011 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.
  2014 ferringb  syntax error (wth?), fixed it.
  2022 ferringb  EAPI awareness, and flat_hash/flat_list autodetection for
                 rysnc cache.
  2023 ferringb  correction of eapi transfer for metadata -> local cache
  2025 ferringb  emerge --metadata ran as user, and silenced auxdb Corruption
                 exceptions when doing metadata transfer.
  2035 ferringb  fixups to EAPI handling.
  2050 jstubbs   Adhere to USE flags passed into fetch()
  2051 jstubbs   Fix incorrect Exception when checking LOGDIR permissions
  2052 jstubbs   Prevent globbed atoms from having relative operators.
  2055 jstubbs   Add -i to FBSD's ldconfig as requested.
  2059 jstubbs   Ignore files (such as metadata.xml) within portdir category
                 dirs.
  2063 jstubbs   Sort digests and manifests (to look nice and making them
                 diff'able)
  2064 ferringb  fixed ebuild so ebuild some-ebuild clean setup unpack #
                 works like ebuild some-ebuild clean unpack
  2070 ferringb  saner handling of selinux_enabled
  2073 jstubbs   Fix typo wrt to lamba usage.
  2075 jstubbs   Specify ebuildpath to merge() when using qmerge
  2086 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)
  2087 jstubbs   Extra bracket typo :(
  2096 jstubbs   Always return a list of the same length as the query in
                 vardbapi.aux_get()
  2102 jstubbs   Account for empty EAPI
  2103 ferringb  save _mtime_ when EAPI nukes a cache entry, and a tweak to
                 the supported eapi check so it's lenient about spaces
  2104 ferringb  tweak, since the logic I just replaced was wrong (go me)
  2105 jstubbs   Restoring the metadata EAPI check code-style to match that
                 of the ebuild EAPI check.
  2118 jstubbs   cacheddir() would incorrectly return from the cache when the
                 cached entry is less than <mtime resolution> old. Fixed by
                 axxo.
  2119 jstubbs   Global var profiledir was only being set correctly when
                 portage was imported by emerge
  2133 jstubbs   Adding svn revision property to portage.py's VERSION
  2134 jstubbs   Adjusting the clipping...
  2149 jstubbs   s/no/not/ typo
  2203 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).
  2255 jstubbs   Remove the now unused SANDBOX_PIDS_FILE
  2258 ferringb  integration chunk of the cache subsystem patch. Will deal
                 with UNUSED_0* after this
  2306 genone    Add slightly modified elog_base patch containing the basic
                 framework for ebuild logging.
  2309 genone    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.
  2316 genone    kill stupid message about 'masked by -*'
  2324 genone    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.
  2340 vapier    if PORT_LOGDIR doesnt exist, then try to create it
                 automagically
  2344 vapier    cleanse maketest once and for all
  2347 jstubbs   s/series/serious/ mistake
  2348 vapier    only digest/fetch files when the operation warrants it
  2358 vapier    fix the fetch/digest shortcuts so they dont break normal
                 runs of emerge/ebuild
  2360 jstubbs   Removed the specific check against PORTAGE_CALLER with
                 regard to fetching.
  2364 jstubbs   Prevent USE_EXPAND variables from bypassing use.mask
  2372 vapier    Bug 115519 by Diego Petteno: Fix ldconfig command ordering,
                 add dragonfly support
  2373 vapier    ferringb says: i pity the fool who doesnt use better style
  2389 jstubbs   Check if atoms with matching keys will result in higher
                 versioned packages when dealing with || ( ) type
                 dependencies. #100876


pym/portage_checksum.py
  2044 jstubbs   zmedico's prelink optimization


pym/portage_const.py
  2022 ferringb  EAPI awareness, and flat_hash/flat_list autodetection for
                 rysnc cache.
  2255 jstubbs   Remove the now unused SANDBOX_PIDS_FILE
  2265 jstubbs   Add USE_EXPAND to INCREMENTALS (#105304)
  2306 genone    Add slightly modified elog_base patch containing the basic
                 framework for ebuild logging.
  2368 jstubbs   Add USE_EXPAND_HIDDEN so that users can extend it without
                 killing off profile settings.


pym/portage_data.py
  1960 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)
  2304 vapier    add NetBSD to the BSD list #112393


pym/portage_db_anydbm.py (Removed)
pym/portage_db_cpickle.py (Removed)
pym/portage_db_flat.py (Removed)
pym/portage_db_flat_hash.py (Removed)
pym/portage_db_metadata.py (Removed)
pym/portage_db_template.py (Removed)
pym/portage_db_test.py (Removed)
  2259 ferringb  bye bye you decrepit POS cache implementation.


pym/portage_dep.py
  2253 jstubbs   Start from 1st element rather than 2nd when doing checks on
                 *DEPEND


pym/portage_exception.py
  2086 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)
  2088 ferringb  god this module sucked. Removed all of the duplicate code.


pym/portage_exec.py
  1960 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)
  2254 jstubbs   A couple of bug fixes, large cleanups, commenting and a bit
                 of dead code removal.
  2365 ferringb  Use soft limit, not hard limit.


pym/portage_util.py
  2203 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).
  2324 genone    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.


pym/portage_versions.py (Added)
  2309 genone    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.


src/python-missingos/setup.py
  2069 jstubbs   Remove the specific dependency on python-2.2.


src/sandbox (Removed)
src/sandbox-1.1 (Removed)
  2116 ferringb  removing unused sandbox dirs.


src/sandbox-dev (Removed)
  2115 ferringb  nuking this directory, since it's no longer used.


