Date: Mon, 7 Aug 2006 19:13:20 +0000 (UTC) From: Doug Barton <dougb@FreeBSD.org> To: ports-committers@FreeBSD.org, cvs-ports@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: ports/sysutils/portmaster/files portmaster.sh.in Message-ID: <200608071913.k77JDKXK055127@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
dougb 2006-08-07 19:13:20 UTC FreeBSD ports repository Modified files: sysutils/portmaster/files portmaster.sh.in Log: New Features ============ 1. -L mode to list all installed ports, and search for updates. 2. Trap SIGINT, and use the opportunity to reap all the child processes we can find. 3. Warn the user during config mode if a port sets IS_INTERACTIVE 4. Support +IGNOREME files in /var/db/pkg/<portname>, ala portupgrade 5. Store the results of the user's choices for -i during config, so they don't have to enter it again during build 6. When deleting stale distfiles, recurse through successively shorter versions of file-name-* till we find something to delete, or run out of dashes. This means a lot fewer false positives, although the algorithm is still aggressive. Performance Optimizations ========================= 1. Skip dependency check prior to build if the 'make config' recursion does not find any ports that need updating. 2. Cache the dependency list for the parent port. 3. -s mode is now recursive, so if a removed port has dependencies, they are checked too. Remember what ports the user does not want to delete so they don't have to keep saying "no." 4. Much better support for failed downloads in the background, and the 'make checksum' process is only run once for each port. 5. Switch to using variables and case rather then grep to maintain state for current dependencies, answers for -i, etc. 6. Re-order some tests to micro-optimize do_update, etc. 7. Handle regular files in /var/db/pkg more efficiently 8. Track the pid of the parent process, and use that to manage state more efficiently. Also makes for more readable code. 9. Don't clean dependencies, since we don't recurse through them using the ports tree, we'll let each portmaster process handle it. 10. Cache information about dependencies that are already up to date to avoid having to do this check when not necessary. This dramatically improves performance for building/updating large ports (especially meta-ports like gnome or kde) with a lot of dependencies. Bug Fixes ========= 1. Add -f to pkg_delete in -s case 2. Reverse the "is required by" statements to make more sense for -r 3. Add PATCHFILES to the list of distfiles to delete when looking for stale distfiles 4. Minor cleanups, and better code consistency 5. usage() already exits, so clean up h) getopt 6. Add a catchall getopt so user will get usage() for an invalid option 7. Update some messages to make them more meaningful and simplify code 8. Fix specifying second option to -o in <category/portname> format 9. Properly handle the case where the second argument to -o is a port that is already installed 10. Don't mention the 'make config' step if -G Security Enhancement ==================== 1. Be more careful to only delete temp files if they haven't already been deleted or moved Revision Changes Path 1.6 +369 -115 ports/sysutils/portmaster/files/portmaster.sh.in
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200608071913.k77JDKXK055127>