root/releases/pkgcore/0.2/NEWS @ ferringb%2540gmail.com-20070119195124-iid7hwv48s4hcltc

Revision ferringb%2540gmail.com-20070119195124-iid7hwv48s4hcltc, 8.5 kB (checked in by Brian Harring <ferringb@…>, 22 months ago)

update NEWS with note about glsa pkgset looking in overlays also now

Line 
1Pkgcore Release Notes
2=====================
3
4See ChangeLog for full commit logs; this is summarized/major changes.
5
6
7pkgcore 0.2:
8
9* glsa pkgset will now include metadata/glsa from overlays.
10
11* pmaint script; tool for --sync'ing, doing quickpkging, moving packages
12  between repos for repository conversions. General repository maintenance.
13
14* sync subsystem: supports bzr, cvs, darcs, git, mercurial (hg), rsync,
15  and subversion.
16
17* binpkg repositories now support modification; FEATURES=buildpkg basically
18
19* binpkg contents handling is significantly faster.
20
21* pmerge:
22  * supports --ask (thanks to nesl247/alex heck)
23  * pmerge --replace is default now; use --noreplace for original behaviour.
24  * 'installed' set was added; is a pkgset comprised of all slotted atoms from
25    the vdb; useful for pmerge -u to enable upgrades of *everything* installed.
26  * versioned-installed set was added; useful for -e, this set is compromised
27    of exact version of everything installed.
28  * added --with-built-depends, -B; resolver defaults to ignoring 'built'
29    ebuild depends (those from vdb, from binpkgs for example), this option
30    tells it to update those depends.
31
32* xterm titles
33
34* massive resolver cleanup, and general fixes.
35
36* rewritten plugins system, register_plugins is no longer used.
37 
38* paludis flat_list cache read/write support.
39
40* portage flat_list cache write support (cache used for
41  $PORTDIR/metadata/sync)
42 
43* pebuild/pregen/pclone_cache: heavy UI cleanup.
44 
45* pquery:
46  * prettier printing of depends/rdepends/post_rdepends under -v
47  * print revdep reasons
48  * now requires an arg always; previously defaulted to '*', which is
49    still supported but also accessible via --all .
50  * added --maintainers-email and --maintainers-name; use case insensitive
51    regex by default for --maintainer style options.
52
53* added repo_id atom extension; see doc/extended-atom-syntax.rst for details.
54  short version, sys-apps/portage::gentoo would match portage *only* from
55  ``gentoo`` repository.
56
57* overlays now combine mirror targets from their parent repository, and
58  from their own repository data.
59
60* configuration subsystem:
61  * configuration: lazy section refs were added (lazy_ref), useful for when
62    the object arguement needs to be instantiated rarely (syncers for
63    repositories for example).
64
65  * mke2fs (literal /etc/mke2fs.conf file) akin configuration format was
66    added, pkgcore.config.mke2fsformat.config_from_file .
67
68* expanded test coverage.
69 
70* merged standalone test runner into setup.py; prefered way of running it is
71  ``python setup.py test`` now.
72
73* ongoing portage configuration support additions-
74  * FEATURES=collision-protect support
75  * INSTALL_MASK support, FEATURES noinfo, nodoc, and noman support.
76  * /etc/portage/package.* files can be directories holding seperate files
77    to collapse
78
79* gnu info regeneration trigger added.
80
81* performance improvements:
82  * cpython extensions of select os.path.* functionality; 20x boost for what
83    was converted over (stdlib's posix module is a bit inefficient).
84 
85  * cpython extension for file io in pkgcore.util.osutils: 7x faster on ENOENT
86    cases, 4x-5x on actual reading of small files (think cache files).  If
87    iterating over lines of a file, use pkgcore.util.osutils.readlines- again,
88    faster then standard file object's equivalent- 3x reduction (7.6ms to 2.5ms
89    for full contents  reading).
90
91  * partial cpython reimplementation of atom code; mainly parsing, and
92    critical __getattr__ invocation (2+x faster parse).
93 
94  * partial cpython reimplementation of depset code; strictly just parsing.
95    Faster (given), but mainly is able to do optimizations to the depset
96    cheaply that python side is heavily slowed down by- ( x ( y ) ) becomes
97    ( x y ) for example.
98
99  * chunks of restriction objects were pushed to cpython for memory reasons,
100    and bringing the instantiation cost down as low as possible (the common
101    restrict objects now are around 1-3us for new instantation, .5 to 1us
102    for getting a cached obj instead of instantiating).
103
104  * bug corrected in base repo classes identify_candidates method; should now
105    force a full walk of the repo only when absolutely required.
106
107  * chksuming now does a single walk over a file for all checksummers,
108    instead of one walk per checksummer- less disk thrashing, better
109    performance.
110
111  * vdb virtuals caching; massive performance boost via reduced IO.  Relies on
112    mtime checks of vdb pkg directories for staleness detection,
113    auto-regenerating itself as needed.
114
115* heavy profile code cleanup; should only read each common profile node once
116  now when loading up multiple profiles (pcheck).  Far easier code to read
117  in addition.
118
119* cache eclass staleness verification now relies on mtime comparison only-
120  allows for eclasses to move between repos; matches portage behaviour.
121
122* pkgcore.util.caching.*, via __force_caching__ class attr in consumers, can
123  be used to force singleton instance creation/caching (error if unhashable).
124
125* ebuild support:
126  * PORTAGE_ACTUAL_DISTDIR was reenabled, thus cvs/svn equivalent ebuilds are
127    usable once again.
128  * fixed pkgcore's pkgcore emulation of has_version/best_version matching
129    behaviour for old style virtuals to match portages (oddity, but ebuilds
130    rely on the goofy behaviour).
131  * various fixups to unpack function; should match portage behaviour as of
132    01/07 now.
133  * if FEATURES=test, set USE=test; if USE=test has been explicitly masked for
134    a package, disable src_test run; matches portage 2.1.2 behaviour.
135  * cleanup build directory, and unmerge directories upon finishing
136
137* filter-env now is accessible directly via python; pkgcore.ebuild.filter_env .
138  Needs further work prior to being usable for pcheck inspection of ebuilds,
139  but it's a good start.
140
141
142pkgcore 0.1.4:
143
144* Compatibility with caches written by portage 2.1.2_pre3-r8.
145
146
147pkgcore 0.1.3:
148
149* Always process "|| ( a b )" in the right order.
150
151  * Fix disabling a flag in package.use.mask or package.use.force.
152
153
154pkgcore 0.1.2:
155
156* Make filter_env work on hppa (and possibly more architectures) where using
157  python CFLAGS for this standalone binary does not work.
158
159* Fall back to plain text output if the TERM variable is unsupported.
160
161* Deal with dangling symlinks in binpkg repositories.
162
163* Fix expanding of incrementals (like USE) in make.defaults.
164
165* pquery: support --attr fetchables, handle extra commandline arguments as
166  -m or --expr restrictions.
167
168* USE deps once again allow setting a flag only if it is actually settable
169  on the target package.
170
171
172pkgcore 0.1.1:
173
174* hang fix for test_filter_env
175 
176* package.keywords fixes: no longer incremental, supports '*' and '~*'
177  properly
178 
179* FEATURES="userpriv" support works again.
180 
181* pmerge repository ordering now behaves properly; prefers src ebuilds, then
182  built pkgs; -k inverts that (previously was semi-undefined)
183 
184* binpkg fixes: run setup phase
185 
186* replace op fixes: force seperate WORKDIR for unmerge to protect against
187  env collisions
188 
189* loosened category rules: allow _. chars to support cross-dev hack.
190 
191* build fixes: make $A unique to avoid duplicate unpacks; force distdir
192  creation regardless of whether or not the pkg has any stated SRC_URI
193  (fixes cvs and subversion eclsas usage).  Fix sandbox execution to chdir
194  to an existant directory (sandbox will fail if ran from a nonexistant dir).
195 
196* change DelayedInstantiation objects to track __class__ themselves; this
197  fixes pquery to properly shutdown when ctrl+c'd (previously could swallow
198  the interrupt due to cpython isinstance swallowing KeyboardInterrupt).
199 
200 
201pkgcore 0.1:
202
203Initial release.
204 
205* Sync functionality doesn't yet exist (pmaint script will be in 0.2)
206 
207* pmerge vdb modification requires --force; this will be disabled in 0.2,
208  mainly is in place so that folks who are just looking, don't inadvertantly
209  trigger an actual modification.
210 
211* not all portage FEATURES are implemented; same for QA.
212 
213* If overlays are in use, pkgcore may defer to its' seperate cache to avoid
214  pkgcore causing cache regen for portage (and vice versa); this occurs due
215  to pkgcore treating overlays as their own repo and combining them at a
216  higher level; portage smushes them all together thus rendering each subtree
217  unusable in any standalone fashion.
218
219* pkgcore is far more anal about blocking bad behaviour in ebuilds during
220  metadata regeneration; tree is clean, but if you do something wrong in
221  global scope, it *will* catch it and block it.
222 
223* EBD; daemonized ebuild.sh processing (effectively), pkgcore reuses old
224  ebuild.sh processes to avoid bash startup, speeding regen up by roughly
225  2x.
Note: See TracBrowser for help on using the browser.