============================================================================= 2.1.2.7 2007-05-06 branches/2.1.2 revision 6495 ============================================================================= bin/ebuild.sh 6481 zmedico For bug #177211, use chmod -R on the children of the current directory in order to reduce the size of the argument list. (trunk r6479:6480 bin/emerge 6483 zmedico Use match_from_list in order to potentially avoid more blocks. (trunk r6481:6482) 6493 zmedico Use shlex for better splitting of PORTAGE_RSYNC_OPTS and PORTAGE_RSYNC_EXTRA_OPTS. (trunk r6491:6492) 6495 zmedico Prevent blockers that are only partially resolvable by merge order from accidentally being ignored. (trunk r6493:6494) pym/portage.py 6479 zmedico For bug #175058, comment #15, expand all possible variables in each argument. (trunk r6477:6478) 6488 zmedico Use varexpand to expand FETCHCOMMAND and RESUMECOMMAND. (trunk r6486:6487) 6491 zmedico Use shlex for better splitting of FETCHCOMMAND. (trunk r6489:6490) pym/portage_versions.py 6486 zmedico For bug #171259, fix vercmp so that implicit _p0 is less than explicit _p0. Thanks to TGL for the patch. (trunk r6484:6485) ============================================================================= 2.1.2.6 2007-05-04 branches/2.1.2 revision 6476 ============================================================================= bin/emerge 6445 zmedico For bug #176305, validate the resume merge list before attempting to verify the ebuild manifests. (trunk r6443:6444) 6447 zmedico Fix up missing mymergelist variable from the previous commit. (trunk r6445:6446) 6455 zmedico For bug #176384, adjust config according to options of the command being resumed. (trunk r6453:6454) 6474 zmedico For bug #176765, when a new package is blocked by another one that is being replaced, handle another case where the conflict can be avoided. (trunk r6472:6473) bin/isolated-functions.sh pym/output.py 6468 zmedico Fix eend so that it works properly on a standard BSD console. Thanks to UberLord. (trunk r6466:6467) cnf/make.globals 6453 zmedico For bug #175058, properly quote the variables in FETCHCOMMAND and RESUMECOMMAND since the command is spawned in a bash shell. (trunk r6451:6452) 6457 zmedico For bug #175058, avoid potential quoting issues by spawning FETCHCOMMAND without a shell. (trunk r6455:6456) man/ebuild.1 6476 zmedico document the behavior of `ebuild` wrt FEATURES=noauto #175444 (trunk r6470:6471) man/make.conf.5 6448 zmedico In the installsources docs, note that CFLAGS needs to be set to include debug information. Thanks to tigger^ for reporting. (trunk r6441:6442) pym/portage.py 6457 zmedico For bug #175058, avoid potential quoting issues by spawning FETCHCOMMAND without a shell. (trunk r6455:6456) ============================================================================= 2.1.2.5 2007-04-26 branches/2.1.2 revision 6441 ============================================================================= bin/ecompressdir 6430 zmedico Use portable sh syntax rather than bash syntax. Thanks to drizzt. (trunk r6428:6429) bin/emerge 6418 zmedico For bug #175344, use cp_list instead of xmatch in order to avoid dep_expand calls. (trunk r6416:6417) 6420 zmedico For bug #175344, handle a potential InvalidDependString exception when parsing PROVIDE. (trunk r6418:6419) bin/repoman 6422 zmedico For bug #175344, handle a potential InvalidDependString exception when parsing PROVIDE. (trunk r6420:6421) pym/portage.py 6424 zmedico For bug #175344, validate LICENSE and PROVIDE inside doebuild(). (trunk r6422:6423) 6426 zmedico Also validate SRC_URI inside doebuild(). (trunk r6424:6425) 6428 zmedico Also validate RESTRICT inside doebuild(). (trunk r6426:6427) 6433 zmedico For bug #175781, add a higher preference priority for choices where all matching slots are installed (not just any slot). (trunk r6431:6432) 6439 zmedico For bug #176139, only symlink the distfiles that are required according the current USE settings. (trunk r6437:6438) 6441 zmedico Always ensure permissions in DISTCC_DIR in order to try to prevent potential permission problems for non-root users who are in the portage group (userpriv, etc.). (trunk r6439:6440) ============================================================================= 2.1.2.4 2007-04-15 branches/2.1.2 revision 6414 ============================================================================= bin/dohard 6397 zmedico create leading directories to match behavior of other do* programs (trunk r6393:6394 and r6395:6396) bin/doins 6404 zmedico revise tests so that does not trigger an error (trunk r6400:6401) 6405 zmedico misc style fixes (trunk r6400:6401) bin/ebuild.sh bin/emerge-webrsync bin/etc-update bin/prepall bin/prepstrip bin/sed 6414 zmedico convert `type -p` to `type -P` as noted by grobian (trunk r6410:6411) bin/ecompressdir 6389 zmedico Use relative paths inside ecompressdir in order to avoid 'Argument list too long' errors with large file sets (observed when installing sys-apps/man-pages). (trunk r6387:6388) bin/emerge 6340 zmedico Punt the sorted_versions() function in favor of list.sort(vercmp). (trunk r6338:6339) bin/misc-functions.sh 6393 zmedico simplify unsafe file checking so files/paths with spaces dont cause troubles (trunk r6391:6392) 6414 zmedico convert `type -p` to `type -P` as noted by grobian (trunk r6410:6411) bin/prepman 6363 zmedico For bug #173808, compress ${mandir} all in one go instead of doing subdirectories separately. This allows symlinks that point into sibling directories to get updated properly by ecompressdir. (trunk r6361:6362) 6372 zmedico For bug #173808, add back the old heuristics to make sure that we don't just blindly compress the contents of any directory named "man". man/ebuild.5 6373 zmedico remove references to DOCDESTTREE and INSDESTTREE (trunk r6345:6346) 6376 zmedico remove references to EXEDESTTREE (trunk r6349:6350) 6382 zmedico cleanup example ebuild to be more representative of a good ebuild #174260 by Timothy Redaelli (trunk r6378:6379) 6398 zmedico document new version suffix style #166522 (trunk r6394:6395) man/emerge.1 6374 zmedico tell people that the FILES section is not supposed to be complete (and sneak in a few style fixups) (trunk r6347:6348) man/portage.5 6375 zmedico document /var/cache/edb/, /var/db/pkg/, and /var/lib/portage/config (trunk r6348:6349) pym/portage.py 6326 zmedico Fix missing import. (trunk r6324:6325) 6355 zmedico Only apply permissions to ccache, confcache, and distcc dirs when they are created in order to avoid interference with whatever the user's preferred permissions are. Thanks to Diego Petten?\195?\178 for reporting. (trunk r6353:6354) 6359 zmedico Don't load FEATURES in load_infodir() because FEATURES from the build host shouldn't be interpreted asFEATURES on the client system. Thanks to Thanks to Chri 6361 zmedico Efficiently recycle partial valid vdb cache when possible. This reduces disk load when switching between versions of portage that cache different keys. (trunk r6359:6360) 6385 zmedico Use catpkgsplit instead of pkgsplit for consistency with usage elsewhere. (trunk r6383:6384) 6387 zmedico Add CATEGORY to blacklisted variables since it can interfere with CATEGORY guessing inside doebuild. (trunk r6385:6386) pym/portage_checksum.py 6333 zmedico For bug #173184, handle the CommandNotFound that is produced during uninstallation of prelink. (trunk r6331:6332) ============================================================================= 2.1.2.3 2007-03-29 branches/2.1.2 revision 6322 ============================================================================= bin/doman 6272 zmedico For bug #172033, remove the obsolete QA Notice for man pages that are already compressed. (trunk r6270:6271) bin/ebuild.sh 6213 zmedico For bug #163262 and conformance with section 7.2 of the PMS, make the export attribute of variables persist between ebuild phases. (trunk r6211:6212) 6298 zmedico source ${T}/environment before the definition of qa_source() and qa_call() so that the call stack shows the original files and line numbers instead of those from ${T}/environment. Thanks to Markus Ullmann for reporting. (trunk r6296:6297) 6300 zmedico Filter the readonly attribute from variables saved in ${T}/environment to prevent 'readonly variable' error messages in later phases. (trunk r6298:6299) 6302 zmedico Properly anchor sed regexp for readlonly attribut filtering. (trunk r6300:6301) bin/ecompress 6294 zmedico send stdout to /dev/null since we rely on the output of stdout here to determine the proper suffix #171212 (trunk r6228:6229) 6295 zmedico drop the need for the force flag by default and just delete the existing files automatically #171007 (trunk r6218:6219) bin/ecompressdir 6296 zmedico forcibly break all hard links so we dont need to rely on --force in compressor (trunk r6220:6221) 6310 zmedico For bug #172539, fix ecompressdir suffix handling so that automatic decompression of Z, gz, and bz2 suffixes works properly. (trunk r6308:6309) bin/emerge 6274 zmedico Allow the merge task to continue despite conflicts when --fetch-all-uri is specified. (trunk r6272:6273) 6276 zmedico return from the merge task instead of calling sys.exit directly. (trunk r6274:6275) 6278 zmedico Verify all ebuild manifests before building anything now so that the user is notified of failure as soon as possible. (trunk r6276:6277) 6284 zmedico Verify the Manifest first even if there's only one package (prior to the fetch phase). (trunk r6282:6283) 6306 zmedico Convert "ebuild" and "binary" "nomerge" nodes into "installed" nodes for greater consistency in the depgraph. (trunk r6304:6305) 6308 zmedico Correctly pull the metadata again when the node is converted. (trunk r6306:6307) 6322 zmedico For bug #172571, use socket.AF_INET as the default family for socket.getaddrinfo(). (trunk r6320:6321) bin/emerge-webrsync bin/etc-update pym/portage_locks.py 6293 zmedico For bug #170178, remove all hardcoded references to '/usr/lib/portage'. (trunk r6202:6203) bin/prepinfo 6206 zmedico Make prepinfo remove installed info indexes recursively. Thanks to Christian Faulhammer for reporting (see bugs #162675 and #170133). (trunk r6204:6205) man/make.conf.5 6304 zmedico Synchronize PORTAGE_COMPRESS_FLAGS to reflect that -9 is the default now. (trunk r6302:6303) pym/cache/flat_hash.py 6266 zmedico Ignore non-existent directories for bug #171809. This is required for readonly mode. (trunk r6264:6265) pym/portage.py 6214 zmedico Automatically convert ROOT and PORTAGE_CONFIGROOT to absolute paths when necessary since relative paths lead to problems. (trunk r6209:6211) 6216 zmedico For bug #171117, ensure that the new and old config have different timestamps (for the benefit of programs like rsync that need distiguishable timestamps to detect file changes). Thanks to Ben Bennett for reporting. (trunk r6214:6215) 6218 zmedico Fix a utime call to prevent a timestamp collision for bug #171117. (trunk r6216:6217) 6268 zmedico For bug #171840, consider all choices for slot intersection and promote those that have upgrades relative to other choices. (trunk r6266:6267) 6270 zmedico Clean up and simplify preference selection logic for bug #171840. (trunk r6268:6269) 6293 zmedico For bug #170178, remove all hardcoded references to '/usr/lib/portage'. (trunk r6202:6203) ============================================================================= 2.1.2.2 2007-03-07 branches/2.1.2 revision 6187 ============================================================================= bin/ecompress bin/ecompressdir 6177 zmedico allow people to disable compression by setting the PORTAGE_COMPRESS variables to "" (trunk r6173:6174) bin/emerge 6170 zmedico Display blockers at the end of the list so that it will more often be easy for the user to see them in a terminal. Thanks to iapitus and hydrogen for the suggestion. (trunk r6168:6169) 6176 zmedico Avoid pointless population of the binary tree when --buildpkg is enabled. Thanks to vapier for reporting. (trunk r6174:6175) 6187 zmedico For bug #169620, in --tree display always show the dowload size on the node that is "ordered" rather than one of it's "nomerge" counterparts. (trunk r6185:6186) ============================================================================= 2.1.2.1 2007-03-03 branches/2.1.2 revision 6167 ============================================================================= bin/emerge 6159 zmedico Only prune duplicate consecutive nodes if they both have depth == 0. (trunk r6157:6158) 6161 zmedico For bug #169187, make --depclean prune unneeded slots such that it is consistent with the world update algorithm. (trunk r6159:6160) 6163 zmedico Add a note about --with-bdeps in the --depclean failure message. (trunk r6161:6162) 6165 zmedico Fix the minimum index for pruning consecutive duplicate nodes. (trunk r6163:6164) pym/portage.py 6167 zmedico Remove the KVERS environment variable since it's code that creates it is broken anyway (only sets KVERS="." in the general case). (trunk r6165:6166) pym/portage_locks.py 6157 zmedico Pass waiting_msg into recursive lockfile() calls. (trunk r6155:6156) ============================================================================= 2.1.2-r14 2007-03-03 branches/2.1.2 revision 6149 ============================================================================= bin/emerge 6134 zmedico When emerge automatically resumes, add --ignore-default-opts to the command line in order to prevent things like --ask from leaking in via EMERGE_DEFAULT_OPTS. Thanks to Peter Weller for reporting. (trunk r6132:6133) 6136 zmedico For bug #169046, fill in the --tree display with "nomerge" nodes so that the user can always see at lease 1 parent on any non-root node. Packages may appear in the display list multiple times, and will be marked "nomerge" when their position in the list does not correspond to actual merge order. (trunk r6134:6135) 6142 zmedico s/node/selected_parent/ for clarity (trunk r6140:6141) 6149 zmedico Make sure that excess "nomerge" nodes are pruned correctly. (trunk r6147:6148) man/emerge.1 6139 zmedico update --help example to match current behavior #168678 by Arthur Hagen (trunk r6099:6100) pym/portage.py 6140 zmedico Fix types.InstanceType test which is failing now for some reason. (trunk r6136:6137) 6144 zmedico For bug #138840, show a more informative message when waiting for a distfiles lock due to parallel-fetch. Thanks to David Watzke for the initial patch. (trunk r6142:6143) pym/portage_data.py 6147 zmedico Add missing sys import. (trunk r6145:6146) pym/portage_locks.py 6144 zmedico For bug #138840, show a more informative message when waiting for a distfiles lock due to parallel-fetch. Thanks to David Watzke for the initial patch. (trunk r6142:6143) ============================================================================= 2.1.2-r13 2007-03-01 branches/2.1.2 revision 6130 ============================================================================= bin/emerge 6105 zmedico For bug #168646, don't bail out immediately when rsync detects protocol incompatibility (code 2) during fetching of the timestamp file. Retry for a better server (up to PORTAGE_RSYNC_RETRIES). (trunk r6103:6104) 6110 zmedico Use an alarm signal to implement a timeout when rsync is fetching the server timestamp file, since rsync's --timeout option doesn't apply to the initial connection attempt. (trunk r6108:6109) 6112 zmedico Make sure pids are appropriately removed from portage_exec.spawned_pids. (trunk r6110:6111) 6114 zmedico Merge --quiet fixes from trunk r6112:6113 6118 zmedico For consistency, remove exit code 2 (protocol incompatibility) from the other list of rsync exit codes. (trunk r6116:6117) 6120 zmedico Fix broken except statement syntax. (trunk r6118:6119) 6122 zmedico Fix the rest of the broken except statement syntax. (trunk r6120:6121) 6124 zmedico Fix broken rsync exitcode shift. (trunk r6122:6123) 6126 zmedico Remove unnecessary print statement reported by solar. (trunk r6124:6125) 6128 zmedico Even if there's no timestamp available locally, fetch the timestamp anyway as an initial probe to verify that the server is responsive. This protects us from hanging indefinitely on a connection attempt to an unresponsive server which rsync's --timeout option does not prevent. (trunk r6126:6127) 6130 zmedico For bug #168646, remove --prune-empty-dirs from PORTAGE_RSYNC_OPTS since it's only a small optimization and it's inconvenient to force >=rsync-2.6.4 on server admins at this time. If users desire, they can still add it to PORTAGE_RSYNC_EXTRA_OPTS. (trunk r6128:6129) bin/etc-update 6116 zmedico Add compatibility code to avoid the GNU specific --reference option of chmod. Thanks to Timothy Redaelli . (trunk r6114:6115) cnf/make.globals 6130 zmedico For bug #168646, remove --prune-empty-dirs from PORTAGE_RSYNC_OPTS since it's only a small optimization and it's inconvenient to force >=rsync-2.6.4 on server admins at this time. If users desire, they can still add it to PORTAGE_RSYNC_EXTRA_OPTS. (trunk r6128:6129) pym/cache/fs_template.py 6122 zmedico Fix the rest of the broken except statement syntax. (trunk r6120:6121) pym/portage.py 6103 zmedico For bug #168823, fix broken except statement syntax that prevents the ValueError from being caught as intended. (trunk r6101:6102) ============================================================================= 2.1.2-r12 2007-02-26 branches/2.1.2 revision 6089 ============================================================================= bin/ecompress man/make.conf.5 6089 zmedico For bug #168267, use add --force to the default PORTAGE_COMPRESS_FLAGS so that hardlinks are automatically broken. (trunk r6087:6088) bin/ecompressdir 6087 zmedico For compatibility with older findutils, don't use the -L predicate (bug #168432). (trunk r6085:6086) bin/emerge cnf/make.globals 6071 zmedico For bug #167668, prune empty ${FILESDIR}s by adding --prune-empty-dirs to PORTAGE_RSYNC_OPTS. Thanks to Ulrich Mueller for the suggestion. (trunk r6069:6070) pym/portage.py 6069 zmedico Clean up os.environ["USERLAND"] pollution from the portage_data module so that it doesn't interfere with repoman. (trunk r6067:6068) ============================================================================= 2.1.2-r11 2007-02-23 branches/2.1.2 revision 6067 ============================================================================= bin/emerge 6018 zmedico As requested by vapier, don't show the merge list in --quiet mode unless it's explicitly requested via --ask or --pretend. (trunk r6016:6017) 6049 zmedico For bug #167668, use an rsync "hide" filter rule to exclude **/files/digest-* and delete them on the receiver. (trunk r6046:6047) 6050 zmedico Remove quotes since rsync doesn't accept them (and there is no shell to remove them since we use spawn() for rsync now). (trunk r6047:6048) 6052 zmedico spawn rsync without a shell. (trunk r6050:6051) 6059 zmedico Do not show the spinner and the "Calculating dependencies" message for installation actions when the --nodeps option has been specified. Thanks to David Watzke for this patch from bug #168169. (trunk r6057:6058) 6063 zmedico As requested by solar, never show a merge list unless it's explicitly requested by --ask, --pretend, or --tree. 6065 zmedico As requested by solar, never show a merge list unless it's explicitly requested by --ask, --pretend, or --tree. (trunk r6064) 6067 zmedico Allow --verbose to trigger a merge list even without --pretend, --ask, or --tree. Thanks to agaffney and zlin for the suggestion. (trunk r6065:6066) bin/prepstrip 6061 zmedico Filter paths matching '/$' that come from debugedit. Thanks to Ed Catmur for this patch from bug #165342. bin/repoman 6025 zmedico s/x/xs/ to fix a typo in a variable name. (trunk r6022:6023) 6026 zmedico For consistency, replace multiple os.getcwd() calls with the "mydir" variable. (trunk r6023:6024) 6028 zmedico Fix stardir and repodir logic from the previous commit. (trunk r6026:6027) 6030 zmedico Avoid a TypeError when commitmessagefile is None. (trunk r6028:6029) 6032 zmedico Use startdir instead of mydir since mydir has a trailing slash which triggers normalization issues with the dirname function. (trunk r6030:6031) 6034 zmedico Fix more broken commitmessagefile handling. (trunk r6032:6033) 6037 zmedico Fix broken file list handling for FEATUES=sign when only the Manifest has changed. Add some sanity checks for file list handling when repolevel < 3. (trunk r6034:6036) 6044 zmedico For bug #167667, add support for ${PORTDIR}/manifest1_obsolete and automatically remove ${FILESDIR}/digest-* from cvs when appropriate. (trunk r6041:6042) cnf/make.globals 6049 zmedico For bug #167668, use an rsync "hide" filter rule to exclude **/files/digest-* and delete them on the receiver. (trunk r6046:6047) pym/portage.py 6020 zmedico For bug #167795, try avoid the population routine when possible, so that FEATURES=buildpkg doesn't always force population. (trunk r6018:6019) 6040 zmedico Make sure that ${A} in initialized in case pkg_nofetch() needs to be called. Thanks to Peper for reporting. (trunk r6038:6039) 6043 zmedico For bug #167667, use the existence of ${PORTDIR}/manifest1_obsolete to trigger the disabling of manifest1/digest file generation. This toggle is repo/overlay specific, allowing a specific overlay to drop manifest1 by adding the manifest1_obsolete file. (trunk r6040:6041) 6057 zmedico Make verify_all() return an "insufficient data" error if there is not at least one supported hash type. Make fetch() bail out when this error occurs. (trunk r6054:6056) pym/portage_checksum.py 6057 zmedico Make verify_all() return an "insufficient data" error if there is not at least one supported hash type. Make fetch() bail out when this error occurs. (trunk r6054:6056) pym/portage_exec.py 6022 zmedico Raise a CommandNotFound exception when necessary, to ease troubleshooting. Thanks to marienz for reporting. (trunk r6020:6021) pym/portage_manifest.py 6043 zmedico For bug #167667, use the existence of ${PORTDIR}/manifest1_obsolete to trigger the disabling of manifest1/digest file generation. This toggle is repo/overlay specific, allowing a specific overlay to drop manifest1 by adding the manifest1_obsolete file. (trunk r6040:6041) 6046 zmedico Don't bother to parse ${FILESDIR}/digest-* when manifest1_compat is disabled. (trunk r6044:6045) ============================================================================= 2.1.2-r10 2007-02-19 branches/2.1.2 revision 6016 ============================================================================= bin/archive-conf bin/chkcontents bin/clean_locks bin/dispatch-conf bin/ebuild bin/env-update bin/fix-db.py bin/fixpackages bin/md5check.py bin/pkgname bin/portageq bin/regenworld bin/repoman bin/xpak 6016 zmedico For bug #167217, don't hardcode /usr/lib/portage. (trunk r5945) bin/ebuild.sh 6003 zmedico When calling tar, always exclud . in order to preserver PORTAGE_WORKDIR_MODE. Thanks to Brian Harring in bug #167544. (trunk r6001:6002) 6005 zmedico Don't exclude . since that excludes the entire contents of some tar files. (trunk r6003:6004) bin/emaint 5987 zmedico For bug #166785, check for invalid categories in the world file. (trunk r5985:5986) 6016 zmedico For bug #167217, don't hardcode /usr/lib/portage. (trunk r5945) bin/emerge 5957 zmedico In the event of a circular dependency panic, eliminate root nodes in order to reduce the noise level to a minimum. (trunk r5956) 5966 zmedico For bug #158100, use an exact reversal of the actual merge order for --tree output. It's more efficient than doing 2 order calculations. (trunk r5965) 5968 zmedico Optimize merge order calculation for --tree output when necessary. (trunk r5967) 5985 zmedico For bug #166939, make --nodeps work like a normal package for new-style virtuals. (trunk r5981:5982 and r5983:5984) 5997 zmedico For bug #167450, optimize merge order by delaying the merge of root nodes. (trunk r5995:5996) 5999 zmedico For bug #166880, always display the merge list (allowing --tree to be obeyed in any case). (trunk r5997:5998) 6001 zmedico For bug #166880, always display the merge list header. (trunk r5999:6000) 6007 zmedico For bug #166564, make a circular dependency panic more user friendly by displaying the USE flags that are enabled on nodes that are part of dependency cycles and display a note hinting that circular dependencies can often be avoided by temporarily disabling USE flags. (trunk r6005:6006) 6009 zmedico Automatically enable --tree mode when displaying nodes with circular deps. (trunk r6007:6008) 6011 zmedico For bug #167450, optimize leaf node selection by ordering nodes from highest to lowest overall reference count. (trunk r6009:6010) 6013 zmedico Make digraph._merge_order_bias() operate on a single digraph that's passed in. (trunk r6011:6012) 6015 zmedico Optimize order for --tree display of circular dependencies. (trunk r6013:6014) 6016 zmedico For bug #167217, don't hardcode /usr/lib/portage. (trunk r5945) bin/etc-update 5971 zmedico Fix CONFIG_PROTECT_MASK support. Thanks to piavlo for this patch from bug #166837. (trunk r5968:5970) pym/output.py 5958 zmedico Make xterm titles work even when color is disabled. Thanks to Joachim Kaeber in bug #166255. (trunk r5949:5950) pym/portage.py 5972 zmedico Detect potential issues with mtime granlarity in env_update() and sleep if necessary. Thanks to Brian Harring for reporting. (trunk r5960:5961) 5989 zmedico For bug #163990, warn about ebuilds with invalid categories and do not allow them to be installed. (trunk r5987:5988) 5991 zmedico For bug #163990, warn about binary packages with invalid categories and do not allow them to be installed. (trunk r5989:5990) ============================================================================= 2.1.2-r9 2007-02-07 branches/2.1.2 revision 5929 ============================================================================= bin/dispatch-conf 5915 zmedico For bug #165780, make config-protect code consistently ignore '.*~' and '.*.bak'. (trunk r5914) bin/ebuild pym/portage_dep.py 5911 zmedico For backward compatibility with api consumers, _dep_check_strict behavior will be explicitly enabled as necessary. Thanks to Brian for reporting issues with porthole and equery. (trunk r5907) bin/ebuild.sh 5913 zmedico Only echo PORTAGE_LOG_FILE if it's actually set (may not be if sesandbox is enabled). (trunk r5912) bin/emerge 5909 zmedico For bug #165783, handle an InvalidDependString exception triggered by an invalid SRC_URI. (trunk r5908) 5911 zmedico For backward compatibility with api consumers, _dep_check_strict behavior will be explicitly enabled as necessary. Thanks to Brian for reporting issues with porthole and equery. (trunk r5907) 5915 zmedico For bug #165780, make config-protect code consistently ignore '.*~' and '.*.bak'. (trunk r5914) bin/repoman 5919 zmedico Enable strict dep checking for repoman. (trunk r5918) 5923 zmedico For bug #165783, handle a potential InvalidDependString exception in repoman and report a SRC_URI.syntax failure. (trunk r5922) 5929 zmedico Make the "lfull" output more succinct by omitting categories for which there are no violations. (trunk r5928) pym/portage.py 5917 zmedico For bug #165783, handle a potential InvalidDependString exception inside digestgen(). (trunk r5916) 5921 zmedico For bug #165783, handle a potential InvalidDependString exception inside doebuild(). (trunk r5920) 5925 zmedico Synchronize required hash code in all relevant places. (trunk r5924) pym/portage_const.py pym/portage_manifest.py 5925 zmedico Synchronize required hash code in all relevant places. (trunk r5924) tests/portage_dep/test_isvalidatom.py 5927 zmedico Turn on strict dep checking to fix the isvalidatom test (trunk r5926). ============================================================================= 2.1.2-r8 2007-02-05 branches/2.1.2 revision 5901 ============================================================================= bin/emerge 5898 zmedico For bug #165382, show a helpful message if an exception is raised from cpv_expand(). (trunk r5897) bin/repoman 5900 zmedico For bug #165349, use the portage_versions regex (via pkgsplit) instead of the incompatible ones that repoman currently uses. (trunk r5887:5888) man/emerge.1 5899 zmedico Document --config-root for bug #165334. (trunk r5888:5889) pym/portage.py 5896 zmedico For bug #165382, don't raise a ValueError in cpv_expand() if there are only two matches and one of them is a virtual. Prefer the non-virtual instead. (trunk r5889:5891) 5901 zmedico Ensure that the code for bug #165382 only affects name collisions with virtuals. (trunk r5890:5891) ============================================================================= 2.1.2-r7 2007-02-03 branches/2.1.2 revision 5884 ============================================================================= bin/ebuild.sh 5882 zmedico For bug #165034, make sure that symlinks are excluded from chmod calls. (trunk r5876:5879) man/make.conf.5 5884 zmedico add warning about storing data in PORTDIR (trunk r5865:5866) pym/cache/util.py 5881 zmedico In order to correctly handl the case of target caches that don't have complete eclass entries, validate the set of interited eclasses to make sure it is correct (since timestamp validation is not applicable). (trunk r5880) pym/portage.py 5883 zmedico For bug #165065, use the proper RESTRICT setting when fetching files in digestgen(). (trunk r5874:5875) ============================================================================= 2.1.2-r6 2007-02-01 branches/2.1.2 revision 5869 ============================================================================= bin/ebuild.sh 5843 zmedico For bug #164617, don't change permissions on ${WORKDIR} with unpack(). (trunk r5842) 5846 zmedico Use find + xargs to avoid a potential 'Argument list too long' from bash. (trunk r5844:5845) bin/emerge 5844 zmedico For bug #164363, shuffle the ip addresses returned from socket.getaddrinfo(). (trunk r5832:5833) 5860 zmedico Fix --newuse so that it works correctly with --usepkg. (trunk r5859) 5867 zmedico Rename dir.bz2 since that's the most likely case now. (trunk r5864:5865) 5868 zmedico Load the most current variables from /etc/profile.env for post_emerge stuff. (trunk 5857:5858) bin/emerge-webrsync 5841 zmedico For bug #164532, don't rely on ${USERLAND} since the portage tree might be empty. (trunk r5840) pym/portage.py 5869 zmedico Don't use os.path.isdir() because it can swallow errors related to filesystem/disk corruption. (trunk r5851:5852) ============================================================================= 2.1.2-r5 2007-01-28 branches/2.1.2 revision 5830 ============================================================================= bin/check-implicit-pointer-usage.py 5823 zmedico translate unicode quotes to ascii ones so we can keep our regex simple (trunk r5795:5796 and r5803:5804) bin/ecompressdir 5826 zmedico add support for transparently decompressing gz/Z/bz2 files since some upstream packages will compress for us (trunk r5824:5825) bin/emerge 5824 zmedico Remove a stray print statement. Thanks to Rick Warner in bug #125261. (trunk r5798:5799) 5828 zmedico For bug #164078, don't trigger the CLEAN_DELAY countdown for autoclean operations since those are most likely unattended. Thanks to Dan for the initial patch. (trunk r5827) 5830 zmedico Ignore EEXIST from rmdir since some kernels (such as solaris) return that instead of ENOTEMPTY. (trunk r5798) bin/env-update 5829 zmedico Catch EACCESS when running env-update, orignal patch by (bug #106061) (trunk r5802:5803 and r5813:5814) bin/repoman 5822 zmedico Can't delete variable that doesn't exist anymore (bug #164280) (trunk r5816:5817 and r5820:5821) pym/portage.py 5830 zmedico Ignore EEXIST from rmdir since some kernels (such as solaris) return that instead of ENOTEMPTY. (trunk r5798) ============================================================================= 2.1.2-r4 2007-01-24 branches/2.1.2 revision 5771 ============================================================================= bin/repoman 5771 zmedico demote KEYWORDS.missing to a warning to make KEYWORDS='' valid (trunk r5767:5768) pym/portage.py 5770 zmedico Fix broken line number counting for CONTENTS. (trunk r5764:5765) ============================================================================= 2.1.2-r3 2007-01-23 branches/2.1.2 revision 5764 ============================================================================= NEWS man/portage.5 5762 zmedico Add new ** for package.keywords token to bypass keyword visibility layer (trunk r5758:5760) pym/portage.py 5761 zmedico For bug #163219, handle binpkgs that have missing PF metadata. (trunk r5756:5757) 5762 zmedico Add new ** for package.keywords token to bypass keyword visibility layer (trunk r5758:5760) 5764 zmedico For bug #142279, detect and warn about null bytes in CONTENTS. (trunk r5762:5763) ============================================================================= 2.1.2-r2 2007-01-21 branches/2.1.2 revision 5750 ============================================================================= bin/ecompressdir 5740 zmedico Use XARGS for portable xargs handling when find doesn't find any files. bin/emerge 5738 zmedico For bug #161356, fix error handling for currupt ebuilds. (trunk 5735:5737) man/emerge.1 5744 zmedico Minor fixes thanks to Fabio Correa in bug #162647. (trunk r5741:5742) pym/portage.py 5738 zmedico For bug #161356, fix error handling for currupt ebuilds. (trunk 5735:5737) 5745 zmedico Don't require MANIFEST2 hashes since that can trigger excessive fetches when sufficient digests already exist. Thanks to vapier for reporting. (trunk r5742:5743) 5747 zmedico To ease transition while Manifest 1 is being removed, only require hashes that will exist before and after the transition. (trunk r5746) 5750 zmedico For bug #163083, handle an UnsupportedAPIException thrown from the prerm phase. (trunk r5748:5749) pym/portage_exception.py 5750 zmedico For bug #163083, handle an UnsupportedAPIException thrown from the prerm phase. (trunk r5748:5749) ============================================================================= 2.1.2-r1 2007-01-18 branches/2.1.2 revision 5720 ============================================================================= bin/ebuild.sh 5688 zmedico Use the portable -o option for tar. Thanks to Timothy Redaelli for the patch. (trunk r5676) bin/ecompressdir 5681 zmedico make sure we rename links and not just what they point to #162451 (trunk r5677:5678) bin/emerge 5717 zmedico Simplify rsync timestamp.chk handling and print the correct path for bug #50738. Thanks to jeka for reporting on irc. (trunk r5716) 5720 zmedico dump emerge's normpath in favor of portage_util's normalize_path (trunk r5698) bin/misc-functions.sh 5696 zmedico arm and superh support exec stack stuff now (trunk r5693:5695) bin/repoman 5687 zmedico Merge repoman fixes from trunk r5660:5661 and r5665:5669. pym/portage.py 5683 zmedico Make dep_check() work correctly with --usepkgonly. This solves issues reported by Brent Baude (trunk r5674, 5675, 5678, and 5682) 5685 zmedico Fix elimination of duplicate virtuals between the binpkg repo and installed packages. (trunk r5684) 5686 zmedico Merge doebuild *DEPEND validation from trunk r5652:5655. 5692 zmedico For bug #162404, spawn tee outside the sesandbox domain so that it reads from a pipe between two domains. (trunk r5689:5691) 5715 zmedico Validate ebuild names in portdbapi.cp_list() and raise an raise an informative InvalidData exception from match_from_list when necessary. (trunk r5712:5714) 5719 zmedico For bug #162404, when sesandbox is enabled, only log if PORT_LOGDIR is explicitly enabled since it is possible that local SELinux security policies do not allow ouput to be piped out of the sesandbox domain. (trunk r5718) pym/portage_dep.py 5715 zmedico Validate ebuild names in portdbapi.cp_list() and raise an raise an informative InvalidData exception from match_from_list when necessary. (trunk r5712:5714) pym/portage_util.py 5720 zmedico dump emerge's normpath in favor of portage_util's normalize_path (trunk r5698) ============================================================================= 2.1.2 2007-01-14 trunk revision 5649 ============================================================================= DEVELOPING (Added) 5612 antarus Add a few pretty basic comments on writing code, particularly things that portage used to do (and still does) that are...a bit out of style ;) 5633 antarus fix tabs with patch from Grobian and bug # 161911, fix developing a bit NEWS 5367 zmedico For bug #158931, add some release notes to explain performance penalties for dependency calculations. 5481 zmedico s/prefix/suffix/ Thanks to hydrogen for reporting on irc. 5482 zmedico s/suffix/version prefix/ since it really is a prefix for the version string. 5494 genone Update NEWS with eqawarn and 'ebuild foo test' changes 5509 genone create symlinks to html documentation if DOC_SYMLINK_DIR is set, original patch by TGL (bug #67130) 5645 zmedico For bug #69021, add news about FEATURES="test" implying USE="test". RELEASE-NOTES 5367 zmedico For bug #158931, add some release notes to explain performance penalties for dependency calculations. TEST-NOTES (Added) 5531 antarus add a few tips on adding tests, and kinks in the current system, I hope to fix the import bug soon 5539 antarus edit test-notes bin/archive-conf bin/chkcontents bin/portageq bin/regenworld 5597 antarus More String deprecation bin/check-implicit-pointer-usage.py (Added) 5449 vapier add support for scanning of build logs for common issues #111436 bin/dispatch-conf 5597 antarus More String deprecation 5601 antarus fix "" " " bug 5605 zmedico Fix a typo. bin/dodoc bin/doinfo bin/ecompress (Added) bin/prepallinfo bin/prepallman bin/prepinfo 5555 vapier add support for user-customizable compression #9870 bin/dohtml 5597 antarus More String deprecation 5642 zmedico Fix dohtml so that it continues to install files even after some fail. Thanks to brad walker in bug #149745. bin/doman bin/preplib 5507 zmedico For bug #160075, send all 'QA Notice' messages to eqawarn. Also, modify eqawarn to use vecho and send ouput to stderr. bin/ebuild 5487 genone Always run src_test when calling 'ebuild foo test' bin/ebuild.sh 5391 zmedico Use a SIGTERM signal to support a die call inside of a subshell. 5392 zmedico For bug #148603, when an ebuild dies, print eclasses that are from overlays. Thanks to Alec Warner for the initial patch. 5425 zmedico Punt the abort_unpack() handler since it's pointless anyway. 5484 antarus Implement QA checks that attempt to detect changed shopts and IFS in ebuild/eclass/profile code. Spit a warning if that is the case. I expect this check will eventually reset the shopts and IFS, but in this case it may break things that depend on the current behavior 5485 antarus Antarus sucks at bash, thanks for Genone for reporting this major bug. 5487 genone Always run src_test when calling 'ebuild foo test' 5488 genone Disable qa_source usage until it actually works 5489 antarus Zac pointed out that the retcodes would be wrong if stuff failed...Yeah... 5492 antarus Okies this works locally for me now (and Zac) 5504 genone Misc typo fixes, patch by Benno Schulenberg (bug #157812) 5507 zmedico For bug #160075, send all 'QA Notice' messages to eqawarn. Also, modify eqawarn to use vecho and send ouput to stderr. 5590 zmedico For bug #88485, show the location of the build log whenever a build fails. 5632 vapier make sure people call addread/addwrite/adddeny/addpredict correctly 5646 zmedico Disable the test phase when USE=test is masked (for consistency with the fix for bug #69021). bin/ecompressdir (Added) 5555 vapier add support for user-customizable compression #9870 5575 vapier dont compress files that are already compressed and dont do sanity checking on the link dest as we cant properly verify things like absolute symlinks 5576 vapier use cached suffix value and if it is not valid, lets warn bin/emerge 5361 zmedico Show the "Calculating dependencies .. done!" message with --resume since the spinner now runs inside the depgraph constructor. Thanks to antarus for reporting. 5388 zmedico Prevent the regen action from running in --pretend mode. 5389 zmedico When the user has insufficient access privileges, specify whether superuser access or portage group access is required. When only portage group access is required but the user is not in the portage group, call portage_data.portage_group_warning() to remind people that the portage group is a system administration group. 5402 zmedico Use a pickle to cache vdb metadata. This greatly improves the performance for loading the vdb when the buffer cache is cold. 5410 zmedico Use a pickle to cache blockers for all installed packages so that dep_check doesn't have to be called for every single installed package on every invocation of emerge. 5411 zmedico For bug #159161, make emerge --info show USE_EXPAND flags similar to the way it does in merge list output. 5412 zmedico Add some docs for the blockers cache format. 5413 zmedico For bug #159310, don't show a slot collision notice if there are unresolvable blockers. 5415 solar - keep things quiet when uninstalling 5416 zmedico Send stuff that's not a warning or error to stdout rather than stderr. 5420 zmedico Sort the --info USE flags for bug #159161. 5421 zmedico Be slightly more defensive when loading the vdb/blockers caches. 5423 zmedico Do some small fixes to prevent slot collision nodes from interfering with the depgraph. 5424 zmedico Fix 'TypeError: unpack non-sequence' that occurs if myparent is None. 5432 zmedico Use return values instead of direct sys.exit(123) calls when a merge fails. 5456 zmedico Implement distlocks for --getbinpkg so that it works properly when parallel-fetch is enabled. Thanks to Brent Baude for reporting. 5465 zmedico For bug #160299, make sure that emerge sees a somewhat valid COUNTER even when the counter is missing. 5503 zmedico For bug #160971, rename dir.gz to dir.gz.old when necessary to avoid problems with install-info. Thanks to Ed Catmur for the initial patch. 5534 zmedico For bug #161422, make slot collisions non-fatal in cases where an invalid depgraph is acceptable (--fetchonly, for example). 5535 zmedico Don't allow slot collision nodes to block other packages since blocker validation is only able to account for one package per slot. 5536 zmedico Rename depgraph._invalid_depgraph_is_acceptable() to _accept_collisions() for a better description. 5545 genone Rename 'Last Sync' to 'Timestamp of tree' to clarify the meaning (bug #150051) 5565 zmedico For bug #50738, inform the user about the location of the timestamp file and that it can be removed to force sync. 5580 zmedico For bug #147512, don't print a cryptic error message when an EnvironmentError occurs. Also, allow the user to get a traceback via --debug. 5600 antarus purge string module from emerge 5601 antarus fix "" " " bug 5607 zmedico Revert accidentally modified joins. 5621 zmedico Send the slot collision notice to stderr and only show minimal output in --quiet mode. 5623 zmedico Send the unmerge failure message to stderr. 5624 zmedico Use end_paragraph(1) instead of add_line_break() so that there is really a blank line. 5625 zmedico For bug #144380, disable color at emerge startup and then enable it only when it's absolutely sure that color should be enabled (after EMERGE_DEFAULT_OPTS has been parsed). 5627 zmedico Obey the silent parameter when parsing options. 5629 zmedico Catch InvalidData exceptions for bad atoms passed as emerge arguments. bin/isolated-functions.sh 5490 genone Add new eqawarn function and QA loglevel to be used for QA messages 5507 zmedico For bug #160075, send all 'QA Notice' messages to eqawarn. Also, modify eqawarn to use vecho and send ouput to stderr. 5578 zmedico Fix ebuild environment color.map support so that it works properly through exec calls (since the color variables can not be directly exported due to env pollution). bin/md5check.py 5597 antarus More String deprecation 5606 zmedico Fix a typo. bin/misc-functions.sh 5417 vapier fixup style 5442 vapier merge all of the QA related checks together 5449 vapier add support for scanning of build logs for common issues #111436 5466 zmedico Fix shell glob logic that leads to false positives. Thanks to Flameeyes for reporting. 5467 zmedico Fix one more potential false glob match. 5468 vapier revert previous changes ... ruby.eclass is wrongly polluting env with nullglob 5469 vapier force C locale for now when parsing gcc log files #160234 5507 zmedico For bug #160075, send all 'QA Notice' messages to eqawarn. Also, modify eqawarn to use vecho and send ouput to stderr. 5509 genone create symlinks to html documentation if DOC_SYMLINK_DIR is set, original patch by TGL (bug #67130) 5555 vapier add support for user-customizable compression #9870 5579 vapier drop lazy bindings check once and for all ... the system ldso should have the logic #71609 bin/prepall 5418 vapier detect incorrect absolute symlinks in libdirs 5442 vapier merge all of the QA related checks together bin/prepalldocs 5555 vapier add support for user-customizable compression #9870 5628 zmedico Fix a typo. bin/prepman 5507 zmedico For bug #160075, send all 'QA Notice' messages to eqawarn. Also, modify eqawarn to use vecho and send ouput to stderr. 5555 vapier add support for user-customizable compression #9870 bin/prepstrip 5408 zmedico For bug #159252, don't preserve file attributes when copying files for installsources. Thanks to Ed Catmur for this patch. 5507 zmedico For bug #160075, send all 'QA Notice' messages to eqawarn. Also, modify eqawarn to use vecho and send ouput to stderr. bin/repoman 5360 zmedico Only write repo.stats and repo.fails when the repoman user has write access to /var/cache/edb. 5438 zmedico For bug #159224, use separate xmatch caches for each value of ACCEPT_KEYWORDS. 5444 zmedico Optimize dep_zapdeps to work without a vartree when called by repoman. 5463 zmedico Make repoman use portage.normalize_path instead of os.path.normpath. This might solve an issue with incorrect repolevel detection that was reported by drizzt. 5470 zmedico For bug #160310, allow \ inside `` quotes in order to prevent a false Line continuation ("\") Syntax Error. 5471 zmedico For bug #160310, remove the line continuation syntax check since it's still possible for it to generate false positives. 5477 zmedico Fix the digestentry.unused check so that it works properly when old-style files/digest-* don't exist. 5480 zmedico Don't automatically fix digests in --pretend mode. 5603 antarus purge string module from repoman cnf/make.conf 5491 genone Mention new QA loglevel in make.conf.example 5543 genone Update CCACHE docs, patch by Ryan Hill (bug #156865) 5544 genone Add 'stricter' description, misc typo fixes, patch by Max Lorenz (bug #153755) cnf/make.conf.x86.diff 5505 genone Update x86 CFLAGS section, original patch by Peter Gantner (bug #133402) man/ebuild.5 5506 genone Add elog related variables to make.conf(5) with a pointer to make.conf.example. Add elog() description to ebuild(5) and update einfo() description. 5542 genone Remove RESTRICT=sandbox docs until bug #161045 is resolved 5643 zmedico Document PORTAGE_LOG_FILE, update PORTAGE_TMPDIR path which now includes CATEGORY, and lots of style/syntax fixes. Thanks to Arfrever Frehtes Taifersar Arahesis from bug #161979. man/emerge.1 5369 antarus Manpage fix for bug # 158983, thanks to Fabio Correa for the patch 5401 antarus try to give the emerge manpage a facelift, upgrade clean and prune docs, change 'dependency' to 'atom', other minor fixes 5404 zmedico Update emerge --metadata docs for more clarity. 5510 genone Make env variable example about USE shell independent man/make.conf.5 5506 genone Add elog related variables to make.conf(5) with a pointer to make.conf.example. Add elog() description to ebuild(5) and update einfo() description. 5543 genone Update CCACHE docs, patch by Ryan Hill (bug #156865) 5552 genone Add note that any value enables EPAUSE_IGNORE 5626 zmedico Document PORTAGE_COMPRESS and PORTAGE_COMPRESS_FLAGS. 5643 zmedico Document PORTAGE_LOG_FILE, update PORTAGE_TMPDIR path which now includes CATEGORY, and lots of style/syntax fixes. Thanks to Arfrever Frehtes Taifersar Arahesis from bug #161979. 5644 zmedico For bug #161975, document the fact that GENTOO_MIRRORS supports mounted filesystem mirrors. 5648 zmedico Document DOC_SYMLINKS_DIR. 5649 zmedico Fix alphabetical order. man/portage.5 5502 zmedico For bug #161003, disallow virtuals in package.provided and document it. Thanks to Robin Johnson for the initial patch. pym/cache/metadata_overlay.py 5368 zmedico For forward compatibility, make metadata_overlay pass any additional positional and keyword parameters into the super constructor. pym/cache/sqlite.py 5434 zmedico For bug #159518, increase the "database is locked" timeout. pym/cache/util.py 5483 zmedico For bug #160893, ignore a KeyError during cache cleansing since that key isn't wanted anyway. pym/cache/volatile.py 5394 zmedico Make _setitem do a deepcopy just in case. pym/cvstree.py 5594 antarus Begin the deprecation of the string module pym/dbapi (Added) 5450 genone Allow - in elog module names 5451 genone undo pym/dbapi/__init__.py (Added) pym/dbapi/binpkg.py (Added) pym/dbapi/ebuild.py (Added) pym/dbapi/fake.py (Added) pym/dbapi/vardb.py (Added) 5450 genone Allow - in elog module names pym/eclass_cache.py 5583 antarus Fix broad except statement, should only be KeyError pym/elog_modules/mod_save_summary.py 5363 genone List package in summary logfile pym/elog_modules/mod_syslog.py 5490 genone Add new eqawarn function and QA loglevel to be used for QA messages pym/emergehelp.py 5404 zmedico Update emerge --metadata docs for more clarity. 5593 zmedico Remove a duplicate % character. pym/getbinpkg.py 5453 zmedico Use os._exit instead of sys.exit in a forked child process. 5454 zmedico Make sure stderr is flushed since os._exit doesn't flush stdio buffers. 5458 zmedico When fetching metadata from a binhost, reconnect if the http server closes the connection before sending a valid response. Thanks to ranger for reporting. 5459 zmedico Make sure that myid is defined for the previous commit. 5585 antarus getbinpkg.py fix except: open can be IOERror or OSError and cPickle can throw an unpicklingError 5586 antarus EOFError is also important according to Zac 5594 antarus Begin the deprecation of the string module 5598 zmedico Use startswith and endswith to simplify code. 5599 zmedico Fix typos from the previous commit. pym/portage.py 5362 antarus startime is set up in treewalk, so no need to do it globally... 5364 genone disable display of elapsed time for collision-protect as it's for benchmarking purposes and useless to most people. 5365 antarus More Docstrings in portage.py 5366 antarus move actionmap_deps out of global scope and into doebuild where it is actually used, add docstrings to config class in the meantime. 5370 antarus More code cleanup, packagetree appears to be completely unused, so lets remove it in favor of inheriting from object 5371 antarus Docstrings for doebuild 5372 antarus cptot appears to be unused, punting it along with this commented out function, it appears to be unused as well. 5382 zmedico Clone cached match results before returning them from portdbapi.xmatch(). Thanks to Brian for reporting this issue. 5383 zmedico Make bindbapi.aux_get() selectively cache metadata in order to optimize dep matching (like portdbapi does). 5384 zmedico Make sure that bindbapi makes EAPI correctly default to 0 in all possible cases. 5385 antarus more docstrings.. 5386 antarus Docstrings for mergeme... 5398 zmedico Allow dep_check to use the global db for compatibility (fixes python-updater breakage). 5402 zmedico Use a pickle to cache vdb metadata. This greatly improves the performance for loading the vdb when the buffer cache is cold. 5403 zmedico Make portdbapi.flush_cache() consistent with vardbapi.flush_cache(). 5405 zmedico Allow the list of keys cached by the vardb to change without forcing a cache version bump. 5406 zmedico Make vartree.getslot() use the dbapi for aux_get caching. 5407 zmedico Make vardbapi.cpv_counter() use aux_get for caching. 5409 zmedico For bug #159295 and python-2.3 compatibility, don't assume that dict.update can use an iterable. 5414 zmedico Do some minor cleanup in the dep_zapdeps downgrade avoidance logic (while working toward a fix for bug #159360). 5419 zmedico For bug #159360, make sure that the highest available new-style virtual is selected even if it has depes that aren't already installed. 5421 zmedico Be slightly more defensive when loading the vdb/blockers caches. 5422 zmedico Improve the logic for bug #159360 to ensure that an actual upgrade is selected without any downgrades. 5428 zmedico For bug #151326, prevent invalid comments from being returned by portage.getmaskingreason(). 5429 zmedico Correct the package.mask lookup order in getmaskingreason(). 5430 zmedico For bug #141361, use an alarm signal to implement a 1 minute timeout for processing inside an elog module. 5431 zmedico Use a try/finally block to ensure that the alarm will always be cancelled appropriately. 5432 zmedico Use return values instead of direct sys.exit(123) calls when a merge fails. 5433 zmedico Send errors in elog_process() to stderr via writemsg. 5437 zmedico Use slot atom matching to simplify detection of downgrades relative to installed packages. 5440 zmedico For bug #159638, fix the UnboundLocalError in vartree.getprovide(). 5441 zmedico Fix the writemsg noiselevel from the previous commit. 5443 zmedico Don't bother to list the contents of directories before they are unmerged since it triggers unnecessary stat calls. Thanks to James Cloos for reporting. 5444 zmedico Optimize dep_zapdeps to work without a vartree when called by repoman. 5448 zmedico Try to create DISTDIR before disabling fetch due to it's nonexistence. Thanks to astinus for reporting. 5449 vapier add support for scanning of build logs for common issues #111436 5450 genone Allow - in elog module names 5452 zmedico When using the spawn's returnpid parameter, manually remove the returned pids from portage_exec.spawned_pids. 5457 zmedico Export EBUILD_PHASE="" when running misc-function.sh in order to prevent bogus phase values coming from ${T}/environment. Thanks to solar for reporting. 5464 zmedico For python-2.3 compatibility, don't pass an iterable into dict.update(). 5478 zmedico Don't swallow an IOError if it is thrown from the aux_get call in portdbapi.getfetchlist(). 5495 zmedico Split PORTAGE_ELOG_CLASSES outside the loop for better efficiency. 5496 zmedico Make digestgen() force fetch unless all required digest types are available. Thanks to jokey for reporting on irc. 5499 zmedico For bug #161103, don't skip collision-protect checks in cases where the beginning of the file path matches a symlink but is not acually inside a symlinked directory (check the path against symlink + os.path.sep). 5502 zmedico For bug #161003, disallow virtuals in package.provided and document it. Thanks to Robin Johnson for the initial patch. 5508 genone make.globals has no business in profiles 5509 genone create symlinks to html documentation if DOC_SYMLINK_DIR is set, original patch by TGL (bug #67130) 5511 genone Always use vercmp for cpv comparisons 5512 genone Stupid me, shouldn't jsut move a part of the patch 5551 genone Make FEATURES=test imply USE=test 5554 zmedico Use dict.get() to prevent a potential (bug unlikely) KeyError. 5578 zmedico Fix ebuild environment color.map support so that it works properly through exec calls (since the color variables can not be directly exported due to env pollution). 5580 zmedico For bug #147512, don't print a cryptic error message when an EnvironmentError occurs. Also, allow the user to get a traceback via --debug. 5587 antarus os.cwd can return OSError (maybe IOError with wrong perms for ./, will test actually), load_mod should be IMportError, nuke a stupid try except around shuffle which used to break years ago with old glibcs, remove try except around what appears to be a regex? and make the try except around the unlink a bit cleaner 5588 antarus FIx a bunch of random Except: statements in portage.py, most of them are IO/OS related 5589 zmedico Return early from finddigest if findname2 found nothing. 5592 zmedico Fix incremental virtuals code for the new stricter catpkgsplit behavior. 5604 antarus purge string from portage.py, fix minor bug in portage_util 5608 zmedico Fix more typos. 5620 antarus remove the last of the string module from portage.py 5633 antarus fix tabs with patch from Grobian and bug # 161911, fix developing a bit 5634 zmedico Fix 'TypeError: not all arguments converted during string formatting'. Thanks to marienz. 5635 zmedico Fix reversed arguments. 5647 zmedico Don't warn about /etc/make.profile not being a symlink if it has a parent file. pym/portage_const.py 5486 genone Make PORTAGE_BASE_PATH dynamic based on __file__ 5493 antarus This file apparently uses spaces to line everything up pretty (I have weird tabs set, so spacies are good :P) pym/portage_data.py 5387 zmedico Drop the warning messages for users that aren't in the portage group since tpordbapi now correctly puts the on-disk cache into readonly mode in this case (and allows metadata generation in-memory if necessary). 5390 zmedico Make sure that portage_group_warning() will be shown even in quiet mode. 5461 zmedico As a workaround for bug #147625, spawn `id -g portage` in order to get a list of groups for the portage user without the need to call grp.getgrall(). 5462 zmedico Use -G instead of -g (typo from the previous commit). pym/portage_dep.py 5511 genone Always use vercmp for cpv comparisons 5512 genone Stupid me, shouldn't jsut move a part of the patch 5513 genone Attach the problematic data to the exception for debugging 5514 genone Make the =* operator more robust 5515 genone Documenting the loop a bit 5516 genone =* operator sucks 5517 genone also sanitize mycpv for =* handling 5518 genone minor performance improvement 5519 genone I hate this thing 5520 zmedico Minor fixes for the =* operator (I hope we're done now :). 5521 zmedico Use startwith to simplify =* matching. 5563 antarus elaborate a bit on isjustname() 5571 antarus Handle the exception in isvalidatom, change it to use a portage exceptoin, thanks to Zac for pointing this out 5581 antarus Change vercmp to use int() instead of string atoi, catch ValueError in pkgcmp 5584 antarus comment the excepts in a few places 5595 antarus more string deprecation 5602 antarus another annoy space bug pym/portage_exception.py 5546 genone Don't escape strings in PortageException as that breaks newline handling (bug 147785) 5553 zmedico Use isinstance(foo, basestring) so that it can work with unicode strings too. pym/portage_exec.py 5455 zmedico Make sure stderr is flushed since os._exit doesn't flush stdio buffers. 5584 antarus comment the excepts in a few places pym/portage_locks.py pym/xpak.py 5595 antarus more string deprecation pym/portage_update.py 5591 zmedico Prevent an InvalidData exception during global updates due to the new stricter catpkgsplit behavior. pym/portage_util.py 5548 genone Extend ignore filter for grablines (bug #144445) 5550 genone continue is only for loops 5556 antarus docs for grabdict 5595 antarus more string deprecation 5604 antarus purge string from portage.py, fix minor bug in portage_util 5609 zmedico Fix another typo. pym/portage_versions.py 5568 antarus Valid categories in catpkgsplit 5570 antarus Fix comments for catpkgsplit 5571 antarus Handle the exception in isvalidatom, change it to use a portage exceptoin, thanks to Zac for pointing this out 5572 antarus learn to spell 5573 antarus SpanKY likes the latin categories 5574 zmedico Use a global to ensure that the valid_category regex is cached. 5577 zmedico Allow catpkgsplit to be less strict for atoms that come from installed packages (for backward compatibility). 5581 antarus Change vercmp to use int() instead of string atoi, catch ValueError in pkgcmp 5582 antarus portage_versions.py, more string.atoi -> int, fix another except: that should be ValueError 5584 antarus comment the excepts in a few places 5595 antarus more string deprecation tests/__init__.py 5522 antarus rework test import code, rename test_vercmp to be more generic, add tests for =* glob matches 5525 antarus Take Genone's suggestion and break the modules up into module oriented fashion. Tests for portage.py go in portage/ and so on and so forth... 5532 zmedico Fix module loading. 5537 antarus Add a bit of path mangling to allow deeper tests 5538 antarus remove bogs test dir, add portage_versions 5540 antarus more test re-arranging as Alec can't read what functions are in what files 5541 zmedico Remove / character from module names. tests/portage (Added) tests/portage_util (Added) 5525 antarus Take Genone's suggestion and break the modules up into module oriented fashion. Tests for portage.py go in portage/ and so on and so forth... 5613 antarus ignore py[co] in tests tests/portage/__init__.py (Added) tests/portage_util/__init__.py (Added) 5525 antarus Take Genone's suggestion and break the modules up into module oriented fashion. Tests for portage.py go in portage/ and so on and so forth... 5596 antarus set Id on tests tests/portage/test_atoms.py 5526 antarus shift test cases around 5528 antarus rename atoms back to vercmp tests/portage/test_atoms.py (from /main/trunk/tests/test_atoms.py:5524) (Added) tests/portage_util/test_util.py (from /main/trunk/tests/test_util.py:5523) (Added) 5525 antarus Take Genone's suggestion and break the modules up into module oriented fashion. Tests for portage.py go in portage/ and so on and so forth... tests/portage/test_match_from_list.py (Added) 5527 antarus shift test cases around 5540 antarus more test re-arranging as Alec can't read what functions are in what files tests/portage/test_vercmp.py (Removed) tests/portage_versions/test_vercmp.py (from /main/trunk/tests/portage/test_vercmp.py:5528) (Added) 5537 antarus Add a bit of path mangling to allow deeper tests tests/portage/test_vercmp.py (from /main/trunk/tests/portage/test_atoms.py:5526) (Added) 5528 antarus rename atoms back to vercmp tests/portage_dep (Added) 5540 antarus more test re-arranging as Alec can't read what functions are in what files 5613 antarus ignore py[co] in tests tests/portage_dep/__init__.py 5596 antarus set Id on tests tests/portage_dep/__init__.py (from /main/trunk/tests/portage/__init__.py:5536) (Added) tests/portage_dep/test_match_from_list.py (from /main/trunk/tests/portage/test_match_from_list.py:5536) (Added) 5540 antarus more test re-arranging as Alec can't read what functions are in what files tests/portage_dep/test_dep_getcpv.py (Added) 5561 antarus I owed brian harring 3.50, for th previous advice about assertEqual/NotEqual, oh, add dep_getcpv tests too 5566 antarus add some invalid ops to getcpv to make sure it returns the cpv still 5596 antarus set Id on tests 5633 antarus fix tabs with patch from Grobian and bug # 161911, fix developing a bit tests/portage_dep/test_dep_getslot.py (Added) 5562 antarus getslot tests 5596 antarus set Id on tests 5633 antarus fix tabs with patch from Grobian and bug # 161911, fix developing a bit tests/portage_dep/test_get_operator.py (Added) 5558 antarus get_operator tests 5559 antarus add some invalid operators to the test to denote that get_operator doesn't validate them, also make sure some common mis-typed things are tested (=> instead of >= fex) 5560 antarus take some advice and use AssertEqual/NotEqual 5596 antarus set Id on tests tests/portage_dep/test_isjustname.py (Added) 5564 antarus isjustname tests 5596 antarus set Id on tests 5633 antarus fix tabs with patch from Grobian and bug # 161911, fix developing a bit tests/portage_dep/test_isvalidatom.py (Added) 5557 antarus Commit unit tests, hey look THEY ARE BROKEN 5560 antarus take some advice and use AssertEqual/NotEqual 5567 antarus print the incorrect atom 5569 antarus catch and validate new ValueError Exception 5571 antarus Handle the exception in isvalidatom, change it to use a portage exceptoin, thanks to Zac for pointing this out 5596 antarus set Id on tests 5633 antarus fix tabs with patch from Grobian and bug # 161911, fix developing a bit tests/portage_dep/test_match_from_list.py 5560 antarus take some advice and use AssertEqual/NotEqual 5596 antarus set Id on tests tests/portage_util/test_grabdict.py (Added) 5557 antarus Commit unit tests, hey look THEY ARE BROKEN 5596 antarus set Id on tests tests/portage_util/test_normalizedPath.py (Added) tests/portage_util/test_stackDictList.py (Added) 5529 antarus split out util tests 5560 antarus take some advice and use AssertEqual/NotEqual 5596 antarus set Id on tests tests/portage_util/test_stackDicts.py (Added) 5529 antarus split out util tests 5547 antarus More portage_util tests 5560 antarus take some advice and use AssertEqual/NotEqual 5596 antarus set Id on tests tests/portage_util/test_stackLists.py (Added) 5529 antarus split out util tests 5549 antarus add stack_lists checks 5560 antarus take some advice and use AssertEqual/NotEqual 5596 antarus set Id on tests tests/portage_util/test_uniqueArray.py (Added) tests/portage_util/test_varExpand.py (Added) 5529 antarus split out util tests 5547 antarus More portage_util tests 5596 antarus set Id on tests tests/portage_util/test_util.py 5529 antarus split out util tests 5530 antarus remove monolithic test tests/portage_versions (Added) 5537 antarus Add a bit of path mangling to allow deeper tests 5613 antarus ignore py[co] in tests tests/portage_versions/__init__.py (Added) 5537 antarus Add a bit of path mangling to allow deeper tests 5596 antarus set Id on tests tests/runTests 5533 zmedico Fix sys.path so that imports work correctly. tests/test_atoms.py 5523 zmedico Make the tests pass. 5524 antarus Fix Fail test 5525 antarus Take Genone's suggestion and break the modules up into module oriented fashion. Tests for portage.py go in portage/ and so on and so forth... tests/test_atoms.py (from /main/trunk/tests/test_vercmp.py:5488) (Added) tests/test_vercmp.py (Removed) 5522 antarus rework test import code, rename test_vercmp to be more generic, add tests for =* glob matches tests/test_util.py 5522 antarus rework test import code, rename test_vercmp to be more generic, add tests for =* glob matches 5525 antarus Take Genone's suggestion and break the modules up into module oriented fashion. Tests for portage.py go in portage/ and so on and so forth... ============================================================================= 2.1.2_rc4 2006-12-22 trunk revision 5359 ============================================================================= NEWS cnf/make.conf 5325 genone New elog modules for dismerging messages into a single file/mail bin/ebuild.sh 5244 zmedico For bug #157369, clean when cleanup has been triggered by changed timestamps. Also, allow FEATURES=keepwork to override the ebuild mtime check. 5302 zmedico For bug #158177, force configure scripts that automatically detect ccache to respect FEATURES="-ccache". Thanks to Horst Schirmeier for this suggestion. 5306 vapier remove pointless redirects to /dev/null when using hasq() 5307 vapier force environment.bz2 to be clobbered if it already exists 5347 zmedico Fix the "help" phase so that it works without build dirs. 5350 zmedico Use a pipe instead of a temp file for the depend phase. 5358 zmedico Fix inverted EAPI default logic. bin/emerge 5231 zmedico Go ahead and populate depgraph.mydbapi even when --emptytree is enabled since it doesn't matter anymore (dep_check now returns all deps anyway). 5232 zmedico Move the reset of the per-root initializations into the loop. 5233 zmedico Remove unused depgraph.match() method. 5234 zmedico Use tuples for digraph nodes in order to avoid lots of pointless join and split calls. 5235 zmedico Split some global updates functions out of depgraph and use them for depclean when necessary. 5245 zmedico This patch cleans up the blocker validation logic. Unlike the previous implementation, this one carefully considers each parent/block package relationship in order to ensure that no unresolved blocks slip through. 5246 zmedico Don't attempt to enforce merge order unless the blocker parent is actually a "merge" node. 5247 zmedico Escape a newline from the previous commit. 5248 zmedico For bug #128809, process blockers for all installed packages. Due to the performance penalty incurred by additional dep_check calls, this is only enabled with the --deep option. 5255 zmedico For bug #128809, optimize dep_check calls and enable the blocker detection by default since the performance now seems acceptable. 5256 zmedico Make sure the SLOT comes from the vardb instead of the portdb (for multislot, etc..). Thanks to jakub for reporting. 5266 zmedico Ignore blockers when "--buildpkgonly" is enabled. 5267 zmedico Ensure that the root of the vdb exists before attempting to lock it. Thanks to Flameeyes for reporting. 5268 zmedico When there are multiple packages occupying the same slot, only consider the one with the highest COUNTER. Thanks to leio for reporting. 5269 zmedico Fix a typo from the previous commit. 5270 zmedico For bug #157823, don't forget to split the USE. 5272 zmedico For bug #157823, ignore blocker collisions between two packages that are already installed if no merge is currently scheduled for either of those package slots. These blockers will be handled as necessary the next time that a merge of either package is triggered. 5275 zmedico Centralize all of the vardb metadata mangling in FakeVartree. 5276 zmedico Store dependency metadata in depgraph.mydbapi so that it can be used in place of the portdb for optimized dep_check calls in depgraph.validate_blockers(). 5277 zmedico Optimize dep_check calls in depgraph.validate_blockers() by using a fakedbapi instance instead of the real pordbapi (minimizes available matches). 5278 zmedico For higher efficiency, call self.__int__() instead of int(self). 5279 zmedico For bug #157897, only let depgraph.create() inject "merge" nodes into the final state dbapi. 5280 zmedico For bug #157897, ensure that only "merge" nodes are stored in digraph.pkg_node_map. 5282 zmedico Track slot atom to digraph node mappings as the depgraph is built. This mapping will be used to detect node collisions for bug #157897. 5283 zmedico Remove redundant digraph.pkg_node_map node insertions. Once per digraph.create() call will cover all nodes. 5285 zmedico For bug #157897, handle the case of multiple versions within a single package slot have been pulled into the dependency graph. If possible, the package that has already been pulled in will be reused. Otherwise, an error message will advise the user to mask an unwanted version. 5286 vapier handle --cols when displaying blockers 5287 zmedico For bug #157897, add slot collision handling in depgraph.create(), since create() is called from places other than select_dep(). 5288 zmedico Fix a typo from the previous commit. 5289 zmedico Update the comment about depgraph.pkg_node_map since it now maps all nodes added to the graph. 5290 zmedico Use depgraph.pkg_node_map so simplify comparison against existing nodes at the beginning of depgraph.create(). 5291 zmedico Fix the --onlydeps conditional logic in depgraph.create(). These aren't real nodes and shouldn't be added to the digraph, etc... 5292 zmedico Remove redundant priority handling since that's always handled in select_dep() for nodes that have parents. 5293 zmedico Remove pointless unpacking of the parent node. 5294 zmedico Make --columns blockers output more consistent when --quiet is not enabled. 5296 zmedico Cache blocked slots for better efficiency. 5297 zmedico For bug #157897, show parent nodes in order to help the user decide about what action to take. 5304 zmedico Make dep_check validate all depstring atoms in order to prevent problems from occuring later due to unexpected invalid atoms. 5308 zmedico In depgraph.altlist(), pop as many leaf nodes as possible when no relationship has been ignored. This can halve the time taken for a large merge order calculation. 5309 zmedico Don't optimize depgraph.altlist() in reversed mode since the optimization destroys --tree ouput. 5310 zmedico Add a comment about the previous commit. 5311 zmedico Add --debug support for --depclean. 5312 zmedico Do some minor cleanup of the --depclean code. 5313 zmedico Make depclean skip empty depstrings. 5314 zmedico Disable the spinner when --debug is enabled so that it doesn't interfere. 5316 zmedico Catch PortageException from portdbapi.aux_get since it can happen when gpg is in FEATURES. 5317 zmedico Just start with an empty dict in dep_check_trees since nothing more is needed. 5318 zmedico For bug #158354, make "No" the default response for unmerge actions. 5321 zmedico For bug #158503, allow --nodeps to override blockers. 5322 zmedico For bug #158508, make --fetchonly display a list of packages for which the fetch phase failed. 5324 zmedico Use a separate digraph to store parent/child relationships (PDEPEND relationships are not reversed) so that relationship is always known in case a slot collision occurs. 5332 zmedico Give the user some advice whenever an invalid dependency string is encountered. 5333 zmedico Fix the invalid dependency message so there's no confusion about which package has the problem. 5335 zmedico Fix broken exception handling syntax causing strange exception reported in bug #158608. Thanks to grobian for help troubleshooting. 5337 zmedico For bug #158649, minimize portdb cache pulls for installed packages when --nodeps is enabled. This patch also allows the vardb lock to be released before doing any cache pulls (even when --nodeps is not enabled), and updates the spinner while the metadata is being pulled. 5339 zmedico For bug #158558, ignore invalid depstrings for packages that are being replaced anyway (otherwise the user would be forced to manually unmerge the package). 5340 zmedico When a removal phase fails, tell the user where the ebuild is and advise them that the ebuild can be removed in order to skip the removal phases. 5341 zmedico For installed packages with invalid depstrings, tell the user the location of the *DEPEND files. 5346 zmedico Make emerge enable backward compatibility mode for dep_check() calls on installed packages so that it can gracefully invalid atoms or dep syntax. 5348 zmedico For bug #158649, allow --buildpkgonly to bypass the fakedb population like --nodeps does. 5349 zmedico Revert the default choice for --ask --unmerge (bug #158354) because people are complaining. bin/misc-functions.sh 5238 genone adjust QA_* variable names for complex values of like x86-fbsd bin/repoman 5228 zmedico Remove all traces of FEATURES=cvs since code for that feature no longer exists (apparently since portage-2.1). 5240 zmedico Use portage.isvalidatom() for atom validation in repoman. 5243 zmedico Clean up depstring/atom splitting and filtering. 5264 zmedico Add an allow_blockers parameter to isvalidatom so that the behavior is optional. Thanks to Brian Harring for the suggestion. 5301 zmedico Make repoman cache per-profile xmatch results. man/make.conf.5 5228 zmedico Remove all traces of FEATURES=cvs since code for that feature no longer exists (apparently since portage-2.1). pym/cache/flat_hash.py 5354 zmedico When an unprivileged user runs portage (not in the portage group), use metadata_overlay together with a volatile in-memory cache module in order to implement cache writes. This allows, for example, a user who's not in the portage group to run `ebuild foo.ebuild digest` (issue reported by Charlie Shepherd ). pym/cache/metadata_overlay.py 5338 zmedico More intelligently handle CacheCorruption errors in the writable cache. 5354 zmedico When an unprivileged user runs portage (not in the portage group), use metadata_overlay together with a volatile in-memory cache module in order to implement cache writes. This allows, for example, a user who's not in the portage group to run `ebuild foo.ebuild digest` (issue reported by Charlie Shepherd ). 5356 zmedico Pass a cache instance into metadata_overlay since it doesn't have enough information to construct one itself. 5357 zmedico Make metadata_overlay use the autocommits attribute of the underlying database. pym/cache/volatile.py (Added) 5355 zmedico Add volatile cache module missing from the previous commit. pym/elog_modules/mod_mail_summary.py (Added) 5325 genone New elog modules for dismerging messages into a single file/mail 5343 zmedico For bug #158658, fix the 'TypeError: int argument required' that happens in the finalize() routine. pym/elog_modules/mod_save_summary.py (Added) 5325 genone New elog modules for dismerging messages into a single file/mail 5329 zmedico Fix an import statement typo. pym/portage.py 5229 zmedico Clean up vardbapi.aux_get(). 5230 zmedico Remove locking from dbapi.aux_update() implementations so that the caller can handle locking instead. 5236 zmedico Fix broken SLOT update logic in fakedbapi.cpv_inject(). 5237 zmedico Fix a type from the previous commit. 5239 zmedico Add use.force support to dep_check for repoman especially. Thanks to Flameeyes for reporting and tesing. 5249 zmedico Avoid unnecessary dbapi.cp_list() calls inside cpv_expand(). 5252 zmedico Use dep_getcpv() inside dep_expand() for code sharing and caching. 5253 zmedico Cache the results of fakedbapi.match() calls and clear the cache automatically when necessary. 5254 zmedico Initialize the match cache in the bindbapi constructor. 5267 zmedico Ensure that the root of the vdb exists before attempting to lock it. Thanks to Flameeyes for reporting. 5273 zmedico Make the fetch phase bail out if FETCHCOMMAND or RESUMECOMMAND are missing. Thanks to Flameeyes for reporting. 5274 zmedico All portage.fetch() to succeed even if FETCHCOMMAND and RESUMECOMMAND aren't defined. 5281 zmedico Move the biolerplate cpv_all() implementation from portdbapi to dbapi. 5298 zmedico Cache KEYWORDS and EAPI metadata values in order to speed up portdbapi.gvisible() calls. This greatly improves repoman performance (help emerge a little too). 5299 zmedico Make sure eapi is defined in order to prevent a NameError. 5300 zmedico Split ACCEPT_KEYWORDS before entering the loop for better efficiency. 5304 zmedico Make dep_check validate all depstring atoms in order to prevent problems from occuring later due to unexpected invalid atoms. 5305 zmedico Make use_reduce raise an InvalidDependString exception for use? conditionals that aren't followed by parenthesis and add appropriate exception handling in dep_check. 5315 zmedico Make portdbapi cache SLOT in addition to EAPI and KEYWORDS in order to further optimize dep matching/selection. 5323 zmedico Increase cache hits in portdbapi.xmatch(). 5325 genone New elog modules for dismerging messages into a single file/mail 5326 zmedico Make binarytree.move_ent() properly update PF. 5327 zmedico For bug #158558, fix broken ebuild rename logic in vardbapi.move_ent(). 5328 zmedico For bug #158558, make the unmerge phase do automatic cleanup for broken vardbapi.move_ent() in portage versions before 2.1.2. 5330 zmedico For bug #158608, don't attempt to use distlocks when it's detected that the filesystem is readonly (unless "skiprocheck" is in FEATURES for some strange reason). 5331 zmedico Add missing newlines to the warning message that's printed when the user has distlocks enabled together with skiprocheck and the filesystem is readonly. 5340 zmedico When a removal phase fails, tell the user where the ebuild is and advise them that the ebuild can be removed in order to skip the removal phases. 5342 zmedico For bug #158632, make aux_get caching safe for missing values in cache entries. 5344 zmedico Use the return value from setdefault to avoid an extra dict lookup. 5345 zmedico Create a backward compatibility mode for dep_check() so that emerge can use it to gracefully deal with installed packages that have invalid atoms or dep syntax. 5347 zmedico Fix the "help" phase so that it works without build dirs. 5350 zmedico Use a pipe instead of a temp file for the depend phase. 5353 antarus Remove two old functions, appear to be relics from 2.0.X branch, no longer used by portage or gentoolkit or esearch 5354 zmedico When an unprivileged user runs portage (not in the portage group), use metadata_overlay together with a volatile in-memory cache module in order to implement cache writes. This allows, for example, a user who's not in the portage group to run `ebuild foo.ebuild digest` (issue reported by Charlie Shepherd ). 5356 zmedico Pass a cache instance into metadata_overlay since it doesn't have enough information to construct one itself. 5359 zmedico Combine two default EAPI settings in portdbapi.aux_get(). pym/portage_dep.py 5241 zmedico Make isvalidatom() (and thus repoman) reject atoms containing |() characters. Thanks to Brian Harring for the suggestion. 5242 zmedico Add ? to the invalid atom characters. 5250 zmedico Cache the results of match_from_list() calls. 5251 zmedico Cache results of dep_getcpv() calls. 5260 zmedico To minimize memory consumption and maximize performance, use hash values for cache keys. 5262 zmedico Don't collapse the tuple into a hash, since dict can use __eq__ to avoid problems with hash collisions. Thanks to Brian Harring for reporting. 5263 zmedico For bug #157734, fix repoman isvalidatom() checks. Thanks to Brian Harring for the patch. 5264 zmedico Add an allow_blockers parameter to isvalidatom so that the behavior is optional. Thanks to Brian Harring for the suggestion. 5305 zmedico Make use_reduce raise an InvalidDependString exception for use? conditionals that aren't followed by parenthesis and add appropriate exception handling in dep_check. 5345 zmedico Create a backward compatibility mode for dep_check() so that emerge can use it to gracefully deal with installed packages that have invalid atoms or dep syntax. pym/portage_exec.py 5351 antarus I hate docstrings pym/portage_update.py 5303 zmedico Fix global updates error handling to prevent a traceback with python-2.5 as reported in bug #158264. ============================================================================= 2.1.2_rc3 2006-12-08 trunk revision 5227 ============================================================================= bin/dispatch-conf 5136 zmedico For bug #8423, make dispatch-conf preserve timestamps when possible. bin/ebuild 5169 zmedico For `ebuild --force digest`, exempt the depend phase from Manifest checks. 5201 zmedico For bug #157393, fix up ebuild path normalization so that it's compatible with portdbapi handling and works properly with symlinks (like crossdev creates). 5202 zmedico Make sure the ebuild path is properly normalized. bin/ebuild.sh 5142 solar - make sure QUIET mode is exported to the environment properly when using -q mode. bin/emerge 5085 zmedico For bug #155559, force depclean dep_check calls to preference installed packages. 5086 zmedico Use fake_vardb for cached aux_get calls. 5092 zmedico Use mydbapi is None to eliminate the return_all_deps parameter from dep_check and dep_zapdeps. The result is the same and this way we avoid having an additional parameter with overlapping meaning. 5095 zmedico For depclean, just pass in None for mydbapi (instead of an empty fakedbapi instance) since that's now supported. 5096 zmedico Remove redundant package.provided handling that is now covered by dep_wordreduce. 5097 zmedico Remove more redundant package.provided handling that is now covered by dep_wordreduce. 5101 zmedico Allow the ROOT setting to come from make.conf. Thanks to Daniel Barkalow for this patch (submitted on the gentoo-portage-dev mailing list). 5105 zmedico For bug #155739, only check if a dep is in the args when myroot == self.target_root. 5106 zmedico Print a warning message if a user requests a package from package.provided (since it won't be merged). 5107 zmedico Enable PORTAGE_CONFIGROOT to be set via an new --config-root option. Thanks to Daniel Barkalow for the initial patch (submitted on the gentoo-portage-dev mailing list). 5118 zmedico Fix a KeyError in emerge --info when there is no matching ebuild in the tree. Thanks to Bo ?\195?\152rsted Andresen for reporting. 5122 zmedico For bug #156014, always round up the next kB so that it doesn't show 0 kB when some small file still needs to be fetched. 5173 zmedico For bug #157134, make `emerge --digest` automatically reload the config with FEATURES=digest enabled globally. 5174 zmedico Fix up mtimedb["ldpath"] references broken by the previous commit. 5180 zmedico Remove unused depgraph.is_newer_ver_installed() method. 5184 zmedico Remove dependence on the vartree api by using equivalent vardbapi calls. 5185 zmedico Only call calc_changelog if there is an installed version in the same slot. 5189 zmedico Use a fake vartree for depgraph calculations. This minimizes the time that a lock needs to be held on the vardb, and allows in-memory global updates when necessary. 5190 zmedico Delete the depgraph when it's no longer needed. 5191 zmedico Use FakeVartree for vardb lock/cache during depclean. 5192 zmedico Allow depclean to silently skip packages unmerged behind it's back. 5193 zmedico Fix depclean so the fake vartree is used in dep_check calls. 5194 zmedico Always silently ingnore missing packages during unmerge. 5195 zmedico Remove all traces of the unmerge raise_on_missing parameter. 5196 zmedico Fix indentation. 5206 zmedico Share the same config instance between portagetree and portdbapi instances since clone isn't needed here. Also, trigger population of virtuals prior to cloning in emerge. This reduces the number of times the virtuals are populated from 3 to just 1. 5207 zmedico Enable FakeVartree to populate the virtuals so that the vdb doesn't have to be scanned separately. 5211 zmedico s/zip/izip/ Thanks to Brian Harring for the suggestion. 5216 genone Allow searching for action terms again 5218 zmedico Avoid bogus 'Deprecated use of action' warnings for valid commands such as `emerge -s sync`. 5219 zmedico Simplfy deprecated action parsing logic. 5220 zmedico For bug #157370, make `emerge --regen` cleanse stale cache entries. 5221 zmedico Delete the exception object after use. 5222 zmedico Break out of the loop if a CacheError occurs. bin/emerge-webrsync 5154 zmedico For consistent behavior in all timezones, make emerge-webrsync use UTC time for decisions about which snapshots to download. bin/etc-update 5135 zmedico For bug #8423, make etc-update preserve timestamps when possible. bin/misc-functions.sh 5114 zmedico For bug #142993, make sure that chown and chgrp calls preserve S_ISUID and S_ISGID mode bits. 5143 solar - no point in forking a call to true when we can simply use the bash internal of : for true 5164 vapier drop RESTRICT=stricter since every aspect it covers can be handled properly via other means bin/repoman 5167 zmedico Make `repoman fix` work with the new ebuild Manifest checks during depend phase. 5200 zmedico Make repoman bail out if it's unable to generate the Manifest. make.conf.txt (Added) 5146 genone add ReST template to be used for manpage/make.globals/make.conf.example generation later on 5147 genone fix a few docutils errors 5148 genone use a link in CXXFLAGS section (the typo caused it to be a target) 5216 genone Allow searching for action terms again man/ebuild.5 5168 zmedico Update the RESTRICT=binchecks docs. Thanks to jakub for the suggestion and antarus for the patch. pym/portage.py 5088 zmedico Fix portdbapi.cpv_all() so that it actually returns a list of all available ebuilds. 5092 zmedico Use mydbapi is None to eliminate the return_all_deps parameter from dep_check and dep_zapdeps. The result is the same and this way we avoid having an additional parameter with overlapping meaning. 5093 zmedico Allow dep_wordreduce to mark things satisfied by package.provided even when mydbapi is None. 5101 zmedico Allow the ROOT setting to come from make.conf. Thanks to Daniel Barkalow for this patch (submitted on the gentoo-portage-dev mailing list). 5114 zmedico For bug #142993, make sure that chown and chgrp calls preserve S_ISUID and S_ISGID mode bits. 5121 zmedico For bug #150585, stack package.keywords incrementally so that -keyword works as expected for any incremental variable. This brings the gvisible and getmaskingstatus logic into sync so that the confusing (masked by: ) message will not be generated in cases where package.keywords contains -keyword followed by keyword. 5123 zmedico Allow -keyword to be matched since some ebuilds use it. Thanks to Brian Harring reporting on bug #150585. 5129 zmedico For bug #8423, allow the merge phase to overwrite untouched config files and also allow the unmerge phase to unmerge untouched config files. 5133 zmedico Never overwrite an untouched config file and trigger config protection instead (in case the new config has an unwanted change). In cases where an installed package in the same slot owns a protected file that will be merged, bump the mtime on the installed file in order to ensure that it isn't unmerged. Thanks to Ciaran McCreesh for his suggestion on bug #8423, comment #40. 5134 zmedico Update the dblink.isprotected() docstring. 5150 zmedico Always verify the ebuild checksums before executing it. Thanks to solar for the suggestion and antarus for the initial patch. 5151 zmedico For manifest and digest phases, use a global variable to temporarily exempt the depend phase from manifest checks (in cache regeneration is triggered). 5152 zmedico Temporarily exempt the depend phase during the help phase also. 5153 zmedico Avoid checking the same Manifest several times in a row during a regen with an empty cache. 5155 zmedico Only attempt to verify the Manifest if the ebuild is actually in a portage tree. 5156 zmedico Make sure that *all* of the ebuilds are listed in the Manifest. 5157 zmedico Make sure that all depend phases triggered by the digest phase are exempt from digest checks. 5159 zmedico Skip digest checks when digest is in features. 5160 zmedico Make portage.digestgen() automatically exempt the depend phase from Manifest checks so that it works for repoman without triggering a digest verification failure. 5161 zmedico Move the global statement out of the try block so that it's clearly in scope for the finally block. 5166 zmedico When portdbapi.aux_get() generates a KeyError in portage.getmaskingstatus(), handle it by reporting "corruption". 5171 zmedico Use portage.chdir() instead of os.chdir() in order to avoid an 'OSError: [Errno 2] No such file or directory' if the working directory doesn't exist. Thanks to Caster for reporting. 5178 zmedico Implement fakedbapi.aux_update(). 5197 zmedico For bug #157385, enable portage.digestgen() to fetch any distfiles for which there are no existing digests. 5198 zmedico Fix broken SRC_URI logic from the previous commit. 5199 zmedico Fix broken SRC_URI logic in doebuild. 5203 zmedico Fix the 'TypeError: not all arguments converted during string formatting' for bug #157385. 5206 zmedico Share the same config instance between portagetree and portdbapi instances since clone isn't needed here. Also, trigger population of virtuals prior to cloning in emerge. This reduces the number of times the virtuals are populated from 3 to just 1. 5207 zmedico Enable FakeVartree to populate the virtuals so that the vdb doesn't have to be scanned separately. 5209 zmedico Catch an exception instead of using a redundant os.access call. 5212 zmedico s/zip/izip/ some more pym/portage_dep.py 5175 zmedico Make match_to_list = behavior consistent with >= and <= for bug #152127. 5176 zmedico Sync match_to_list >=, <=, etc.. code with the new = code. 5204 zmedico Revert r5175 for bug #152127 since the original = behavior seems more desirable. We can change the >= and <= behavior instead. pym/portage_locks.py 5214 zmedico Make all lock files hidden for bug #142369. pym/portage_util.py 5114 zmedico For bug #142993, make sure that chown and chgrp calls preserve S_ISUID and S_ISGID mode bits. 5115 zmedico Fix apply_permissions logic for cases where mode is unspecified. 5116 zmedico Fix bit mask support when preserving S_ISUID and S_ISGID in apply_permissions. 5117 zmedico Really fix bit mask support when preserving S_ISUID and S_ISGID in apply_permissions. 5119 zmedico Use portage_data.lchown for compatibility. 5215 antarus minor syntax changes ( in is faster than has_key ) and docstrings pym/portage_versions.py 5205 zmedico For bug #152127, make vercmp give less value to implcit .0, so two versions that aren't literally equal are not ambiguously given the same value (in sorting, for example). 5208 antarus portage_versions lacks a header or copyright notice :x 5210 antarus A quick docstring for vercmp tests (Added) 5213 antarus Add pretty basic vercmp unit testing...need more cases tests/__init__.py (Added) 5213 antarus Add pretty basic vercmp unit testing...need more cases 5217 antarus add some portage_util tests 5227 zmedico Indicate test failure with an exit code. tests/runTests (Added) 5213 antarus Add pretty basic vercmp unit testing...need more cases 5227 zmedico Indicate test failure with an exit code. tests/test_util.py (Added) 5217 antarus add some portage_util tests tests/test_vercmp.py (Added) 5213 antarus Add pretty basic vercmp unit testing...need more cases 5217 antarus add some portage_util tests ============================================================================= 2.1.2_rc2 2006-11-17 trunk revision 5081 ============================================================================= NEWS 4779 zmedico Add news about new-style virtuals being usable for bootstrap deps on self. 4781 zmedico Add news about package.use in profiles and default USE in ebuilds via +flag in IUSE. 4800 zmedico Add news about ACCEPT_LICENSE and package.license. 4822 genone streamline portage pythonpath handling and add an override analog to how the bash side does it 4884 zmedico Rely on PYTHONPATH instead of PORTAGE_PYM_PATH for locating portage's python modules, then fall back to an explicit sys.path insertion if an ImportError occurs. 5081 zmedico Revert ACCEPT_LICENSE support, since license group support is a requirement and it remain unimplemented. This brings trunk back into sync with the 2.1.2 branch. bin/archive-conf 4822 genone streamline portage pythonpath handling and add an override analog to how the bash side does it 4884 zmedico Rely on PYTHONPATH instead of PORTAGE_PYM_PATH for locating portage's python modules, then fall back to an explicit sys.path insertion if an ImportError occurs. 4903 zmedico For bug #116616, only run the post_process phase if necessary. bin/chkcontents bin/clean_locks bin/emaint bin/env-update bin/fix-db.py bin/md5check.py bin/pkgname bin/portageq bin/regenworld bin/xpak 4822 genone streamline portage pythonpath handling and add an override analog to how the bash side does it 4884 zmedico Rely on PYTHONPATH instead of PORTAGE_PYM_PATH for locating portage's python modules, then fall back to an explicit sys.path insertion if an ImportError occurs. bin/dispatch-conf 4822 genone streamline portage pythonpath handling and add an override analog to how the bash side does it 4881 zmedico Just use stat instead of lstat for config protect, so that broken symlinks are just ignored. 4884 zmedico Rely on PYTHONPATH instead of PORTAGE_PYM_PATH for locating portage's python modules, then fall back to an explicit sys.path insertion if an ImportError occurs. 4887 zmedico Add support for frozen config files for which updates are automatically zapped. Thanks to Bo ?\195?\152rsted Andresen for the initial patch from bug #151685. 4901 zmedico For bug #129670, skip the replace-cvs and replace-wscomments tests if the diff exit code indicates two two binary files that differ. bin/dosed 4762 zmedico Make dosed use sed -i instead of a temp file. Thanks to Tim Cera for this patch from bug #152017. 4763 zmedico Fix sed options from the previous commit so that it doesn't create a backup file ending with "e". Thanks to grobian for spotting this issue. bin/ebuild 4822 genone streamline portage pythonpath handling and add an override analog to how the bash side does it 4848 zmedico Do not pass the "clean" parameter to doebuild since it causes ${T} to be cleaned up when it shouldn't be. Thanks to Mr_Bones_ for reporting. 4884 zmedico Rely on PYTHONPATH instead of PORTAGE_PYM_PATH for locating portage's python modules, then fall back to an explicit sys.path insertion if an ImportError occurs. bin/ebuild.sh 4700 zmedico Disable the ECLASS inherited illegally message during *rm phases since it gives false alarms (bug #150442). 4701 zmedico Use globing to match *rm phases from the last commit. 4920 zmedico Enable RESTRICT=ccache. Thanks to drizzt for reporting. 4922 zmedico Don't allow RESTRICT=ccache since it should work and if not then it's a bug that ought to be fixed. Thanks to vapier. 4929 zmedico Revert implicit rdepend behavior back to the way it was in portage-2.0.51. Thanks to vapier for the patch. The original change seems to have been an accidentally hunk (referencing bug #58819) that was committed to cvs along with another patch in revision 1.201.2.32 of ebuild.sh. bin/emerge 4683 zmedico Fix a KeyError triggered by blockers in depgraph.display() for bug #151331. 4697 zmedico Fix the USE flag handling in depgraph.display() for bug #151331, comment #5. 4698 zmedico This patch implements intelligent navigation around blockers in cases where the merge order can be adjusted (via hard deps) such that two mutually blocking packages aren't installed simultanously. This fixes bug #150879. 4699 zmedico Fix display of nomerge nodes and --tree for ROOT!=/. 4722 zmedico For bug #133908, prevent collisions in ${PKGDIR}/All/ by automatically bumping colliding packages to ${PKGDIR}/${CATEGORY}/ just before a collision would occur. Newly built packages are always stored in ${PKGDIR}/All/, should this be 100% compatible with previous behavior. 4726 zmedico When unable to navigate around blockers, add them back to the main digraph so that the --tree display can show them properly. This fixes the KeyError reported in comment #15 of bug #151331 4728 zmedico Remove blocker nodes from the digraph prior to the merge order calculation so that they don't trigger false circular dependencies as reported in comment #17 of bug #151331. 4729 zmedico Blockers that depend on merge order must be validated by depgraph.altlist(reversed=False) before the reverse tree is generated, since the validation won't work in reverse mode. 4730 zmedico Fix altlist blocker validation logic so that the correct nodes are added to the list when called in reverse mode. 4731 zmedico Always add blockers with priority=digraph.SOFT so that blockers with multiple parents can't trigger a circular deps panick. 4732 zmedico Make --depclean treat DEPEND as soft deps instead of forcing the user to have all build time deps installed. 4733 zmedico Use setdefault to avoid an extra dict lookup. 4735 zmedico Stack use.mask/package.use.mask together at each level of the profile for bug #151586, and do the same with use.force/package.use.force. 4738 zmedico Encapsulate altlist calls (for blockers that depend on merge order) in validate_blockers(). 4745 zmedico Add more dependency priority levels for merge order calculations. Previously, all installed deps were categorized at the same level with other soft deps. Now there are 3 priority levels for soft deps: satisfied buildtime, satisfied runtime, and other. 4746 zmedico Fix a typo in xrange arguments from the previous commit. 4747 zmedico Remove the unused system slot from DepPriority. 4748 zmedico Fix --usepkg --newuse logic so that it doesn't throw a KeyError if there's no matching ebuild in the tree. 4749 zmedico Add __weakref__ to __slots__ so that weakref support isn't disabled. 4750 zmedico Don't initialize __weakref__ in the DepPriority constructor. 4751 zmedico All packages to be added to the world favorites via --noreplace, even when --ask is enabled. Thanks to leio for reporting this issue. 4752 zmedico Explicitly set the priority when a node is added to enforce merge order for blocker avoidance. 4753 zmedico Handle unresolvable blockers properly for bug #151822. 4756 zmedico s/digraph.MEDIUM/DepPriority.MEDIUM/ 4759 zmedico Only call altlist() to validate blockers when necessary. 4761 zmedico Remove special case of --emptytree in depgraph.display(). Thanks to Jason Stubbs for this patch from bug #152030. 4766 zmedico Clean up the blocker validation logic so that "blocks" nodes are no longer stored in the main digraph. 4769 zmedico We there is a circular deps panic in reversed mode, do the circular deps output without reversed mode since it should reduce the noise level. 4772 zmedico For bug #152175, trigger greedy --update behavior when an atom matches a slot that isn't installed yet. 4773 zmedico Apply the fix for bug #152175 to system/world greedy behavior. 4774 zmedico In greedy atom handlink, filter binary package for visiblity. 4775 zmedico More filtering binary package for visiblity in greedy atom handling. 4776 zmedico Add nodes to the fakedb in depgraph.create instead of depgraph.select_deps. It used to be in select_deps only for the case of packages that depend on themselves for bootstrap, but that hack isn't needed anymore because dep_check returns all deps now. 4777 zmedico Update the docs regarding delay of config.setinst calls for bootstrap deps on old-style virtuals. 4778 zmedico Remove redunant population of the fakedb in depgraph.validate_blockers, since r4776 makes it unnecessary. 4783 zmedico Also check keyword visibility via gvisible. 4788 zmedico Fix visibility checks so that binary packages aren't masked just because there is no matching ebuild in the tree. 4794 zmedico Fix gcc version parsing once again for bug #137786. sigh. :) 4806 zmedico Don't display the "Please update portage" message in --quiet mode. Thanks to solar. 4822 genone streamline portage pythonpath handling and add an override analog to how the bash side does it 4823 genone rename getmaskingreason() to getpmaskcomment() to clarify its function, report each license as a separate mask instead of combining them all together into a single value for getmaskingstatus() 4827 genone show licenses or pointer to license files on 'masked by' message 4858 zmedico Avoid a TypeError with emerge -kN when there's no matching ebuild. 4872 zmedico Use a tuple for __slots__ so that it's immutable. 4884 zmedico Rely on PYTHONPATH instead of PORTAGE_PYM_PATH for locating portage's python modules, then fall back to an explicit sys.path insertion if an ImportError occurs. 4906 zmedico Implement --color < y | n > for bug #42115 and deprecate --nocolor. When --color is not specified, rely on the old NOCOLOR variable and/or stdout auto-detection. 4918 zmedico Silently omit info_pkgs that aren't installed. Thanks to solar. 4926 zmedico Fix --ignore-default-opts for bug #153980. 4947 zmedico Prevent the --newuse check in depgraph.create() that is intended for the ebuild type from being done on binary packages (which can lead to a KeyError). The --newuse check for binaries is elsewhere (in select_dep). 4949 zmedico Ensure that sys-apps/portage is as close as possible to the beginning of the merge list. This is accomplished by merging it before any soft deps that it may have. 4950 zmedico Remove "update portage before proceeding" message that is no longer relevant. 4951 zmedico Remove old code the used to bump portage near the top of the merge list. It's ineffective now that a complete depgraph is built. 4953 zmedico Make sure the node is still in the graph so that a KeyError can't happen. 4955 zmedico For bug #154223, bridge new-style virtuals into old-style virtuals in order to prevent old-style virtuals from making new-style virtuals invisible. 4962 zmedico Simplify the new-style -> old-style virtuals bridge by doing it implicitly for all virtuals instead of explicit scanning for available new-style virtuals. 4968 zmedico Fix validate_blockers() so that a package doesn't block itself via a virtual that it provides. 4970 zmedico Print the number of upgrades, downgrades, etc. next to size of downloads. Thanks to Bo ?\195?\152rsted Andresen for the initial patch from bug #153847. 4974 zmedico Thanks to Bo ?\195?\152rsted Andresen for this output fix for bug #153847. 4976 zmedico Plug some holes in the blocker validation logic so that nothing can slip through. 4978 zmedico Remove some stray blocker validation logic. 4983 zmedico For bug #154207, add a note about package.provided to the depclean warning message. 4984 zmedico Add --newuse back to the suggested options in the depclean warning message, since it's still needed in some cases. 5004 zmedico Fix emerge --sync with a cvs:// uri so that it runs /etc/portage/bin/post_sync like it would with a normal rsync:// uri. Thanks to drizzt for reporting. 5006 zmedico Fix initial cvs checkout logic for bug #100478. 5008 zmedico For initial gentoo-x86 checkout, if $PORTDIR exists and is empty then remove it so that the gentoo-x86 checkout can replace it. 5012 zmedico Fix depgraph.pkg_node_map so that it properly supports $ROOT. 5023 zmedico For bug #154919, when depclean is unable to resolve dependencies, notify the user that it may be necessary to manually uninstalled packages that no longer exist in the portage tree. 5028 zmedico For bug #154989, lock /var/db/pkg while determining which packages to unmerge, then release the lock. The lock will be reacquired/released for each individual unmerge, allowing opportunities for other processes to acquire it. 5032 zmedico Use try/finally to ensure that locks are properly released in emergelog(). 5038 zmedico For bug #154897, show a summary of fetch restrictions if there are any. 5040 zmedico Cache depgraph.altlist results, since altlist is called multiple times and can be time consuming for a large depgraph. 5042 zmedico Make fakedbapi support generic metadata instead of just slots. 5049 zmedico Only reload the config if global updates have actually been performed. 5051 zmedico Automatically convert --ask to --pretend when the user doesn't have the privileges for --ask. Thanks to Daniel Barkalow for the initial patch (submitted on gentoo-portage mailing list). 5053 zmedico Don't try to lock the vdb unless privileges are sufficient. 5057 zmedico Add a note about removal of new-style virtuals in the depclean output. 5063 zmedico Revert the depclean message, since new-style virtuals will now be kept. 5069 zmedico Fix a typo that prevents emerge --clean from working properly. Thanks to leio for reporting. 5071 zmedico For bug #155484, apply PORTAGE_NICENESS as soon as possible (especially before global updates). 5081 zmedico Revert ACCEPT_LICENSE support, since license group support is a requirement and it remain unimplemented. This brings trunk back into sync with the 2.1.2 branch. bin/emerge-webrsync 4959 zmedico For bug #154220, run /etc/portage/bin/post_sync at the end of emerge-webrsync. bin/fixpackages 4822 genone streamline portage pythonpath handling and add an override analog to how the bash side does it 4884 zmedico Rely on PYTHONPATH instead of PORTAGE_PYM_PATH for locating portage's python modules, then fall back to an explicit sys.path insertion if an ImportError occurs. 5073 zmedico Make fixpackages use PORTAGE_NICENESS. 5075 zmedico s/settings/mysettings/ typo bin/misc-functions.sh 4737 zmedico Add back the -v option for tar (removed for bug #151146) in dyn_package(), but don't enable -v when --quiet is enabled. 4863 zmedico Use mtree to save/restore bsd file flags before/after prepall and installation. Thanks to Diego Petten?\195?\178 for this patch (related to bug #153109). bin/prepall 4863 zmedico Use mtree to save/restore bsd file flags before/after prepall and installation. Thanks to Diego Petten?\195?\178 for this patch (related to bug #153109). bin/repoman 4792 zmedico Add support for masking of packages via ACCEPT_LICENSE and /etc/portage/package.license. Thanks to Jason Stubbs for the initial patch from bug #17367. 4822 genone streamline portage pythonpath handling and add an override analog to how the bash side does it 4884 zmedico Rely on PYTHONPATH instead of PORTAGE_PYM_PATH for locating portage's python modules, then fall back to an explicit sys.path insertion if an ImportError occurs. 5081 zmedico Revert ACCEPT_LICENSE support, since license group support is a requirement and it remain unimplemented. This brings trunk back into sync with the 2.1.2 branch. cnf/dispatch-conf.conf 4887 zmedico Add support for frozen config files for which updates are automatically zapped. Thanks to Bo ?\195?\152rsted Andresen for the initial patch from bug #151685. cnf/make.conf.sparc-fbsd.diff (Added) 4724 genone add make.conf diff for sparc-fbsd arch (from Uberlord) cnf/make.globals 4734 zmedico Merge package.use and USE from make.defaults together at each level of the profile stack. This is analogous to how use.mask and package.use.mask are planned to be merged for bug #151586. man/ebuild.5 4889 vapier recommend people use `emake` rather than `make` when installing with DESTDIR man/emerge.1 4907 zmedico Document the new --color < y | n > option for bug #42115. man/make.conf.5 4797 zmedico Add some ACCEPT_LICENSE docs. 4813 zmedico Remove ACCEPT_LICENSE docs until they're really implemented. 4912 zmedico Fix the USE_ORDER docs for bug #153764. Thanks to Alec Warner for the initial patch. man/portage.5 4780 zmedico Add package.use to the list of files supported in profiles. 4798 zmedico Put the package.keywords docs in alphabetical order with the others. 4799 zmedico Add some package.license docs. 4803 zmedico Add package.license to the list of files. 4813 zmedico Remove ACCEPT_LICENSE docs until they're really implemented. pym/cache/anydbm.py pym/cache/flat_list.py pym/cache/metadata_overlay.py pym/cache/sql_template.py pym/cache/sqlite.py 4821 zmedico Reverse the relationship between __contains__ and has_key in all cache classes since python handles the "in" operator more efficiently than a has_key method call. pym/cache/flat_hash.py 4808 zmedico Enable recognition of _mtime_ that doesn't rely on cache mtime mangling. 4821 zmedico Reverse the relationship between __contains__ and has_key in all cache classes since python handles the "in" operator more efficiently than a has_key method call. pym/cache/metadata.py 4708 zmedico Add a missing method parameter. 4820 zmedico Test for basestring instead of types.DictType so that the test more generic. pym/cache/template.py 4807 zmedico Remove paths from _eclasses_ serialization in the cache. This makes the mtimes of the eclasses the only thing that distinguishes them, but the probablility of collision is negligible. This same _eclasses_ format will be used to serialize eclass mtimes in cache that is distributed via the rsync mirrors. The deserialization code can handle mixtures of both the old and new formats. 4814 zmedico Improve reconstruct_eclasses error handling. 4815 zmedico For the time being, write a variation of the old _eclass_ format so that cache written only forces a regen for older versions of portage rather than a ValueError due to failed long() conversion. 4818 zmedico For full compatibility with older versions of portage, write the path in the serialized _eclasses_ when possible. 4821 zmedico Reverse the relationship between __contains__ and has_key in all cache classes since python handles the "in" operator more efficiently than a has_key method call. 4855 zmedico Add backward compatibility code for cache modules that override has_key instead of __contains__. pym/cache/util.py 4924 zmedico When transferring cache after sync, compare all metadata to make sure it is identical (don't trust _mtime_ and _eclasses_ alone). Local tests show that this can add approximately 15% more time to the metadata update, but it's needed for things like bug #153591. 4925 zmedico Make sure trg is defined. pym/dispatch_conf.py 4822 genone streamline portage pythonpath handling and add an override analog to how the bash side does it 4850 zmedico Don't bother to insert /usr/lib/portage/pym into sys.path from inside a module. That's the caller's job. pym/eclass_cache.py 4807 zmedico Remove paths from _eclasses_ serialization in the cache. This makes the mtimes of the eclasses the only thing that distinguishes them, but the probablility of collision is negligible. This same _eclasses_ format will be used to serialize eclass mtimes in cache that is distributed via the rsync mirrors. The deserialization code can handle mixtures of both the old and new formats. 4818 zmedico For full compatibility with older versions of portage, write the path in the serialized _eclasses_ when possible. 4819 zmedico Fix broken is_eclass_data_valid comparison logic. pym/emergehelp.py 4851 zmedico Add --with-bdeps to emerge --help output. 4852 zmedico Update help for --deep. 4853 zmedico Update help for greedy behavior of --update. 4908 zmedico Add --color < y | n > help output for bug #42115. 4909 zmedico Remove broken nocolor() call, since thats handled internally by the output module anyway. pym/output.py 4771 zmedico Allow an empty PROMPT_COMMAND for bug #152157. 4782 zmedico For bug #152157, don't send a redundant escape sequence with ${PROMPT_COMMAND}. 4906 zmedico Implement --color < y | n > for bug #42115 and deprecate --nocolor. When --color is not specified, rely on the old NOCOLOR variable and/or stdout auto-detection. pym/portage.py 4704 zmedico Simplify binarytree.getname(). 4712 zmedico Trigger binarytree population on bindbapi.cpv_all() calls. 4722 zmedico For bug #133908, prevent collisions in ${PKGDIR}/All/ by automatically bumping colliding packages to ${PKGDIR}/${CATEGORY}/ just before a collision would occur. Newly built packages are always stored in ${PKGDIR}/All/, should this be 100% compatible with previous behavior. 4734 zmedico Merge package.use and USE from make.defaults together at each level of the profile stack. This is analogous to how use.mask and package.use.mask are planned to be merged for bug #151586. 4735 zmedico Stack use.mask/package.use.mask together at each level of the profile for bug #151586, and do the same with use.force/package.use.force. 4741 zmedico Filter empty elements in cumulative env-update variables. Thanks to Brian Harring for this patch from bug #151694. 4744 zmedico Eliminate an unnecessary string concatenation. 4745 zmedico Add more dependency priority levels for merge order calculations. Previously, all installed deps were categorized at the same level with other soft deps. Now there are 3 priority levels for soft deps: satisfied buildtime, satisfied runtime, and other. 4760 zmedico For userpriv, call setgroups with all groups that the portage user belongs to (bug #137610). 4786 zmedico Optimize config.setcpv so that it only calls regenerate when necessary. Thanks to Jason Stubbs for the initial patch from bug #17367. 4787 zmedico Use reset instead of regenerate (revert part of the previous commit) in order to properly clear the env layer of the config. 4789 zmedico Call load_infodir before the setup phase for binary packages so that USE is properly set. 4790 zmedico Don't put empty incrementals in the environment. 4791 zmedico Do put empty incrementals in the environment if they are already set. 4792 zmedico Add support for masking of packages via ACCEPT_LICENSE and /etc/portage/package.license. Thanks to Jason Stubbs for the initial patch from bug #17367. 4793 zmedico s/str_matches/acceptable_licenses/ typo 4801 zmedico Make config.load_infodir also load the data into the env layer in order to ensure that it has preference over what may have been there. 4802 zmedico Don't limit the size of USE in config.load_infodir. 4804 zmedico Don't put -* in the env layer, since that layer isn't part of the incremental stacking in regenerate. 4805 zmedico In getmaskingstatus(), add missing check for * in acceptable_licenses. 4810 zmedico Disable ACCEPT_LICENSE support until the details of license groups are decided and implemented. 4817 zmedico For bug #152726, ignore hidden files in vardbapi.cp_list(). 4823 genone rename getmaskingreason() to getpmaskcomment() to clarify its function, report each license as a separate mask instead of combining them all together into a single value for getmaskingstatus() 4824 genone need a mutable config instance to use setcpv 4826 genone add function getlicensetexts() to extract license texts relevant to a given cpv (to be used by emerge masked by display) 4827 genone show licenses or pointer to license files on 'masked by' message 4828 genone show licenses or pointer to license files on 'masked by' message 4863 zmedico Use mtree to save/restore bsd file flags before/after prepall and installation. Thanks to Diego Petten?\195?\178 for this patch (related to bug #153109). 4867 zmedico Prevent an attribute error AttributeError for invalid binary packages for which there is no CATEGORY data. 4869 zmedico Don't forget to continue for invalid binpkgs. 4877 zmedico For bug #153295, do a sanity check for non-string types in config.environ(). 4879 zmedico For getmaskingstatus messages, don't assume ARCH is a valid keyword, since that assumption is not necessarily correct for operating systems other than Linux. Thanks to Diego Petten?\195?\178 for reporting. 4885 zmedico Fix a KeyError when the profile doesn't define default USE. 4893 zmedico For bug #153295, make load_infodir ignore files that contain null bytes. 4899 zmedico For bug #153282, automatically find the owner package(s) in the event of a fatal file collision (since the collision is fatal, the performance hit doesn't matter). 4916 zmedico For bug #153951, fail with a simple "Permission denied" error if the merge phase doesn't have write access to $ROOT. 4955 zmedico For bug #154223, bridge new-style virtuals into old-style virtuals in order to prevent old-style virtuals from making new-style virtuals invisible. 4957 zmedico Make config.add_new_virtuals() work properly even if self.virtuals has previously been initialized. 4962 zmedico Simplify the new-style -> old-style virtuals bridge by doing it implicitly for all virtuals instead of explicit scanning for available new-style virtuals. 4966 zmedico Minimize getvirtuals() calls and dict lookups inside dep_virtual(). 4980 zmedico s/grabdict/grabdict_package/ for bug #63429. 5002 zmedico Make digestcheck() fail if an ebuild isn't listed in the Manifest. Thanks to pva for reporting. 5010 zmedico For bug #154554, validate all profile virtuals atoms. 5021 zmedico For bug #154921, prevent an IndexError when a + is in USE. 5027 zmedico For bug #154989, use a single lock on /var/db/pkg since finer grained locking is unnecessary and often insufficient. 5030 zmedico Use try/finally to ensure that locks are properly released in portdbapi.aux_get(). 5033 zmedico Use try/finally to ensure that locks are properly released in dblink.unmerge(). 5034 zmedico Remove reentrance support for dblink.lockdb() since it's no longer used and it won't necessarily work correctly now that a global vdb lock is used. 5036 zmedico For bug #154986, show the usual "Filesize does not match recorded size" message even for fetch restricted files. 5042 zmedico Make fakedbapi support generic metadata instead of just slots. 5044 zmedico Remove useless unmerge() call after collision-protect has prevented anything from being merged. 5046 zmedico Fix a lock file leak. 5048 zmedico Make portage.global_updates() return any updates that may have been performed. 5055 zmedico For bug #141118, make dep_check do recursive expansion of new-style virtuals. 5061 zmedico Pull in the new-style virtuals and install them so that the vdb has complete standalone dep info, in case a portage tree isn't available. 5062 zmedico For bug #141118, make dep_zapdeps assign zero cost to new-style virtuals. 5064 zmedico Update the _expand_new_virtuals docstring with a not about zero cost for new-style virtuals. 5066 zmedico Fix _expand_new_virtuals so that it doesn't allow any virtual deps to go unaccounted for. 5067 zmedico Integrate old-style virtuals handling into _expand_new_virtuals() and prefer new-style over old-style whenever they are available. 5081 zmedico Revert ACCEPT_LICENSE support, since license group support is a requirement and it remain unimplemented. This brings trunk back into sync with the 2.1.2 branch. pym/portage_checksum.py 4972 zmedico Thanks to Chris White for these portage_checksum docstrings. 5031 zmedico Use try/finally to ensure that locks are properly released in perform_checksum(). pym/portage_const.py 4792 zmedico Add support for masking of packages via ACCEPT_LICENSE and /etc/portage/package.license. Thanks to Jason Stubbs for the initial patch from bug #17367. 4809 zmedico Add ACCEPT_LICENSE back to incrementals so that profiles can affect it. 5081 zmedico Revert ACCEPT_LICENSE support, since license group support is a requirement and it remain unimplemented. This brings trunk back into sync with the 2.1.2 branch. pym/portage_data.py 4760 zmedico For userpriv, call setgroups with all groups that the portage user belongs to (bug #137610). pym/portage_dep.py 4987 zmedico Thanks to Chris White for these portage_dep docstrings. 4999 zmedico Thanks again to Chris White for these additional portage_dep docstrings. pym/portage_manifest.py 4743 zmedico Make empty digest-* files 0 bytes instead of 1 byte. Thanks to Sven Wegener for reporting this. pym/portage_util.py 4718 zmedico Make grabdict incremental, so that keys occuring multiple times will stack up instead of overwritting eachother. Thanks to Sven Wegener for this suggestion. 4719 zmedico Simplify and optimize grabdict. Thanks to Brian Harring for suggesting this. 4736 zmedico Add -* support to stack_lists() and use dict.pop() for removal of flags when appropriate. 4742 zmedico Fix CONFIG_PROTECT so that is works with symlinked directories for bug #151502. 4881 zmedico Just use stat instead of lstat for config protect, so that broken symlinks are just ignored. ============================================================================= 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 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 for this patch from bug #149494. 4557 zmedico Fix quoting of ${D} in make arguments for einstall(). Thanks to Volkov Peter 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 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 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 =============================================================================