/[gentoo-src]/portage/ChangeLog.000
Gentoo

Contents of /portage/ChangeLog.000

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.1 - (hide annotations) (download)
Wed Feb 4 20:33:36 2004 UTC (10 years, 5 months ago) by carpaski
Branch: MAIN
Old changelog.

<
1 carpaski 1.1 # ChangeLog for Portage; the Gentoo Linux ports system
2     # Copyright 2000-2004 Gentoo Technologies, Inc.; Distributed under the GPL v2
3     # $Id: ChangeLog,v 1.538 2004/02/04 18:38:00 carpaski Exp $
4    
5     21 Jan 2004; Nicholas Jones <carpaski@gentoo.org> ebuild.sh: TGL's fixes
6     for exec/child/wait problems. Unset GREP_OPTIONS GREP_COLOR. has() and use()
7     no longer attempt to determine if they are to be quiet or noisy -- They
8     default to noisy -- useq() and hasq() are the non-verbose versions.
9     EBUILD_PHASE set to add a hack-ish way around global scope calls in
10     eclasses -- NOTHING SHOULD BE CALLED IN THE GLOBAL SCOPE. Touchup to the
11     inherit() code that should finally allow the removal of the ECLASS and
12     INHERITED settings. Removed tty (use/has) calls. Removed dirname calls --
13     portage.py handles setting the dbkey filename now.
14    
15     21 Jan 2004; Nicholas Jones <carpaski@gentoo.org> emerge: Ed Catmur's
16     (with a little TGL added in) patch for --ask. Added a 'metadata' target
17     that skips the sync and only updates the cache. FEATURES="getbinpkg" added.
18     TGL's exit code fixes. Fixed match code for -S so it doesn't complain about
19     specific and double versions. Unmerge via dbpath fix. Rewrote rsync's
20     options that supports --verbose and --quiet operation now and can force
21     checksumming all files using --debug. Sort the files in the cache update
22     so it's a little more predictable.
23    
24     21 Jan 2004; Nicholas Jones <carpaski@gentoo.org> prepstrip: changed
25     --strip-debug to --strip-unneeded.
26    
27     21 Jan 2004; Nicholas Jones <carpaski@gentoo.org> getbinpkg.py: Updates to
28     enable HTTP/HTTPS authentication.
29    
30     21 Jan 2004; Nicholas Jones <carpaski@gentoo.org> portage.py: best_from_dict
31     added to grab the best entry from set of dicts using a list of the keys for
32     priority. jstubb's patch to fix listdir -- splits it into a cache and list
33     setup. jstubb's patch for varexpand to handle $VAR better. Latexer's patch
34     for KernelVersion code to use Makefiles instead of the version.h. Modules
35     are loaded from /etc/portage/modules or defaults, whichever works. Fixed
36     the /etc/make.profile-is-missing traceback. Spawn can be given 3 pipes to
37     redirect stdin,stdout,stderr to specific outputs, terminals, or files.
38     TGL's patch for cache functions in portage.py so that they do not cache at
39     inappropriate times. PORTAGE_TMPFS is now used if set as a temporary file
40     operation area -- recommended to actually be a ramfs/tmpfs filesystem for
41     speed. Genone enhanced the deprecated profile patch.
42    
43     31 Jan 2004; Masatomo Nakano <nakano@gentoo.org> emerge: Fixed --skipfirst
44     bug. This closes #36880.
45    
46     29 Jan 2004; Masatomo Nakano <nakano@gentoo.org> emerge: TGL's patch
47     for imporving overlay verbose. This closes #39765.
48    
49     27 Jan 2004; Masatomo Nakano <nakano@gentoo.org> portage.py: Fixed
50     autouse bug. autouse were ignored.
51    
52     21 Jan 2004; Nicholas Jones <carpaski@gentoo.org> emerge: Output failed
53     cache updates during emerge sync.
54    
55     21 Jan 2004; Nicholas Jones <carpaski@gentoo.org> *: VDB_PATH fixes.
56    
57     21 Jan 2004; Nicholas Jones <carpaski@gentoo.org> portage.py: Only use
58     custom profiles when not called by repoman. ROOT never changes profile
59     roots, only custom/system profiles var/cache/edb/virtuals. Sandbox fix
60     where sandbox was creating an invalid logfile (not giving a summary)
61     due to a '/' in SANDBOX_LOG. Turned down the Lockfile output. Double
62     check the INCOMPLETE MERGE identifications as it can be caused by cache.
63    
64     24 Jan 2004; <nakano@gentoo.org> emerge: Improved timestamp check
65     when 'emerge sync'. Added catching amiguous error when unmerge.
66     This closes #24325.
67    
68     23 Jan 2004; <nakano@gentoo.org> emerge, portage.py: Fixed 2 bugs.
69     Portage doesn't read local virtuals file, which happens on only cvs
70     version. package is blocked by itself.
71    
72     21 Jan 2004; Nicholas Jones <carpaski@gentoo.org> portage.py, emerge:
73     Fix from genone for emerge's direct reading of packages and his patch
74     that also adds in /etc/portage/profile as a stacked profile.
75    
76     21 Jan 2004; Nicholas Jones <carpaski@gentoo.org> portage.py: Completed
77     inheritence capabilities for portage.config reading some files. Moved a
78     copy of the getvirtuals() function into settings to handle multiple
79     profiles properly.
80    
81     *portage-2.0.50_pre17/18/19 (21 Jan 2004): Modules for DBs and quick fixes
82    
83     21 Jan 2004; Nicholas Jones <carpaski@gentoo.org> *: Moved all references
84     to var/db/pkg to portage.VDB_PATH --- This will change again -- NEED TO
85     BE MOVED INTO A PATH/CONSTANTS SETUP.
86    
87     21 Jan 2004; Nicholas Jones <carpaski@gentoo.org> dosed: Quick fix for
88     the basename missing/misplaced issue.
89    
90     21 Jan 2004; Nicholas Jones <carpaski@gentoo.org> ebuild.sh: Added
91     /dev/console to PREDICT to attempt a workaround for a serial console
92     bug. dbkey is now set through portage.py/doebuild to allow for modular
93     db code.
94    
95     21 Jan 2004; Nicholas Jones <carpaski@gentoo.org> emerge: regen doesn't
96     require root anymore. Edited the timestamp check to be a little more
97     friendly -- delete the portdir timestamp and it won't use the alternate.
98     Fix some permission settings. Added some warnings in for cachedirs that
99     are very likely to ruin your system. Cleaned out some of the eclass code
100     that isnt valid any longer.
101    
102     21 Jan 2004; Nicholas Jones <carpaski@gentoo.org> portageq: Added vdb_path
103     as a target to get the db directory. Quickpkg uses this.
104    
105     21 Jan 2004; Nicholas Jones <carpaski@gentoo.org> portage.py: Added
106     load_mod() -- grabs a class/function from a module and passes it back
107     without loading the module into the global scope. Added unique_array()
108     which eliminates duplicates from an array. grab_stacked() operates like
109     the other grab* and getconfig functions, but takes a filename and a set
110     of paths that it will apply incrementally or clobbers -- for profile
111     inheritance. getconfig no longer exits on non-existance returns None.
112     Class config now should be passed a profile path and a set of incremental
113     values instead of using the globals -- defaults to using the globals
114     presently and print an error message. Adding support for module configs
115     as a set of strings 'class.subclass.objectmodule':'module.to.use.object'
116     for load_mod and the database modules. Profile inheritance started. Killed
117     the eclass() super-function and replaced it with class eclass_cache that
118     is visible and conceptually simpler -- Also uses the plugable modules.
119     Cleaned out the sync calls for the DBs. MASSIVE simplification of the
120     aux_get code -- removed memory-caching in favor of system cache (actually
121     faster in all cases so far -- P100 and P4-2.2G). Lockfile usage around the
122     cachefile.
123    
124     21 Jan 2004; Nicholas Jones <carpaski@gentoo.org> portage_db_*: Updated
125     the API a little but to have permissions set properly. A little more
126     reorganization and removed the keycount checks.
127    
128     21 Jan 2004; Masatomo Nakano <nakano@gentoo.org> emerge: download size
129     should not be displayed when the package is nomerge with --tree.
130    
131     20 Jan 2004; Masatomo Nakano <nakano@gentoo.org> portage.py: Reverted
132     ambiguity package fix in cpv_expand().
133    
134     20 Jan 2004; Masatomo Nakano <nakano@gentoo.org> emerge: Moved
135     backup timestamp.chk file from portage tree to PORTAGE_TMPDIR.
136    
137     20 Jan 2004; Masatomo Nakano <nakano@gentoo.org> emerge: Reverted the
138     backing up the timestamp.chk fix.
139    
140     20 Jan 2004; Masatomo Nakano <nakano@gentoo.org> emerge: Improved the
141     list of --tree by TGL's patch. This should close #38070.
142    
143     20 Jan 2004; Masatomo Nakano <nakano@gentoo.org> emerge: Removed debug
144     message without --debug. This should close #23840.
145    
146     19 Jan 2004; Masatomo Nakano <nakano@gentoo.org> emerge: Improved
147     timestamp check of rsync. This should close #37403.
148    
149     19 Jan 2004; Masatomo Nakano <nakano@gentoo.org> portage.py: Improved
150     regeneration ld.so.cache. This should close #37858.
151    
152     19 Jan 2004; Masatomo Nakano <nakano@gentoo.org> emerge: Fixed bug which
153     emerge doesn't block same package but different version.
154     (example: DEPEND="!<cat/pkg-1.0.0" in cat/pkg-1.0.0.ebuild)
155    
156     19 Jan 2004; Masatomo Nakano <nakano@gentoo.org> portage.py:
157     Modified cpv_expand() to check package.mask. This should close #38592.
158    
159     19 Jan 2004; Masatomo Nakano <nakano@gentoo.org> portage.py: Escaped
160     regualar expression for replace entry in fixdbentries().
161    
162     18 Jan 2004; Masatomo Nakano <nakano@gentoo.org> portage.py:
163     Fixed AUTOCLEAN delay problem in .50pre* by TGL's patch. This close
164     #38189. Fixed unmerge failture bug when 'ebuild foo-1.0.0 unmerge'.
165     These close #38189, #38366
166    
167     18 Jan 2004; Masatomo Nakano <nakano@gentoo.org> emerge, portage.py:
168     Fixed "ebuild /foo/bar-1.0.0.ebuild unmerge" and "emerge bar-1.0.0 unmerge"
169     problems. This should close #38420.
170    
171     17 Jan 2004; Masatomo Nakano <nakano@gentoo.org> portage.py: Fixed
172     "!<=" style block problem. Fixed symlink with absolute path
173     problem in treewalk().
174    
175     *portage-2.0.50_pre16 (13 Jan 2004): Quick Fixes -- ~arch version
176    
177     13 Jan 2004; Nicholas Jones <carpaski@gentoo.org> portage.py: Removed an
178     unnecessary depend call that double eclass-using ebuild's cache regen
179     time.
180    
181     *portage-2.0.50_pre15 (12 Jan 2004): Quick Fixes -- ~arch version
182    
183     12 Jan 2004; Nicholas Jones <carpaski@gentoo.org> portage.py: Unmerge
184     traceback fix.
185    
186     *portage-2.0.50_pre14 (12 Jan 2004): Quick Fixes -- ~arch version
187    
188     12 Jan 2004; Nicholas Jones <carpaski@gentoo.org> emerge: Fix for
189     traceback on '-S'.
190    
191     12 Jan 2004; Nicholas Jones <carpaski@gentoo.org> repoman: Fix for
192     traceback on --help.
193    
194     12 Jan 2004; Nicholas Jones <carpaski@gentoo.org> sandbox: Fix for
195     sandboxpids.tmp file accesses.
196    
197     12 Jan 2004; Nicholas Jones <carpaski@gentoo.org> portage.py: Sandbox, as
198     above. Catch invalid package names and print a sane message about it.
199    
200     *portage-2.0.50_pre13 (11 Jan 2004): Fixes
201    
202     11 Jan 2004; Nicholas Jones <carpaski@gentoo.org> cnf/*: Updated the
203     Advanced masking section to aid the reduction of user complaints and
204     requests for unreasable usage of ACCEPT_KEYWORDS.
205    
206     11 Jan 2004; Nicholas Jones <carpaski@gentoo.org> portage.py: A counter
207     fix was fixed to actually check the counters of all CP versions to ensure
208     the new counter is higher than all existing ones. Modified the dblink
209     class to have class lockfiles for the db and tmpdb dirs as well as lock
210     other files before editing. Reorganization of the merge code in dblink
211     so that the tmpdb is filled immediately after preinst and prior to the
212     actual FS merging -- COUNTER and CONTENTS go directly into the tmpdb
213     and not into the infodir.
214    
215     *portage-2.0.50_pre11/12 (09 Dec 2003): repoman/binpkg/exit conditions
216    
217     09 Jan 2004; Nicholas Jones <carpaski@gentoo.org> emerge: getbinpkgonly
218     fixes for emerge -G world, should behave properly now instead of using
219     ebuild masks. Only downloads immediately before a merge -- fetchonly now
220     applies to binary packages.
221    
222     08 Jan 2004; Masatomo Nakano <nakano@gentoo.org> repoman: Ignore other
223     arches check in repoman when --ignore-other-arches(-I).
224    
225     *portage-2.0.50_pre10 (06 Dec 2003): API change + enhancements
226    
227     06 Jan 2004; Nicholas Jones <carpaski@gentoo.org> ebuild.sh: Fix for
228     dyn_preinst being called before IMAGE was set -- IMAGE is now valid
229     in pkg_preinst. Added suidctl for SELinux.
230    
231     06 Jan 2004; Nicholas Jones <carpaski@gentoo.org> emerge: Added -P to
232     initial cvs checkout.
233    
234     06 Jan 2004; Nicholas Jones <carpaski@gentoo.org> quickpkg: Fix for
235     the 'tar up /' problem.
236    
237     06 Jan 2004; Nicholas Jones <carpaski@gentoo.org> portage.py: Caught a
238     traceback generated by bad depend atoms for repoman. Fixes from genone
239     for package.*. Fixed the checks for doebuild calls in treewalk that was
240     ignoring exit conditions for ebuilds.
241    
242     04 Jan 2004; Masatomo Nakano <nakano@gentoo.org> repoman: Added PDEPEND
243     dependency check. This closes #24796
244    
245     04 Jan 2004; Masatomo Nakano <nakano@gentoo.org> repoman, portage.py:
246     Added new dependency check to repoman. This closes #36887.
247    
248     03 Jan 2004; Masatomo Nakano <nakano@gentoo.org> emerge: Modified
249     to specific port number in emerge sync. This closes #36994
250    
251     02 Jan 2004; Masatomo Nakano <nakano@gentoo.org> portage.py: Fixed
252     a problem that emerge doesn't block package when it's required.
253     It happens in .50_pre*.
254    
255     02 Jan 2004; Masatomo Nakano <nakano@gentoo.org> portage.py: Fixed
256     issue with getsize() when --debug.
257    
258     02 Jan 2004; Masatomo Nakano <nakano@gentoo.org> portage.py: Fixed
259     issue with virtual. This closes bug #9050, #22225, #29499.
260    
261     01 Jan 2004; Masatomo Nakano <nakano@gentoo.org> ebuild, emerge, portage.py:
262     Fixed issue with not cleaning up temp directory. This closes bug #34967.
263    
264     31 Dec 2003; Masatomo Nakano <nakano@gentoo.org> emerge:
265     Fixed 'emerge sync' issue which continuously connects to same host.
266    
267     31 Dec 2003; Nicholas Jones <carpaski@gentoo.org> emerge: Found the line
268     that was causing the package dir to be printed... It was a spawn call.
269    
270     31 Dec 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: Fix for
271     the symlink corruption in the db from the movefile() bug.
272    
273     29 Dec 2003; Masatomo Nakano <nakano@gentoo.org> portage.py:
274     Fixed bug which emerge stops when no denpendencies exist in || ( )
275     by USE flags. This closes #36568.
276    
277     29 Dec 2003; Masatomo Nakano <nakano@gentoo.org> emerge, portage.py:
278     Added an ambiguity package check when emerge. This closes bug #22700.
279    
280     *portage-2.0.50_pre9 (24 Dec 2003): API change + enhancements
281    
282     24 Dec 2003; Nicholas Jones <carpaski@gentoo.org> ebuild.sh: Added
283     PORTAGE_TMPDIR to SANDBOX_READ/WRITE to ensure it works. SpanKY's
284     patch for use negation added (use !foo). pkg_setup doesn't die on
285     a non-zero exit status.
286    
287     24 Dec 2003; Nicholas Jones <carpaski@gentoo.org> emerge: using os.uname
288     instead of calling out to uname.
289    
290     24 Dec 2003; Nicholas Jones <carpaski@gentoo.org> quickpkg: Added SpanKY's
291     patch for delayed exit/error conditions.
292    
293     24 Dec 2003; Nicholas Jones <carpaski@gentoo.org> xpak.py: chdir's added
294     to the getcwd fix for missing dirs.
295    
296     24 Dec 2003; Masatomo Nakano <nakano@gentoo.org> emerge: Added OVERLAY
297     directories display for --verbose.
298    
299     *portage-2.0.50_pre8 (24 Dec 2003): API change + enhancements
300    
301     22 Dec 2003; Nicholas Jones <carpaski@gentoo.org> ebuild.sh: Added
302     /proc/self/maps to SANDBOX_PREDICT, and /dev/shm to read/write.
303    
304     22 Dec 2003; Nicholas Jones <carpaski@gentoo.org> emerge: Added automake
305     and autoconf versions to the output of emerge info.
306    
307     22 Dec 2003; Nicholas Jones <carpaski@gentoo.org> etc-update: Added
308     edit merged file option -- defaults to EDITOR var or "nano -w".
309    
310     22 Dec 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: Use
311     os.uname instead of calling out to uname which might not exist.
312    
313     *portage-2.0.50_pre7 (22 Dec 2003): API change + enhancements
314    
315     22 Dec 2003; Nicholas Jones <carpaski@gentoo.org> ebuild.sh: patch to
316     quote most of the path operators that might involve spaces.
317    
318     22 Dec 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: Fix for
319     invalid entries in package.keywords. Character chopping on mirrors
320     fixed again.
321    
322     21 Dec 2003; Masatomo Nakano <nakano@gentoo.org> bin/ebuild, bin/emerge,
323     pym/portage.py: Changed to show disabled USE flags from use.mask when
324     using emerge -vp. And fixed use.mask issue.
325    
326     20 Dec 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: Rewrote
327     match_from_list -- Simplified and made pkgcmp and match_from_list
328     properly compare package names.
329    
330     20 Dec 2003; Nicholas Jones <carpaski@gentoo.org> repoman: Fix for mysigs
331     traceback when signing.
332    
333     20 Dec 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: Added
334     PYTHONPATH to the specials list -- created a colon_seperated list.
335     Fixed reset() in class config so that you can specify keeping the
336     pkg dictionary when resetting the values.
337    
338     19 Dec 2003; Masatomo Nakano <nakano@gentoo.org> repoman: Added check
339     whether "ebuild foo.ebuild digest" succeeds.
340    
341     19 Dec 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: Fix for
342     pkg settings being maintained after an unmerge.
343    
344     19 Dec 2003; Nicholas Jones <carpaski@gentoo.org> pym/portage_db_*: Moved
345     to using cPickle instead of marshal. More standardization of the API.
346    
347     18 Dec 2003; Masatomo Nakano <nakano@gentoo.org> repoman: Added virtual
348     dependency check on each arch.
349    
350     17 Dec 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: Fixed a
351     permission issue involving $T and userpriv. Lockfile touchup.
352    
353     17 Dec 2003; Nicholas Jones <carpaski@gentoo.org> portage_db_*: Added
354     templates and db for cache interfaces. Presently have a anydbm and a
355     flat file interface working. See the test for operations.
356    
357     15 Dec 2003; Nicholas Jones <carpaski@gentoo.org> emerge: Added a call
358     to portageq that causes python to create optimized modules prior to it
359     ending up inside the sandbox. Added more output and logging to sync.
360    
361     15 Dec 2003; Nicholas Jones <carpaski@gentoo.org> prepstrip: 'tree' is not
362     the same as 'true'.
363    
364     15 Dec 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: invalid
365     settings in package.keywords caused a traceback -- fixed with error message.
366    
367     *portage-2.0.50_pre1 (12 Dec 2003): API change + enhancements
368    
369     10 Dec 2003; Nicholas Jones <carpaski@gentoo.org> chkcontents: Uses portage
370     functions to do md5sum calcs.
371    
372     10 Dec 2003; Nicholas Jones <carpaski@gentoo.org> ebuild.sh: Removed try()
373     as it isn't used, and was deprecated for a long while. Genone's fetching
374     size display added for --verbose. License display added. Added a little
375     debug for IUSE so we can figure out the binary package --verbose IUSE
376     issues that are randomly reported. XXXXXXXXXXXXXXXXXXX's 'buildsyspkg'
377     patch for building only system packages into tbz2s. Unmerge fix for new
378     settings instances. RSYNC_RATELIMIT added.
379    
380     10 Dec 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: ADA path
381     variables added to specials for env_update. Error messaeg correction for
382     make.defaults syntax errors. Unmerge now uses the environment file, if it
383     exists, to get the complete environment back to perform unmerge operations.
384     load_infodir() uses pkg settings completely now. Fixed the passing of
385     settings in unmerge and dblink. Fixed an issue regarding unlinking lockfiles
386     while inside of a sandbox.
387    
388     09 Dec 2003; Nicholas Jones <carpaski@gentoo.org> ebuild.sh, *.sh:
389     Moved helper scripts into bin/functions and made them sourceable -- they
390     now will die in cases where sub-parts fail. dodoc and keepdir are now
391     recursive-capable.
392    
393     09 Dec 2003; Nicholas Jones <carpaski@gentoo.org> emerge: emerge.log now
394     set as portage:portage with 0660 perms. --debug now enables tracebacks
395     for dep generation instead of moving code out of the try block.
396    
397     09 Dec 2003; Nicholas Jones <carpaski@gentoo.org> g-cpan.pl: rac's patch
398     to get arch list from portage's list of arches in the profiles.
399    
400     09 Dec 2003; Nicholas Jones <carpaski@gentoo.org> repoman: Moved a bit of
401     the existing gpg code around -- it might work as is, but requires 'sign'
402     in features. Fixed a potential for repoman to miss updates that should
403     get a new manifest and commit. Fixed digest/manifest generation for
404     non-packagedir runs of repoman.
405    
406     09 Dec 2003; Nicholas Jones <carpaski@gentoo.org> emergehelp.py, make.conf,
407     getbinpkg.py: Message touch ups.
408    
409     09 Dec 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: load_infodir()
410     uses pkg settings now instead of env and backup. Genone's custom mirror
411     patch included. Added some missing 'strict' flags for recursion in digest*().
412     Refixed the invalidentry stuff that was lost across patch merges. Fix for
413     pkg-keywords from genone included. Genone's deprecated profile patch for
414     reporting to a user that their current profile is deprecated. Message about
415     missing arch.list instead of spouting invalid keywords messages.
416    
417     08 Dec 2003; Masatomo Nakano <nakano@gentoo.org> repoman:
418     Added all arch dependency check. This closes bug #24160.
419    
420     07 Dec 2003; Masatomo Nakano <nakano@gentoo.org> emerge,portage.py:
421     Fixed bugs. 1.--debug doesn't work 2.Portage breaks files
422     in /var/db/*/*. 3.No stop if dependency problem happens.
423     They are only cvs version problems.
424    
425     01 Dec 2003; Masatomo Nakano <nakano@gentoo.org> emerge: Fixed bug which
426     always remakes info dir file.
427    
428     29 Nov 2003; Masatomo Nakano <nakano@gentoo.org> portage.py: Fixed issue with
429     ebuild name rule. Fixed typo with variable name.
430     This closes bug #17172,#34666
431    
432     29 Nov 2003; Masatomo Nakano <nakano@gentoo.org> emerge: Fixed issue with
433     lacking the "setting" argument for pkgmerge()
434    
435     29 Nov 2003; Masatomo Nakano <nakano@gentoo.org> emerge: fixed rsync bug.
436     This closes bug #34660.
437    
438     28 Nov 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: Migration
439     to non-global settings started -- class config has new functionality and
440     is locked after portage is finished initializing -- changes cannot be made
441     to the global instance of config 'settings' -- reset() is now functional,
442     setcpv() loads PKGUSE from /etc/portage/package.use, load_infodir() loads
443     all small files (under 4k) from the vardb directory of an installed package
444     so that operations have the same post* settings as they had at merge time.
445     Begin modifications to spawn() to allow for files/pipes to be used for
446     IO instead of using getstatusoutput which does not take an environment
447     parameter like execve(). check_config_instance() ensures that the provided
448     parameter is a 'class config' instance -- for ensuring that everything is
449     being passed properly with the changes. Fix for the local FS mirror issue
450     where it removed the first '/' instead of the last one. doebuild() cleanups
451     for readability and pkguse enhancements -- also remove getstatusoutput()
452     usage for depend so that we don't have to modify the active environment.
453     Fix for symlink mtime values returned from movefile. (Nakano) SLOTMOVE
454     added to global update functionality to fix some issues where a package
455     suddenly must become slotted. portdbapi takes a root parameter instead
456     of using settings. Slightly more useful output from depend. binarytree()
457     now takes a pkgdir instead of using settings. Portage will now die if
458     ebuild.sh exits on a signal.
459    
460     Moved some functions around and renamed them for general use -- derived
461     from match2 in class portagetree:
462     match_to_list() find all atoms in a list that match a given package.
463     best_match_to_list() determines the most specific match. Needs work.
464     match_from_list() find all packages in a list that match a given atom.
465    
466     28 Nov 2003; Nicholas Jones <carpaski@gentoo.org> emerge: Fixed an issue
467     with searchdesc wanting root permissions if run as non-root. Migrated to
468     the non-global config class. EMERGE_FROM added for the dyn_preinst patch
469     -- Indicates if a merge is occuring from an ebuild or from a binary. Patch
470     for rsync timestamp checking from Nakano.
471    
472     28 Nov 2003; Nicholas Jones <carpaski@gentoo.org> ebuild.sh: Save PKGUSE.
473     Pebeneto's patch for dyn_preinst and SELinux added as a fix for binary
474     and ebuild merges. Added a kill for portage during the depend phase so
475     that portage will actually die if you control-C.
476    
477     28 Nov 2003; Nicholas Jones <carpaski@gentoo.org> *: MASSIVE set of changes
478     to start using locally defined 'class config' instances. This allows us to
479     start working on some parallelism among other things. Created this way:
480     mysettings = portage.config(clone=portage.settings)
481    
482     The Following functions now take a 'config' parameter:
483     spawn(), fetch(), digestgen(), digestcheck(), spawnebuild(), doebuild(),
484     merge(), dep_opconvert(), dep_check(), dblink.__init__()
485    
486     package.keywords is now implemented curtasy of genone/max. PKGUSE was
487     rewritten for the global config killing and is also included. X11 man
488     pages now found and zipped correctly. SYS.PATH fixes for the python
489     migration -- issue actually only shows up on 2.2 systems because of how
490     compiled modules are used if found regardless of the original source's
491     existance.
492    
493     28 Nov 2003; Nicholas Jones <carpaski@gentoo.org> tabcheck.py: An easier
494     way to make sure that all the python stuff is correctly using tabs and
495     not mixing spaces.
496    
497     28 Nov 2003; Nicholas Jones <carpaski@gentoo.org> xpak, xpak.py: Fixes
498     to ensure that it works if the current dir is missing and that the python
499     path gets set properly.
500    
501     22 Nov 2003; Daniel Robbins <drobbins@gentoo.org> portage.py: Fixed
502     calls in vartree method to invalidentry().... made them call call
503     self.dbapi.invalidentry() (there were multiple wrong method calls.)
504    
505     10 Nov 2003; Nicholas Jones <carpaski@gentoo.org> md5check.py: Checks all
506     digests and SRC_URIs for filenames and associated MD5s. Reports collisions
507     between versions/packages, missing, and extra lines in digests.
508    
509     *portage-2.0.49-r17/18 (10 Nov 2003): Fixes
510    
511     10 Nov 2003; Nicholas Jones <carpaski@gentoo.org> *: Changed portage to
512     be the first path in sys.path for all python scripts. Also enabled
513     optimizations from the scripts to ensure everything imported is built
514     for speed. ebuild: applied fix for the '//' root breaking the db[].
515     prepstrip: etdyn quickfix
516    
517     10 Nov 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: fix for
518     RESTRICT=nouserpriv. GENTOO_MIRRORS can have paths set to take files
519     from. Fixes for mishandled cache data regarding *pkgsplit(). Fixes for
520     '*' being returned as part of a package split. An 'invalidentry()' fix
521     for a traceback. Nakano's fixes for virtual removals not working properly,
522     sandbox violations during pkg_nofetch, || depend selection. Genone's
523     fixpackages speedup.
524    
525     10 Nov 2003; Nicholas Jones <carpaski@gentoo.org> ebuild.sh: PORTAGE_TMPDIR
526     fix for distcc. Variable passing bug patch for export_functions. Exit 1
527     added for nofetch to stop sandbox violation. Nakano's --tree patch added.
528     Improved the unmerge messages to denote what kind of unmerge fails. Info
529     pages regex pattern adjusted to allow most any name for a page.
530    
531     10 Nov 2003; Nicholas Jones <carpaski@gentoo.org> repoman: genone's xml
532     linting additions.
533    
534     01 Nov 2003; Robin H. Johnson <robbat2@gentoo.org> pym/cvstree.py:
535     fix bug #32071, by properly escaping a string to not be a regex. Checked
536     thru entire *.py tree and found this is the only mis-use of strings that
537     need to be escaped.
538    
539     31 Oct 2003; Daniel Robbins <drobbins@gentoo.org> portage.py: /lib/modules
540     now gets "unmerge protection." This is half of the config protection
541     functionality. It means that anything in /lib/modules will not be deleted
542     when a package is unmerged (often automatically when a user merges a
543     kernel module ebuild for a new kernel.) This solves the "my module
544     disappeared!" issue. This closes bug #1477.
545    
546     31 Oct 2003; Daniel Robbins <drobbins@gentoo.org> emerge: Should no longer
547     spit out wacky "!!! no match found" warnings when auto-cleaning.
548    
549     30 Oct 2003; Daniel Robbins <drobbins@gentoo.org> portage.py: Only run
550     depscan.sh if it exists on disk. This allows Portage to run inside a stage1
551     where /sbin/depscan.sh doesn't exist.
552    
553     30 Oct 2003; Daniel Robbins <drobbins@gentoo.org> portage.py: Applied fix to
554     allow multi-level "use? ( )" in SRC_URI, closing bug #16159.
555    
556     *portage-2.0.49-r15/16 (21 Oct 2003): Fixes
557    
558     21 Oct 2003; Nicholas Jones <carpaski@gentoo.org> fix-db.py: was broken
559     for python2.3 -- fixed now.
560    
561     21 Oct 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: Added
562     lockfiles to prelink md5 checks. Fixed caching bug where cache objects
563     were passed back as pointers instead of copies. Added 'invalidentry'
564     function to handle lockfiles -- It tests/deletes them using unlockfile.
565     Added fix-db.py to the 'databases is broken' messages.
566    
567     21 Oct 2003; Nicholas Jones <carpaski@gentoo.org> ebuild.sh: added CDPATH
568     to unset. SELinux fix for sandbox.
569    
570     *portage-2.0.49-r13/14 (10 Oct 2003): Fixes
571    
572     10 Oct 2003; Nicholas Jones <carpaski@gentoo.org> *: Full adaptations
573     for python2.3 implemented. Installation setup for /usr/lib/portage/pym
574     instead of site-packages. Fix for Old-Instance unmerging which stopped
575     happening due to changed path names. Binaries shouldn't merge under
576     fetchonly.
577    
578     *portage-2.0.49-r11/12 (08 Oct 2003): Internal Only.
579    
580     *portage-2.0.49-r10 (08 Oct 2003): Fixes
581    
582     08 Oct 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: Fixed a
583     seemingly random traceback involving lockfiles -- Categories weren't
584     being created before a lockfile was attempted in the category directory.
585     More enhancements to aid migration to python-2.3. Added writemsg() as
586     a general function for outputting information -- Takes an argument that
587     is interpreted as debug level and prints synchronisly to stderr. Yanked
588     domenu pending a GLEP.
589    
590     *portage-2.0.49-r9 (07 Oct 2003): Fixes
591    
592     07 Oct 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: Atomic lock
593     updates and self.create() fixes. Counter enhancements.
594    
595     *portage-2.0.49-r8 (05 Oct 2003):
596    
597     05 Oct 2003; Nicholas Jones <carpaski@gentoo.org> *: Changed #! line to
598     use /usr/bin/python to aid in migration.
599    
600     05 Oct 2003; Nicholas Jones <carpaski@gentoo.org> ebuild.sh: More use/has
601     output fixups.
602    
603     05 Oct 2003; Nicholas Jones <carpaski@gentoo.org> emerge: General cleanups.
604     Added in baselayout info to emerge info. --skipfirst isn't a persistent
605     option on resume anymore.
606    
607     05 Oct 2003; Nicholas Jones <carpaski@gentoo.org> fix-db.py: New script to
608     aid in diagnosing and eventually fixing /var/db issues. It makes almost no
609     modifications at the moment.
610    
611     05 Oct 2003; Nicholas Jones <carpaski@gentoo.org> prepstrip: Addition of
612     a condition for etdyn binaries -- they list as shared objects but aren't.
613    
614     05 Oct 2003; Nicholas Jones <carpaski@gentoo.org> repoman: Added non-cvs
615     patch -- repoman can be used outside of cvs trees for scanning/checking.
616     Added a masking fix for packages that use 'arch?' dependencies. Permission
617     fix on stats pickle.
618    
619     05 Oct 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: Subversion
620     directories are ignored along with CVS in listdir() when ignorecvs is set.
621     USE_EXPAND is fixed. Global and package counter fixes. ATOMIC VARDB moves
622     are now implemented -- Still need a way to recover broken operations.
623     Counter functions are now implemented in dbapi only. vardbapi now implements
624     aux_get for all possible files listed in the package's info directory. New
625     functions: lockfile()/lockdir(), unlockfile()/unlockdir().
626    
627     *portage-2.0.49-r7 (26 Sep 2003): Binary package fixes + spacing issues.
628    
629     26 Sep 2003; Nicholas Jones <carpaski@gentoo.org> emerge.sh: Spacing fixes
630     for tab/space mixes. glob fix for getgccversion().
631    
632     26 Sep 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: Fix for binary
633     use flag tb.
634    
635     26 Sep 2003; Nicholas Jones <carpaski@gentoo.org> xpak.py: Fix for scan()
636     tb when file is invalid or shorter than XPAK header length.
637    
638     *portage-2.0.49-r6 (23 Sep 2003): SELinux, DistCC, and pretend output fixes.
639    
640     23 Sep 2003; Nicholas Jones <carpaski@gentoo.org> ebuild.sh: selinux context
641     fixes -- using ${T} now. DISTCC_DIR added by default and given an addwrite.
642    
643     23 Sep 2003; Nicholas Jones <carpaski@gentoo.org> emerge: gccversion() added
644     to help distcc and the version checking calls that break distcc permissions.
645     Fix for create() and the useflag passing from binary packages. When using
646     pkgs, is_newer_ver_installed() no longer trashes ebuild names. Don't look
647     for fetch restrictions with binary packages. Included a modified patch that
648     shows only in-slot versions for packages during pretend output -- In-slot
649     now shows up exactly as a single-slot package would -- New slots show up
650     as new packages -- proper output. Killed debug for everything except regen
651     which now shows the deps being regenerated. Fixed regen to ignore keywords
652     just like sync does already... should fix a few missing cache entry problems
653     on rsync1 and speed up sync times all around.
654    
655     23 Sep 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: Additions for
656     distcc support.
657    
658    
659     *portage-2.0.49-r5 (19 Sep 2003): Fixes
660    
661     19 Sep 2003; Nicholas Jones <carpaski@gentoo.org> ebuild.sh: Make
662     DISTCC_DIR set if not defined.
663    
664     19 Sep 2003; Nicholas Jones <carpaski@gentoo.org> emerge: Fix for -U
665     introduced bugs with Str+None tracebacks. Mild change to log info -- Added
666     short pkgname before ebuild. Eclassdb changes and flush/save calls.
667    
668     19 Sep 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: Unregister
669     signal handling after receiving the signal and resend the signal we got.
670     Run depscan during env-update. Migrated eclass stuff into it's own pickle.
671     Code for moving /var/cache/edb/dep into a pickle for each category added --
672     disabled via hardcoded value presently. Removed some try blocks in favor
673     of detecting the cause of an error first -- Hopefully gives a little speed
674     up. Cache fixes and useful output added. A tbz2 moving bug where an error
675     was printed about files the destination existing already is now fixed. The
676     dircache is cleared on every unmerge now, to ensure the cache does not
677     interfere. bzip2 is spawned with the quiet flag now. Update list is sorted
678     for proper year/quarter order now. -arch isn't an invalid keywork anymore.
679     Generic pickle reading and writing functions added.
680    
681     *portage-2.0.49-r4 (10 Sep 2003): Fixes
682    
683     10 Sep 2003; Nicholas Jones <carpaski@gentoo.org> *: Added the facility
684     to incorporate binary package use flags when calculating deps. Changes in
685     -r2 and -r3 included quick fixes to SELinux code and the addition of
686     LINGUAS to USE_EXPAND.
687    
688     *portage-2.0.49-r1 (25 Aug 2003): Fixes
689    
690     25 Aug 2003; Nicholas Jones <carpaski@gentoo.org> emerge: -K traceback fix.
691     Made fetchonly quit traversing the merge code after fetching.
692    
693     25 Aug 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: Removed
694     auxcache saving code -- A few bugs and caching problems need to be resolved.
695     Moved a block of code in aux_get inside of an existing conditional -- Should
696     provide a small speedup.
697    
698     *portage-2.0.49 (22 Aug 2003): GRP downloading, Selinux, General Fixes
699    
700     22 Aug 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: Make
701     auxcache saving more friendly.
702    
703     *portage-2.0.49_pre20/21 (20 Aug 2003): Fixes + security enhancements
704    
705     20 Aug 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: Fix for
706     auxcache saving.
707    
708     *portage-2.0.49_pre19 (20 Aug 2003): Fixes + security enhancements
709    
710     20 Aug 2003; Nicholas Jones <carpaski@gentoo.org> *: Updates to Wayne's
711     modifications on dispatch-conf.
712    
713     20 Aug 2003; Nicholas Jones <carpaski@gentoo.org> ebuild.sh: sfperms
714     added to strip permissions if set in features. selinux context support.
715     Nakano's cleanups for unmerge output. Added distcc and ccache versions
716     into emerge info's output. 'autoaddcvs' FEATURE is documented in make.conf.
717    
718     20 Aug 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: Selinux code
719     added. No longer traceback on cp_list for categories. Added in a patch to
720     use a pickle for auxcache storing. Should help slow IO boxes.
721    
722     *portage-2.0.49_pre18 (15 Aug 2003): Fixes.
723    
724     15 Aug 2003; Nicholas Jones <carpaski@gentoo.org> ebuild.sh: Nakano's
725     fix for a glob expansion bug on a tar call.
726    
727     15 Aug 2003; Nicholas Jones <carpaski@gentoo.org> emerge: Nakano's fixes
728     for exiting on a signal and incorrect output for the unmerge screen.
729    
730     15 Aug 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: Added in
731     patch to shuffle thirdparty mirrors. Nakano's fixes for digests+fetching
732     bugs/messages/errors. Virtual stripping fix.
733    
734     15 Aug 2003; Nicholas Jones <carpaski@gentoo.org> *: Fix to emerge -V
735     and related output. Typo fixes. Parent thread no longer drops root in
736     userpriv. 'autoaddcvs' feature now determines if portage will auto-add
737     files to cvs. Virtuals fix for an empty key line. Added user categories
738     file as /etc/portage/categories.
739    
740     *portage-2.0.49_pre17 (30 Jul 2003): Resuming/wget GRP, Sandbox updates
741    
742     30 Jul 2003; Nicholas Jones <carpaski@gentoo.org> *: GRP updates to
743     use RESUMECOMMAND to determine how to download GRP binaries. Adjustments
744     to the portage.spawn() code to try and speed it up by eliminating the
745     copy phase (copy-on-write forking). Massive messages for corrupt FS issues.
746     Movefile() checks to ensure we actually complete the moves. Killed the
747     broken pipe message for tbz2 extraction.
748    
749     *portage-2.0.49_pre16 (29 Jul 2003): Touchups
750    
751     29 Jul 2003; Nicholas Jones <carpaski@gentoo.org> *: Clean up the debug
752     output and quickfix downloading tbz2s.
753    
754     *portage-2.0.49_pre15 (29 Jul 2003): Fixes
755    
756     29 Jul 2003; Nicholas Jones <carpaski@gentoo.org> repoman: imported time.
757    
758     29 Jul 2003; Nicholas Jones <carpaski@gentoo.org> emerge: Corrected the
759     logic used to determine whether a package or an ebuild is used when given
760     the option.
761    
762     29 Jul 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: Changed a
763     lot of calls using 'print' into sys.stderr.write() calls. Added try/except
764     around the source lstat to catch funky errors where the file doesn't really
765     exist -- Presents descriptions to users about what to do. Added more catches
766     for movefile() calls to ensure it dies on failures. Changed the tbz2
767     extraction call to stop the 'cat: broken pipe' message.
768    
769     *portage-2.0.49_pre14/48-r7 (24 Jul 2003): Fixes and getbinpkg caching
770    
771     22 Jul 2003; Nicholas Jones <carpaski@gentoo.org> *: Typo fixes for
772     the ECLASS_DEPTH comparisons in ebuild.sh. Traceback fixes for blocking
773     packages in depclean and in pretend. Caching added to getbinpkg code --
774     generation of cache supported, but cachefile is staticly located. Langs
775     patch from Nakano in bug #9988 included.
776    
777     *portage-2.0.49_pre13 (22 Jul 2003): Fixes
778    
779     22 Jul 2003; Nicholas Jones <carpaski@gentoo.org> doman: Doesn't gzip
780     .keep files now.
781    
782     22 Jul 2003; Nicholas Jones <carpaski@gentoo.org> ebuild.sh: USERLAND
783     fix. ** ECLASS depth tracker and additions to the new depend code. **
784    
785     22 Jul 2003; Nicholas Jones <carpaski@gentoo.org> emerge: Fetch restriction
786     now adds a red F to the pretend output. Made the blockers message better.
787     Added 'local' to rsync excludes to allow the category to be added for admins.
788    
789     22 Jul 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: Fixed a TB
790     caused by a missing 'strict' reference --- Needs to be fixed better. Fixed
791     a typo in the populate code for bintree/getbinpkg.
792    
793     *portage-2.0.49_pre11 (16 Jul 2003): GRP, General, VIDEO_CARDS/INPUT_DEVICES
794    
795     16 Jul 2003; Nicholas Jones <carpaski@gentoo.org> quickpkg: SpanKY's
796     friendly edition now included.
797    
798     16 Jul 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: USE_EXPAND
799     support for expanding bash variables into USE --- VIDEO_CARDS="blah"
800     USE="video_cards_blah". Added a notice about fetching metadata so you
801     can see that it's happening.
802    
803     16 Jul 2003; Nicholas Jones <carpaski@gentoo.org> make.globals*: Added
804     default CHUNKSIZE for binhosts. Added defaults for USE_EXPAND which is
805     used to expand variables into USE from the give names.
806    
807     16 Jul 2003; Nicholas Jones <carpaski@gentoo.org> *: Debug removal.
808    
809     *portage-2.0.49_pre10 (16 Jul 2003): GRP and General Fixes
810    
811     16 Jul 2003; Nicholas Jones <carpaski@gentoo.org> *:
812     Quick fix for a breakage in the GRP --getbinpkg code.
813    
814     *portage-2.0.49_pre9 (16 Jul 2003): GRP and General Fixes
815    
816     16 Jul 2003; Nicholas Jones <carpaski@gentoo.org> ebuild.sh: add
817     LDFLAGS and ASFLAGS. Exports are only done if vars are already set.
818    
819     16 Jul 2003; Nicholas Jones <carpaski@gentoo.org> emerge: Added support for
820     --getbinpkg and --getbinpkgonly --- GRP complement. Fixes for blocking-
821     not-working bug
822    
823     16 Jul 2003; Nicholas Jones <carpaski@gentoo.org> repoman: Patch to detect
824     incomplete digests.
825    
826     16 Jul 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: ebuild fetch
827     now checks md5sums (run from ebuild). Support for getbinpkg.
828    
829     16 Jul 2003; Nicholas Jones <carpaski@gentoo.org> xpak.py: Added more in-
830     memory operations support.
831    
832     16 Jul 2003; Nicholas Jones <carpaski@gentoo.org> getbinpkg.py: Supporting
833     code for binary package retrieval.
834    
835     *portage-2.0.48-r2 (29 Jun 2003): Fixes and Multiple Overlays
836    
837     29 Jun 2003; Nicholas Jones <carpaski@gentoo.org> ebuild.sh: Fixed the
838     commands for tar.
839    
840     29 Jun 2003; Nicholas Jones <carpaski@gentoo.org> emerge: Mode the chdir
841     to fix the spanky bugs down to post_emerge to fix the "can't merge an
842     ebuild file with an absolute path" bug.
843    
844     29 Jun 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: Added function
845     suffix_array(array,suffix) which takes an array and adds suffix to the end
846     of each element. Added 'cd / ;' into the getstatusoutput() calls to ldconfig.
847     Added a check so that portage doesn't try to add files/dir from a non-cvs
848     directory. Added 'manifest' target to ebuild/portage to only adjust the
849     manifest. Added Multiple overlay support -- Should be fairly thorough --
850     needs more debug though. Fixed portdbapi::new_protect_filename().
851    
852     *portage-2.0.48-r2 (29 Jun 2003): Cleanups and Fixes (testing)
853    
854     29 Jun 2003; Nicholas Jones <carpaski@gentoo.org> ebuild.sh: Lots of
855     consistency cleanups. Added more files to the var/db data for future
856     use. Added more die conditions to failure points. Fixed/Hacked a fix
857     into the inherit-not-dieing problem. Set TMPDIR and TMP globally. Added
858     notice for multiple inheritance. Fixed inheritance problem with multiple
859     inheritance clobbering previous list of eclasses. Basic support for
860     multiple overlays added to ebuild.sh.
861    
862     29 Jun 2003; Nicholas Jones <carpaski@gentoo.org> emerge: SRC_URI fix for
863     'rm /etc/*' problem. Spanky bug: chdir to / to avoid problems when merging
864     from inside a builddir that gets deleted.
865    
866     29 Jun 2003; Nicholas Jones <carpaski@gentoo.org> etc-update: Added notice
867     for symlinks in cfg_prot setups.
868    
869     29 Jun 2003; Nicholas Jones <carpaski@gentoo.org> repoman: complain if
870     FEATURES=cvs not set.
871    
872     29 Jun 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: Added in
873     a work around for the 'USE=+useflag' users. Added support for nouserpriv
874     via RESTRICT. Fix the bug with ROOTs with no previous file causing a TB
875     from counter_tick(). Make symlinks follow config_protect just like normal
876     files.
877    
878     10 Jun 2003; Daniel Robbins <drobbins@gentoo.org> ebuild.sh, portage.py,
879     various commands in bin/, cnf/make.conf.mac, cnf/make.globals.mac:
880     Added preliminary Mac OS X/BSD support.
881    
882     06 Jun 2003; Daniel Robbins <drobbins@gentoo.org> ebuild.sh: new eclass
883     dependency implementation to totally isolate eclass dependency tweaks
884     from in-ebuild dependency tweaks. eclasses now absolutely do not touch
885     DEPEND and RDEPEND. Any dependencies added by eclasses are transferred
886     to another variable and added in to DEPEND and RDEPEND after the entire
887     ebuild has been processed, and after RDEPEND has optionally inherited a
888     value from DEPEND due to it being unset. The result of this change is
889     that inherit statements no longer need to be placed strategically in an
890     ebuild so that they are after the DEPEND and RDEPEND, and fix a host of
891     other eclass mis-use/side-effect bugs.
892    
893     *portage-2.0.48-r1 (29 May 2003): Touchups.
894    
895     29 May 2003; Nicholas Jones <carpaski@gentoo.org> ebuild.sh: Quick fixes
896     to a couple of rare bugs. Added some quoting to $S. Removed the DISTCC
897     hosts variable. Moved build-info's creation around so that it actually
898     works for non-portage-compiled merges.
899    
900     29 May 2003; Nicholas Jones <carpaski@gentoo.org> repoman: Quick fix for
901     the files-dir-not-added lack of notification. Added in a fix for a possible
902     security problem with the repoman commit messages and symlink-attacks.
903    
904     29 May 2003; Nicholas Jones <carpaski@gentoo.org> cnf/*: Added in a diff
905     from 'Danny' that contained a SYNC cleanup and expanded explanation. :)
906    
907     29 May 2003; Nicholas Jones <carpaski@gentoo.org> output.py: Fixed the
908     TitleBar and unset TERM issues.
909    
910     29 May 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: Added new
911     functions to aid in determining virtuals. cpv_all() added to dbapi -- it
912     displays all versions instead of just package names -- cp_all() now calls
913     this function to gain it's data. get_provide() and get_all_provides() added
914     to collect PROVIDE info from vartree packages. getallcpv() added to vartree
915     to reference the dbapi call. Always set ignoring errors on findname now.
916     Cleaned up the virtuals-trimming code. Don't mention the fixpackages script
917     if the user doesn't have any packages.
918    
919     *portage-2.0.48 (20 May 2003): Cleanups Release.
920    
921     20 May 2003; Nicholas Jones <carpaski@gentoo.org> emerge: Tiny cleanups.
922     Fixed the profile information in emerge -V for symlinks that have a
923     trailing '/' in them. Fix 'emerge -s' filesize lookups to use a new
924     function finddigest() from dbapi.
925    
926     20 May 2003; Nicholas Jones <carpaski@gentoo.org> emergehelp.py: Updated.
927    
928     20 May 2003; Nicholas Jones <carpaski@gentoo.org> etc-update: Small
929     fixups for pager issues. Made the nothing-to-do exit message 'happier'.
930    
931     20 May 2003; Nicholas Jones <carpaski@gentoo.org> extra-functions.sh:
932     Beat the debian-utils requirement out of the functions. Prefers them,
933     but falls back to already-existing tools otherwise.
934    
935     20 May 2003; Nicholas Jones <carpaski@gentoo.org> fixpackages: 75%
936     overhaul to match the new handling of update code.
937    
938     20 May 2003; Nicholas Jones <carpaski@gentoo.org> quickpkg: Understands
939     "--help" as an option now.
940    
941     20 May 2003; Nicholas Jones <carpaski@gentoo.org> man/*: Simple updates.
942    
943     20 May 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: fetch()
944     now calculates md5sums when doing a fetchonly. finddigest() added for
945     finding digests -- gets overlay digests if existing. Binary packages
946     are only updated when explicitly requested via fixpackages as a command
947     or a FEATURES setting. Clear the dircache after portage initializes to
948     reduce memory consumption.
949    
950     *portage-2.0.48_pre6 (12 Apr 2003): General cleanups and fixes.
951    
952     12 May 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: Additions
953     to better handle overlay ebuilds with regard to metadata cache. aux_get
954     calls findname2() which returns (location,in_overlay) -- findname() is
955     a wrapper for findname2(). Extra debugging fixes for findname() issues.
956    
957     12 May 2003; Nicholas Jones <carpaski@gentoo.org> ebuild.sh: Code
958     cleanups and a chgrp/chown pass to move all portage-owned files to
959     root ownership -- Two pass to leave specific-group and specific-owner
960     settings alone.
961    
962     12 May 2003; Nicholas Jones <carpaski@gentoo.org> emerge: code cleanups
963     and comment touchups.
964    
965     12 May 2003; Nicholas Jones <carpaski@gentoo.org> emergehelp.py: Updates
966     for --debug, --digest, and --skipfirst.
967    
968     12 May 2003; Nicholas Jones <carpaski@gentoo.org> g-cpan.pl: Added more
969     arches to the KEYWORDS. Made it copy files back to distfiles.
970    
971     12 May 2003; Nicholas Jones <carpaski@gentoo.org> prepstrip: Removed ${D}
972     from the outputted filenames during stripping.
973    
974     12 May 2003; Nicholas Jones <carpaski@gentoo.org> man/* cnf/*:
975     documentation updates.
976    
977     *portage-2.0.48_pre5 (29 Apr 2003): Cleanups and polish.
978    
979     29 Apr 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: Another
980     typo fix.
981    
982     *portage-2.0.48_pre4 (28 Apr 2003): Cleanups and polish.
983    
984     28 Apr 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: Quick fix
985     for a traceback/typo in the 'emerge -C' code.
986    
987     *portage-2.0.48_pre3 (28 Apr 2003): Cleanups and polish.
988    
989     28 Apr 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: listdir()
990     now takes care of non-existance errors instead of propagating them --- can
991     take EmptyOnError=1 as a param to return [] instead of None. All calls to
992     portage's listdir() have been updated to the new conventions. listdir()
993     ignores .# files from cvs now when ignorecvs=1 is set. Fixes for another
994     world-depleting bug. If findname() is passed a virtual, it now informs
995     the user to report a bug, instead of weird tracebacks. Added code in
996     dblink::unmerge() to remove stale virtual entries when set under trimworld.
997    
998     28 Apr 2003; Nicholas Jones <carpaski@gentoo.org> etc-update: enabled the
999     diff pager again.
1000    
1001     28 Apr 2003; Nicholas Jones <carpaski@gentoo.org> emerge: --changelog
1002     implies --pretend. Spelling fixes. Added --skipfirst to allow the first
1003     package in a resume operation to be skipped over --- allows -e to rebuild
1004     almost everything, even under weird circumstances. Located another missed
1005     world-file-depleting bug in unmerge() calls. Included a patch to fix an
1006     off-by-one bug in depclean.
1007    
1008     27 Apr 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: Fix for
1009     listdir() running on a non-existant dir -- returns None. Sets generated
1010     files to the portage group -- Manifest & digests. Some coloring additions.
1011     Handling of 'strict' features added. TEMPORARY addition of 'manifest' USE
1012     flag so this can go mainstream now. Fixes in doebuild() to get unmerge
1013     working again for ebuild. Debug code added to findname to help figuring
1014     out the seemingly random tracebacks -- suspect is pkgsplit(). Unmasking
1015     code for package.mask added in -- works just like mask, and can override
1016     specific versions or ranges -- One per line: /etc/portage/package.unmask.
1017     Security fix for python cPickle code -- mtimedb could create arbitrary
1018     execution of code bug. Global update notices/info. Fixes for loops over
1019     listdir() that depended upon raised errors to determine code flow.
1020    
1021     27 Apr 2003; Nicholas Jones <carpaski@gentoo.org> cvstree.py: Added in
1022     'removed' status checks.
1023    
1024     27 Apr 2003; Nicholas Jones <carpaski@gentoo.org> repoman: Added in more
1025     cvs checks. /space/cvsroot is now complained about.
1026    
1027     27 Apr 2003; Nicholas Jones <carpaski@gentoo.org> emerge: Added in
1028     PORTAGE_CALLER support to identify it as a 'do_update()' candidate.
1029    
1030     27 Apr 2003; Nicholas Jones <carpaski@gentoo.org> dodoc: Check sizes to
1031     prevent 0 byte files from being added.
1032    
1033     *portage-2.0.48_pre2 (10 Apr 2003): Digests & Repoman
1034    
1035     16 Apr 2003; Nicholas Jones <carpaski@gentoo.org> repoman: Added CVS/Root
1036     checks to ensure Manifests will be correct. Fixed local use-flag bug.
1037     Commented out the no-stable code, as it can't be implemented well as is.
1038    
1039     16 Apr 2003; Nicholas Jones <carpaski@gentoo.org> prepstrip: Fixed a
1040     problem where files were not being stripped.
1041    
1042     16 Apr 2003; Nicholas Jones <carpaski@gentoo.org> ebuild.sh: Added in
1043     a call to 'make -n' when under the --debug flag.
1044    
1045     *portage-2.0.48_pre1 (10 Apr 2003): Digests & Repoman
1046    
1047     10 Apr 2003; Nicholas Jones <carpaski@gentoo.org> prepstrip: fix it so
1048     that it actually strips and provides reasonable info.
1049    
1050     10 Apr 2003; Nicholas Jones <carpaski@gentoo.org> repoman: Added short
1051     option for pretend. Added pretend capability to the majority of the
1052     commit code. Bug fix for local IUSE code. Added in support for removed
1053     cvs files.
1054    
1055     10 Apr 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: Changed
1056     'manifest' to 'Manifest'. Removed the requirement that Manifests exist --
1057     complain about it, but only die if 'strict' is set.
1058    
1059     *portage-2.0.47-r15 (09 Apr 2003): New digests/manifests, touchups.
1060    
1061     09 Apr 2003; Nicholas Jones <carpaski@gentoo.org> bin/*: Fixes for Cross-
1062     compiling.
1063    
1064     09 Apr 2003; Nicholas Jones <carpaski@gentoo.org> repoman: Quick touchups
1065     in the category- and repository-level manifest calls.
1066    
1067     09 Apr 2003; Nicholas Jones <carpaski@gentoo.org> cnf/*: Added/sync'd
1068     PORTAGE_NICENESS.
1069    
1070     09 Apr 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: Fixed hole
1071     in the listdir code that occured on cache expiration in the -r14 changes.
1072    
1073     *portage-2.0.47-r14 (09 Apr 2003):
1074    
1075     09 Apr 2003; Nicholas Jones <carpaski@gentoo.org> bin/*: Removed DEBUGBUILD
1076     in favor of FEATURES/RESTRICT settings of nostrip.
1077    
1078     09 Apr 2003; Nicholas Jones <carpaski@gentoo.org> ebuild: Removed root
1079     restriction so that digests can be made as non-root.
1080    
1081     09 Apr 2003; Nicholas Jones <carpaski@gentoo.org> emerge: Added niceness
1082    
1083     09 Apr 2003; Nicholas Jones <carpaski@gentoo.org> repoman: Added the
1084     nostable/allmasked check in. Small cleanups. Move to 'manifests' instead
1085     of enhanced digests. Added filters on $Id and $Header. Fixed commitmsg
1086     and added short options.
1087    
1088     09 Apr 2003; Nicholas Jones <carpaski@gentoo.org> cvstree.py: More features
1089     added. pathdata() provides dir or file info. isadded() gives cvs status.
1090    
1091     09 Apr 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: listdir()
1092     enhancements. Debug removal. Broke up the digest creation functions to
1093     make them a little more generic. Added manifest code into the digest
1094     calls. Moved code in doebuild() around to allow for non-root calls for
1095     devs and repoman. Added 'PORTAGE_CALLER' env var to prevent repeated
1096     running of unnecessary functions.
1097    
1098     *portage-2.0.47-r13 (02 Apr 2003): Fixes & Security -- Repoman+Digests
1099    
1100     02 Apr 2003; Nicholas Jones <carpaski@gentoo.org> emerge: Added debug to
1101     the dep selection code in depgraph.
1102    
1103     02 Apr 2003; Nicholas Jones <carpaski@gentoo.org> cvstree.py: Added new
1104     module to handle cvs information without having to ask 'cvs status' many
1105     times to determine file locations.
1106    
1107     02 Apr 2003; Nicholas Jones <carpaski@gentoo.org> repoman: Major fix ups
1108     to ease the introduction of enhanced digests. Intelligent cvs queries
1109     and use of the new cvstree module for information about files in the tree.
1110     Auto-digests, auto-fetches trivial cvs changes, detects changelogs that
1111     exist but have not been added to cvs, and detects '*' in KEYWORDS.
1112    
1113     02 Apr 2003; Nicholas Jones <carpaski@gentoo.org> *: A typo fix or two.
1114     prepstrip: fixup for sed's issues with '\000' (made it \001).
1115    
1116     *portage-2.0.47-r12 (27 Mar 2003): Fixes & Security -- Repoman+Digests
1117    
1118     27 Mar 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: Moved all
1119     initialization error messages to stderr.write() calls so that the output
1120     doesn't get mixed will called data. Added a warning about not being in
1121     the portage group. Color touchups. Digest path fixups.
1122    
1123     27 Mar 2003; Nicholas Jones <carpaski@gentoo.org> repoman: Significant
1124     additions to the commit code to nicely handle the changes for enhanced
1125     digests. Added --commitmsg and --commitmsgfile flags to allow easier
1126     scripting. Added a REPOMAN environment variable to prevent portage from
1127     running do_updates(). Added 'grouplist' which makes groupings of subparts
1128     from a list of parts. Added do* functions to manage the recursion into
1129     the dirs of the repository.
1130    
1131     27 Mar 2003; Nicholas Jones <carpaski@gentoo.org> xpak.py: Change from
1132     lstat to stat... We're not concerned with links. Return 0 on not found.
1133    
1134     27 Mar 2003; Nicholas Jones <carpaski@gentoo.org> portageq: added new
1135     functions: best_visible, mass_best_visible, all_best_visible.
1136    
1137     27 Mar 2003; Nicholas Jones <carpaski@gentoo.org> emerge: Added '--digest'
1138     to force recreation of digests from the command line. Fixed portage version
1139     comparisions for the 'update portage please' notices.
1140    
1141     27 Mar 2003; Nicholas Jones <carpaski@gentoo.org> ebuild.sh: Added an
1142     extra rm of the 'successful' file.
1143    
1144     26 Mar 2003; Alain Penders <alain@gentoo.org> portageq: added
1145     mass_best_version method to help GUIs resolve best versions.
1146    
1147     *portage-2.0.47-r11 (22 Mar 2003): Fixes & Security -- Winding up 2.0 series.
1148    
1149     22 Mar 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: listdir()
1150     now is capable of recursive calls and listing only files. Used in new
1151     additions to digestgen() and digestcheck() for ebuilds and files/* --
1152     listdir(dir,recursive=0,filesonly=0). Digests now must contain all files
1153     from files/ and also the ebuild -- non-archives are prefixed with '/'.
1154     Full tbz2 fixes are now implemented... They can take a while to perform
1155     so status thingies are provided. update_ents() provides a batch-update
1156     as it would take rediculous amounts of time otherwise.
1157    
1158     22 Mar 2003; Nicholas Jones <carpaski@gentoo.org> : fixpackages calls
1159     portageexit() to save the mtimedb state so it actually works. :)
1160    
1161     22 Mar 2003; Nicholas Jones <carpaski@gentoo.org> emerge: Added
1162     'xtermTitle' calls to emergelog to set the title during phases of merging.
1163     Added more emergelog calls to provide more specific information.
1164    
1165     22 Mar 2003; Nicholas Jones <carpaski@gentoo.org> : Added two scripts to
1166     aid portage. 'fixdbentries' takes (old, new, path) and does an inteligent
1167     sed on all the db entries that should be changed. Used by global moves and
1168     in the tbz2 fixes. 'fixpackages' expires the updates timestamp and reloads
1169     portage to force do_updates() to run. Added missing Header lines.
1170    
1171     22 Mar 2003; Nicholas Jones <carpaski@gentoo.org> xpak.py: Correct off-by-8
1172     bug in last commit. infosize does not contain the full size... Offset
1173     begins _after_ the marker -- Added xpaksize for complete offset from EOF.
1174    
1175     22 Mar 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: Fix for
1176     die-on-wheel-group-missing bug. The logfiles don't cause the counter
1177     to be incremented and now match the merged package's COUNTER value.
1178     get_counter_tick_core(root) does not increment the counter. Sandbox is
1179     now working in all enabled cases, instead of just usersandbox. /var/db
1180     and binaries (assuming they are RW) are now updated to contain the proper
1181     info --- Added a 'fixdbentries' script to perform the updates to the data,
1182     and added a 'move_ent' function to class binarytree (not fakedbapi). Added
1183     a 'ebuild does not exist' error for the case of ebuilds in a wrongly named
1184     directory. Added a notice for invalid tbz2's. Removed the 'make.defaults'
1185     missing notice :-/. Duplicated the bintree creation so that it would be
1186     available for do_update(). Catch when 'updates' is missing from mtimedb.
1187    
1188     22 Mar 2003; Nicholas Jones <carpaski@gentoo.org> output.py: Added xterm
1189     title bar function to set the titles... xtermTitle(mystring). Only set
1190     if using color and terminal is [axE]term.
1191    
1192     22 Mar 2003; Nicholas Jones <carpaski@gentoo.org> repoman: Additions
1193     courtesy of Gerk and Vladamir... Checks all portage variables. Runs
1194     a check against invalid (but still parsable) syntax errors in names.
1195     Checks for invalid IUSE from use.desc and use.local.desc. Checks that
1196     licenses are valid. Checks for legal keywords with a default set or
1197     keywords.desc, if available. 'missingvar' tests moved to aux_get() calls.
1198    
1199     22 Mar 2003; Nicholas Jones <carpaski@gentoo.org> prepstrip: Added test
1200     to allow cross-compile-stripping to work properly. Rewrite the script to
1201     be whitespace-aware and recursively process directories at level 1.
1202    
1203     22 Mar 2003; Nicholas Jones <carpaski@gentoo.org> prepallstrip: Removed
1204     all code from this script and made it a call to "prepstrip $D".
1205    
1206     22 Mar 2003; Nicholas Jones <carpaski@gentoo.org> g-cpan.pl: Add in chomps
1207     for the portageq calls.
1208    
1209     22 Mar 2003; Nicholas Jones <carpaski@gentoo.org> emerge: Allow
1210     --fetchonly of block'd packages.
1211    
1212     22 Mar 2003; Nicholas Jones <carpaski@gentoo.org> ebuild.sh: Cleanups and
1213     corrections for sandbox which has been disabled and broken for a couple
1214     revisions now. use_{enable,with} die messages removed as they are in sub-
1215     shells when used and won't kill the merge --- Moved to echo >&2.
1216    
1217     21 Mar 2003; Nicholas Jones <carpaski@gentoo.org> xpak.py: Updates to make
1218     the xpak code self-sustaining. Added basic documentation to the functions
1219     and a description of the format in the comments at the top of the module.
1220    
1221     *portage-2.0.47-r10 (13 Mar 2003): Fixes -- Winding up 2.0 series.
1222    
1223     13 Mar 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: Less strict
1224     check of permissions when fixing permissions for userpriv -- only requires
1225     02070 and group portage instead of 02770 for check.
1226    
1227     13 Mar 2003; Nicholas Jones <carpaski@gentoo.org> g-cpan.pl: Fix to the
1228     call to portageq.
1229    
1230     13 Mar 2003; Nicholas Jones <carpaski@gentoo.org> etc-update: Fix for
1231     deleted files in a CONFIG_PROTECT situation.
1232    
1233     13 Mar 2003; Nicholas Jones <carpaski@gentoo.org> emerge: fix for keepwork
1234     and keeptemp ** MUST ENSURE THAT CLEAN CLEANS BEFORE A FULL MERGE.
1235    
1236     12 Mar 2003; Nicholas Jones <carpaski@gentoo.org> emerge: Added more
1237     conditions on rsync -- Proper error detection. Rsync failures will not
1238     cause a cache regeneration. Portage no longer considers masked portages
1239     candidates for 'An update to portage'.
1240    
1241     *portage-2.0.47-r9 (10 Mar 2003): Fixes -- cvs-src, ebuild.sh, repoman
1242    
1243     10 Mar 2003; Nicholas Jones <carpaski@gentoo.org> make.conf*: Adjusted
1244     the LOGDIR message and change the default location to /var/log/portage.
1245    
1246     10 Mar 2003; Nicholas Jones <carpaski@gentoo.org> repoman: One more fix
1247     for the PORTDIR setting -- '/usr/portage' was matching '/usr/portage.cvs'.
1248    
1249     10 Mar 2003; Nicholas Jones <carpaski@gentoo.org> etc-update: Added the
1250     capability to automerge all files in the list -- with out without prompts.
1251    
1252     10 Mar 2003; Nicholas Jones <carpaski@gentoo.org> emerge: Added messages
1253     on failure to create a depgraph -- Helps with bad DEPEND detection. Made
1254     'emerge sync' stop if it fails, and not update cache.
1255    
1256     10 Mar 2003; Nicholas Jones <carpaski@gentoo.org> ebuild.sh: added an
1257     external extra_functions.sh file with extra functions for portage --
1258     it is flag-o-matic and pieces of eutils presently. Removed libdir/incdir
1259     from einstall(). Added 'keepwork' to keep the source code after a package
1260     is merged. Removed the 'local' declaration of ROOT in dyn_install() --
1261     this fixes has_version in src_install(). Fixed the sourcing of environment
1262     so that variables are peristent across stages of a merge. Removed the
1263     SANDBOX vars from the environment file, as that upsets SANDBOX.
1264    
1265     10 Mar 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: Fixes to
1266     permission problems with cvs-src and ccache (removed nested try's). Log
1267     counter fix -- One log per package now.
1268    
1269     *portage-2.0.47-r8 (02 Mar 2003): Fixes -- cvs-src, ebuild.sh, repoman
1270    
1271     02 Mar 2003; Nicholas Jones <carpaski@gentoo.org> *: Fixes to eclass
1272     errors and messages -- raise on not found. emerge --debug works for
1273     ebuilds with syntax errors now -- needs better implimentation though,
1274     debug=0 in params can't be used due to scope limits.
1275    
1276     28 Feb 2003; Nicholas Jones <carpaski@gentoo.org> *: reorg ebuild.sh again
1277     to ensure that aliases are expanded properly. Repoman now determines the
1278     proper PORTDIR to set when loading portage to scan the cvs tree. portage.py
1279     fixes for cvs-src permission problems with userpriv.
1280    
1281     *portage-2.0.47-r7 (27 Feb 2003): Quick fix for eerror() problem.
1282    
1283     *portage-2.0.47-r6 (26 Feb 2003): Drop deprecated warnings for new syntax.
1284    
1285     26 Feb 2003; Alain Penders <alain@gentoo.org> emerge: Drop deprecated
1286     warnings for new syntax. Don't make people switch to the new syntax
1287     until it's agreed on by everyone.
1288    
1289     *portage-2.0.47-r5 (26 Feb 2003): Wicked Fast, BugFree v3.1, UserPriv
1290    
1291     26 Feb 2003; Nicholas Jones <carpaski@gentoo.org> *: Update docs and help
1292     again to drop --system and --world, and pull them from emerge's command
1293     line. General cleanups.
1294    
1295     26 Feb 2003; Nicholas Jones <carpaski@gentoo.org> emerge/portage.py: Fixes
1296     to the cache directory permissions -- all dirs are properly owned by group
1297     portage now. Add CCACHE_SIZE setting so we set a value for ccache. If the
1298     dirs are set to the wrong perms, make sure they get changed recursively.
1299    
1300     26 Feb 2003; Nicholas Jones <carpaski@gentoo.org> ebuild.sh: Rearraged the
1301     code blocks so that they are easier to follow -- no more code in between
1302     functions. All code follows function definitions now.
1303    
1304     *portage-2.0.47-r4 (25 Feb 2003): Wicked Fast, BugFree v3, UserPriv
1305    
1306     25 Feb 2003; Nicholas Jones <carpaski@gentoo.org> *: Update docs and help
1307     to match the deprecation of actions without '--' preceding them.
1308    
1309     25 Feb 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: Message
1310     updates. Fix secpass for portage user. Set PORTAGE_GID for ebuild.sh to
1311     use regardless of GID in use (wheel/portage). Only try and delete things
1312     in PORTAGE_TMPDIR if we have perms to do it... see secpass note. Moved the
1313     cachedir creation after settings in created so that we can use spawn instead
1314     of system for the calls to 'chown/chmod -R'. Fix the note on make.defaults.
1315     Fix for the 404 catcher in the fetch code.
1316    
1317     25 Feb 2003; Nicholas Jones <carpaski@gentoo.org> emerge: Move all actions
1318     into '--action' form -- Notify of deprecated usages. Moved the functions
1319     from the top of emerge down below the command line parser for readability.
1320     Kill FEATURES=noauto if we're running emerge -- it can break things. Make
1321     -U imply -u so people aren't confused. --debug now enables all debug
1322     variables in portage. Fix wheel/portage group requirements messages. Get
1323     the current portage version when doing rsync via the portage tree's files
1324     and not the loaded cache so that it is aware of changes immediately instead
1325     of the next run.
1326    
1327     25 Feb 2003; Nicholas Jones <carpaski@gentoo.org> ebuild.sh: Try to change
1328     to good a good path at the start of the ebuild to prevent operations from
1329     happening in places like home. After the ebuild's install phase, check to
1330     see if any unsafe perm combo's exist and die if they do. Fix permissions
1331     on the cachedir as we're changing them to root:portage. &> on environment
1332     file prevented it from actually creating the file -- changed to 2>. Change
1333     'true' to 'exit 0' to be a bit more explicit about what we're doing.
1334    
1335     24 Feb 2003; Alain Penders <alain@gentoo.org> repoman: Added nested/sub-shell
1336     die testing.
1337    
1338     23 Feb 2003; Alain Penders <alain@gentoo.org>: Added bin/portageq tool to
1339     provide access to portage internal information without using APIs that
1340     are changing. All tools that currently access portage information by
1341     importing portage.py and poking around in it should switch to using this
1342     tool instead. Changed some tools in bin/ to use it, so those won't break
1343     either.
1344    
1345     *portage-2.0.47-r3 (17 Feb 2003): Wicked Fast, BugFree v2, UserPriv
1346    
1347     22 Feb 2003; Nicholas Jones <carpaski@gentoo.org> bin/: added dispatch-conf
1348     and db-fix.pl to the bins. Looking at dispatch-conf to replace etc-update
1349     written by Jeremy Wohl (bug 14079). db-fix.pl is a rescue tool that Blizzy
1350     wrote up to recreate/repair counter files in the DB -- shouldn't be needed
1351     anymore as portage fixes the counter at every load of the counter, but we
1352     will hang on to it just in case.
1353    
1354     22 Feb 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: moved the
1355     wheelgid references to portage_gid references. Wheel is being deprecated.
1356     Added notice to baselayout message that group portage controls everything
1357     now. Killed the BASH_ENV settings -- moved the reference to /etc/portage/
1358     in case it's desired in some way -- This fixes AROUND ONE HUNDRED reports
1359     on 2.0.47-r2. Try/catch invalid tbz2's -- should fix a couple bad tarball
1360     bugs. Make the prelink call spawn'd without sandbox. buildpkg/userpriv
1361     fix via actionmap (Jasmin Buchert; bug 16106).
1362    
1363     22 Feb 2003; Nicholas Jones <carpaski@gentoo.org> emerge: --upgradeonly
1364     added from jrray's patch; added some slot handling. --deep got a short
1365     flag 'D'. 'info' can be run by non-root. '--quiet' kills all but package
1366     names on searches. Basic slot detection added to the pretend output so
1367     that it doesn't always say downgrade. Ignore block list when fetching.
1368     Can use RSYNC_EXCLUDEFROM to select a from for rsync to --exclude-from;
1369     (Michael Sterrett; Bug 15882). 'emerge rsync' deletes the dbcachedir
1370     before it begins updates. Catch exceptions during rsync cache regen.
1371    
1372     22 Feb 2003; Nicholas Jones <carpaski@gentoo.org> ebuild.sh: General fixes
1373     to the spelling of things. 'cd $PORT_TMPDIR' corrected to the actual vars
1374     name. Stripping distcc from PATH if it is there before portage sets it.
1375     Same with ccache. If we try to compile with out unpacking, complain. Make
1376     sure to chown files to user portage.
1377    
1378     22 Feb 2003; Nicholas Jones <carpaski@gentoo.org> cnf/*: CFLAGS notes,
1379     pentium4 breaks things. Added more descriptions for FEATURES. Added
1380     RSYNC_EXCLUDEFROM description.
1381    
1382     22 Feb 2003; Nicholas Jones <carpaski@gentoo.org> *: Updates to the
1383     copyright headers.
1384    
1385     *portage-2.0.47-r2 (17 Feb 2003): Wicked Fast, BugFree, UserPriv
1386    
1387     18 Feb 2003; Alain Penders <alain@gentoo.org> portage-2.0.47-r2.ebuild:
1388     If $PORTAGE_TEST is set, skip the beeps/delay messages. Needed to make
1389     the regression test scripts bearable :-)
1390    
1391     17 Feb 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: Fixed the
1392     depcache code once again -- ebuild and cache were never set to the same
1393     mtimes. Removed last os.system() call.
1394    
1395     17 Feb 2003; Nicholas Jones <carpaski@gentoo.org> repoman: catdir fix.
1396     Added 'emerge-webrsync' from gentoolkit so users can use snapshots on
1397     initial installs.
1398    
1399     17 Feb 2003; Nicholas Jones <carpaski@gentoo.org> emergehelp.py: Updated
1400     it to the current calls and conventions. Added comments about etc-update
1401     and emerge-webrsync.
1402    
1403     17 Feb 2003; Nicholas Jones <carpaski@gentoo.org> emerge: Changed the
1404     search code around to use compiled re's instead of .lower() searches.
1405     Trivial touchups in spacing. Only write worldfile if not --pretend. Fix
1406     losing-packages-to-be-merged during merge bug. Allow options to change
1407     in a --resume call so that --buildpkg and such may be added.
1408    
1409     17 Feb 2003; Nicholas Jones <carpaski@gentoo.org> ebuild.sh: Added a
1410     PREROOTPATH to allow special paths to be added prior to root and ebuild's
1411     required pathes. ${S} is now generated prior to sourcing an ebuild so
1412     that it is available in the ebuild at source-time, as opposed to in the
1413     phases.
1414    
1415     *portage-2.0.47-r1 (16 Feb 2003): Wicked Fast + UserPriv
1416    
1417     16 Feb 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: Changed a
1418     few os.system calls to spawn calls. Added userpriv in features check to
1419     spawn. HOME is now placed in BUILD_PREFIX/homedir when userpriv is enabled.
1420     Valid command for doebuild() moved to the top of the function. Reorganized
1421     the directory creation code in doebuild(). HOME is cleaned for every merge
1422     if in userpriv. LOG_COUNTER fix for the per-ebuild logs -- Only one value
1423     is used per $PF now.
1424    
1425     16 Feb 2003; Nicholas Jones <carpaski@gentoo.org> emerge: Adjusted options
1426     to remove --autoclean and make it on-by-default unless killed in FEATURES
1427     with 'noclean'. Removed debug for --resume. Added RSYNC_TIMEOUT as some
1428     dialup and other users are experiencing problems with rsync never finishing
1429     a connection. Added check at the end of an rsync to notify the user when
1430     a new version of portage is available. Added --pretend capability/fix to
1431     the --resume code. No resume data and a --resume is no longer a failure.
1432    
1433     16 Feb 2003; Nicholas Jones <carpaski@gentoo.org> ebuild.sh: Updates to
1434     logic of ${T}/successful handling to allow proper cleaning. dyn_clean()
1435     will do a recursive dir removal after cleaning specific files. Recursive
1436     chown removed. CCACHE_DIR handled in portage.py now. Removed a few comments
1437     and unnecessary checks.
1438    
1439     16 Feb 2003; Nicholas Jones <carpaski@gentoo.org> cnf/*: added comments
1440     on FEATURES=noclean,noauto,userpriv,usersandbox
1441    
1442     15 Feb 2003; Nicholas Jones <carpaski@gentoo.org> emerge: Alain changed
1443     the .config() call in the search class to a .settings[] -- Speedup.
1444    
1445     14 Feb 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: Added
1446     resume to mtimedbkeys.
1447    
1448     14 Feb 2003; Nicholas Jones <carpaski@gentoo.org> emerge: --columns
1449     flag to support column output in --pretend. --resume support added
1450     to restart portage with the package list with which it stopped -- data
1451     is stored in mtimedb. Added '--verbose' to 'emerge info' to display
1452     all variables in settings.
1453    
1454     13 Feb 2003; Nicholas Jones <carpaski@gentoo.org> ebuild.sh: Fix to
1455     distcc and ccache to prevent them from calling themselves if they
1456     catch themselves in the path -- double path problem.
1457    
1458     13 Feb 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: Fixes to
1459     the aux_get() code for metacache updates to eclass deps. Debug output
1460     removal.
1461    
1462     13 Feb 2003; Nicholas Jones <carpaski@gentoo.org> emerge: More fixes
1463     to the calls to aux_get() for metacache code. Rearranged the option and
1464     action arrays. Added --nospinner flag.
1465    
1466     13 Feb 2003; Nicholas Jones <carpaski@gentoo.org> emerge: Reorg of flags.
1467     Addition of --noconfmem to prevent portage from yanking already-merged
1468     config files. Extra message in --version about missing gcc and sourcing
1469     /etc/profile to get it. Yanked the majority of the rsync cachedb update
1470     code -- Moved it to aux_get.
1471    
1472     13 Feb 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: Typo fixes.
1473     aux_get() now has a metacachedb param for using metadata cache over the
1474     initial call to doebuild() -- Should speed up rsync users regen time.
1475     Added support for --noconfmem via settings["NOCONFMEM"] in treewalk().
1476     Added sys.exit(1) on failure to move files during merge. Comment
1477     realignment.
1478    
1479     11 Feb 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: Fix the
1480     depcache code by adding in a missing stat call after regeneration.
1481     Call portageexit() in exithandler() so that mtimedb gets written out
1482     on cancelled runs. Add in --quiet option. Currently only kills the
1483     processing messages on emerge regen.
1484    
1485     11 Feb 2003; Nicholas Jones <carpaski@gentoo.org> ebuild.sh: Fix the
1486     eclass code to remove the double inherits cause by eclasses managing
1487     that on their own.
1488    
1489     *portage-2.0.46-r12 (07 Feb 2003): Fixups
1490    
1491     07 Feb 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: Move
1492     logdir check/generation code so that it's created before 'clean'. Fix
1493     the usemask/archkeys bug and a related bug with the var enabled. Fix
1494     to movefile() code to ensure symlinks are handled properly.
1495    
1496     07 Feb 2003; Nicholas Jones <carpaski@gentoo.org> ebuild.sh: Make per-
1497     ebuild logs use the counter to get a chronological list instead of a
1498     timestamp based one.
1499    
1500     07 Feb 2003; Nicholas Jones <carpaski@gentoo.org> emerge: If a package
1501     is requested to be updated but is not merged, still add it to world.
1502    
1503     07 Feb 2003; Nicholas Jones <carpaski@gentoo.org> *: Update to help.
1504     Mostly comments on --verbose. Clarification on make.conf* mirrorselect.
1505    
1506     *portage-2.0.46-r11 (04 Feb 2003): Fixups
1507    
1508     04 Feb 2003; Nicholas Jones <carpaski@gentoo.org> ebuild.sh: distcc
1509     fixups along with ccache fixups from the bug 13897 effort. Added more
1510     varaibles to the build data output. Allow CC/CXX to be set if they are
1511     not set in environment.
1512    
1513     04 Feb 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: Removed an
1514     unnecessary call to os.unlink() in movefile that resulted in it failing
1515     when moving files across devices. HTML 404 catcher -- if the distfile is
1516     a reasonable size, and it's got <title>.*(not found|404).*</title> in it
1517     it will be deleted and the next mirror persued.
1518    
1519     *portage-2.0.46-r10 (03 Feb 2003): Feature/Function Cleanups
1520    
1521     03 Feb 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: Added
1522     quotes to fallback checksum code to ensure it works on space-containing
1523     filenames. Error message added in writedict. Worldfile-depleeting bug
1524     fixed -- 'emerge -e world'+AUTOCLEAN would cause every package in world
1525     to be removed from the worldfile to be removed.
1526    
1527     03 Feb 2003; Nicholas Jones <carpaski@gentoo.org> make.conf: updated the
1528     commentary about AUTOCLEAN.
1529    
1530     03 Feb 2003; Nicholas Jones <carpaski@gentoo.org> etc-update: Added in
1531     automerge functionality for trivial changes. Comments and whitespace
1532     are just merged without asking when it's enabled.
1533    
1534     03 Feb 2003; Nicholas Jones <carpaski@gentoo.org> emerge: redundant cmd
1535     line flags warning. Show enabled/disabled USE flags on -vp (Masatomo
1536     Nakano). Missing changelog fix for --changelog. Added an rsync timeout
1537     of 60 seconds and a message on fail due to timeout.
1538    
1539     03 Feb 2003; Nicholas Jones <carpaski@gentoo.org> ebuild.sh: CC/CXX fix
1540     to override profile.env settings. FEATURES=distcc support to get past
1541     profile.env's CC settings/lockdown. If CBUILD is defined, it is appended
1542     to econf's output in a --build= statement. Added .unpacked marker to
1543     the unpack code to ensure a proper unpack phase.
1544    
1545     01 Feb 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: Adjusted
1546     the arch.list code to be a general masking setup. /etc/make.profile/
1547     and /etc/portage/ have use.mask files that are concatenated. On fetch,
1548     if downloader reports failure, then check that filesize<digestfilesize
1549     and continue onto the next mirror before dying.
1550    
1551     27 Jan 2003; Nicholas Jones <carpaski@gentoo.org> ebuild.sh/portage.py:
1552     eclass fixups for newdepend issues where newdepend operates on RDEPEND
1553     prior to it being set to default by ebuild.sh. Repoman fix for multi-
1554     arch failures by excluding /usr/portage/profiles/arch.list entries from
1555     consideration, excluding $ARCH.
1556    
1557     *portage-2.0.46-r9 (14 Jan 2003): portage restart fix
1558     15 Jan 2003; Nicholas Jones <carpaski@gentoo.org> emerge: fixed the
1559     missing tabs from the cvs diff backport.
1560    
1561     *portage-2.0.46-r8 (14 Jan 2003): touchup KV{,ERS} for public stable
1562    
1563     *portage-2.0.46-r7 (14 Jan 2003): Backport from cvs and fixes.
1564     portage-2.0.46* :: EXCUDES ALL PORTIONS RELATING SPECIFICALLY TO USERPRIV
1565    
1566     14 Jan 2003; Nicholas Jones <carpaski@gentoo.org> portage.py: Persistant
1567     KV and KVERS on depend calls. Sandbox violation of do_upgrade() caught.
1568    
1569     14 Jan 2003; Nicholas Jones <carpaski@gentoo.org> emerge: --buildpkg
1570     touchups and forward porting of some of 2.0.46-r6. Restart on -r0/proper
1571     versions of portage due to VERSION not matching pkgsplit output fixed.
1572    
1573     14 Jan 2003; Nicholas Jones <carpaski@gentoo.org> ebuild.sh: 20% speedup
1574     in dep generation by removing all external app calls. Moved KVERS to
1575     portage to make it persistent during dep calls. Other code moved into
1576     conditionals based on $*!=depend. chmod's swaped with umask.
1577    
1578     11 Jan 2003; Jack Morgan <jmorgan@gentoo.org> cnf/make.conf.sparc:
1579     updated make.conf.sparc to add CFLAGS for sparc32 and sparc64
1580    
1581     08 Jan 2003; Nicholas Jones <carpaski@gentoo.org> bin/g-cpan.pl:
1582     Added from bug 3450 -- Creates and merges perl module ebuilds on-the-fly
1583     from cpan and merges them.
1584    
1585     08 Jan 2003; Mark Guertin <gerk@gentoo.org> cnf/make.conf.ppc:
1586     updated make.conf.ppc to remove G3 options for CFLAGS and other
1587     small tweaks
1588    
1589     *portage-2.0.47 (06 Jan 2003): UserPriv
1590    
1591     06 Jan 2003; Nicholas Jones <carpaski@gentoo.org> portage.py:
1592     Forced HOME to BUILD_PREFIX regardless of user. Added in a 'rm -Rf' notice
1593     to readonly-fs/Full-Disk notices. Disabled the usepkg on buildpkg function
1594     of portage. digraph.hasallzeros() added -- Determines if tree is zero depth.
1595    
1596     06 Jan 2003; Nicholas Jones <carpaski@gentoo.org> cnf/*: Added in the
1597     PORT_LOGDIR option and description. Also added a GENTOO_MIRRORS section
1598     back into the make.conf* files so that users are aware that they need to
1599     specify ibiblio. Killed the linefeeds in the sparc conf.
1600    
1601     06 Jan 2003; Nicholas Jones <carpaski@gentoo.org> emerge: options and
1602     actions fixup. Added new short options and long options. --buildpkgonly
1603     now works and restricts the process to deplists of zero depth. Updated
1604     the help for portage, and created a seperate shorthelp function with
1605     the terse, options-only, versions of the regular help. Fixed the env_update
1606     call after --fetchonly runs.
1607    
1608     06 Jan 2003; Nicholas Jones <carpaski@gentoo.org> ebuild.sh:
1609     touchups to the user priv and logging code to kill the invalid user
1610     messages when portage:portage doesn't exist on the system.
1611    
1612     *portage-2.0.47_pre4 (03 Jan 2003): UserPriv Works + Per-Ebuild logging
1613    
1614     04 Jan 2003; Nicholas Jones <carpaski@gentoo.org> portage.py:
1615     tokenize() fixups to remedy the || reduce problems.
1616    
1617     04 Jan 2003; Nicholas Jones <carpaski@gentoo.org> prepall:
1618     Fixup for '//' problem.
1619    
1620     03 Jan 2003; Nicholas Jones <carpaski@gentoo.org> ebuild.sh:
1621     Support for per-ebuild logging via PORT_LOGDIR variable. ebuild.sh
1622     now can do usermode compiles _and_ maintain the enviroment with a
1623     few minor restrictions like changing portage variables.
1624    
1625     *portage-2.0.47_pre3 (02 Jan 2003): Forward port of fixes & New fixes
1626    
1627     02 Jan 2003; Nicholas Jones <carpaski@gentoo.org> emerge:
1628     tbz2 handling improved -- checks current, pkgdir/All/x, pkgdir/x.
1629     -r0 removal on current ver to stop people from complaining about it.
1630     More info added to 'emerge info' output.
1631    
1632     02 Jan 2003; Nicholas Jones <carpaski@gentoo.org> portage.py:
1633     Spaces in filenames fix for prelink-capable systems. Exception caused
1634     by invalid or unsatisfiable '||' dependancies caught and warned about.
1635     auxdbkey order fix. dbcachedir now ensures a '/' before the cache dir.
1636    
1637     02 Jan 2003; Nicholas Jones <carpaski@gentoo.org> prep*:
1638     Fixes from Azarah to make the included files more proper.
1639    
1640     26 Dec 2002; Phil Bordelon <sunflare@gentoo.org> man/emerge.1:
1641     Added documentation of the --deep option.
1642    
1643     *portage-2.0.46-r5 (30 Dec 2002): Touchups and sparc confs
1644    
1645     30 Dec 2002; Nicholas Jones <carpaski@gentoo.org> *:
1646     fix for prelink unmerge problems. small touches to outputs.
1647     sparc configs added. Azarah's fixups for the prep* scripts.
1648     Changes to 'emerge info' output. tbz2 prefixes PKGDIR/All if the
1649     tbz2 doesn't exist in the current dir.
1650    
1651     *portage-2.0.46-r3 (24 Dec 2002): Backport of fixes in 2.0.47_pre2
1652    
1653     *portage-2.0.47_pre2 (24 Dec 2002): Feature: userpriv compiles
1654    
1655     Tokenizer fixup courtasy of Evgeny Roubinchtein. unalias -a in ebuild.sh.
1656     Moved the help() to emergehelp.py. prepallman fixup for missed symlinks.
1657     More info provided for portage-user-missing message. FEATURES=sandboxuser
1658     not provides sandbox in compile phase along with userpriv. mtimedb
1659     exception should actually be caught now.
1660    
1661     *portage-2.0.47_pre1 (21 Dec 2002): Feature: userpriv compiles
1662    
1663     21 Dec 2002; Nicholas Jones <carpaski@gentoo.org> *:
1664     ebuild.sh: portage user setup. dyn_setup is always run before calls to
1665     unpack,compile,install. emerge: infodirs cleanup, traceback on invalid
1666     dir fix. Proper regen on info change. portage.py: uid/gid discovery and
1667     check code. PRELINK_PATH and PRELINK_PATH_MASK added and renamed. Made
1668     HOME set to BUILD_PREFIX when HOME is unset. Patched in UserPriv compile
1669     code and checks and complaints to ensure smooth integration. Reorganized
1670     chown calls to ensure things get set right for userpriv and not. Sandbox:
1671     UID check to prevent non-root errors patched in.
1672    
1673     *portage-2.0.46-r2 (18 Dec 2002): Feature Stable Release Prelink + Bug Fixes
1674    
1675     18 Dec 2002; Nicholas Jones <carpaski@gentoo.org> portage.py, emerge:
1676     Traceback fix for blocking packages in the restart check in emerge. Added
1677     missing import for commands in portage.py.
1678    
1679     *portage-2.0.46 (18 Dec 2002): Feature Stable Release Prelink + Bug Fixes
1680    
1681     18 Dec 2002; Nicholas Jones <carpaski@gentoo.org> portage.py:
1682     PRELINK_MASK adds ignore paths for prelink.conf. Error message
1683     adjustments for appearance/readability. auxdbkey changes.
1684    
1685     18 Dec 2002; Nicholas Jones <carpaski@gentoo.org> emerge:
1686     --changelog displays changelogs of packages on update. gcc version
1687     fix for --version. Missing indent in masked output corrected. Some
1688     color additions. Prelink code removed -- Users can do it instead.
1689    
1690     18 Dec 2002; Nicholas Jones <carpaski@gentoo.org> ebuild.sh:
1691     use_{enable,with}() work now. Rearranged auxdbkeys again.
1692    
1693     17 Dec 2002; Martin Schlemmer <azarah@gentoo.org> bin/ebuild.sh:
1694     Regenerate /lib/cpp and /usr/bin/cc in pkg_setup if they are not
1695     files to ease the broken pkg_postrm() some gcc have.
1696    
1697     *portage-2.0.46_pre2 (15 Dec 2002): Feature Prerelease: prelink
1698    
1699     15 Dec 2002; Nicholas Jones <carpaski@gentoo.org> emerge/portage.py:
1700     Fixups. PRELINK_MASK code. 'prelink -af' in post_emerge().
1701    
1702     15 Dec 2002; Mark Guertin <gerk@gentoo.org> cnf.make.conf.ppc:
1703     updated incorrect CFLAG option and appended -mabi=altivec info
1704    
1705     *portage-2.0.46_pre1 (15 Dec 2002): Feature Prerelease: prelink
1706    
1707     15 Dec 2002; Nicholas Jones <carpaski@gentoo.org> portage.py: Counter
1708     fixups. Prelink code.
1709    
1710     15 Dec 2002; Nicholas Jones <carpaski@gentoo.org> bin/f*: Made them
1711     loop over multiple files instead of just doing one.
1712    
1713     13 Dec 2002; Nicholas Jones <carpaski@gentoo.org> emerge/portage.py:
1714     Added disabled prelink code. Needs a little more work. Gave portage the
1715     ability to restart on upgrades to the portage version. Ebuilds for prior
1716     versions will intentionally die on upgrade. USE=build disables it so
1717     bootstrap isn't affected.
1718    
1719     *portage-2.0.45-r5 (13 Dec 2002): Feature addition: PDEPEND+fixes
1720    
1721     13 Dec 2002; Nicholas Jones <carpaski@gentoo.org> emerge/portage.py:
1722     Added restart on portage upgrade code and adjusted ebuild to accomplish
1723     this until version matches -r5.
1724    
1725     *portage-2.0.45-r4 (11 Dec 2002): Feature addition: PDEPEND
1726    
1727     11 Dec 2002; Nicholas Jones <carpaski@gentoo.org> ebuild.sh/portage.py:
1728     Added [CDEPEND, PDEPEND, REBUILD] to auxdbkeys and updated ebuild.sh.
1729     Prevented autoclean on fetchonly.
1730    
1731     11 Dec 2002; Nicholas Jones <carpaski@gentoo.org> emerge:
1732     Added support for PDEPEND. Rewrote some dep handling variables for
1733     readability and ease of use.
1734    
1735     *portage-2.0.45-r3 (09 Dec 2002): Touchups.
1736    
1737     09 Dec 2002; Nicholas Jones <carpaski@gentoo.org> ebuild.sh: Fixed
1738     use_enable() and use_with() so that they actually work -- also don't
1739     have to specify 2nd parameter, 1st is assumed.
1740    
1741     09 Dec 2002; Nicholas Jones <carpaski@gentoo.org> emerge: Added previous
1742     version/downgrade messages to --pretend. Extra message to notify of dep
1743     calculation failure as bad deps can exit portage without error.
1744    
1745     09 Dec 2002; Nicholas Jones <carpaski@gentoo.org> portage.py: Attempt
1746     at fixing the sandbox-crashes-missing-HOME bug. Added a try/catch around
1747     the virts/'del x' code to prevent tracebacks on boxes without a virtuals
1748     file.
1749    
1750     06 Dec 2002; Nicholas Jones <carpaski@gentoo.org> emerge: Fixed 'xfrom'
1751     variable-used-before-assignment message on masked ebuilds.
1752    
1753     06 Dec 2002; Nicholas Jones <carpaski@gentoo.org> portage.py: Disabled
1754     writes to DBs when sandbox is enabled.
1755    
1756     03 Dec 2002; Nicholas Jones <carpaski@gentoo.org> portage.py: Fixed a
1757     nice bug where python was writing 'L' at the end of long() types for
1758     mtimes.
1759    
1760     *portage-2.0.45 (02 Dec 2002): More bug fixes for stable.
1761    
1762     02 Dec 2002; Nicholas Jones <carpaski@gentoo.org> portage.py, output.py:
1763     Added several color options and functions to output.py. 'DO NOT EDIT'
1764     notices added to .env generated profile settings files. Touchups and
1765     nofetch() call for restricted fetches. Moved some file IO code for
1766     SLOTs into a try/catch. { mtimedb fixups. Eclass aux_get() error fix.
1767     aux_get() error fix via try/catch with magically-missing ebuild when
1768     doing stat on it. Enabled full eclass()/inherit code. Added code to
1769     flushmtimedb() entries by key name. } <-- aux_get() fixups. Made
1770     starttime into a long... time.time() is apparently overflowing int().
1771    
1772     02 Dec 2002; Nicholas Jones <carpaski@gentoo.org> bin/*:
1773     prep*: Fixed missed man pages and corrected loops to be fairly complete
1774     in the included files. quickpkg: Loop to do each in $@ (Peter Sharp).
1775    
1776     02 Dec 2002; Nicholas Jones <carpaski@gentoo.org> emerge:
1777     Yank '++' from searches and make it '\+\+' so that it works. Reformated
1778     'all ebuilds are masked' message to be a little more obvious. env_update()
1779     AFTER autoclean... not in autoclean -- Fixes ldconfig issues. Typo fixes.
1780    
1781     02 Dec 2002; Nicholas Jones <carpaski@gentoo.org> ebuild.sh:
1782     Added has(), general use()-like function -- 'has this_thing $VAR' returns
1783     shell true or false. Added has_version(), portage call to determine if
1784     a specified DEPEND-atom is installed -- 'has_version ">=mozilla-1.2"'
1785     returns shell true or false. Added best_version(), portage call to
1786     get the best/most-recently-merged version of a DEPEND-atom statement --
1787     'best_version ">=mozilla-1.0"' prints a string. pkg_nofetch() displays
1788     SRC_URIs by default on RESTRICT -- Can be redefined to display custom
1789     messages. die() on unpack() failure added. Courtasy of SpanKY: Added
1790     use_with() and use_enable() for --with-thing and --enable-thing.
1791     'use_with gd libgd' would print --with-libgd if gd was in USE and
1792     --without-libgd if not.
1793    
1794     19 Nov 2002; Martin Schlemmer <azarah@gentoo.org> cnf/etc-update.conf:
1795     Add 'menu' config item and note about it needing dev-utils/dialog, as
1796     a lot of users do not know about this nifty feature.
1797    
1798     14 Nov 2002; Phil Bordelon <sunflare@gentoo.org> man/emerge.1:
1799     Cleaned up the more recent edits to the man page to more closely
1800     match the previous format, fix various typos, and so on. Expanded
1801     the REPORTING BUGS section, and made the PACKAGE MASKING part of the
1802     NOTES a stand-alone section.
1803    
1804     *portage-2.0.44 (11 Nov 2002): bug fixes and 1.2 rescue/install setup
1805    
1806     11 Nov 2002; Nicholas Jones <carpaski@gentoo.org> *:
1807     bin/*: fixes for spaces-in-filename issues, lots of quotes added. conf/*:
1808     touched up comments and warning. Added RSYNC_RETRIES. ebuild.sh: exit now
1809     reports the failing ebuild's $CATEGORY/$PF. Added EXTRA_ECONF to econf().
1810     emake: added EXTRA_EMAKE. emerge: RSYNC_RETRIES curtasy of Christopher
1811     Sharp. Random comment fixes. portage.py: Random touchups. KV extraction
1812     fixup for new ROOTs. ARCH missing in profile fix. Fix for packages/All
1813     missing dir traceback. INFOPATH/INFODIR fix. Added INFOPATH to specials.
1814     portage.py: Touchups to the mtimedb-touching code. Fixes for the broken
1815     os.path.normpath() leading '//' bug. Added a modified chuck of Phoen][x's
1816     dist size patch.
1817    
1818     09 Nov 2002; Nicholas Jones <carpaski@gentoo.org> portage.py:
1819     Fixups for KV.
1820    
1821     08 Nov 2002; Nicholas Jones <carpaski@gentoo.org> emerge:
1822     Fix for missing-glibc-bug in --version.
1823    
1824     08 Nov 2002; Nicholas Jones <carpaski@gentoo.org> portage.py:
1825     Fix for cfgdictfile traceback when ROOT != '/'. Fix for missing kernel
1826     headers -- checks usr/src/linux, then /usr/include, then if merging
1827     from sys-kernel ignore error.
1828    
1829     07 Nov 2002; Nicholas Jones <carpaski@gentoo.org> portage.py:
1830     Fix (part 2) for the USE="-*" arch-missing problem.
1831    
1832     03 Nov 2002; Nicholas Jones <carpaski@gentoo.org> portage.py:
1833     eclass() function uses a caching and cPickle storing method to determine
1834     currency of eclass-derived depcache entries. All previous methods are
1835     already removed. eclass_save() is called via store() now. Stripped some
1836     cruft from aux_get(). Error message touchups.
1837    
1838     03 Nov 2002; Nicholas Jones <carpaski@gentoo.org> emerge:
1839     A couple message touchups.
1840    
1841     29 Oct 2002; Nicholas Jones <carpaski@gentoo.org> emerge:
1842     Moved the autoclean section under the --pretend check so it doesn't flip
1843     out when running '-f'. Preliminary support for binary-only methods.
1844     --usepkgonly (implies --usepkg) to force errors is binaries don't exist.
1845    
1846     27 Oct 2002; Daniel Robbins <drobbins@gentoo.org> new*: changed "&&" to "||"
1847     to provide even better protection against mis-use of these commands.
1848    
1849     *portage-2.0.43 (27 Oct 2002): Bug fix release
1850    
1851     27 Oct 2002; Nicholas Jones <carpaski@gentoo.org> emerge:
1852     AUTOCLEAN="yes" on by default. Added in a clean phase after the merge
1853     phase so clashing library versions do not remain installed when ldconfig
1854     is run. This should close up the symlinks-being-removed bugs.
1855    
1856     27 Oct 2002; Nicholas Jones <carpaski@gentoo.org> cnf/*:
1857     Miscelaneous typo fixes. Added PORTDIR_OVERLAY description in make.conf.
1858    
1859     26 Oct 2002; J Robert Ray <jrray@gentoo.org> portage.py:
1860     Don't act like the download failed if after successfully downloading
1861     a file its size doesn't match the file size in the digest. Treat
1862     this as a mismatched digest condition instead.
1863    
1864     26 Oct 2002; Nicholas Jones <carpaski@gentoo.org> portage.py:
1865     Reversed the defaults on env_update() so it does a full ldconfig instead
1866     of a non-symlink ldconfig. Fixed the typo in the 'invalid conf' notices.
1867    
1868     *portage-2.0.42 (24 Oct 2002): Bug fix release
1869    
1870     24 Oct 2002; Nicholas Jones <carpaski@gentoo.org> make.defaults.5:
1871     Removed this file. It is horribly out of date and completely
1872     wrong to boot. Users shouldn't be modifying the 3 lines in this file
1873     anyway. They are obvious if you understand conf and defaults.
1874    
1875     24 Oct 2002; Nicholas Jones <carpaski@gentoo.org> emerge:
1876     Added missing return statements to select_dep() that caused unmet packages
1877     to be ignored. Touchups to 'emerge info' and 'emerge --version' output.
1878     Added --delete to --delete-after so that it actually deletes in rsync.
1879    
1880     24 Oct 2002; Nicholas Jones <carpaski@gentoo.org> portage.py:
1881     Warning touchups. Replaced constants (9) to index("INHERITED").
1882    
1883     23 Oct 2002; Nicholas Jones <carpaski@gentoo.org> bin/new*:
1884     Fix for "running as a root user" bug... code does 'rm -rf /' if
1885     variables aren't defined in environment... That's a bad thing.
1886    
1887     23 Oct 2002; Nicholas Jones <carpaski@gentoo.org> portage.py:
1888     Possible fix for the aux_get() issues and IUSE.
1889    
1890     22 Oct 2002; Nicholas Jones <carpaski@gentoo.org> portage.py:
1891     noauto got lost in some weird conflicts of .38, added it back.
1892    
1893     22 Oct 2002; Nicholas Jones <carpaski@gentoo.org> emerge:
1894     Primitive logging via emergelog(). countdown(N,str) function does N second
1895     countdowns of the action 'str'. Error messages on dependency traceback
1896     via try/except on select_dep(). Removed the 'unavailable' warning. Message
1897     updates. Added logging of basic actions to /var/log/emerge.log. Added
1898     package/to-go counter. 'emerge info' displays a number of useful variables
1899     that is good for bug reports.
1900    
1901     22 Oct 2002; Nicholas Jones <carpaski@gentoo.org> prepallstrip:
1902     Bug 9508, fix for MSB architectures strip. Previous check assumed only
1903     LSB objects could/should be stripped. (*LSB -> *SB) [Joky@#gentoo-sparc]
1904    
1905     *portage-2.0.41 (20 Oct 2002): Bug fix release
1906    
1907     20 Oct 2002; Nicholas Jones <carpaski@gentoo.org> portage.py:
1908     stickies=[] lists the variables that will be kept/used as sticky vars,
1909     not yet implimented. Fixed several relative symlink bugs by adding
1910     abssymlink() to portage to determine real/absolute targets. env_update()
1911     modified to fix bug 9308 symlinks bug. Bug 8348, request for error messages
1912     instead of tracebacks/dies on parse errors, now caught on a per file basis
1913     for system config files, includes descriptive messages. Fix for missing
1914     profile traceback in new prepend'd-arch code. Typo fixes in symlink code.
1915     DISABLED 'KEYWORD="" == available' code, DEFAULT IS MASKED NOW. Major
1916     update to masking code, CONFIG_PROTECT can be layered with _MASKs, and
1917     update_protect() now sets the self.protect* variables. Condensed and
1918     reordered the unmerge code, now checks existance, cfgprotect, then mtimes.
1919    
1920     20 Oct 2002; Nicholas Jones <carpaski@gentoo.org> emerge:
1921     Bug 8767: Added 'buildpkg' to FEATURES to specify always-buildpkg.
1922     Updated the --version output to display profile and gcc version.
1923     Bug 8083: Eliminate spinner when terminal is not a tty. Bug 7688:
1924     fixed search vs. searchdesc differences by adding 'cat/pack' split.
1925     Bug 9308: Symlinks were being killed by ldconfig, fixed by changing
1926     how/when ldconfig was allowed to set symlinks. rsync command touchups,
1927     --delete-after so that a failed rsync won't leave a user
1928     without/with-few packages in portage. More warnings to depclean.
1929    
1930     20 Oct 2002; Nicholas Jones <carpaski@gentoo.org> ebuild.sh:
1931     Added die to gzip in unpack()
1932    
1933     20 Oct 2002; Nicholas Jones <carpaski@gentoo.org> make.conf*:
1934     Added in useful variables and descriptions+warnings of their uses.
1935    
1936     20 Oct 2002; Nicholas Jones <carpaski@gentoo.org> make.globals*:
1937     Added in large "do not edit" message.
1938    
1939     16 Oct 2002; Nicholas Jones <carpaski@gentoo.org> portage.py:
1940     Fixed an mtimes issue. --update on a package might yank non-cfgprot
1941     files during the clean-phase because they didn't have mtimes updated.
1942    
1943     15 Oct 2002; Nicholas Jones <carpaski@gentoo.org> portage.py:
1944     Added 'IUSE' to the auxdbkey list. Fixed random aux_get() errors
1945     caused by random empty files in the dep cache.
1946    
1947     15 Oct 2002; Nicholas Jones <carpaski@gentoo.org> ebuild.sh
1948     Actually committed the --host portion of econf.
1949    
1950     15 Oct 2002; Martin Schlemmer <azarah@gentoo.org> portage.py, missingos.c:
1951     Remove testsandbox.sh, and comment code in portage.py that still
1952     used it to no real use. Add another '\' to the 'missingos_mknod__doc__'
1953     string in src/python-missingos/missingos.c to fix failure with gcc-3.3.
1954    
1955     *portage-2.0.40 (13 Sep 2002): Bug fix release
1956    
1957     15 Oct 2002; Nicholas Jones <carpaski@gentoo.org> portage.py, emerge:
1958     emerge depclean -- Removes all packages that are not explicitly or
1959     dependency merged.
1960    
1961     15 Oct 2002; Nicholas Jones <carpaski@gentoo.org> ebuild.sh:
1962     depend now prints IUSE. Doesn't do anything with it yet.
1963     unpack() -- unzip silently overwrites files ().
1964     econf() -- now specifies '--host=${CHOST}'
1965    
1966     15 Oct 2002; Nicholas Jones <carpaski@gentoo.org> make.globals:
1967     Touch ups + warning.
1968    
1969     15 Oct 2002; Brandon Low <lostlogic@gentoo.org> etc-update:
1970     Make etc-update find all the same CONFIG_PROTECT files as portage
1971     by importing it's settings from portage.
1972    
1973     *portage-2.0.39 (13 Sep 2002): Bug fix release
1974    
1975     13 Oct 2002; Nicholas Jones <carpaski@gentoo.org> portage.py:
1976     Bug 5926 -- If the fetchonly AND pretend flags are specified, then
1977     portage should give a list of all the SRC_URIs so that they can be
1978     downloaded or sent into another app. Made sandbox display name in
1979     'ps' as '[$PF] sandbox'.
1980    
1981     13 Oct 2002; Nicholas Jones <carpaski@gentoo.org> emerge:
1982     Bug 5926 -- See portage.py for today. (emerge -pf)
1983     Typo fixes.
1984    
1985     13 Oct 2002; Nicholas Jones <carpaski@gentoo.org> ebuild.sh:
1986     Added -q to unzip to make it quiet like the others.
1987     Bug 6033 -- Fix for infinate loop in eclasses in portage overlay.
1988    
1989     12 Oct 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: fix for
1990     doebuild() so that our rsync mirror will contain full digests and not just
1991     partial digests for x86.
1992    
1993     12 Oct 2002; Nicholas Jones <carpaski@gentoo.org> emerge:
1994     Added --progress to rsync. This puts the file progress meters
1995     back on. Users have requested this, and it's not detrimental.
1996     Just creates a lot of output, as the man page says: "It gives
1997     bored users something to look at."
1998    
1999     12 Oct 2002; Nicholas Jones <carpaski@gentoo.org> portage.py:
2000     Bug 6361 -- Added checking on directories to ensure that we can
2001     write to them before we try and traceback. Also added pieces to
2002     functions so that return conditions are propagated back to emerge
2003     so that it actually dies on errors. Message on condition details
2004     restart process.
2005    
2006     11 Oct 2002; Nicholas Jones <carpaski@gentoo.org> make*globals:
2007     Removed the tomcat configs from CONFIG_PROTECT
2008    
2009     11 Oct 2002; Nicholas Jones <carpaski@gentoo.org> doman:
2010     Bug 8208 -- Added flags and auto-location support for 'x' manpages.
2011     Added not-an-man-page message.
2012    
2013     11 Oct 2002; Nicholas Jones <carpaski@gentoo.org> dohtml:
2014     Bug 8208 -- Added 'js' to the include list, and added '-A' as an
2015     append flag. '-a' was a filter-down-to.
2016    
2017     11 Oct 2002; Nicholas Jones <carpaski@gentoo.org> portage.py:
2018     Bug 8964 -- Fix for read-only traceback in digestgen().
2019     Bug 8949 -- Fix for read-only traceback in doebuild()
2020     Bug 8284 -- Prepend ARCH _after_ use order processing. Prevents -*
2021     from killing the ARCH flag. Bug 7596 -- Set an mtime of 0 into
2022     CONTENTS if the file already exists on the FS. Allows the entry
2023     to be in the CONTENTS file. Condensed the protect/protect-mask
2024     code into one function in class dblink. Revised code to allow
2025     multi-level protects and masks.
2026    
2027     10 Oct 2002; Nicholas Jones <carpaski@gentoo.org> emerge:
2028     Bug 8552 -- typo fixes
2029    
2030     10 Oct 2002; Mark Guertin <gerk@gentoo.org> cnf/make.conf.ppc :
2031     Fixed type in reccomended CFLAGS for generic ppc (was 02, corrected
2032     to O2)
2033    
2034     09 Oct 2002; Nicholas Jones <carpaski@gentoo.org> portage.py:
2035     Fixed a bug where files less than 2 characters in /etc/env.d
2036     weren't checked correctly, and tracebacked env_update()
2037    
2038     07 Oct 2002; Martin Schlemmer <azarah@gentoo.org> ebuild.sh:
2039     Also set $TMP, as MDK among distros sets this, and it causes
2040     breakage during bootstrap. This should close bug #8101.
2041    
2042     07 Oct 2002; Mark Guertin <gerk@gentoo.org> man/ebuild.5 :
2043     Updated the man page to include missing functions in portage
2044    
2045     05 Oct 2002; Mark Guertin <gerk@gentoo.org> cnf/make.conf cnf/make.conf.ppc:
2046     Fixed typo (missing "/") in make.conf and make.conf.ppc, bug #7944
2047    
2048     28 Sep 2002; Daniel Robbins <drobbins@gentoo.org> ebuild.sh: remove
2049     deprecated "ld.so" from newdepend.
2050    
2051     *portage-2.0.38 (25 Sep 2002): Bug fix release
2052    
2053     25 Sep 2002; Daniel Robbins <drobbins@gentoo.org> emerge: now "emerge world"
2054     and "emerge system" don't replace packages. This closes bug #8282.
2055    
2056     21 Sep 2002; Daniel Robbins <drobbins@gentoo.org> portage-2.0.38.ebuild:
2057     Added additional perm check for /var/cache/edb/dep dirs and fixed perm
2058     settings in the ebuild's pkg_postinst(); this should close bug #7719.
2059    
2060     21 Sep 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: Added
2061     carpaski's patch to add PF to the sandbox's argv[0], closing bug #8141.
2062    
2063     19 Sep 2002; Daniel Robbins <drobbins@gentoo.org> emerge: tweaked emerge so
2064     that "--pretend" displays don't show "N" all the time.
2065    
2066     19 Sep 2002; Daniel Robbins <drobbins@gentoo.org> ebuild.sh: tweaked help to
2067     not list deprecated options.
2068    
2069     25 Sep 2002; Maik Schreiber <blizzy@gentoo.org> cnf/make.globals,
2070     cnf/make.globals.ppc: Added /opt/jakarta/tomcat/conf to CONFIG_PROTECT. Note
2071     by drobbins: this will be removed soon when this gets moved to an /etc/env.d
2072     file in the tomcat package.
2073    
2074     *portage-2.0.37 (19 Sep 2002): Gentoo Linux 1.4_rc1 version
2075    
2076     10 Sep 2002; Mark Guertin <gerk@gentoo.org> cnf/make.conf.ppc : Backed down
2077     CFLAGS from -O3 to -O2 on ppc as -O3 has proven to be unreliable on all
2078     PowerPC-based machines
2079    
2080     09 Sep 2002; Daniel Robbins <drobbins@gentoo.org> emerge: new parameterized
2081     create() engine, security pass fixes ("emerge" as non-root doesn't print
2082     "root access required" but shows help instead), emerge --pretend output fixes
2083     ("to /" lines are dropped and only displayed if installation root != "/".)
2084     New (and currently unofficial and undocumented) "--deep" and "--selective"
2085     options that correspond to their respective create() parameters. Using
2086     "--deep" will enable "deep emerging" -- updating all deps even if the parent
2087     doesn't need updating. The new parametrized create() is also much cleaner
2088     than the previous incarnation.
2089    
2090     09 Sep 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: os.chdir() ->
2091     chdir() fix, enhanced fetch() digest corruption handling.
2092    
2093     06 Sep 2002; Mark Guertin <gerk@gentoo.org> cnf/make.globals.ppc :
2094     Updated make.globals.ppc to reflect new CFLAGS for 1.4 release
2095    
2096     *portage-2.0.36 (04 Sep 2002): Gentoo Linux 1.4_rc1 version
2097    
2098     04 Sep 2002; Daniel Robbins <drobbins@gentoo.org> emerge: "--onlydeps" was
2099     mostly broken since the most recent emerge code restructure. Now fixed,
2100     closing bug #7442.
2101    
2102     04 Sep 2002: Daniel Robbins <drobbins@gentoo.org> etc-update.conf: added
2103     missing etc-update config file.
2104    
2105     04 Sep 2002: Daniel Robbins <drobbins@gentoo.org> portage.py: removed error
2106     detection based on return value for pkg_preinst() and friends when called
2107     from merge() and unmerge(), since the value can be unreliable due to the &&
2108     shell construct, depmod -a returning a non-zero value, etc. Also fixed
2109     env_update() to treat CONFIG_PROTECT and CONFIG_PROTECT_MASK correctly.
2110    
2111     *portage-2.0.35 (03 Sep 2002)
2112    
2113     03 Sep 2002: Daniel Robbins <drobbins@gentoo.org> etc-update,
2114     man/etc-update.1: new program for updating config files.
2115    
2116     03 Sep 2002; Daniel Robbins <drobbins@gentoo.org> ebuild.sh: upgraded
2117     inherit() to support $PORTDIR_OVERLAY, closing bug #6033.
2118    
2119     03 Sep 2002; Daniel Robbins <drobbins@gentoo.org> emerge: calls to "cvs" now
2120     use "-z3" compression option, closing bug #5982.
2121    
2122     03 Sep 2002; Daniel Robbins <drobbins@gentoo.org> ebuild.sh: symlinks to
2123     .tbz2's in the $PKGDIR/All directory (from $PKGDIR/$CATEGORY) are now
2124     relative, closing bug #6881.
2125    
2126     03 Sep 2002; Daniel Robbins <drobbins@gentoo.org> ebuild.sh: einstall now
2127     sees "GNUmakefile", closing bug #4895.
2128    
2129     03 Sep 2002; Daniel Robbins <drobbins@gentoo.org> ebuild.sh: typo fixes,
2130     closing bug #7263.
2131    
2132     03 Sep 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: /var/tmp
2133     creation now works even if /tmp already exists, closing bug #7376.
2134    
2135     02 Sep 2002; Daniel Robbins <drobbins@gentoo.org> emerge: fixed a logic error
2136     that resulted in non-root emerge failure. This closes bug #7389.
2137    
2138     *portage-2.0.34 (01 Sep 2002)
2139    
2140     01 Sep 2002; Daniel Robbins <drobbins@gentoo.org>: portage.py, ebuild.sh:
2141     Azarah's ebuildsh() removed, various other little fixes like pkg_preinst and
2142     friends not dying on non-zero return codes.
2143    
2144     01 Sep 2002; Martin Schlemmer <azarah@gentoo.org> ebuild.sh: add a custom
2145     version of the esyslog() function to fix the "Red Star" bug if no logger is
2146     running.
2147    
2148     *portage-2.0.33_p1 (30 Aug 2002): urgent fix
2149    
2150     31 Aug 2002; Dan Armak <danarmak@gentoo.org> ebuild.sh: comment out the if
2151     clause that only executed inherit() conditional on $PORTAGE_RESTORE_ENV. It
2152     didn't work and broke portage 2.0.33 as far as inheriting ebuilds goes.
2153    
2154     *portage-2.0.33 (30 Aug 2002)
2155    
2156     30 Aug 2002; Daniel Robbins <drobbins@gentoo.org> : some additional clean-ups
2157     for the make.conf(.ppc) files.
2158    
2159     30 Aug 2002; Daniel Robbins <drobbins@gentoo.org> emerge: emerge search would
2160     die when aux_get() raised a KeyError; we now catch and handle this exception.
2161     This closes bug #7280.
2162    
2163     29 Aug 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: fixed typo in
2164     move_ent() code that messed up moving packages into previously non-existant
2165     category directories in /var/db/pkg.
2166    
2167     30 Aug 2002; Mark Guertin <gerk@gentoo.org> cnf/make.conf.ppc : Updated
2168     cnf/make.conf.ppc with new CFLAGS for 1.4 release
2169    
2170     *portage-2.0.32 (29 Aug 2002)
2171    
2172     29 Aug 2002; Daniel Robbins <drobbins@gentoo.org> emerge: favorites weren't
2173     working since 2.0.30; they're working again now. This closes bug #7225.
2174    
2175     29 Aug 2002; Phil Bordelon <sunflare@gentoo.org> emerge.1: Added a small
2176     blurb regarding what to do when emerge --update [world|system] fails because
2177     of new features such as || and ?. Hopefully this will assuage the fairly
2178     common questions regarding this.
2179    
2180     *portage-2.0.31 (29 Aug 2002)
2181    
2182     28 Aug 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: fixed a config
2183     file protection logic bug detected and identified by Azarah. It basically
2184     broke most config file updates and has been broken for around six months.
2185     Very surprised no one had encountered this issue before.
2186    
2187     28 Aug 2002; Daniel Robbins <drobbins@gentoo.org> emerge: improved error
2188     messages when an unsatisfiable dependency is encountered. Now lets you know
2189     if there are masked packages that would satisfy the dep.
2190    
2191     28 Aug 2002; Daniel Robbins <drobbins@gentoo.org> emerge: emerging .tbz2
2192     packages and .ebuilds by name now works; this was broken in 2.0.30.
2193    
2194     *portage-2.0.30 (28 Aug 2002)
2195    
2196     28 Aug 2002; Daniel Robbins <drobbins@gentoo.org> portage.py, emerge: rewrote
2197     gettimeval() as cpv_counter() and updated it to handle corrupt COUNTER files,
2198     closing bug #6763.
2199    
2200     28 Aug 2002; Daniel Robbins <drobbins@gentoo.org> emerge: "emerge search" now
2201     displays information for masked packages if possible, closing bug #6823.
2202    
2203     28 Aug 2002; Daniel Robbins <drobbins@gentoo.org> emerge: fixed an old gbevin
2204     bug where "emerge search" wouldn't show packages whose version string was
2205     only one character long, ie. "foo-3". This closes bug #6800.
2206    
2207     28 Aug 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: added a missing
2208     call to flatten() in dep_check(), allowing recursive sublists in dependencies
2209     and SRC_URI variables to work; this closes bugs #7104, #7116, #7122.
2210    
2211     28 Aug 2002; Daniel Robbins <drobbins@gentoo.org> doman: fixed some typos,
2212     closing bug #7152.
2213    
2214     28 Aug 2002; Daniel Robbins <drobbins@gentoo.org> portage.py, emerge: major
2215     work to emerge: reworked the internal code organization to make depgraph code
2216     easier to understand; unified two code paths so that ebuild/.tbz2 choices
2217     when "--usepkg" should now be eternally consistent; tweaked portage.py so
2218     that dep_expand()'s dbapi argument is optional. In the process of all this,
2219     isolated and fixed bug #4508.
2220    
2221     27 Aug 2002; Martin Schlemmer <azarah@gentoo.org> portage.py: if the dep
2222     cache is stale, it is possible that aux_get() will call doebuild(depend) to
2223     regenerate it again. This call will cause $T to be set to "", which will
2224     break anything that needs $T to be set to a writable location inside the
2225     sandbox, so we need to set $T to a valid value again.
2226    
2227     27 Aug 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: improved error
2228     handling/detection of bad pkgsplit() and catpkgsplit() calls; should close
2229     bug #6803, #6853.
2230    
2231     26 Aug 2002; Daniel Robbins <drobbins@gentoo.org> emerge: fix so that "emerge
2232     prune rsync" doesn't complain that you are trying to rsync and prune at the
2233     same time. This closes bug #6785.
2234    
2235     26 Aug 2002; Daniel Robbins <drobbins@gentoo.org> doman fixes; should work
2236     for pre-gzipped man-pages and man-pages with multiple "."s in their name.
2237     Closes bugs #6770, #6917
2238    
2239     25 Aug 2002; Martin Schlemmer <azarah@gentoo.org> emerge: fixed an
2240     indentation problem of the 'else:' at line 1304.
2241    
2242     20 Aug 2002; Daniel Robbins <drobbins@gentoo.org> emerge: removed stray
2243     "DEBUG:" output, closing bug #6732.
2244    
2245     *portage-2.0.29 (18 Aug 2002)
2246    
2247     18 Aug 2002; Daniel Robbins <drobbins@gentoo.org> emerge, portage.py,
2248     ebuild.sh: making some effort to make output cleaner and less cluttered,
2249     particularly with error handling.
2250    
2251     18 Aug 2002; Daniel Robbins <drobbins@gentoo.org> emerge: updated so that
2252     "emerge --inject foo-1.0" fails instead of injecting "null/foo-1.0"; fixed
2253     error in help; "emerge --inject" and "emerge" with no specified files or
2254     package classes prints out a small warning and exits. Closes bug #6353.
2255    
2256     18 Aug 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: movefile()
2257     didn't like bind mounts due to a peculiar quality -- according to their
2258     ST_DEV stat() information, they are on the same filesystem, so rename()
2259     should work, but it doesn't. We now fall back to copy if rename() doesn't
2260     work. Closes bug #6468.
2261    
2262     18 Aug 2002; Daniel Robbins <drobbins@gentoo.org> ebuild.sh: made significant
2263     enhancements and fixes to ebuild.sh's error-handling code. Errors in
2264     src_unpack(), src_compile(), src_install() and others should now be correctly
2265     detected. Also downgraded our use() function since we are not implementing
2266     extended USE functionality. Closes bug #6393.
2267    
2268     18 Aug 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: portdb's
2269     cp_all() now skips "CVS" directories, closing bug #6662.
2270    
2271     18 Aug 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: aux_get():
2272     exception handler to print informative message when encountering wacky cache
2273     entries that we just can't fix (for some reason.)
2274    
2275     17 Aug 2002; Daniel Robbins <drobbins@gentoo.org> ebuild.sh: removed
2276     deprecated "ld.so" dependency from Dan Armak's newdepend() function.
2277    
2278     17 Aug 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: doebuild()
2279     running in "depend" mode will set $T to "" to prevent a parent's $T from
2280     being inherited; this is important when we run custom portage code from
2281     inside an ebuild (such as pkg_postinst)... it allows dep caching to not
2282     break. Closes bug #6484.
2283    
2284     *portage-2.0.28 (17 Aug 2002)
2285    
2286     16 Aug 2002; Daniel Robbins <drobbins@gentoo.org> emerge: return errors when
2287     two actions like "world" and "system" are specified on the command-line, or
2288     when "system" or "world" are combined with package names. Closes bug #6492.
2289    
2290     16 Aug 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: bad string was
2291     causing pkg_prerm() and pkg_postrm() to not be called; now fixed. This
2292     closes bug #6493.
2293    
2294     16 Aug 2002; Daniel Robbins <drobbins@gentoo.org> emerge: now calls
2295     env-update() after an unmerge() run (to fix library paths, links, etc.)
2296     Closes bug #6511.
2297    
2298     16 Aug 2002; Daniel Robbins <drobbins@gentoo.org> doman: now handles already-
2299     gzipped man pages correctly, closing bug #6544.
2300    
2301     16 Aug 2002; Daniel Robbins <drobbins@gentoo.org> emerge: fixed a bug where a
2302     dep specified on the command-line with --usepkg would use an old package if
2303     it happened to match the dep. Now, it will use the ebuild instead, just like
2304     how deps of deps are treated.
2305    
2306     *portage-2.0.27 (06 Aug 2002)
2307    
2308     07 Aug 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: removed some
2309     beta extended USE functionality to speed up regenerate(); as we are likely
2310     not going to need extended USE for a good while.
2311    
2312     07 Aug 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: ebuild.sh now
2313     supports "config" (pkg_config) again.
2314    
2315     06 Aug 2002; Dan Armak <danarmak@gentoo.org> ebuild.sh: change debug-print()
2316     to exit if $T is not defined, i.e. if emerge is running in dependency
2317     detection mode and isn't actually emerging everything. This fixes bug #4932
2318     (the "eclass-debug.log is created in /" problem).
2319    
2320     06 Aug 2002; Nicholas Jones <carpaski@gentoo.org> ebuild.sh: Fixed a
2321     case-check problem that prevented tar.Z from being un-tar'd. This closes bug
2322     #6126.
2323    
2324     06 Aug 2002; Martin Schlemmer <azarah@gentoo.org> portage.py, ebuild.sh:
2325     Remove "setup" from 'sandboxactive' in portage.py, as we are not running
2326     pkg_setup() in a sandbox anymore. Move the restoring of the old env code
2327     to be the first thing in ebuild.sh, just to ensure we dont mess anything
2328     up when greping/awking during saving it.
2329    
2330     *portage-2.0.26 (06 Aug 2002)
2331    
2332     06 Aug 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: on unmerge,
2333     entries are now removed from the world file if 1) the dependency refers to
2334     the cat/pkg being unmerged, and 2) the dependency matches the current version
2335     being unmerged, and 3) unmerging this package will leave no other packages on
2336     this system that will match this world entry. This closes bug #3409.
2337    
2338     06 Aug 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: new global
2339     update support. You can now add an entry to a file in
2340     /usr/portage/profiles/updates/, something like "move x11-base/xfree
2341     x11-base/xfree86". Portage will then update the /var/db/pkg db on user's
2342     boxes so that any xfree packages are renamed to xfree86; it will also update
2343     the world and virtuals files appropriately. We are naming the update files
2344     "3Q-2002", etc. -- for third quarter in 2002. This way, we don't bog
2345     Portage down by having it run through all our directives. It will only look
2346     at update files whose mtimes have changed. Closes bug #4753, #5463,
2347    
2348     06 Aug 2002; Daniel Robbins <drobbins@gentoo.org> ebuild.sh: tweaked Azarah's
2349     environment-saving patch to not be enabled when $T is not defined -- this
2350     closes bug #6070 and should speed up dep calculations too. Also tweaked
2351     ebuild.sh so that pkg_setup() is run *outside* of the sandbox. This is
2352     important because piping stuff around tends to require temp files to be
2353     created; pkg_setup() being in the sandbox prevents this from happening.
2354    
2355     06 Aug 2002; Martin Schlemmer <azarah@gentoo.org> ebuild.sh : Unset
2356     esave_ebuild_env in esave_ebuild_env(), otherwise the sourced copy messes
2357     saving of the environment.
2358    
2359     05 Aug 2002; Phil Bordelon <sunflare@gentoo.org> emerge.1: Updated the man
2360     page to match the current version of 2.0.25.
2361    
2362     05 Aug 2002; Phil Bordelon <sunflare@gentoo.org> emerge.1: Updated the man
2363     page to match the current version of 2.0.25.
2364    
2365     *portage-2.0.25 (05 Aug 2002)
2366    
2367     05 Aug 2002; Daniel Robbins <drobbins@gentoo.org> src/sandbox/Makefile:
2368     removed -march=i386 added in Azarah's patch; breaks things for PPC, Sparc.
2369    
2370     05 Aug 2002; Daniel Robbins <drobbins@gentoo.org> emerge: logic error fix for
2371     description searching, closing bug #6031.
2372    
2373     *portage-2.0.24 (04 Aug 2002)
2374    
2375     04 Aug 2002; Daniel Robbins <drobbins@gentoo.org> output.py, emerge: rewrote
2376     our output.py module (it was weird) and tweaked emerge so that colorization
2377     will be disabled if NOCOLOR is set to "yes" or "true" *or* if sys.stdout isn't
2378     a tty. This means that if you pipe things to "less", colorization will get
2379     automatically disabled. Yay! This closes bug #5714,
2380    
2381     04 Aug 2002; Daniel Robbins <drobbins@gentoo.org> ebuild.sh: default
2382     src_compile now properly uses "die" instead of "return 1." This closes bug
2383     #2981.
2384    
2385     04 Aug 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: "=foo/bar-1.0*"
2386     now matches "foo/bar-1.0_{alpha|beta|pre|rc}{int}" but not
2387     "foo/bar-1.1_{alpha_beta_pre_rc}{int}". This closes bug #5874; gcc-3.2_pre
2388     is now considered a "3.2" rather than a very late "3.1" when doing "*"
2389     matching.
2390    
2391     04 Aug 2002; Daniel Robbins <drobbins@gentoo.org> ebuild.sh: Applied
2392     carpaski's patch to allow "unpack" to also handle regular .gz or .bz2 files;
2393     in which case the unpacked files are placed directly in ${WORKDIR}. Closing
2394     bug #5867.
2395    
2396     04 Aug 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: tweaked
2397     exithandler() to only do its sandbox clean-up if we happen to be the root
2398     user. Closes bug #5859.
2399    
2400     04 Aug 2002; Daniel Robbins <drobbins@gentoo.org> emerge: search now lists
2401     masked packages correctly. Closes bug #5854 (pending QA verification.)
2402    
2403     04 Aug 2002; Phil Bordelon <sunflare@lsu.edu> emerge.1: The emerge man page
2404     now reflects the fact that emerge sync|rsync always does a --clean now. Also
2405     bumped the release number to 2.0.23.
2406    
2407     03 Aug 2002; Martin Schlemmer <azarah@gentoo.org> portage.py, emerge.sh,
2408     sandbox.c libsandbox.c: Updated sandbox.c and libsandbox.c to use an internal
2409     env variable, $SANDBOX_ACTIVE to determine if sandbox should really be active
2410     or not. With it only checking $SANDBOX_ON, some instances NOT running in a
2411     sandbox, but that set SANDBOX_ON while an actual sandbox was running, caused
2412     the sandbox to activate for this process. Added in support for a more phased
2413     calls to ebuild.sh again. This is this time done with support to save the
2414     current environment of ebuild.sh to the next call that should handle problems
2415     with pkg_setup() setting env variables. Closes bugs #5853, #5817, #5950.
2416    
2417     *portage-2.0.23 (01 Aug 2002)
2418    
2419     01 Aug 2002; Daniel Robbins <drobbins@gentoo.org> portage.py:
2420     ${ROOT}var/cache/edb and friends will get created if they don't exist,
2421     closing bug #5813.
2422    
2423     01 Aug 2002; Daniel Robbins <drobbins@gentoo.org> emerge: rewrote the emerge
2424     search code, making it fully API-compliant and much more streamlined and
2425     compact. This rewrite should fix the problem where emerge search doesn't
2426     support Portage overlays (bug #5783.)
2427    
2428     31 Jul 2002; Phil Bordelon <sunflare@gentoo.org> emerge.1: Documented the
2429     fact that emerge clean does not remove unslotted ebuilds. Bumped the man
2430     page revision number to 2.0.22.
2431    
2432     *portage-2.0.22 (29 Jul 2002)
2433    
2434     29 Jul 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: fetch() didn't
2435     handle resuming downloads properly when the first attempt aborted
2436     prematurely. The fall back to the alternate location would not resume the
2437     download. This should now be fixed. Closes bug #5655.
2438    
2439     29 Jul 2002; Daniel Robbins <drobbins@gentoo.org> portage.py, ebuild.sh: I
2440     had some code in spawn() from one of Azarah's patches that I forgot to
2441     remove; it caused the sandbox to be disabled all the time. I removed this
2442     code, and then I tweaked ebuild.sh so that the sandbox runs in a "deny by
2443     default" configuration. Before, you could add lines to the main ebuild
2444     (outside of a function) and it would bypass the sandbox; no more. Closes
2445     bugs #5740, #5744.
2446    
2447     29 Jul 2002; Daniel Robbins <drobbins@gentoo.org> emerge: --help and
2448     --version now work for non-root users as they should. --clean has been
2449     deprecated. This closes bug #5658.
2450    
2451     *portage-2.0.21 (28 Jul 2002)
2452    
2453     28 Jul 2002; Daniel Robbins <drobbins@gentoo.org> portage.py, emerge: Added
2454     beta "Portage tree overlay" support. By setting PORTDIR_OVERLAY to point to
2455     a local directory tree, you can cause Portage to look for ebuilds in
2456     PORTDIR_OVERLAY first before consulting the regular PORTDIR. Using this
2457     feature, it's possible to have your PORTDIR set up to rsync but still be able
2458     to have locally-created ebuilds in your PORTDIR_OVERLAY tree. For example,
2459     you would place your ebuild in PORTDIR_OVERLAY/sys-apps/foo/.
2460    
2461     27 Jul 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: another
2462     dep_opconvert() USE-handling bug-fix. Working OK for Azarah now.
2463    
2464     27 Jul 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: small logic
2465     error fix in dep_opconvert() to fix up USE handling.
2466    
2467     27 Jul 2002; Daniel Robbins <drobbins@gentoo.org> emerge: security modes now
2468     work correctly; root access now required for merging. The new security pass
2469     code was missing a check that is now present.
2470    
2471     *portage-2.0.20 (27 Jul 2002)
2472    
2473     27 Jul 2002; Daniel Robbins <drobbins@gentoo.org> portage.py, emerge,
2474     repoman: Rewrote a good deal of our dependency-checking code, including all
2475     of dep_opconvert(). Results? repoman will now auto-enable all USE variables
2476     (even ! use variables will get enabled) resulting in thorough checks of all
2477     specified dependencies. DEPEND="foo? bar : oni" and DEPEND="foo? ( bar oni )
2478     : ( meep barf )" now works correctly. DEPEND="|| ( foo bar oni )" now works
2479     correctly and will try to satisfy "foo" (the first package) if none are
2480     installed. DEPEND="!foo? ( bar )" now works correctly; it was not working
2481     before. This should generally mean that our dependency system is now working
2482     as expected.
2483    
2484     27 Jul 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: changed
2485     counter_tick() method so that bulk of code is in the counter_tick_code()
2486     helper function; then created a new method for fakedbapi that calls
2487     counter_tick(). This fixes "--emptytree" issues with emerge, since emerge
2488     still expects counter_tick() to exist as a method.
2489    
2490     27 Jul 2002; Daniel Robbins <drobbins@gentoo.org> portage.py, emerge: removed
2491     a DEBUG: print and a stray "raise IndexError" that I used for debugging.
2492    
2493     *portage-2.0.19 (26 Jul 2002)
2494    
2495     26 Jul 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: Portage is now
2496     eclass-friendly when it comes to regenerating cache entries. This closes bug
2497     #4843.
2498    
2499     26 Jul 2002; Daniel Robbins <drobbins@gentoo.org> portage.py, emerge: Closed
2500     bug #5524. Packages "emerge inject"ed will no longer get auto-cleaned
2501     indiscriminantly. Injected packages now have an official COUNTER so that
2502     emerge clean doesn't get confused and schedule the package for removal. Also
2503     modularized and improved the counter-handling functions and changed the
2504     counter update method so that systems with XFS filesystems that die
2505     unexpectedly will no longer get corrupted COUNTER files. This should solve
2506     the an entire class of "my counter is corrupt" issues for XFS users.
2507    
2508     26 Jul 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: added exception
2509     handler to getcontents() so that it will gracefully ignore (with a warning)
2510     corrupt CONTENTS file lines. This closes bug #5464.
2511    
2512     26 Jul 2002; Daniel Robbins <drobbins@gentoo.org> emerge: fixed a single-line
2513     indentation error that resulted in "emerge clean" ignoring some files. This
2514     closes bug #5597,#4364.
2515    
2516     25 Jul 2002; Daniel Robbins <drobbins@gentoo.org> emerge: --noreplace is now
2517     off by default and works again; --onlydeps appears to be working again; and
2518     merge() will merge things as specified in display(), which was not the case
2519     before (I rolled 2.0.18 before fixing a few things I forgot about)
2520    
2521     *portage-2.0.18 (25 Jul 2002)
2522    
2523     25 Jul 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: Close bug
2524     #5580; pkg_setup() now gets called during all build-related stages.
2525    
2526     24 Jul 2002; Daniel Robbins <drobbins@gentoo.org> portage.py, emerge: rewrote
2527     create() function, closing bug #5469. Also added freeze() and melt() methods
2528     to portdbapi to enhance performance. create() is now extensively commented
2529     and even understandable.
2530    
2531     24 Jul 2002; Daniel Robbins <drobbins@gentoo.org> emerge: the "rsync --clean"
2532     option has been deprecated. Cleaning is now on by default, closing bug
2533     #5527.
2534    
2535     24 Jul 2002; Daniel Robbins <drobbins@gentoo.org> portage.py, make.globals:
2536     It should now be safe to do what Spider did in the gconf ebuild and add
2537     CONFIG_PROTECT and CONFIG_PROTECT_MASK to /etc/env.d entries. Both variables
2538     are now incremental, just like USE, and you can use "-path" to turn a path
2539     off, or add CONFIG_PROTECT{_MASK}="path" to *add* a path to the list (this
2540     will not overwrite "parent" settings. Also added "/etc/env.d/" to
2541     CONFIG_PROTECT_MASK in /etc/make.globals. Also, very importantly, /etc/env.d
2542     is now hard-coded into CONFIG_PROTECT_MASK as it was in earlier versions of
2543     Portage and cannot be removed.
2544    
2545     24 Jul 2002: Daniel Robbins <drobbins@gentoo.org> emerge, portage.py: two
2546     fixes; first, I removed xcache.p support from portage.py. The code was
2547     designed based on the false theory that directory mtimes are updated whenever
2548     an object inside that directory is modified. That is not the case -- it
2549     happens when the directory listing itself changes. Also fixed overly verbose
2550     emerge merging error.
2551    
2552     23 Jul 2002; Phil Bordelon <sunflare@gentoo.org> emerge.1: Updated the man
2553     page to match some changes in the latest version of portage, along with some
2554     fixes recommended by drobbins.
2555    
2556     *portage-2.0.17 (23 Jul 2002)
2557    
2558     23 Jul 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: fixed a bug
2559     pointed out by trance -- dep_nomatch() was still using the old (deleted)
2560     match() function. Now it's using a new match() method.
2561    
2562     *portage-2.0.16 (22 Jul 2002)
2563    
2564     22 Jul 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: changed xcache
2565     behavior so that the cache gets totally thrown away when the masks are
2566     updated. Also revamped carpaski's code so we can avoid loading xcache from
2567     disk if we simply plan to throw it away. This necessitated the creation of a
2568     new file in /var/cache/edb: mtimes. This file stores mtimes for various
2569     important filesystem objects. Also added support to not regenerate the GNU
2570     info directory index if the mtime on /usr/share/info has not changed since
2571     previous invocation.
2572    
2573     22 Jul 2002; Daniel Robbins <drobbins@gentoo.org> portage.py, emerge: moved
2574     security handling code from emerge to portage.py; also moved group "wheel"
2575     check to portage.py. Added additional security checks and permissions fixes
2576     to the cache handling functions.
2577    
2578     22 Jul 2002: Daniel Robbins <drobbins@gentoo.org> emerge: fixed a bug
2579     reported by woodchip related to merging packages. When using --usepkg, a
2580     package wouldn't be used if there was a newer unmasked version of the ebuild
2581     available, even if the package in question was the right selection.
2582    
2583     22 Jul 2002; Daniel Robbins <drobbins@gentoo.org> emerge: fixed create() code
2584     and consolidated some functions. My goal is to simplify the emerge code
2585     until it's clean, at which point we can begin adding new features to emerge
2586     like more SLOT-friendly decision making.
2587    
2588     22 Jul 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: was able to
2589     remove 130 or so lines of code by depreciating the match() function (replaced
2590     by the match2() method.) I also rennovated the binarytree code to take
2591     advantage of fakedbapi.
2592    
2593     22 Jul 2002; Nicholas Jones <carpaski@gentoo.org> portage.py: added the
2594     xcache.p fix and updated the version to 2.0.16pre (from 2.0.12) -- Also added
2595     in a try/except inside the store() (atexit) for xcache.p to give hints
2596     instead of tracebacks.
2597    
2598     22 Jul 2002; Nicholas Jones <carpaski@gentoo.org> emerge: added the
2599     description searching code and added a spinner to the search.
2600    
2601     21 Jul 2002; Phil Bordelon <sunflare@gentoo.org> emerge.1: Finished the
2602     rewrite of the emerge man page.
2603    
2604     21 Jul 2002; Phil Bordelon <sunflare@gentoo.org> emerge: Readded the sync
2605     help to the list of help options now that emerge --help sync works again.
2606    
2607     *portage-2.0.15 (16 Jul 2002)
2608    
2609     15 Jul 2002; Daniel Robbins <drobbins@gentoo.org> emake: no longer falls back
2610     to plain old "make" if parallel make fails. I believe it's best to fix the
2611     problem (turn parallel make off in the ebuild) rather than tweak emake to
2612     avoid it.
2613    
2614     15 Jul 2002; Daniel Robbins <drobbins@gentoo.org> emerge: rewrote some code,
2615     cleaning things up and removing redundant functions. Starting to
2616     de-cruftify.
2617    
2618     15 Jul 2002; Daniel Robbins <drobbins@gentoo.org> emerge: fix for permissions
2619     when updating the cache using server-generated entries.
2620    
2621     *portage-2.0.14 (15 Jul 2002)
2622    
2623     15 Jul 2002; Daniel Robbins <drobbins@gentoo.org> ebuild.sh: ccache bug fix;
2624     removed extra "!". Ccache should now get enabled properly. Also, INHERITED
2625     variable is now getting added to the dep cache entries for future
2626     eclass-friendly caching.
2627    
2628     15 Jul 2002: Daniel Robbins <drobbins@gentoo.org> portage.py: Portage now
2629     *persistently* caches xmatch() calculations. This appears to speed things up
2630     but we will need to limit the size of the new xcache.p in future versions of
2631     Portage.
2632    
2633     15 Jul 2002; Daniel Robbins <drobbins@gentoo.org> portage.py, emerge: Portage
2634     now has keyword-based masking enabled. It also has server-side caching
2635     enabled to eliminate "emerge pre-Calculating dependencies... delay" for
2636     end-users. There is now an undocumented "regen" option for emerge that tells
2637     Portage to ensure that all entries in /var/cache/edb/dep are up-to-date.
2638     This is intended mainly for developers, as the server-side caching feature
2639     should ensure that all dep cache entries are up-to-date for end-users.
2640    
2641     15 Jul 2002; Daniel Robbins <drobbins@gentoo.org> repoman: repoman now checks
2642     for ebuilds that generate output as well as ebuilds that return a non-zero
2643     error code when sourced. For this test to detect all failures, you need to
2644     wipe out your /var/cache/edb/dep/* before running repoman. This design quirk
2645     is necessary to preserve existing emerge behavior.
2646    
2647     13 Jul 2002: Daniel Robbins <drobbins@gentoo.org> portage.py: Removed
2648     Azarah's ebuildsh() function as it breaks pkg_setup() again. pkg_setup()
2649     needs to be called as part of the same process as any other ebuil.sh command
2650     so that environment vars set in pkg_setup() are preserved through the rest of
2651     the build process.
2652    
2653     13 Jul 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: changed calling
2654     convention for doebuild("depend").
2655    
2656     13 Jul 2002; Daniel Robbins <drobbins@gentoo.org> ebuild.sh: removed
2657     erroneous "local dbkeys" that was outside of a function. This fixes some
2658     cache update problems. Added INHERIT to our cache entries so we can
2659     correctly update the cache for eclass ebuilds.
2660    
2661     12 Jul 2002; Dan Armak <danarmak@gentoo.org> make.globals, make.globals.ppc:
2662     remove default KDE2DIR, KDE3DIR settings and comments. The kde eclasses will
2663     now handle the case where they are not defined. This will be used with kde
2664     3.1 and later, and the difference between their default value and them not
2665     being defined is important.
2666    
2667     *portage-2.0.13 (11 Jul 2002)
2668    
2669     11 Jul 2002; Daniel Robbins <drobbins@gentoo.org> tarball.sh: our tarball
2670     script didn't clean the src/sandbox directory before creating our distribution
2671     tarball. This resulted in src/sandbox/sandbox (the executable) being distributed,
2672     and the "make" in the ebuild thinking everything was up-to-date. The result?
2673     Everyone in the world got a sandbox compiled with gcc 3.1. This has been
2674     fixed, closing bug #4867, #4851.
2675    
2676     10 Jul 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: removed some
2677     bogus code that snuck in. pkg_setup() is no longer called when installing a
2678     tbz2. All tbz2 stuff should be done in pkg_pre/postinst().
2679    
2680     *portage-2.0.12 (10 Jul 2002)
2681    
2682     10 Jul 2002; Daniel Robbins <drobbins@gentoo.org> ccache support is now
2683     controlled via a "ccache" FEATURES variable, which is enabled in make.globals
2684     my default. ccache support can now be turned off by adding a
2685     FEATURES="-ccache" to /etc/make.conf. Also, CCACHE_DIR correctly detected
2686     and utilized.
2687    
2688     10 Jul 2002; Daniel Robbins <drobbins@gentoo.org> emerge: "emerge --help
2689     rsync" now works correctly and displays rync help rather than rsyncing. This
2690     closes bug #4438, #4629.
2691    
2692     10 Jul 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: Portage now
2693     prints a friendly error if PORTAGE_TMPDIR doesn't exist or is not a
2694     directory. This effectively closes bug #4360.
2695    
2696     10 Jul 2002; Daniel Robbins <drobbins@gentoo.org> emerge: the "inject",
2697     "sync" and "rsync" actions no longer allow "--pretend" or "-p" to be
2698     specified. This closes bug #4352.
2699    
2700     10 Jul 2002; Daniel Robbins <drobbins@gentoo.org> sandbox.c: use realpath()
2701     to expand the PORTAGE_TMPDIR, /var/tmp, /tmp paths. This allows write access
2702     to these directories even if /var or /var/tmp is a symlink, for example.
2703     Without this fix, access to these directories will be denied by the sandbox,
2704     creating a bunch of problems. Closes bugs #4256, #2379, #4625, #2931, #4829.
2705    
2706     10 Jul 2002; Daniel Robbins <drobbins@gentoo.org> megadigest, megadownload,
2707     megatouch, pkgsearch: removed from the bin/ directory; deprecated.
2708    
2709     10 Jul 2002; Daniel Robbins <drobbins@gentoo.org> emerge, quickpkg: remove
2710     hard-coded references to "/usr/portage" in "emerge search", quickpkg. Now
2711     correctly uses PORTDIR instead. Closes bug #4836.
2712    
2713     10 Jul 2002; Daniel Robbins <drobbins@gentoo.org> emerge: emerge now checks
2714     to see if the "wheel" group exists before running; if it doesn't, it exits
2715     with a polite error message. Closes bug #4736.
2716    
2717     08 Jul 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: changed the
2718     unmerge() code so that it doesn't use mtimes to test whether a symlink
2719     should be unmerged, since mtimes and symlinks are weird partners. Instead,
2720     we save unmerging of our symlinks until the end of the code, and unmerge
2721     them only if their target no longer exists. This closes bug #4491.
2722    
2723     08 Jul 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: check whether
2724     ebuild actually exists immediately before running pkg_postint() and
2725     pkg_preinst() from the dblink merge() method. Also change all PKG_TMPDIR
2726     references to PORTAGE_TMPDIR plus suffix, closing bug #4447, #4853.
2727    
2728     *portage-2.0.11 (07 Jul 2002)
2729    
2730     07 Jul 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: rewrote
2731     portdbapi's xmatch() and visible() to fix significant bugs. Logic errors in
2732     both methods caused ~ deps to not work correctly. After the rewrite,
2733     dependency checking is now 44% faster.
2734    
2735     07 Jul 2002; Daniel Robbins <drobbins@gentoo.org> repoman, portage.py: Added
2736     new DEPEND and RDEPEND.badmasked categories to repoman. repoman now checks
2737     dependencies of masked packages using *all* ebuilds, rather than trying to
2738     match them against all visible ebuilds. DEPEND.bad and RDEPEND.bad (used to
2739     be ".unsolvable") now only tally visible ebuilds, not masked ones.
2740    
2741     *portage-2.0.10 (06 Jul 2002)
2742    
2743     05 Jul 2002; Daniel Robbins <drobbins@gentoo.org> portage.py, repoman: Added
2744     new capabilities to repoman -- the ability to detect unsolvable DEPEND and
2745     RDEPEND variables, missing DESCRIPTION, LICENSE, KEYWORDS and SLOT. Fixed
2746     repoman so that adding a comment with quotes in it doesn't break things.
2747     Added a few tiny extensions to portage.py to support the new repoman
2748     features.
2749    
2750     03 Jul 2002; Martin Schlemmer <azarah@gentoo.org> ebuild.sh: some ebuilds
2751     like gcc do not use $S to build the package in, and this causes generated .la
2752     files (libtool) to contain $WORKDIR in them. We thus export $WORKDIR in
2753     ebuild.sh as well, to go along with fixes to the libtool-portage patch.
2754    
2755     02 Jul 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: pkg_setup() now
2756     gets called before a tbz2 is installed, and pkg_preinst() and postinst() get
2757     called at the right times as well.
2758    
2759     01 Jul 2002; Phil Bordelon <sunflare@gentoo.org> emerge: "emerge --help
2760     rsync" does an rsync instead of printing help. Until this is fixed, I
2761     removed it from the list of detailed help options.
2762    
2763     *portage-2.0.9 (01 Jul 2002)
2764    
2765     01 Jul 2002; Daniel Robbins <drobbins@gentoo.org> Added missing .match()
2766     method to portdbapi.
2767    
2768     01 Jul 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: Added new
2769     operator for dependencies: DEPEND="foo? bar : oni" will use oni if foo isn't
2770     set. Added "||" support back after removing it from my working copy; looks
2771     ok.
2772    
2773     29 Jun 2002; Daniel Robbins <drobbins@gentoo.org> portage.py, make.globals,
2774     make.globals.ppc: internalized definitions of BUILDDIR and PKG_TMPDIR in
2775     order to make things work as expected when one sets PORTAGE_TMPDIR. The new
2776     config file var expansion algorithm made this change necessary.
2777    
2778     29 Jun 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: fix doebuild()
2779     so that pkg_setup() gets called when a .tbz2 package is being built. This
2780     closes bug #3673.
2781    
2782     29 Jun 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: tweaked the
2783     aux_get() code to automatically regenerate cache files if they have the
2784     incorrect number of entries. Added an additional fix to this code on 01 Jul
2785     2002.
2786    
2787     29 Jun 2002; Martin Schlemmer <azarah@gentoo.org> portage.py: merge in some
2788     of the missing ld.so.preload fixes again.
2789    
2790     29 Jun 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: new version
2791     with highly-optimized dependency calculation caching, particularly for
2792     portdbapi. Includes new three-level caching portdbapi xmatch() method.
2793    
2794     27 Jun 2002; Grant Goodyear <g2boojum@gentoo.org> ebuild.sh: Added keepdir()
2795     function so that it no longer has to be hardcoded in ebuilds.
2796    
2797     *portage-2.0.8 (27 Jun 2002)
2798    
2799     27 Jun 2002; Daniel Robbins <drobbins@gentoo.org> emerge: in an attempt to
2800     provide a predictable release of Portage, I'm reverting the "emerge
2801     --pretend" "fix" in Portage-2.0.6. It ignores custom USE settings when
2802     calculating child deps, which makes things tricky for users. We'll use the
2803     "expected" (old) behavior for now until we have a solution for this USE
2804     issue.
2805    
2806     27 Jun 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: fixed handling
2807     of ! deps in match(), closing bug #4219. Thanks Spidler!
2808    
2809     27 Jun 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: disabled USE
2810     regeneration on reset() for performance purposes.
2811    
2812     *portage-2.0.7 (26 Jun 2002)
2813    
2814     26 Jun 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: add a friendly
2815     error handler for aux_get() so that flaky ebuilds don't cause it to trip up
2816     with a cryptic traceback; users will get a friendly error message instead.
2817     Also, temporarily disable keyword-based masking, since it currently slows
2818     down Portage by quite a bit since it causes a much greater set of ebuilds to
2819     be cached.
2820    
2821     *portage-2.0.6 (25 Jun 2002)
2822    
2823     25 Jun 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: rewrote the
2824     config file code to make things more sane, consistent, and made infinite
2825     loops during variable expansion a thing of the past. This closes bug #3952.
2826    
2827     25 Jun 2002; Daniel Robbins <drobbins@gentoo.org> emerge, portage.py,
2828     ebuild.sh: "emerge --pretend" and "emerge search" now work for the root user
2829     as well as any users in the "wheel" group. emerge will now gracefully exit
2830     if "emerge search" is run by someone not in the "wheel" group. This closes
2831     bug #4121.
2832    
2833     25 Jun 2002; Martin Schlemmer <azarah@gentoo.org> bin/{dolib.so,preplib.so}:
2834     Also change "strip --strip-unneeded" to "strip --strip-debug" for these.
2835     Look at bugs #2702,#3929,#4027 for more info.
2836    
2837     25 Jun 2002; Daniel Robbins <drobbins@gentoo.org> emerge: "emerge -u" now
2838     correctly scans dependencies of packages, even if they are up-to-date, to
2839     determine if any of their dependencies need updating. Previously, up-to-date
2840     packages were not scanned in this way, which was a bug.
2841    
2842     24 Jun 2002; Daniel Robbins <drobbins@gentoo.org> ebuild.sh: Portage will now
2843     automatically take advantage of ccache if the >=dev-util/ccache-1.9 ebuild is
2844     installed. Removing /var/cache/ccache hole in the sandbox.
2845    
2846     *portage-2.0.5 (24 Jun 2002)
2847    
2848     23 Jun 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: basic keyword-
2849     based masking is now active. New support for KEYWORDS in ebuilds and
2850     ACCEPT_KEYWORDS in profiles.
2851    
2852     23 Jun 2002; Daniel Robbins <drobbins@gentoo.org> conf files: removed
2853     references to non-functional FTP_PROXY and HTTP_PROXY and added a note about
2854     how to use the correct vars (ftp_proxy and http_proxy.) Closes bug #1664.
2855     Also added note about RSYNC_PROXY, closing bug #2332.
2856    
2857     23 Jun 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: removed
2858     "dependency too short" checks which weren't working and were causing deps
2859     like "mc" and "ed" to be rejected as invalid rather than being expanded.
2860    
2861     23 Jun 2002; Daniel Robbins <drobbins@gentoo.org> emerge: upgraded "clean"
2862     code to be more robust, consistent. Closes bug #3967.
2863    
2864     *portage-2.0.4 (20 Jun 2002)
2865    
2866     20 Jun 2002; Daniel Robbins <drobbins@gentoo.org> in the 2.0.4 ebuild itself:
2867     added back tbz2tool symlink which was mistakenly removed. Also changed the
2868     way we compile portage.py stuff so that we remove the previously compiled
2869     files, just in case clock skew cause them to seem more recent than they
2870     really are. Python byte-code compilation moved to pkg_postinst()
2871    
2872     20 Jun 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: fixed up the
2873     fetch() code so that invalid digests don't cause a traceback.
2874    
2875     20 Jun 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: some of the new
2876     transplanted virtuals code assumed that profiledir was set, which is not
2877     required. This code has now been fixed to not make that assumption.
2878    
2879     *portage-2.0.3 (20 Jun 2002)
2880    
2881     20 Jun 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: fixed two typos
2882     pointed out by stroke and g2boojum. These fix unmerge and some aspect of
2883     virtuals handling, which was previously causing a traceback.
2884    
2885     19 Jun 2002; Daniel Robbins <drobbins@gentoo.org> emerge: emerge -eup world
2886     now will ignore world entries if it isn't really installed locally; in 2.0.1,
2887     --emptytree would auto-enable all world entries, leading to inconsistent
2888     package lists between --emptytree and without.
2889    
2890     *portage-2.0.2 (19 Jun 2002)
2891    
2892     19 Jun 2002; Daniel Robbins <drobbins@gentoo.org> make.conf.ppc,
2893     make.globals.ppc: integrated these files into our sources.
2894    
2895     19 Jun 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: fixed a bug
2896     where ROOT="" would not get properly converted to ROOT="/".
2897    
2898     18 Jun 2002; Daniel Robbins <drobbins@gentoo.org> emerge: Portage 2.0+ has
2899     fixed "!" depend matching support, but some code in emerge was designed to
2900     anticipate the incorrect behavior. This emerge code has been fixed to work
2901     correctly. This closes my part of bug #3834.
2902    
2903     18 Jun 2002; Daniel Robbins <drobbins@gentoo.org> portage.py, emerge: fixed
2904     bug #2444, where emerge fails when "--emptytree" and "--onlydeps" are used at
2905     the same time.
2906    
2907     18 Jun 2002; Daniel Robbins <drobbins@gentoo.org> portage.py, emerge: new
2908     fakedbapi for doing emptytree calculations; emptytree upgrades in emerge.
2909     "emerge -upe world" now works correctly, accounting for items in the world
2910     profile. Yay! Bugs #3832 and #1911 fixed.
2911    
2912     18 Jun 2002; Daniel Robbins <drobbins@gentoo.org> portage.py, emerge:
2913     Integrated new aux_get() method into our portdbapi. aux_get() provides a
2914     standardized way to get cached information about ebuilds, and is now fully
2915     integrated into Portage and emerge search.
2916    
2917     18 Jun 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: fixed a bug
2918     where dep_nomatch() was testing for None rather than a "zero" condition,
2919     causing dep_nomatch() to choke on match()'s [] return value.
2920    
2921     17 Jun 2002; Daniel Robbins <drobbins@gentoo.org> emerge: added an exception
2922     handler to catch invalid regular expressions and avoid a traceback.
2923    
2924     17 Jun 2002; Daniel Robbins <drobbins@gentoo.org> sandbox.c: added
2925     /var/cache/ccache to sandbox "write ok" list, closing bug #3028.
2926    
2927     *portage-2.0.1 (16 Jun 2002)
2928    
2929     16 Jun 2002; Daniel Robbins <drobbins@gentoo.org> portage.py, emerge: fixed a
2930     virtuals expansion bug that would cause virtuals to be consulted too early.
2931    
2932     *portage-2.0 (16 Jun 2002)
2933    
2934     16 Jun 2002; Daniel Robbins <drobbins@gentoo.org> portage.py, ebuild.sh,
2935     emerge: turbo-ified Portage, new Portage db API and many other fixes.
2936     Unmerging now works again (bug introduced several releases ago.) I
2937     originally wanted to hold off on releasing 2.0, but since several major bugs
2938     are fixed, we need to get these fixes out to our users ASAP. We will be
2939     releasing 2.1 in about a week which should include additional refinements.
2940    
2941     16 Jun 2002; Daniel Robbins <drobbins@gentoo.org> repoman: New repoman
2942     commit/check QA tool for developers.
2943    
2944     10 Jun 2002; Dan Armak <danarmak@gentoo.org> make.conf: Update the ibiblio
2945     mirror path; it is now www.ibiblio.org/pub/Linux/distributions/gentoo.
2946    
2947     10 Jun 2002; Martin Schlemmer <azarah@gentoo.org> ebuild.sh : Some users have
2948     $TMPDIR to a custom dir in their home ...this will cause sandbox errors with
2949     some ./configure scripts or libtool, so set it to $T.
2950    
2951     10 Jun 2002; Martin Schlemmer <azarah@gentoo.org> portage.py : Merge in the
2952     ld.so.preload changes. Also updated spawn() to only run sandbox if
2953     buildphase is one of clean, unpack, compile or install. This should fix the
2954     handler not detecting some instances of sandbox running. Updated ebuildsh()
2955     to set buildphase="" on spawn exit.
2956    
2957     10 Jun 2002; Martin Schlemmer <azarah@gentoo.org>
2958     portage.py.ldsopreload,testsandbox.sh : Add support to test if another
2959     sandbox is running, if so dont delete /etc/ld.so.preload on kill. I did not
2960     commit this to portage.py, as it is a bit more changes than we originally
2961     though.
2962    
2963     05 Jun 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: doebuild() now
2964     has proper logic for digest generation. Digest will now get regenerated if
2965     "ebuild digest" is run, even if "digest" is in FEATURES.
2966    
2967     04 Jun 2002; Daniel Robbins <drobbins@gentoo.org> emerge: fixed typo in
2968     "inject" documentation.
2969    
2970     02 Jun 2002; Martin Schlemmer <azarah@gentoo.org> bin/dosym: changed the
2971     command used from "ln -sf" to "ln -snf" as it created a symlink in the target
2972     directory if the linkname already existed (only if the target is a
2973     directory). Im guessing this should be fixed in the python merged code if
2974     symlinks are not unlinked before the new is merged into place .. will add a
2975     bug later.
2976    
2977     *portage-1.9.14 (01 Jun 2002)
2978    
2979     01 Jun 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: when a file to
2980     be merged is identical to the one currently on disk (using the md5 test), we
2981     now at least correctly update the target's mtime and atime so that cleaning
2982     will work correctly.
2983    
2984     27 May 2002; Daniel Robbins <drobbins@gentoo.org> bin/do*: changed "return"s
2985     to "exit 1". Closes bug #3078.
2986    
2987     *portage-1.9.13 (21 May 2002)
2988    
2989     21 May 2002; Grant Goodyear <g2boojum@gentoo.org> emerge.1: Updated man page.
2990     Thanks to carpaski@twobit.net.
2991    
2992     20 May 2002; Daniel Robbins <drobbins@gentoo.org> emerge: a fix for dep
2993     regeneration; stale dep cache entries should now be properly regenerated.
2994    
2995     *portage-1.9.12 (16 May 2002)
2996    
2997     16 May 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: the settings
2998     for A and AA were swapped; this has now been fixed, closing bug #1634.
2999    
3000     15 May 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: fixed up some
3001     quirks in the new fetch code which were reported by Wout Mertens. Thanks
3002     Wout!
3003    
3004     *portage-1.9.11 (13 May 2002)
3005    
3006     13 May 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: addition of
3007     third-party mirroring code. "mirror://sourceforge/foo.tar.gz" will use the
3008     /usr/portage/profiles/thirdpartymirrors file to define the mirror it will
3009     download from. Multiple mirrors for a single keyword can be specified on a
3010     single line. This code was based on the good work of Ryan Phillips.
3011    
3012     13 May 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: (entry on behalf
3013     of jnelson) -- we now have new KV detection/setting code that uses
3014     /usr/src/linux/include/linux/version.h to determine the kernel version -- the
3015     right way of doing things. KV is set to "" if the kernel is not available or
3016     not configured.
3017    
3018     13 May 2002; Daniel Robbins <drobbins@gentoo.org> emerge: "abspath[x]" =>
3019     "abspath(x)" typo fix. Also added 2-liner to allow for "emerge unmerge" to
3020     specify "foo/bar-1.0" rather than requiring "=foo/bar-1.0." Also fixed
3021     problems when specifying the names of actual ebuilds in /var/db/pkg to
3022     unmerge.
3023    
3024     *portage-1.9.9 (06 May 2002) ??
3025    
3026     08 May 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: An empty
3027     USE_ORDER (due to an out-of-date /etc/make.globals) would cause USE to always
3028     be empty. I added a reasonable default USE_ORDER if USE_ORDER is not found
3029     in any of the config files, fixing this problem.
3030    
3031     06 May 2002; Daniel Robbins <drobbins@gentoo.org> emerge: post bug #1841
3032     cleanups; converted from .hasnode() to .dep_match() (correct) in
3033     getworldlist().
3034    
3035     *portage-1.9.8 (06 May 2002)
3036    
3037     06 May 2002; Daniel Robbins <drobbins@gentoo.org> emerge: 2 fixes that seemed
3038     to get fried/zapped: bug #1841 and fixing an emerge sync error code to be
3039     more understandable.
3040    
3041     *portage-1.9.7 (06 May 2002)
3042    
3043     06 May 2002; Daniel Robbins <drobbins@gentoo.org> portage.py, emerge: initial
3044     bunch of robustness/error-handling fixes. Emerge should now report a
3045     comprehensible error message for errors in DEPEND and RDEPEND rather than
3046     giving a traceback. Fixed dep_depreduce() to catch errors rather than
3047     passing them on to dep_bestmatch() (which doesn't check for errors and
3048     assumes correct input)
3049    
3050     02 May 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: typo fix for
3051     S_ISFIFO call; thanks woodchip!
3052    
3053     *portage-1.9.6 (02 May 2002)
3054    
3055     02 May 2002; Daniel Robbins <drobbins@gentoo.org> make.conf: SYNC variable
3056     correctly set to use our DNS round-robin system (rsync.gentoo.org).
3057    
3058     *portage-1.9.6_pre2 (01 May 2002)
3059    
3060     01 May 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: config file
3061     protection upgrade; we now record md5sums of previously-merged config protect
3062     files in /var/cache/edb/config; we use this information to avoid merging
3063     files that have been merged by us before (if it is safe to do so). This
3064     doesn't solve the problem of rolling back to a previously-merged version of
3065     a config file; we need to add cvs headers to every config file to get that
3066     to work.
3067    
3068     *portage-1.9.6_pre1 (01 May 2002)
3069    
3070     01 May 2002; Daniel Robbins <drobbins@gentoo.org> emerge: added "inject"
3071     capability to artificially satisfy a dep -- for situations when you don't
3072     want Portage to do it for you because you've taken care of it already.
3073    
3074     01 May 2002; Daniel Robbins <drobbins@gentoo.org> portage.py, emerge: totally
3075     rewrote emerge's unmerge code. The original code (added by Bevin) was a bit
3076     too cryptic and "big" for my taste. Also added two new capabilities to
3077     portage.py's vartree: .getslot() and .gettimeval(). getslot() returns the
3078     slot value of a cat/pkg-v, if any, and gettimeval() returns a "time value"
3079     (based on mtime/COUNTER value) that can be used to determine the order in
3080     which packages got merged. The purpose of these improvements were to revamp
3081     the existing Portage code that could only unmerge a db entry if there was a
3082     corresponding ebuild file. This conflicted with the ability to "inject"
3083     packages (see above), so it needed to be changed. Also fixed some bugs along
3084     the way.
3085    
3086     01 May 2002; Daniel Robbins <drobbins@gentoo.org> ebuild.sh: einstall now
3087     accepts arguments, closing bug #2275. Thanks seemant! :)
3088    
3089     01 May 2002; Daniel Robbins <drobbins@gentoo.org> make.globals: switch SYNC
3090     var from cvs.gentoo.org to rsync.gentoo.org, and gentoo-x86-portage to
3091     gentoo-portage.
3092    
3093     30 Apr 2002; Daniel Robbins <drobbins@gentoo.org> emerge: now checks for
3094     errors (caused by bad deps) returned by create() and syscreate().
3095    
3096     *portage-1.9.5 (29 Apr 2002)
3097    
3098     29 Apr 2002; Daniel Robbins <drobbins@gentoo.org> ebuild.sh: added jnelson's
3099     KV_extract.awk script which extracts the kernel version from the actual
3100     kernel sources Makefile, making our KV setting much more robust! Thanks Jon
3101     :)
3102    
3103     29 Apr 2002; Daniel Robbins <drobbins@gentoo.org> emerge: correctly fixed
3104     emerge search examples to use single quotes (to turn off globbing.) This
3105     closes bug #1609.
3106    
3107     29 Apr 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: virtual entries
3108     for no-longer-installed packages now get automatically removed on unmerge.
3109     This closes bug #2255 and #1891 (Thilo Bangert's comment on #1891 is also
3110     fixed.)
3111    
3112     *portage-1.9.4 (29 Apr 2002)
3113    
3114     29 Apr 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: Added support
3115     for RESTRICT="nomirror". If "mirror" is defined in FEATURES and "nomirror"
3116     is defined in RESTRICT, then files will not be fetched.
3117    
3118     29 Apr 2002; Daniel Robbins <drobbins@gentoo.org> emerge: Fixed docs for
3119     "unmerge", added docs for "--oneshot". Closes bugs #2156 and #2182.
3120    
3121     29 Apr 2002; Daniel Robbins <drobbins@gentoo.org> ebuild.sh: Fix for USE
3122     troubles; confirmed by Azarah as working :) Also, we now strip the path
3123     from "KV" as we should.
3124    
3125     *portage-1.9.4_pre1 (26 Apr 2002)
3126    
3127     26 Apr 2002; Daniel Robbins <drobbins@gentoo.org> tarball.sh: no longer
3128     necessary for VERSION to equal "@portage_version@" to get the version
3129     auto-set. VERSION can now be set to anything and tarball.sh will get it
3130     right.
3131    
3132     26 Apr 2002; Daniel Robbins <drobbins@gentoo.org> emerge: I've started work
3133     on revamping/improving the "blocks" system to get ready to fix bug #1891.
3134     Already fixed a bug where "blocks" ("!" deps) print out the wrong blocking
3135     package name. This is now fixed. Blocks need additional testing.
3136    
3137     26 Apr 2002; Daniel Robbins <drobbins@gentoo.org> portage.py, ebuild.sh, use:
3138     "use" is now a bash builtin function rather than an external python-based
3139     command. This appears to fix the USE inconstencies, as it should, thereby
3140     closing bug #2000.
3141    
3142     *portage-1.9.3 (24 Apr 2002)
3143    
3144     24 Apr 2002; Jon Nelson <jnelson@gentoo.org>: portage.py, chkcontents:
3145     Emulate fchksum's md5 checksum routine. Closes bug #2787.
3146    
3147     23 Apr 2002; Daniel Robbins <drobbins@gentoo.org>: emerge: invalid
3148     short options result in an exit. Closes bug #2025.
3149    
3150     22 Apr 2002; Daniel Robbins <drobbins@gentoo.org>: emerge: rsync zlib
3151     compression enabled by default.
3152    
3153     *portage-1.9.2 (21 Apr 2002)
3154    
3155     21 Apr 2002; Daniel Robbins <drobbins@gentoo.org>: portage.py: signal
3156     handler now zaps /etc/ld.so.preload if it's there -- this prevents it
3157     from hanging around and causing sandbox badness.
3158    
3159     21 Apr 2002; Daniel Robbins <drobbins@gentoo.org>: emerge: fixed an
3160     error where --emptytree mode wouldn't really have a fully empty tree,
3161     due to the emptytree.inject() coming before the emptytree.root=None;
3162     the inject() caused a recalc of the USE vars, which caused the tree
3163     to become partially populated and it wasn't cleared. This closes bug
3164     #1897.
3165    
3166     21 Apr 2002; Daniel Robbins <drobbins@gentoo.org>: portage.py: package
3167     building now executes the "setup" stage along with the unpack, compile,
3168     install stages so that global variables can be shared. This fixes an issue
3169     with woodchip's new apache ebuild and closes bug #1813.
3170    
3171     *portage-1.9.1 (16 Apr 2002)
3172    
3173     16 Apr 2002; Daniel Robbins <drobbins@gentoo.org>: tiny (and forgotten)
3174     quick fix.
3175    
3176     *portage-1.9.0 (16 Apr 2002)
3177    
3178     16 Apr 2002; Daniel Robbins <drobbins@gentoo.org>: portage.py: fetching
3179     should now try *all* alternate download locations, closing bug #1544.
3180     Yay!
3181    
3182     15 Apr 2002; Daniel Robbins <drobbins@gentoo.org>: emerge: "emerge R" now
3183     works correctly, closing bug #1094.
3184    
3185     15 Apr 2002; Daniel Robbins <drobbins@gentoo.org>: ebuild.sh: *'s and ?'s in
3186     DEPEND and SRC_URI syntax should no longer get glob-expanded to files in
3187     /usr/portage. This fixes some cryptic bugs. It also closes bug #1473.
3188    
3189     15 Apr 2002; Daniel Robbins <drobbins@gentoo.org>: portage.py: emerge --debug
3190     now works again. Closes bug #1437.
3191    
3192     15 Apr 2002; Daniel Robbins <drobbins@gentoo.org>: portage.py: moved argument
3193     check to the beginning of the doebuild() function to prevent "ebuild
3194     foo.ebuild fart" from causing the md5sums to be checked before recognizing
3195     that "fart" is not a valid command. Closes bug #1823.
3196    
3197     15 Apr 2002; Daniel Robbins <drobbins@gentoo.org>: portage.py: 'USE="-foo"
3198     emerge bar' should now work correctly and consistently. Fixes to the config
3199     class. Closes bug #1455.
3200    
3201     15 Apr 2002; Daniel Robbins <drobbins@gentoo.org>: portage.py: applied
3202     jnelson's patch to properly kill all children when interrupted with ^C
3203    
3204     15 Apr 2002; Donny Davies <woodchip@gentoo.org>: make.conf: added a
3205     RESUMECOMMAND for lukemftp.
3206    
3207     15 Apr 2002; Daniel Robbins <drobbins@gentoo.org>: portage.py: fixed up some
3208     "zing" logic inside the merge code (fixing variable being used before
3209     assignment errors)
3210    
3211     15 Apr 2002; Jon Nelson <jnelson@gentoo.org>: src/sandbox/Makefile,
3212     src/sandbox/problems/Makefile, src/sandbox/problems/sandbox_dev_fd_foo.c,
3213     src/sandbox/sandbox.c: Cleaned up Makefiles somewhat to take advantage of GNU
3214     Make, added '/dev/zero' and /dev/fd/' (<- note trailing slash) to the list of
3215     items accessible safely from the sandbox. Added sandbox_dev_fd_foo.c to test
3216     for /dev/fd/<xx>. The test is almost verbatim from the autoconf test suite.
3217    
3218     13 Apr 2002; Martin Schlemmer <azarah@gentoo.org>: ebuild.sh:
3219     Export $S and $D in dyn_compile and dyn_install, as our patched
3220     version of libtool uses these to fixup .la files.
3221    
3222     *portage-1.8.19 (09 Apr 2002)
3223    
3224     08 Apr 2002; Geert Bevin <gbevin@gentoo.org>: emerge: Removed --all switch to
3225     emerge unmerge and clea. Added emerge prune which is the same as old emerge
3226     unmerge. Emerge unmerge removes all instances again without any proctedtion,
3227     as before. Added reporting of Omitted versions due to dep selectors.
3228     Renamed Removing and Keeping to Selected and Protected
3229    
3230     08 Apr 2002; Geert Bevin <gbevin@gentoo.org>: emerge, portage.py: Better
3231     unmerge and clean reporting. Added homepage output to emerge --search.
3232     Bugfix when specifying a package without category that doesn't exist.
3233    
3234     *portage-1.8.18 (07 Apr 2002)
3235    
3236     07 Apr 2002; Geert Bevin <gbevin@gentoo.org>: make.globals, emerge:
3237     Simplified unmerge functionality. Deprecated the CLEANMODE var,
3238     emerge clean now removes both revisions and slots automatically,
3239     emerge unmerge now removes all versions and revisions by default.
3240     Both understand world and system targets, and the --all option which doesn't
3241     check which packages are old and outdated.
3242     Documentation fixes.
3243     AUTOCLEAN var addition and added the autoclean functionality.
3244    
3245     *portage-1.8.17 (05 Apr 2002)
3246    
3247     05 Apr 2002; Daniel Robbins <drobbins@gentoo.org>: portage.py: no longer
3248     print out the counter number after a merge. This information should not
3249     need to be known by end-users.
3250    
3251     05 Apr 2002; Daniel Robbins <drobbins@gentoo.org>: sandbox.c: patched to
3252     allow access to /dev/vc from sandbox, allowing vim and screen to compile
3253     correctly from console.
3254    
3255     05 Apr 2002; Daniel Robbins <drobbins@gentoo.org>: portage.py: fixed a bug
3256     that prevented md5 digests from being compared on archives.
3257    
3258     04 Apr 2002; Daniel Robbins <drobbins@gentoo.org>: portage.py: Parse errors
3259     in /etc/env.d files no longer cause a traceback.
3260    
3261     *portage-1.8.16 (04 Apr 2002)
3262    
3263     04 Apr 2002; Geert Bevin <gbevin@gentoo.org> portage.py, emerge : Forgot to
3264     commit my changes, this is an assembled version of both drobbins's and my
3265     changes
3266    
3267     *portage-1.8.15 (04 Apr 2002)
3268    
3269     04 Apr 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: Fixed a
3270     semi-long standing bug where I was comparing atimes rather than mtimes when
3271     seeing if dep caches were stale. This fixes a bug originally reported by Dan
3272     Armak.
3273    
3274     *portage-1.8.14 (04 Apr 2002)
3275    
3276     04 Apr 2002; Geert Bevin <gbevin@gentoo.org> emerge:
3277     Fixed short options for --all, --safe and clean.
3278    
3279     *portage-1.8.13 (04 Apr 2002)
3280    
3281     04 Apr 2002; Geert Bevin <gbevin@gentoo.org> portage.py, emerge:
3282     Added emerge --all clean and emerge --safe unmerge.
3283     Made the counter updates atomic so that multiple merges can happen without
3284     risking counter clashes.
3285     Updated --help.
3286     Fixed short options bug that prevented two seperate short options to be
3287     specified successively.
3288    
3289     *portage-1.8.12 (04 Apr 2002)
3290    
3291     04 Apr 2002; Geert Bevin <gbevin@gentoo.org> portage.py, emerge:
3292     implemented "emerge clean" with oldrevs, oldversions and oldslots options for
3293     the make.conf/make.globals CLEANMODE variable.
3294    
3295     03 Apr 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: Added an
3296     indentation fix to prevent merge from dying if a file attempts to install
3297     itself on top of an existing directory. Closes bug #1498.
3298    
3299     *portage-1.8.11.1 (03 Apr 2002)
3300    
3301     03 Apr 2002; Geert Bevin <gbevin@gentoo.org> portage.py: important fixes
3302     for movefile() -- changed the order of ownership / permissions settings since
3303     suid/guid bits were overwritten, added support back for 'ebuild config' since
3304     it was accidentally left out
3305    
3306     *portage-1.8.11 (02 Apr 2002)
3307    
3308     02 Apr 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: important fixes
3309     for movefile() -- ownership now preserved across filesystems, mv -f fallback
3310     for special files, other optimizations and robustness improvements. Important
3311     fixes all-round.
3312    
3313     02 Apr 2002; Geert Bevin <gbevin@gentoo.org> emerge:
3314     fixed bad indentation of a part of the code that made unmerging multiple
3315     packages behave badly
3316    
3317     *portage-1.8.10 (01 Apr 2002)
3318    
3319     01 Apr 2002; Daniel Robbins <drobbins@gentoo.org> make.globals: removed USE
3320     settings from make.globals.
3321    
3322     01 Apr 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: In trying to fix
3323     the glibc merge bug, we rewrote movefile() and it now runs blazingly fast. I
3324     also tweaked the code to remove the need for an ">>> Updating mtimes..."
3325     stage. This is all done dynamically now. *Much* faster. And hopefully
3326     solid for glibc upgraders.
3327    
3328     *portage-1.8.9.4 (01 Apr 2002)
3329    
3330     31 Mar 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: adapted
3331     movefile() which should preserves timestamps and ownership on files and
3332     symlinks it moves.
3333    
3334     *portage-1.8.9.3 (31 Mar 2002)
3335    
3336     31 Mar 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: promising
3337     rewrite of movefile() not only will probably fix glibc merge bug but also
3338     speeds up merging at least 20x! Calling "mv" for every file really make
3339     things super-slow!
3340    
3341     *portage-1.8.9.2 (31 Mar 2002)
3342    
3343     31 Mar 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: desperate attempt
3344     to fix movefile() bug... a hack really. glibc merges still dying.
3345    
3346     *portage-1.8.9.1 (31 Mar 2002)
3347    
3348     31 Mar 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: it appears that
3349     movefile() (using "/bin/mv") can still die if moving a new symlink on top of
3350     an existing library symlink. Upon failure, we now use a fallback mechanism
3351     to use "/bin/sln" to create the new symlink safely.
3352    
3353     *portage-1.8.9 (30 Mar 2002)
3354    
3355     30 Mar 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: tiny cosmetic
3356     fix for digest generation.
3357    
3358     30 Mar 2002; Daniel Robbins <drobbins@gentoo.org> emerge: entries in the
3359     world profile will be ignored if at least one version of the package in
3360     question isn't already merged. Prevents "--update world" from remerging
3361     packages that have since been unmerged.
3362    
3363     30 Mar 2002; Daniel Robbins <drobbins@gentoo.org> various: changing all
3364     references from /usr/bin/python to /usr/bin/python2.2.
3365    
3366     30 Mar 2002; Daniel Robbins <drobbins@gentoo.org> db-update.py: moving this
3367     script here from FILESDIR.
3368    
3369     30 Mar 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: stuff doesn't
3370     get added to the world profile if it is already an essential ("*") package in
3371     the system profile. Keeps things clean and flexible.
3372    
3373     *portage-1.8.9_pre38 (30 Mar 2002)
3374    
3375     30 Mar 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: resolve_key()
3376     didn't call load() on mapped virtuals, resulting in inconsistent resolution
3377     of virtual keys. Now fixed; thanks to woodchip for the bug report.
3378    
3379     *portage-1.8.9_pre37 (30 Mar 2002)
3380    
3381     30 Mar 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: specific
3382     provides (dev-lang/python-2.2) will be converted to their generic form
3383     (dev-lang/python) before being recorded.
3384    
3385     *portage-1.8.9_pre36 (30 Mar 2002)
3386    
3387     30 Mar 2002; Daniel Robbins <drobbins@gentoo.org> portage.py, emerge: new
3388     virtuals fixes and a db-upgrade.py script in the ebuild to solve another
3389     virtuals problem.
3390    
3391     *portage-1.8.9_pre35 (29 Mar 2002)
3392    
3393     29 Mar 2002; Daniel Robbins <drobbins@gentoo.org> portage.py, emerge: digest
3394     generation fixes; emerge --update will now update dependents even if the main
3395     package hasn't been updated. getdict() fix, fixing a traceback.
3396    
3397     *portage-1.8.9_pre34 (28 Mar 2002)
3398    
3399     28 Mar 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: Added an indent
3400     fix for the new virtuals code, eliminating a traceback. Tweaked digest handling,
3401     fixing a cosmetic error.
3402    
3403     *portage-1.8.9_pre33 (28 Mar 2002)
3404    
3405     28 Mar 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: tweaked digest
3406     creation in doebuild() to hopefully avoid creating digests twice. I hope I
3407     didn't break anything in the process.
3408    
3409     28 Mar 2002: Daniel Robbins <drobbins@gentoo.org> portage.py, emerge: "emerge
3410     update" is now "emerge --update"; "world" added back. New world
3411     implementation that works like this ... if you type "emerge media-gfx/gimp",
3412     media-gfx/gimp will be added to the "world" favorites file in
3413     /var/cache/edb/world. This world file is added to the system profile in
3414     order to create the set of "world" packages to merge. You can manually put
3415     specific deps (for pinning) in /var/cache/edb/world and they won't get
3416     overwritten. To prevent a package that you specify on the emerge
3417     command-line from being added to the world profile, use the "--oneshot"
3418     option, which tells emerge that it should be merged once but not updated.
3419    
3420     28 Mar 2002: Daniel Robbins <drobbins@gentoo.org> portage.py: New virtuals
3421     implementation; new virtual info is recorded in /var/cache/edb/virtuals;
3422     virtuals data is created by merging the profile virtual info with the new
3423     edb/virtuals file. Note: We no longer add virtual package entries to
3424     /var/db/pkg. This change solves the bug where virtual files get auto-updated
3425     by pkg-update, and also solves the bug where doing an "emerge --update world"
3426     will cause ssmtp to be merged in order to satisfy the virtual/mta dep (which
3427     you already have satisfied by postfix, for example). Now, postfix will be
3428     updated if necessary, but that's it. :)
3429    
3430     *portage-1.8.9_pre32 (22 Mar 2002)
3431    
3432     22 Mar 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: fixed a bug
3433     related to scanning for available binary packages, which would cause emerge
3434     to die.
3435    
3436     21 Mar 2002; Dan Armak <danarmak@gentoo.org> portage.py: added ECLASSDIR
3437     (=$PORTDIR/eclass) to settings exported by python side to bash side.
3438     ebuild.sh: remove ECLASSDIR setting to use the one now provided by
3439     portage.py. Also, clean inherit() and make it use debug-print().
3440    
3441     *portage-1.8.9_pre31 (21 Mar 2002)
3442    
3443     21 Mar 2002; Daniel Robbins <drobbins@gentoo.org> ebuild.sh: Added Dan
3444     Armak's patch to enable eclasses. :)
3445    
3446     21 Mar 2002; Grant Goodyear <g2boojum@gentoo.org> portage.py:
3447     Added a drobbins patch to at line 469. Should fix emerge rsync
3448     problem when /etc/make.profile doesn't exist.
3449    
3450     *portage-1.8.9_pre30 (20 Mar 2002)
3451    
3452     20 Mar 2002; Daniel Robbins <drobbins@gentoo.org> portage.py, emerge: emerge
3453     --emptytree now works again and I added a new --nodeps option to emerge as
3454     well.
3455    
3456     *portage-1.8.9_pre29 (20 Mar 2002)
3457    
3458     20 Mar 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: CONTENTS files
3459     now record the correct path when ROOT!="/".
3460    
3461     *portage-1.8.9_pre28 (20 Mar 2002)
3462    
3463     20 Mar 2002; Daniel Robbins <drobbins@gentoo.org> portage.py, emerge: an
3464     /etc/make.profile dir is now optional and portage will work if it's missing
3465     or is a broken symlink.
3466    
3467     20 Mar 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: fix load()
3468     method in packagetree() class.
3469    
3470     *portage-1.8.9_pre27 (19 Mar 2002)
3471    
3472     19 Mar 2002; Daniel Robbins <drobbins@gentoo.org> portage.py:
3473     /etc/make.profile/packages wasn't correctly masking core system packages;
3474     fixed.
3475    
3476     *portage-1.8.9_pre26 (18 Mar 2002)
3477    
3478     18 Mar 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: configuration
3479     settings don't get loaded from ${ROOT}/etc anymore, just /etc. This
3480     simplifies the creation of a new build image.
3481    
3482     18 Mar 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: Don't expect a
3483     digest file if SRC_URI is set to "" or undefined.
3484    
3485     18 Mar 2002; Daniel Robbins <drobbins@gentoo.org>: RDEPEND was getting set
3486     to DEPEND even if there was an RDEPEND="" in the ebuild. This has now been
3487     fixed and RDEPEND will only get to DEPEND if RDEPEND has unset (not "unset
3488     or null", as it was before this fix.)
3489    
3490     18 Mar 2002; Daniel Robbins <drobbins@gentoo.org>: emerge: circular
3491     dependencies error will result in the digraph dependencies being printed to
3492     stdout, greatly simplifying debugging.
3493    
3494     18 Mar 2002; Geert Bevin <gbevin@gentoo.org>: src/sandbox/problems: Added
3495     several sample implementations to reproduce reported bugs.
3496    
3497     18 Mar 2002; Geert Bevin <gbevin@gentoo.org>: libsandbox.c: All paths are now
3498     checked for multiple successive slashes anywhere, this closes bug 827.
3499     Performance should be slightly improved for other apps on the system for who
3500     the sandbox is not turned on.
3501    
3502     14 Mar 2002; Daniel Robbins <drobbins@gentoo.org>: output.py: quick fix to
3503     turn off white color output -- not good for terminals with white background.
3504     This closes bug #1135.
3505    
3506     11 Mar 2002; Daniel Robbins <drobbins@gentoo.org>: Applied karltk's version
3507     information patch. Portage.py now contains version information, and this
3508     info is reported by "emerge --version". Thanks Karl! :)
3509    
3510     *portage-1.8.9_pre25 (11 Mar 2002)
3511    
3512     10 Mar 2002; Daniel Robbins <drobbins@gentoo.org> portage.py, emerge: roll
3513     back portagetree incremental db optimizations to fix an important bug (no
3514     package.mask calculations being done.) Emerge will now abort if a dependency
3515     can't be satisfied rather than printing just a warning.
3516    
3517     *portage-1.8.9_pre24 (09 Mar 2002)
3518    
3519     09 Mar 2002; Daniel Robbins <drobbins@gentoo.org> emerge: fixed missing
3520     "--clean" option so "--clean rsync" should work again. Also converted emerge
3521     to work with our new db layout (db objects are in the portage module now).
3522    
3523     09 Mar 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: Added USE
3524     ordering, a concept envisioned by Vitaly Kushneriuk. The idea is to allow
3525     customization of how Portage resolves USE variables. The default is
3526     "env:conf:auto:defaults" (set in the USE_ORDER variable -- this default is
3527     now in make.globals but as always you should set your custom USE_ORDER in
3528     make.conf if desired.) So, my default, USE settings will be calculated as
3529     follows. The USE variables will be grabbed from the
3530     /etc/make.profile/make.defaults file (this is "defaults".) Then, the
3531     /etc/make.profile/use.defaults file will be consulted. This file lists (one
3532     per line) a USE variable and a corresponding dependency. If the dependency
3533     is satisfied, the USE variable is auto-enabled and added to our working list
3534     (this is "auto"). Then /etc/make.conf is consulted, so that the user has the
3535     option of force-enabling (with USE="foo") or force-disabling (with
3536     USE="-foo") any USE variables as desired (this is "conf".) Then, the
3537     environment is consulted, allowing easy modifications from the command-line
3538     (this is "env"). Also added is the ability for USE settings to be
3539     dynamically regenerated in an efficient way as packages are merged. So,
3540     right after xfree is emerged, the "X" use variable can be immediately
3541     auto-enabled. Thanks to Vitaly for providing the vision for this.
3542    
3543     *portage-1.8.9_pre23 (08 Mar 2002)
3544    
3545     09 Mar 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: our portage
3546     tree and /var/db/pkg tree now uses incremental caching rather than doing
3547     an exhaustive scan on startup. This should speed up this respective code
3548     by 2-30x depending on how many packages you're emerging. This involved
3549     quite a few changes to the code, and there could be some bugs, although I
3550     tried to be very careful. These changes could also break code that access
3551     internal .tree[] dictionaries directly.
3552    
3553     08 Mar 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: SRC_URIs with
3554     USE-enabled ( ) clauses in them weren't working because I was iterating
3555     through multi-level lists without flatten()ing them. Now fixed.
3556    
3557     07 Mar 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: We no longer
3558     depend upon a file being unmerged. We try to unlink during unmerge() in a
3559     "try" clause, with an exception for OSError. If the directory is immutable
3560     then Portage continues gracefully. This closes a bug reported by Verwilst --
3561     unmerging an old baselayout would die when it tried to delete /dev/shm.
3562     Fixed in Portage to eliminate these kinds of problems in the future.
3563    
3564     *portage-1.8.9_pre22 (07 Mar 2002)
3565    
3566     07 Mar 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: I had
3567     sys.exit() in doebuild()'s fetch section. Converted to "return 1" and
3568     "return 0" to be emerge --fetchonly friendly. Thanks to Dan Armak for the
3569     bug report.
3570    
3571     *portage-1.8.9_pre21 (07 Mar 2002)
3572    
3573     07 Mar 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: fixed symlink
3574     merge bug related to "safe" emerges. This should fix problems of Portage
3575     dying when merging certain things. I'm hoping that this fix will give us a
3576     solid merge implementation. It should. Thanks to Bart Verwilst for tracking
3577     down a merge problem that I could reproduce.
3578    
3579     *portage-1.8.9_pre20 (06 Mar 2002)
3580    
3581     06 Mar 2002; Daniel Robbins <drobbins@gentoo.org> ebuild.sh, others: users
3582     can now forcefully disable stripping of their ebuild binaries by adding a
3583     RESTRICT="nostrip" to their ebuild. Additionally, the DEBUG variable has
3584     been renamed to DEBUGBUILD to prevent namespace collisions. This closes bug
3585     #868.
3586    
3587     06 Mar 2002; Daniel Robbins <drobbins@gentoo.org> portage.py : Fixed a
3588     long-standing bug where the pkg_preinst() and pkg_postinst() functions being
3589     called came from the existing package ebuild in /var/db/pkg rather than the
3590     new ebuild being merged. pkg_prerm() and pkg_postrm() still use the ebuild
3591     in /var/db/pkg, which is correct. Thanks to Dan Armak for tracking down this
3592     bug.
3593    
3594     *portage-1.8.9_pre19 (05 Mar 2002)
3595    
3596     05 Mar 2002; Daniel Robbins <drobbins@gentoo.org> portage.py : Fixed two bugs
3597     reported by Dan Armak relating to incomplete (not missing) message digests.
3598     They should now get regenerated automatically is "digest" is in FEATURES and
3599     not confuse the fetch code.
3600    
3601     *portage-1.8.9_pre18 (04 Mar 2002)
3602    
3603     04 Mar 2002; Daniel Robbins <drobbins@gentoo.org> portage.py : Bug fix in
3604     dep_bestmatch(); rev comparison now works correctly and dep_bestmatch will
3605     properly handle 2-digit revisions in particular. This closes bug #952.
3606    
3607     04 Mar 2002; Daniel Robbins <drobbins@gentoo.org> portage.py : Thanks to a
3608     bug report by Bruce Locke, the long-standing bug where symlinks with
3609     different mtimes would still get unmerged is now fixed. This allows glibc
3610     (of all things) to be unmerged safely. We needed this fix. Closes bug #964.
3611    
3612     03 Mar 2002; Daniel Robbins <drobbins@gentoo.org> portage.py : KDEDIR ->
3613     KDEDIRS (fixing my typo)
3614    
3615     *portage-1.8.9_pre17 (27 Feb 2002)
3616    
3617     27 Feb 2002; Daniel Robbins <drobbins@gentoo.org> emerge : --help
3618     documentation is now up-to-date; short options tweaked.
3619    
3620     26 Feb 2002; Daniel Robbins <drobbins@gentoo.org> portage.py : Fixed an
3621     unmerge error caused by digests now being recorded in lowercase. unmerge now
3622     compensates for 100% backwards compatibility. Moved "continue" outside of
3623     "try" block since this is disallowed in Python. This fixes a python warning
3624     during fetch.
3625    
3626     26 Feb 2002; Geert Bevin <gbevin@gentoo.org> bin/dohtml : Added support for
3627     installing .gif files too since quite some docs still ship with those instead
3628     of .jpg or .png.
3629    
3630     *portage-1.8.9_pre16 (25 Feb 2002)
3631    
3632     25 Feb 2002; Daniel Robbins <drobbins@gentoo.org> emerge : emerge syntax
3633     changed back to "classic" style; replaced dots with spinner, did a major code
3634     cleanup and removed pieces that will be rewritten for 1.8.9 final. emerge
3635     documentation isn't up-to-date at all; I'm holding off on the --help rewrite
3636     until after 1.8.9 features have been finalized (soon!)
3637    
3638     25 Feb 2002; Daniel Robbins <drobbins@gentoo.org> : Added RESTRICT variable
3639     to ebuilds. If RESTRICT="fetch" is set in the ebuild, it means that the
3640     files listed in SRC_URI are simply filenames and that the real files must be
3641     downloaded manually. This allows us to deal with realplayer, since
3642     overriding dyn_fetch is no longer an option now that we have the fetch code
3643     in python. Also added a cosmetic tweak to emerge during info file
3644     regeneration.
3645    
3646     25 Feb 2002; Daniel Robbins <drobbins@gentoo.org> cnf/* : updated ${x} ->
3647     ${URI} in $FETCHCOMMAND.
3648    
3649     24 Feb 2002; Daniel Robbins <drobbins@gentoo.org> Fixed another fetch bug
3650     where the download wouldn't cycle to alternate mirrors (it'd get stuck on
3651     the first download location)
3652    
3653     *portage-1.8.9_pre15 (24 Feb 2002)
3654    
3655     24 Feb 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: some fixing of
3656     the merge code; added automatic digest generation when "digest" is in
3657     FEATURES; made the fetch() code not depend on a pre-existing digest. This
3658     should fix all known digest/fetch issues.
3659    
3660     *portage-1.8.9_pre14 (23 Feb 2002)
3661    
3662     23 Feb 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: If you have a
3663     file that's hosted directly on our master ibiblio mirror, you can specify
3664     it in SRC_URI as "http://mirror/myfile.tar.bz2". "http://mirror" will be
3665     expanded to the first mirror defined in GENTOO_MIRRORS, or our master ibiblio
3666     mirror if no mirrors are defined. Groovy. This closes bug #627.
3667    
3668     23 Feb 2002; Daniel Robbins <drobbins@gentoo.org> make.globals, emerge,
3669     portage.py: wget is no longer hardcoded; FETCHCOMMAND is enabled again, but
3670     uses ${FILE} and ${URI} instead of ${x} and ${y} now. Added download
3671     resuming, which requires the definition of RESUMECOMMAND (added to
3672     make.globals). Updated spawn() so that when it's called as spawn(foo,free=1)
3673     as an argument, sandboxing is turned off. Replaced all calls to
3674     os.system(foo) with spawn(foo,free=1), since os.system() messes with signal
3675     handling. Added a default SIGINT signal handler to portage.py so that ^C
3676     interrupts are handled correctly (portage will immediately exit with a return
3677     code of 1). This has been tested and works for ebuild and emerge. These
3678     additions should also close bug #407 and #760.
3679    
3680     23 Feb 2002; Daniel Robbins <drobbins@gentoo.org> emerge: spython -> python
3681     fix; resolution of cvs merge conflict. Removed edepend assignment bug
3682     reintroduced in Geert's commit; added comment explaining why the new code is
3683     needed so it doesn't get removed again ;)
3684    
3685     22 Feb 2002; Geert Bevin <gbevin@gentoo.org> emerge: removed spurious cvs
3686     conflict lines fixed bug in the cleanup code where different slots weren't
3687     handled too well
3688    
3689     *portage-1.8.9_pre13 (22 Feb 2002)
3690    
3691     22 Feb 2002; Daniel Robbins <drobbins@gentoo.org> various: fix /bin/sh
3692     symlink merge problems and massively simplified movefile() code. Added back
3693     some emerge code so that "emerge --search rsync" doesn't run rsync.
3694    
3695     *portage 1.8.9_pre12 (22 Feb 2002)
3696    
3697     22 Feb 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: everything
3698     should now generate *lowercase* md5sums, fixing problems with digest
3699     backwards compatibility.
3700    
3701     22 Feb 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: changed
3702     position of digest generation call so that "ebuild digest" now works if the
3703     sources have not yet been downloaded.
3704    
3705     *portage 1.8.9_pre11 (22 Feb 2002)
3706    
3707     22 Feb 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: unmerging now
3708     works correctly.
3709    
3710     *portage 1.8.9_pre10 (22 Feb 2002)
3711    
3712     22 Feb 2002; Daniel Robbins <drobbins@gentoo.org>: "emerge" didn't like the
3713     new portage.py (fixed); A merge database bug (fixed). Fixing the merge bug
3714     should also result in merges happening much faster than before, maybe up to 3
3715     times as fast. We no longer resolve symlinks when testing protection paths.
3716    
3717     *portage 1.8.9_pre9 (21 Feb 2002)
3718    
3719     21 Feb 2002; Daniel Robbins <drobbins@gentoo.org>: moved entirety of Portage
3720     download/digest code from ebuild.sh (bash) to portage.py (python). No
3721     support for custom FETCHCOMMANDs yet, but that's coming soon. Good news is
3722     that it appears to work well and allowed some cleanups and optimizations to
3723     doebuild(). SYNC support added. See cnf/make.conf for more info --
3724     basically, "emerge rsync" (now callable via "emerge sync" as well) supports a
3725     configurable "Portage server" that begins either with "rsync://" or "cvs://".
3726     "emerge sync" is now not only a clean front-end, but a configurable front-end
3727     to the Portage update process. I also removed dependency checking from
3728     'ebuild'. This allowed me to removed some redundant code from portage.py,
3729     and seemed fine to do since 'ebuild' is more and more becoming a low-level
3730     developer tool.
3731    
3732     21 Feb 2002; Daniel Robbins <drobbins@gentoo.org>: rewrite of cumulative USE
3733     setting code so that the new FEATURES (what used to be called MAINTAINER) is
3734     now cumulative and supports "-" and "-*" options. FEATURES is expanded using
3735     all config files, while USE ignores make.globals but uses everything else.
3736     Optimization of a couple parts of doebuild(). Upgraded expandpath() and used
3737     it in one place where it was removed accidentally (in the new merge code.)
3738     Master category list is now stored externally in
3739     ${PORTDIR}/profiles/categories for ease of maintenance.
3740    
3741     21 Feb 2002; Daniel Robbins <drobbins@gentoo.org> emerge: now supports the
3742     EMERGE_OPTS make.conf variable for enabling emerge options by default.
3743     Closes bug #605.
3744    
3745     21 Feb 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: dep_match() now
3746     works with * deps (again? Looks like the code got ripped out somehow); this
3747     closes bug #490.
3748    
3749     21 Feb 2002; Daniel Robbins <drobbins@gentoo.org> global change from
3750     "spython" -> "python", now that Portage is slick enough to update shared
3751     libraries correctly.
3752    
3753     21 Feb 2002; Grant Goodyear <g2boojum@gentoo.org> bin/chkcontents,
3754     man/chkcontents.1: New script to compare what's in a package's CONTENTS file
3755     with what's actually on the filesystem. Useful for discovering that a
3756     package "collision" has occurred.
3757    
3758     21 Feb 2002; Daniel Robbins <drobbins@gentoo.org> ebuild.sh, portage.py:
3759     Dependencies should be no longer checked during the "unpack" stage. This
3760     closes bug #231. Added the $KV kernel version variable to ebuild.sh so that
3761     it's available for all ebuilds. This closes bug #599.
3762    
3763     21 Feb 2002; Daniel Robbins <drobbins@gentoo.org> ebuild.sh: S now defaults
3764     to ${WORKDIR}/${P} if it isn't defined. That's right. Defining S is now
3765     optional :) This should eliminate around 1000 lines from our ports tree.
3766    
3767     20 Feb 2002; Daniel Robbins <drobbins@gentoo.org> portage.py: Fixed some
3768     major bugs in the new merge/config protect code. Merging and config
3769     protection should now work.
3770    
3771     18 Feb 2002; Daniel Robbins <drobbins@gentoo.org> portage.py, emerge,
3772     ebuild.sh : Rewrote merge code. Should merge symlinks only *after* the
3773     target has been merged (needs testing). Added lots of comments. Split
3774     dblink.merge() into 2 new functions -- .walktree() and .mergeme().
3775     Cleaned/optimized merging a good deal. Added special "-*" USE variable to
3776     unset *all* USE variables defined up until that point.
3777    
3778     18 Feb 2002; Daniel Robbins <drobbins@gentoo.org> portage.py, emerge,
3779     ebuild.sh : Fixed USE bug (config.reset() threw away our cumulative USE),
3780     streamlined turbo dep calculations by moving edb cache entry creation to
3781     ebuild.sh. Started coding new dblink.merge() method that should be much
3782     cleaner, faster and merge symlinks safely.
3783    
3784     17 Feb 2002; Daniel Robbins <drobbins@gentoo.org> portage.py : Added
3785     cumulative USE variable support. The final USE var is calculated
3786     cumulatively starting with make.profile, then make.conf, and then the
3787     environment. Any "-foo" option in USE will turn off a previously-defined USE
3788     setting. So, if you want to use the profile-default USE settings except turn
3789     "X" off, you add 'USE="-X"' to /etc/make.conf and that's it. This greatly
3790     simplifies USE variable maintenance since developers can now easily add new
3791     USE variables that default to 'on'. Simply add the USE variable and then add
3792     it to make.profile. It will then be included in everyone's USE variables
3793     automatically unless they explicitly "-newvar" in /etc/make.conf or in the
3794     local environment. This also enables easy one-shot disabling of USE
3795     variables. For example, to merge xchat without GNOME support (when "gnome"
3796     is in your /etc/make.conf USE variable), simply type "USE="-gnome" emerge
3797     net-irc/xchat". This is a lot easier than temporarily tweaking
3798     /etc/make.conf.
3799    
3800     17 Feb 2002: Daniel Robbins <drobbins@gentoo.org> emerge : Added a quick hack
3801     to cache ebuild dependency info using extended attributes on XFS filesystems.
3802     Gives a factor of 10 speedup for dependency calculations. Will look into a
3803     generic caching solution that should offer similar performance increases on
3804     all filesystems. Note: the fact that this hack is on CVS means that emerge
3805     is currently in a hyper-experimental state and shouldn't be used right now.
3806    
3807     16 Feb 2002; G.Bevin <gbevin@gentoo.org> emerge : added support for 'emerge
3808     cat/pkg-version' instead of always having to require 'emerge cat/pkg'
3809    
3810     15 Feb 2002; G.Bevin <gbevin@gentoo.org> emerge : reimplemented the display
3811     of cleaned packages to clearly show all versions that are about to be removed
3812     and which versions are going to stay
3813    
3814     13 Feb 2002; D.Robbins <drobbins@gentoo.org> emerge :
3815     added --emptytree option
3816    
3817     13 Feb 2002; G.Bevin <gbevin@gentoo.org> emerge, portage.py :
3818     fixed little bug where emerge --clean rsync wasn't correctly handled anymore
3819     implemented all new functionalities of emerge --clean, this adds --slots,
3820     --versions and --all options together with world and system modes
3821    
3822     12 Feb 2002; G.Bevin <gbevin@gentoo.org> emerge, portage.py :
3823     changed emerge --zap to emerge --clean
3824     removed parts of the already implemented slots functionality to be able to
3825     fall back to a more flexible implementation. Binary compatible slots will now
3826     mostly influence emerge during the --clean operation
3827    
3828     12 Feb 2002; G.Bevin <gbevin@gentoo.org> emerge :
3829     added fallback check in case UNMERGE_DELAY hasn't been defined in
3830     make.globals or make.conf
3831    
3832     *portage 1.8.9_pre8 (18 Feb 2002)
3833    
3834     12 Feb 2002; G.Bevin <gbevin@gentoo.org> emerge :
3835     changed the rebuild code to use depgraph instead, dramatically reducing code
3836     duplication
3837    
3838     11 Feb 2002; G.Bevin <gbevin@gentoo.org> emerge :
3839     changed indentation of a code part that wasn't at the right level. It got the
3840     count of the non slot packages during --zap completely wrong
3841    
3842     *portage 1.8.9_pre7 (11 Feb 2002)
3843    
3844     11 Feb 2002; G.Bevin <gbevin@gentoo.org> portage.py :
3845     fixed bug in packagetree.dep_match() where a ~ dependency is returned as a
3846     string instead of as a list
3847    
3848     11 Feb 2002; G.Bevin <gbevin@gentoo.org> emerge :
3849     - removed support for --all and world in 'emerge --unmerge', by default now
3850     all matching packages are removed since with the new slots functionality
3851     old package versions should not exists anymore
3852     - colored package name red too when a blocking package is found during
3853     pretend operation
3854     - changed emerge invocation arguments to be in a new universal interface
3855     format this has been decided to be :
3856     'emerge --action --option --option [packageset]'
3857     some features however don't respect this, but that's since they are not
3858     package installation related and are easier to use as straight commands
3859     eg: emerge rsync
3860     - added UNMERGE_DELAY var to make.globals and support it in emerge to obtain
3861     the number of seconds to wait
3862     - support for NOCOLOR="yes" as wel as NOCOLOR="true"
3863     - major speedups for emerge -search
3864     - added formatted package descriptions of the matches from emerge --search
3865     that nicely wrap at 80 chars
3866     - rewrote retrieval of package descriptions to support descriptions that are
3867     specified on multiple lines
3868     - added support for 'noslot' to --zap, --update and --rebuild
3869    
3870     11 Feb 2002; G.Bevin <gbevin@gentoo.org> sandbox.c, libsandbox.c :
3871     added checks to see if the files where information is written to are really
3872     regular files and not symlinks
3873    
3874     *portage 1.8.9_pre6 (10 Feb 2002)
3875    
3876     10 Feb 2002; G.Bevin <gbevin@gentoo.org> emerge :
3877     added support for 'emerge --unmerge world' which removes all old package
3878     versions from the system
3879     made 'emerge --unmerge' take binary compatibility slots into account, this
3880     prevents that packages with different versions but also different slots, are
3881     being unmerged
3882     added support for "--verbose" in "emerge rebuild" and "emerge world" to
3883     provide details about packages that aren't in the local tree anymore and to
3884     notify the user about which packages don't support slots
3885    
3886     9 Feb 2002; G.Bevin <gbevin@gentoo.org> emerge :
3887     added support for the rebuild mode which rebuilds all the packages on your
3888     system for which a corresponding package could be found in to portage tree
3889    
3890     9 Feb 2002; G.Bevin <gbevin@gentoo.org> portage.py :
3891     renamed getEbuildPaths() or vartree to getebuildpaths()
3892     fixed bug in the merging of binary packages
3893    
3894     7 Feb 2002; G.Bevin <gbevin@gentoo.org> xpack.py :
3895     added additional argument to tbz2.getfile() which allows default content to
3896     be provided when the requested file couldn't be found in the tbz2 archive
3897    
3898     7 Feb 2002; G.Bevin <gbevin@gentoo.org> ebuild.sh :
3899     added SLOT information as the third entry in the temporary deps file that is
3900     generated during ebuild depend,
3901    
3902     7 Feb 2002; G.Bevin <gbevin@gentoo.org> portage.py :
3903     obtain SLOT information from the deps file instead of using the slotgrab()
3904     function, removed slotgrab() function, updated some comments
3905    
3906     7 Feb 2002; G.Bevin <gbevin@gentoo.org> emerge :
3907     added SLOT information to the generated edepend var for binary packages
3908    
3909     *portage 1.8.9_pre5 (6 Feb 2002)
3910    
3911     6 Feb 2002; G.Bevin <gbevin@gentoo.org> portage.py :
3912     fixed bugs where the old instance wasn't unmerged correctly if slots are
3913     identical, but ebuild version numbers not
3914    
3915     6 Feb 2002; Grant Goodyear <g2boojum@gentoo.org> cnf/make.conf :
3916     Copied proxy lines from make.globals (bug 431).
3917    
3918     6 Feb 2002; Vitaly Kushneriuk <vitaly@gentoo.org> portage.py :
3919     added missing SLOT param to merge(...).
3920    
3921     *portage 1.8.9_pre4 (6 Feb 2002)
3922    
3923     6 Feb 2002; G.Bevin <gbevin@gentoo.org> portage.py :
3924     fixed some bugs in the handling of PROVIDES and virtual packages together
3925     with slots, they used code that wasn't upudated to the new dblink constructor
3926     virtuals now use "" as slot, resulting in normally to same behaviour as what
3927     has been done before.
3928    
3929     5 Feb 2002; G.Bevin <gbevin@gentoo.org> emerge :
3930     sorted the packages to unmerge since this makes package names with revision
3931     endings appear before plain version numbers. This makes the unmerge code
3932     first remove the old and non slot aware packages before removing the newer
3933     alternative which is in fact exactly the same apart from the revision
3934     identifier.
3935    
3936     *portage 1.8.9_pre3 (5 Feb 2002)
3937    
3938     5 Feb 2002; G.Bevin <gbevin@gentoo.org> portage.py :
3939     only let the backward compatibility algorithm kick in during unmerge since
3940     it's impossible to correctly detect is in general.
3941    
3942     *portage 1.8.9_pre2 (5 Feb 2002)
3943    
3944     5 Feb 2002; G.Bevin <gbevin@gentoo.org> portage.py :
3945     fixed bug in the backward compatibility algorithm
3946    
3947     *portage 1.8.9_pre1 (5 Feb 2002)
3948    
3949     4 Feb 2002; G.Bevin <gbevin@gentoo.org> ebuild.sh, emerge, portage.py :
3950     added binary compatibility slots, this also contains additional code to keep
3951     the unmerging of packages backwards compatible.
3952    
3953     4 Feb 2002; G.Bevin <gbevin@gentoo.org> portage.py :
3954     added back support for the "ebuild help" command which seems to have
3955     disappeared somewhere along the updates
3956    
3957     4 Feb 2002; G.Bevin <gbevin@gentoo.org> make.conf, make.globals :
3958     added description and default entry for the imlib USE variable
3959     added flag to prozilla to disable prozilla's waiting for a user's keypress
3960     when a failure occurs
3961    
3962     4 Feb 2002; G.Bevin <gbevin@gentoo.org> output.py :
3963     bugfix, write read() function instead of red(), doh !
3964    
3965     4 Feb 2002; G.Bevin <gbevin@gentoo.org> emerge, portage.py :
3966     implemented the ! dependency which prevents incompatible packages to be
3967     installed on the same system at the same time
3968    
3969     4 Feb 2002; G.Bevin <gbevin@gentoo.org> emerge :
3970     most emerge invocation options now have alternative short flags
3971    
3972     4 Feb 2002; G.Bevin <gbevin@gentoo.org> emerge :
3973     emerge now doesn't unmerge the last version of an installed version by
3974     default anymore, to really remove all instanced of packages the --all flag
3975     has to be used, the --safe flag is deprecated
3976