Fabian Groffen [Mon, 28 Jul 2008 20:07:56 +0000 (20:07 -0000)]
Prepare emerge-webrsync to get working, use gentooexperimental for distfiles
svn path=/main/branches/prefix/; revision=11247
Fabian Groffen [Mon, 28 Jul 2008 20:03:55 +0000 (20:03 -0000)]
Merged from trunk 11243:11245
| 11244 | Even though the message is split on $'\n' in elog_base(), |
| zmedico | it's still not entirely safe to use it as a delimiter in the |
| | log file since there can still be escaped newlines that will |
| | be expanded due to the echo -e parameter. |
| 11245 | Bug #233103 - In portage.fetch(), pass all config variables |
| zmedico | instead of just those returned by the environ() method which |
| | is filtered. |
svn path=/main/branches/prefix/; revision=11246
Fabian Groffen [Mon, 28 Jul 2008 18:38:40 +0000 (18:38 -0000)]
Avoid portage constantly complaining about IONICENESS not working, since one has to be root to do that (and in Prefix we usually aren't)
svn path=/main/branches/prefix/; revision=11243
Fabian Groffen [Mon, 28 Jul 2008 18:23:29 +0000 (18:23 -0000)]
fix misc issues causing eapi not to be valid
svn path=/main/branches/prefix/; revision=11242
Fabian Groffen [Mon, 28 Jul 2008 18:05:08 +0000 (18:05 -0000)]
I want a frikkin compiler to tell me I am not sane...
svn path=/main/branches/prefix/; revision=11241
Fabian Groffen [Mon, 28 Jul 2008 17:52:55 +0000 (17:52 -0000)]
Original commit:
| 11233 | Add support for an new EAPI="2_pre0" value so that people |
| zmedico | who want to test USE deps can set the EAPI to something |
| | other than 0 or 1. We can support as many different |
| | experimental EAPI values as we need, and drop support for |
| | them when the final EAPI 2 is defined. |
Changed into a Prefix enabled version, which is more generic. It build
further on the idea that multiple properties are being present in EAPI.
I split it up in "should have" properties ("prefix" for now) that must
be present, and "can have" properties, that may be present. This
patch is not perfect (can have EAPI="prefix 2_pre0 1 0") but fixing that
requires more thinking (successing properties, conflicting
properties...)
svn path=/main/branches/prefix/; revision=11240
Fabian Groffen [Mon, 28 Jul 2008 17:48:47 +0000 (17:48 -0000)]
Merged from trunk 11225:11238
| 11226 | Fix the new glep56 code to handle missing metadata.xml. |
| zmedico | Thanks to jmbsvicetto for reporting. |
| 11227 | Fix incorrect logging.exception() arguments. The exception |
| zmedico | instance is not supposed to be passed into this function. |
| 11228 | Bug #233137 - Implement Atom.split(). |
| zmedico | |
| 11229 | * Add support in dep_getusedeps() and isvalidatom() for |
| zmedico | comma separated USE deps that only have one set of square |
| | brackets. * Add test cases for the new comma separated USE |
| | deps syntax. |
| 11230 | Create a SlotDict constructor which can take an optional |
| zmedico | positional arg that is passed to the update() method |
| | (similar to the dict constructor), and also pass keyword |
| | arguments into the update() method if any are given. This |
| | makes it possible to use the constructor similarly to the |
| | way that the _emerge.SlotObject constructor is used. |
| 11231 | Implement new conditional USE dep syntax: Conditional |
| zmedico | evaluation behavior: parent state conditional result x x? x |
| | -x x? x -x? -x -x? -x x x= x -x x= -x x x!= -x -x x!= x |
| | Conditional syntax examples: compact form equivalent |
| | expanded form foo[bar?] foo bar? ( foo[bar] ) foo[-bar?] foo |
| | !bar? ( foo[-bar] ) foo[bar=] foo bar? ( foo[bar] ) !bar? ( |
| | foo[-bar] ) foo[bar!=] foo bar? ( foo[-bar] ) !bar? ( |
| | foo[bar] ) |
| 11232 | Disable the multi-bracket USE deps syntax, so only the comma |
| zmedico | separated syntax is now valid. |
| 11234 | Fix arg count when constructing a TypeError in the SlotDict |
| zmedico | constructor. |
| 11235 | Create a table to document conditional USE dependency |
| zmedico | syntax. |
| 11236 | Add note about support for EAPI="2_pre0". |
| zmedico | |
| 11238 | Remove pointless generator expression. |
| zmedico | |
svn path=/main/branches/prefix/; revision=11239
Fabian Groffen [Sun, 27 Jul 2008 14:54:44 +0000 (14:54 -0000)]
Improve svn properties reading, thanks to Arfrever in #-portage.
svn path=/main/branches/prefix/; revision=11225
Fabian Groffen [Sun, 27 Jul 2008 14:43:00 +0000 (14:43 -0000)]
Merged from trunk 11215:11223
| 11216 | Fixes from Arfrever: * Highlight the "Files built without |
| zmedico | respecting LDFLAGS" QA Notice with red. * Remove |
| | scanelf-ignored-LDFLAGS.log when empty. |
| 11217 | Fix breakage from r11213 in INHERITED values returned from |
| zmedico | portdbapi.aux_get(). |
| 11218 | Add support to elog_base() to split messages on newlines |
| zmedico | automatically. Thanks to Arfrever for the suggestion. |
| 11219 | Make all the elog functions split lines when displaying |
| zmedico | output, just like elog_base() does when saving it. |
| 11220 | Make elog_base() just use \n as the delimiter in the file |
| zmedico | since it's safe now that lines are always split. |
| 11221 | Use ${NORMAL} to properly restore color when necessary. |
| zmedico | |
| 11222 | Update path to make.conf.example. Thanks to Arfrever. |
| zmedico | |
| 11223 | Fix EbuildFetcher to pass all config variables to the |
| zmedico | fetcher so things like http_proxy are included. |
svn path=/main/branches/prefix/; revision=11224
Fabian Groffen [Sun, 27 Jul 2008 11:51:06 +0000 (11:51 -0000)]
Merged from trunk 11212:11213
| 11213 | Serialize src_unpack() $DISTDIR access for live ebuilds |
| zmedico | since otherwise they can interfere with eachother. This will |
| | have to rely on a hardcoded list of eclasses until we create |
| | way to properly tag this information in the metadata. |
svn path=/main/branches/prefix/; revision=11215
Fabian Groffen [Sun, 27 Jul 2008 11:49:38 +0000 (11:49 -0000)]
fix off by one
svn path=/main/branches/prefix/; revision=11214
Fabian Groffen [Sun, 27 Jul 2008 11:29:55 +0000 (11:29 -0000)]
Merged from trunk 11209:11210
| 11210 | * Define a frozenset of live eclasses for the LIVEVCS.stable |
| zmedico | check. * Add "mercurial" to the list of known live eclasses. |
svn path=/main/branches/prefix/; revision=11212
Fabian Groffen [Sun, 27 Jul 2008 11:28:26 +0000 (11:28 -0000)]
Do a humble attempt to implement something along the lines of bug #229033
Big problem with SVN is that retrieving the known files is slow and
expensive (it goes over the network), hence should be avoided.
Imlemented Manifest commit in the first batch, if no headers change.
This implementation is a (hopefully) 90% coverage one. First, not all
keywords are recognised (they never were), second we do not check in
SVN's case if the used keyword is the one that SVN expands. What we
just try to achieve is to avoid the single Manifest commit on SVN repos
which by default do not use header expansion. This objective seems to
be made with this commit.
svn path=/main/branches/prefix/; revision=11211
Fabian Groffen [Sun, 27 Jul 2008 09:46:46 +0000 (09:46 -0000)]
Fix repoman not seeing subversion auto-ignored files (such as patch rejects and editor backup copies), thereby causing messed up Manifests. This fix should be merged in the trunk.
svn path=/main/branches/prefix/; revision=11208
Fabian Groffen [Sun, 27 Jul 2008 09:31:10 +0000 (09:31 -0000)]
Merged from trunk 11201:11206
| 11202 | Fix AsynchronousTask.removeStartListener() and |
| zmedico | removeExitListener() to return early if there are no |
| | listeners. |
| 11203 | In PollScheduler._poll(), add a call to _schedule() in order |
| zmedico | to ensure that event handlers are registered if possible. If |
| | not, raise StopIteration in order to avoid endless blocking |
| | in a poll call with no file descriptors registered. Add |
| | StopIteration exception handling for all |
| | PollScheduler._poll._next_poll_event() calls. |
| 11204 | Schedule ebuild pkg_setup phases on the merge queue, in |
| zmedico | order to serialize unsandboxed access to the live |
| | filesystem. |
| 11205 | Bug #233077 - Add QA check which verifies that LDFLAGS are |
| zmedico | respected. For now this only works when LDFLAGS contains |
| | --hash-style=gnu since in this case the the elf files should |
| | not contain .hash sections and we can use scanelf to check |
| | whether or not the those sections exist. This adds a |
| | QA_DT_HASH variable that is analogous to existing QA control |
| | variables documented in the ebuild.5 man page. There is also |
| | a complementary QA_STRICT_DT_HASH variable that can be set |
| | in make.conf in order to ignore QA_DT_HASH settings in |
| | ebuilds. Thanks to Arfrever Frehtes Taifersar Arahesis for |
| | this patch which I've tweaked in just a few minor ways. |
| 11206 | Temporarily `set -o noglob` when splitting QA_DT_HASH. |
| zmedico | |
svn path=/main/branches/prefix/; revision=11207
Fabian Groffen [Sat, 26 Jul 2008 20:55:16 +0000 (20:55 -0000)]
Merged from trunk 11187:11200
| 11188 | Detect an invalid cpv passed into portdbapi.findname2() and |
| zmedico | raise an InvalidPackageName exception. This avoids silent or |
| | nonsense errors later on. |
| 11190 | Fix PORTAGE_BIN_PATH typo in EbuildFetcher._start(). |
| zmedico | |
| 11191 | Suppress "for /" and "to /" in status messages when ROOT=/. |
| zmedico | Thanks to Thargor for the suggestion. |
| 11192 | Add PORTAGE_IONICE_COMMAND setting for make.conf which is |
| zmedico | called to adjust IO priority on portage and it's |
| | subprocesses. |
| 11193 | Reduce the default PORTAGE_IONICE_COMMAND priority to "idle" |
| zmedico | priority since it's probably suitable for most people. This |
| | way, even when the IO load is very high, the impact on |
| | system responsiveness should be practically unnoticeable. |
| 11194 | * For bug 227625, automatically create the |
| zmedico | /usr/src/rpm/SOURCES directory when necessary. * Add `cd |
| | "${T}"` at the beginning of dyn_rpm() since the spec file is |
| | written to $PWD. |
| 11195 | Replace hardcoded i386 machine name in dyn_rpm() with the |
| zmedico | result of `uname -m`. |
| 11196 | Bug #228085 - In the event of a file collision, the |
| zmedico | explanation about the collision and how to solve it may not |
| | be visible via a scrollback buffer, especially if the number |
| | of file collisions is large. Therefore, show a summary at |
| | the end and refer the user to the elog messages. |
| 11197 | Bug #232924 - When the user specifies a non-existent set, |
| zmedico | display a list of existing sets. |
| 11198 | Split out an apply_priorities() function to apply nice and |
| zmedico | ionice settings. |
| 11199 | * Use pure bash ${PARAMETER%/*} instead of spawing`dirname`. |
| zmedico | * Break out of loop as early as possible when searching for |
| | libs in ${D}. |
| 11200 | Fix LinkageMap.findConsumers() to check whether the master |
| zmedico | link for a lib providing a given soname actually points to |
| | that lib. If there is another version of this lib with the |
| | same soname and the master link points to that other |
| | version, this lib will be shadowed and won't have any |
| | consumers. By eliminating false, positives this way, we |
| | avoid the following state after upgrade from |
| | media-libs/mesa-7.0.3 to media-libs/mesa-7.1_rc3: # scanelf |
| | -S /usr/lib64/libGLU.so* TYPE SONAME FILE ET_DYN libGLU.so.1 |
| | /usr/lib64/libGLU.so ET_DYN libGLU.so.1 |
| | /usr/lib64/libGLU.so.1 ET_DYN libGLU.so.1 |
| | /usr/lib64/libGLU.so.1.3 ET_DYN libGLU.so.1 |
| | /usr/lib64/libGLU.so.1.3.070003 ET_DYN libGLU.so.1 |
| | /usr/lib64/libGLU.so.1.3.070100 <- shadowed lib Thanks to |
| | Diego "Flameeyes" Pettenò for reporting this issue. |
svn path=/main/branches/prefix/; revision=11201
Fabian Groffen [Fri, 25 Jul 2008 21:08:05 +0000 (21:08 -0000)]
we also need EPREFIX in Prefix
svn path=/main/branches/prefix/; revision=11189
Fabian Groffen [Fri, 25 Jul 2008 07:37:53 +0000 (07:37 -0000)]
fix syntax error found by tabcheck
svn path=/main/branches/prefix/; revision=11187
Fabian Groffen [Fri, 25 Jul 2008 07:34:22 +0000 (07:34 -0000)]
Merged from trunk 11169:11185
| 11170 | Make --fetchonly disable background mode. |
| zmedico | |
| 11173 | Add GENTOO_MIRRORS to the variables exported by |
| zmedico | EbuildFetcher. |
| 11175 | Add sandbox write access to PORTAGE_PYM_PATH before |
| zmedico | importing portage in order to avoid sandbox violations after |
| | python upgrade. |
| 11176 | Fix --depclean/--prune regressions reported by selkin: * |
| zmedico | Make --with-bdeps default to "y" for removal actions. * |
| | Treat unsatisfied build time dependencies as "soft" for |
| | removal actions, even when --with-bdeps=y. |
| 11177 | Avoid "0 files checked ..." messages reported by Pesa. |
| zmedico | |
| 11178 | Fix typo, found by pyflakes. |
| zmedico | |
| 11179 | Fix bug in get_repo_path() when called with multiple args. |
| zmedico | |
| 11181 | Bug #228117 - Insert a trailing newline in the getconfig() |
| zmedico | input file as necessary to avoid a silent error in shlex |
| | that is triggered by a source statement at the end of the |
| | file without a trailing newline after the source statement. |
| | To solve this problem, derive a special file class that |
| | inserts a newline just before eof when necessary. |
| 11182 | Bug #206773 - Add a new PORTAGE_IONICE_COMMAND variable that |
| zmedico | emerge uses to adjust ionice priority, similar to |
| | PORTAGE_NICENESS but used more like FETCHCOMMAND since so |
| | that portage doesn't have to know anything about ionice |
| | options. The command should include a \${PID} place-holder |
| | to be substituted with an integer pid. |
| 11183 | * Refer user to make.conf(5) if PORTAGE_IONICE_COMMAND |
| zmedico | fails. * Document that PORTAGE_IONICE_COMMAND can be |
| | disabled by setting it to an empty string. |
| 11184 | When in background mode and there is a single failure, dump |
| zmedico | the whole build log for convenience. |
| 11185 | Cancel prefetchers if they're the only reason the main poll |
| zmedico | loop is still running. |
svn path=/main/branches/prefix/; revision=11186
Fabian Groffen [Wed, 23 Jul 2008 06:54:24 +0000 (06:54 -0000)]
Merged from trunk 11157:11169
| 11158 | Fix --depclean/--prune to add lib providers and their |
| zmedico | dependencies to the graph and create a new clean list when |
| | necessary. This completes the fix for bug #230053. |
| 11159 | Adjust --fetchonly failure messages to work better with |
| zmedico | background mode. |
| 11160 | Adjust status messages for --fetchonly mode. |
| zmedico | |
| 11161 | Redirect dblink._preserve_libs() messages to the log when in |
| zmedico | background mode. |
| 11162 | Make --pretend disable background mode and imply --jobs=1. |
| zmedico | |
| 11163 | Disable "Installing" status messages when in --pretend or |
| zmedico | --buildpkgonly mode. |
| 11164 | Redirect build log eqawarn messages to the log file when in |
| zmedico | background mode. |
| 11165 | Show the number of failed packages in the status display. |
| zmedico | |
| 11166 | Fix resume_depgraph() so that it doesn't raise an |
| zmedico | AssertionError due to unsatisfied PDEPEND. |
| 11167 | In dblink.unmerge(), redirect preserve-libs "!needed" |
| zmedico | messages to the log file when in background mode. |
| 11168 | Update --depclean and --prune, removing warnings about |
| zmedico | libraries since those are now automatically accounted for. |
| 11169 | Handle UnsatisfiedResumeDep in |
| zmedico | Scheduler._calc_resume_list(). |
svn path=/main/branches/prefix/; revision=11172
Fabian Groffen [Wed, 23 Jul 2008 06:52:10 +0000 (06:52 -0000)]
Merged from trunk 11149:11157
| 11150 | Fix broken references to the old elog_modules namespace. |
| zmedico | |
| 11151 | Redirect the 'Recording in "world" favorites file...' |
| zmedico | message through _status_msg(). |
| 11152 | For --depclean and --prune, eliminate duplicate graph |
| zmedico | creation code by re-using the depgraph class to do it. The |
| | depgraph class was used in the past for this purpose but |
| | back then it didn't handle USE flags correctly for installed |
| | packages. Now it works fine. |
| 11153 | Fix typo. |
| zmedico | |
| 11154 | Fix breakage in the depclean/prune unsatisfied deps |
| zmedico | handling. |
| 11155 | In dblink._preserve_libs(), strip leading $ROOT from |
| zmedico | contents paths so that it works when $ROOT != /. |
| 11156 | In dblink.findProviders(), clone the "path" variable before |
| zmedico | extending it since obviously it shouldn't grow each time |
| | that findProviders() is called. |
| 11157 | Add initial lib awareness for --depclean and --prune. |
| zmedico | Currently it will simply bail out if the clean list contains |
| | a package that will cause link breakage if removed. TODO: |
| | Calculate a new cleanlist instead of bailing out, and |
| | implement a package set for rebuilding consumers. |
svn path=/main/branches/prefix/; revision=11171
Fabian Groffen [Sun, 20 Jul 2008 10:13:34 +0000 (10:13 -0000)]
Merged from trunk 11139:11147
| 11140 | Use the memoized _choose_pkg() result to return earlier from |
| zmedico | _schedule_tasks() when possible. |
| 11141 | Calling _schedule() from Scheduler._poll() is unsafe since |
| zmedico | the _schedule() call itself can consume poll events. |
| | Therefore, until a safe way exists, don't do it. |
| 11142 | Fix Scheduler._schedule_tasks_imp() so that it never |
| zmedico | indicates that there are remaining tasks in cases when it's |
| | supposed to bail out due to a package failure. |
| 11143 | Merge tasks currently run synchronously which makes it |
| zmedico | necessary to disable auto_schedule on the merge queue in |
| | order to avoid excess recursion which prevents tasks from |
| | being marked complete as soon as they should be. |
| 11144 | Make PollScheduler._poll() add poll events to the stack |
| zmedico | instead of returning them. This makes it more useful as a |
| | hook, allowing Scheduler._poll() to safely call _schedule(). |
| 11145 | * Clean up _schedule_tasks_imp() a bit. * Make _task() |
| zmedico | access _background directly instead of as a parameter. |
| 11146 | Fix Scheduler emergelog() interaction to properly disable |
| zmedico | emergelog() xterm titles whenever the status display is |
| | enabled. |
| 11147 | Redirect some more unmerge() output through writemsg_level() |
| zmedico | so that it can filtered out when in background mode. |
svn path=/main/branches/prefix/; revision=11149
Fabian Groffen [Sun, 20 Jul 2008 10:12:19 +0000 (10:12 -0000)]
Merged from trunk 11125:11139
| 11126 | Bug #199788 - Make repoman parse GLEP 56 USE flag |
| zmedico | descriptions from metadata.xml (in addition to |
| | use.local.desc). Thanks to Doug Goldstein <cardoe@g.o> for |
| | this patch. |
| 11127 | Add a MergeListItem.statusMessage(msg) callback for |
| zmedico | displaying messages like "Building this" or "Installing |
| | that". This delegates the resposibility of generating \r and |
| | \n control characters, to guarantee that lines are created |
| | or erased when necessary and appropriate. TODO: Make |
| | JobStatusDisplay display the output. |
| 11128 | Add support to JobStatusDisplay() to update the current line |
| zmedico | on the terminal, which in the future can be used to erase |
| | the line and update it with new information such as the |
| | latest load average measurement. This uses curses to obtain |
| | the simple control codes that are needed, and has fallback |
| | codes in case the curses module is unavailable or raises an |
| | error. When stdout is not a tty then the line erasing |
| | behavior is automatically disabled and display updates are |
| | simply show on a new line. |
| 11129 | When JobStatusDisplay.displayMessage() is called while the |
| zmedico | status is currently displayed, call display() after showing |
| | the given message. |
| 11130 | Make all poll() calls pass through PollScheduler._poll(). |
| zmedico | |
| 11131 | Add a hook in Scheduler._poll() that updates the display |
| zmedico | once every 2 seconds if stdout is a tty, so that the load |
| | average numbers are always current. |
| 11132 | Display "Verifying ebuild manifests" and "Starting parallel |
| zmedico | fetch" via the status display instead of directly to stdout. |
| 11133 | Add a Scheduler._background_mode() method to control |
| zmedico | background mode, and trigger it if either --quiet is enabled |
| | or --jobs > 1. |
| 11134 | Fix typos. |
| zmedico | |
| 11135 | * Call self._schedule() from inside Scheduler._poll(). This |
| zmedico | ensures that new jobs can scheduled as soon a the load |
| | average is low enough, and one of the running jobs doesn't |
| | have to complete for _schedule() to get called. * Cache the |
| | result of _background_mode() so it doesn't have to be called |
| | inside _schedule(), since this method is called a lot more |
| | often now. * Move background related state adjustments into |
| | _background_mode(). * Call _status_display.display() |
| | unconditionally inside _schedule_tasks(), since we want to |
| | update the display to show current load average even if no |
| | new jobs are added. |
| 11136 | Fix JobStatusDisplay._init_term() to supply default codes in |
| zmedico | cases when curses.tigetstr() returns None. |
| 11137 | Instead of calling _background_mode(), use the cached |
| zmedico | result. |
| 11138 | Bug #231464 - Replace erroneous "return" statement in |
| zmedico | elog_process() with a continue statement. Thanks to TGL for |
| | this patch. |
| 11139 | When Scheduler._choose_pkg() is unable to find a package, |
| zmedico | memoize the result until at least one of the existing jobs |
| | completes. |
svn path=/main/branches/prefix/; revision=11148
Fabian Groffen [Fri, 18 Jul 2008 09:02:11 +0000 (09:02 -0000)]
Merged from trunk 11111:11124
| 11112 | Since it's not very interesting, disable the "merges" part |
| zmedico | of status display. |
| 11113 | Also, don't count "merges" as changes in the status display. |
| zmedico | |
| 11114 | Initialize JobStatusDisplay.merges since it's not |
| zmedico | initialized with the bound properties anymore. |
| 11115 | Also, reset "merges" in JobStatusDisplay.reset(). |
| zmedico | |
| 11116 | When dblink is looping over files for merge/unmerge, |
| zmedico | temporarily yield to the scheduler each time a fixed number |
| | of files are processed (currently 20). This gives the |
| | scheduler an opportunity to service pending poll events. |
| | This is implemented with a new |
| | PollScheduler._schedule_yield() method which calls poll() |
| | exactly once, without blocking, and any services any |
| | resulting poll events. |
| 11117 | Redirect dblink elog messages from stdout to the log file |
| zmedico | when in background mode. This is implemented by adding a new |
| | "out" parameter to the portage.elog.e* functions, which can |
| | be used to send output to an arbitary file instead of |
| | stdout. |
| 11118 | If an problem is detected in dblink._security_check(), log |
| zmedico | it via elog so that it's properly displayed in the |
| | foreground even when in background mode. |
| 11119 | Use dblink._eerror() to eliminate duplicate code. |
| zmedico | |
| 11120 | In dblink._dblink_display_merge(), when in background mode |
| zmedico | and no log is available, suppress output when level < |
| | logging.WARNING. This hides ">>> Regenerating |
| | /etc/ld.so.cache..." messages that appear after postrm when |
| | PORT_LOGDIR is unset (the log file if it exists is removed |
| | after postrm so there's no place to log the message). |
| 11121 | Change package status messages to give more accurate |
| zmedico | information about what is happening at a given time: * |
| | Change "Emerging" messages to "Building" for ebuilds and |
| | "Extracting" for binary packages. * Change "Merging" |
| | messages to "Installing" and "Uninstalling". |
| 11122 | Add background output redirection and async ebuild phase |
| zmedico | support for PackageUninstall (automatic uninstalls that |
| | solve blockers). |
| 11123 | Suppress counter initialization warning messages in |
| zmedico | vardbapi.get_counter_tick_core() in cases when the vdb is |
| | empty. This avoids pointless error messages when merging |
| | packages into a new root, like when building stage 1. |
| 11124 | Fix typo. |
| zmedico | |
svn path=/main/branches/prefix/; revision=11125
Fabian Groffen [Thu, 17 Jul 2008 14:09:19 +0000 (14:09 -0000)]
Fix identation (tabnanny complains about this), should be merged into trunk
svn path=/main/branches/prefix/; revision=11110
Fabian Groffen [Thu, 17 Jul 2008 14:06:14 +0000 (14:06 -0000)]
Merged from trunk 11106:11107
| 11107 | Reformat the status display. Here's an example: >>> Jobs: 0 |
| zmedico | of 2 complete, 2 running Load average: 2.9, 2.4, 2.0 >>> |
| | Jobs: 0 of 2 complete, 1 running, 2 merges Load average: |
| | 2.8, 2.4, 2.0 >>> Jobs: 2 of 2 complete Load average: 2.6, |
| | 2.3, 2.0 |
svn path=/main/branches/prefix/; revision=11109
Fabian Groffen [Thu, 17 Jul 2008 14:03:12 +0000 (14:03 -0000)]
Merged from trunk 11087:11105
| 11088 | Avoid raising an IndexError from deprecated_profile_check() |
| zmedico | if the deprecated file happens to be empty. Instead just |
| | refer to the "Gentoo Upgrading Guide". Thanks to armin76 for |
| | reporting. |
| 11089 | Remove TODO since it no longer exists. |
| zmedico | |
| 11090 | Add --anon option for anonsvn.gentoo.org users. |
| zmedico | |
| 11091 | Add --anon to the usage message. |
| zmedico | |
| 11092 | Eliminate duplicate code by making EbuildProcess inherit |
| zmedico | from SpawnProcess instead of SubProcess. |
| 11093 | When SpawnProcess._start() spawns a process in the |
| zmedico | background, use /dev/null so that any attempts to read from |
| | stdin will immediately return EOF instead of blocking |
| | indefinitely. TODO: Use job control functions like |
| | tcsetpgrp() to control access to stdin. |
| 11094 | Add the new --anon option to the getopt args. |
| zmedico | |
| 11095 | In SequentialTaskQueue.clear(), remove the exit listener |
| zmedico | from each task before cancelling it. |
| 11096 | Add a JobStatusDisplay class to encapsulate the status |
| zmedico | display. This object tracks whether or not any of it's |
| | attributes have changed since the last time it was |
| | displayed, so the it's only displayed when something has |
| | changed. Unlike before, now the display should always update |
| | whenever a relevant change occurs. |
| 11097 | Don't increment the "complete" count for uninstall tasks. |
| zmedico | |
| 11098 | * Add a new portage.util.writemsg_level() function which |
| zmedico | uses a "level" parameter to control whether the message is |
| | sent to stdout or stderr. When level >= logging.WARNING then |
| | the message is sent to stderr, otherwise it is sent to |
| | stdout. The noiselevel is passed directly to writemsg(). * |
| | Use writemsg_level() for handling merge messages from dblink |
| | and add appropriate noiselevel values to each call. * Add a |
| | writemsg_level parameter to portage.env_update() so that |
| | dblink can pass in dblink._display_merge() as a means to |
| | redirect output back to the scheduler for appropriate |
| | handling when running in the background. |
| 11099 | Tweak interaction between Scheduler and status display so |
| zmedico | that it doesn't display more often than necessary and avoids |
| | showing inconsistent counts. |
| 11100 | Handle the case in dblink.unmerge() when the log file is a |
| zmedico | temp file and so it doesn't exist after postrm cleaning. |
| 11101 | Don't show a blank newline before ">>> Emerging" when in |
| zmedico | background mode. |
| 11102 | Make BinpkgVerifier redirect output to the fetch log when in |
| zmedico | background mode. |
| 11103 | Update the status display in _build_exit(), after |
| zmedico | decrementing the job count. |
| 11104 | Make Binpkg send "Extracting" messages to the log file when |
| zmedico | in background mode, instead of stdout. |
| 11105 | Don't show "Merging" and "merged." messages when in |
| zmedico | background mode. |
svn path=/main/branches/prefix/; revision=11108
Fabian Groffen [Thu, 17 Jul 2008 13:58:15 +0000 (13:58 -0000)]
PORTAGE_CONFIGROOT includes EPREFIX since my recent changes, thanks Lothar Braun for reporting
svn path=/main/branches/prefix/; revision=11106
Fabian Groffen [Wed, 16 Jul 2008 18:11:32 +0000 (18:11 -0000)]
fix more prefix errors
svn path=/main/branches/prefix/; revision=11087
Fabian Groffen [Wed, 16 Jul 2008 18:02:33 +0000 (18:02 -0000)]
fix NameError
svn path=/main/branches/prefix/; revision=11086
Fabian Groffen [Wed, 16 Jul 2008 17:53:11 +0000 (17:53 -0000)]
Fix misc amount of out-of-prefix issues
svn path=/main/branches/prefix/; revision=11085
Fabian Groffen [Wed, 16 Jul 2008 15:33:03 +0000 (15:33 -0000)]
I forgot about EROOT, reorder to make a bit more sense
svn path=/main/branches/prefix/; revision=11084
Fabian Groffen [Wed, 16 Jul 2008 15:21:47 +0000 (15:21 -0000)]
expansion doesn't run on man-pages, document Prefix variables in ebuild.5
svn path=/main/branches/prefix/; revision=11083
Fabian Groffen [Wed, 16 Jul 2008 13:10:43 +0000 (13:10 -0000)]
We have a most confusing situation here, which is most of all pretty
weak for protecting us from making mistakes.
First there is a config_root (PORTAGE_CONFIGROOT) which can be a path
somewhere, from which all paths need to be relative (e.g.
etc/portage), hence those constants do NOT have EPREFIX, because
config_root contains EPREFIX by default -- overriding it loses the
EPREFIX as one would expect.
Second there is target_root (ROOT) which is to install somewhere
completely else, in Prefix of limited use. Because this is an offset
always given, the EPREFIX should always be applied in it. Those
constants (like VDB_PATH) DO have EPREFIX.
svn path=/main/branches/prefix/; revision=11082
Fabian Groffen [Wed, 16 Jul 2008 12:21:33 +0000 (12:21 -0000)]
Revert -r11077:11080, lstrip doesn't take a string but chars. Need to fix it differently.
svn path=/main/branches/prefix/; revision=11081
Fabian Groffen [Wed, 16 Jul 2008 12:07:46 +0000 (12:07 -0000)]
this is going to cause some headaches, strip more prefixes for now
svn path=/main/branches/prefix/; revision=11080
Fabian Groffen [Wed, 16 Jul 2008 11:52:52 +0000 (11:52 -0000)]
more prefix confusement
svn path=/main/branches/prefix/; revision=11079
Fabian Groffen [Wed, 16 Jul 2008 11:24:54 +0000 (11:24 -0000)]
messing around with/without EPREFIX, I'm affraid I lost the consistency here
svn path=/main/branches/prefix/; revision=11078
Fabian Groffen [Wed, 16 Jul 2008 11:11:49 +0000 (11:11 -0000)]
Merged from trunk 11060:11076
| 11061 | In Scheduler._restart_if_necessary(), use list.remove() |
| zmedico | instead of assuming that portage is first in the resume |
| | list. |
| 11062 | Make EbuildFetcher copy FETCHCOMMAND and RESUMECOMMAND to |
| zmedico | the fetch environment, in case the default values have been |
| | overridden. |
| 11063 | Add some cross references between emerge's new parallel |
| zmedico | build options and MAKEOPTS. |
| 11064 | When --jobs > 1, display a status message each time that |
| zmedico | Scheduler._schedule_tasks() is called. For example: >>> |
| | Jobs: 2 running, 0 merges, load average: 0.34, 0.46, 0.27 |
| 11065 | Redirect dblink.unmerge() output to the log file when --jobs |
| zmedico | > 1. |
| 11066 | Adapt the dblink merge display callback to use log levels |
| zmedico | from the logging module so that it can be used as an |
| | interface for both writemsg() and writemsg_stdout(). |
| 11067 | Make dblink._display_merge() detect scheduler presence |
| zmedico | internally. |
| 11068 | Redirect dblink.merge() output to the log file when --jobs > |
| zmedico | 1. |
| 11069 | Pass the whole dblink instance into |
| zmedico | Scheduler._dblink_display_merge() in case it's ever needed. |
| 11070 | Show LDFLAGS in emerge --info output. Thanks to dirtyepic |
| zmedico | for this patch. |
| 11071 | Remove the config._filter_calling_env attribute since it's |
| zmedico | not really needed. Replace it with an simple |
| | os.path.exists() call inside config.environ(). |
| 11072 | Add async support for calling functions in |
| zmedico | misc-functions.sh: * Create a new MiscFunctionsProcess class |
| | derived from SpawnProcess. * Add "background" support to the |
| | SpawnProcess class and split out a _spawn() template |
| | function so MiscFunctionsProcess can override it. * Rename |
| | the existing EbuildPhase class to EbuildProcess. * Create a |
| | new EbuildPhase class derived from CompositeTask. This class |
| | spawns the EbuildProcess and MiscFunctionsProcess classes as |
| | sub-tasks. |
| 11073 | * Add xterm titles support to Scheduler._display_status(). * |
| zmedico | Tweak emergelog() so that it won't interfere with the |
| | scheduler summary. |
| 11075 | Add a progress counter showing "x of y complete" to |
| zmedico | Scheduler._display_status(). |
| 11076 | Pass background=True into prefetcher constructors. |
| zmedico | |
svn path=/main/branches/prefix/; revision=11077
Fabian Groffen [Wed, 16 Jul 2008 08:34:04 +0000 (08:34 -0000)]
Do not check config_root + prefix, if we explicitly set PORTAGE_CONFIGROOT we mean that dir, not the Prefix variant
svn path=/main/branches/prefix/; revision=11074
Fabian Groffen [Tue, 15 Jul 2008 19:59:50 +0000 (19:59 -0000)]
try to be more correct in Prefix
svn path=/main/branches/prefix/; revision=11060
Fabian Groffen [Tue, 15 Jul 2008 19:40:07 +0000 (19:40 -0000)]
Prevent false positives on AIX for .a files. On AIX these are pseudo "dynamic libraries".
svn path=/main/branches/prefix/; revision=11059
Fabian Groffen [Tue, 15 Jul 2008 19:21:45 +0000 (19:21 -0000)]
Merged from trunk 11048:11057
| 11049 | Split out a generic SubProcess._unregister() method that's |
| zmedico | called from _wait() to make sure everything is cleaned up |
| | before wait() returns. This might solve an intermittent |
| | KeyError that is sometimes raised from the main poll() loop |
| | when a handler is no longer registered for a poll() event |
| | that has occurred. |
| 11050 | Split out a _main_loop_cleanup() method from |
| zmedico | Scheduler._merge() and call it before restarting in |
| | _restart_if_necessary() to kill any parallel-fetch tasks |
| | that may still be running. |
| 11051 | Add a PollScheduler._next_poll_event() method to maintain a |
| zmedico | central event queue between _poll_loop() and |
| | _schedule_wait(). This solves an intermittent KeyError from |
| | _poll_loop() which occured when an event handler called |
| | _schedule_wait() which unregistered an event handler for an |
| | event that _poll_loop() had already recieved but hadn't |
| | processed yet. |
| 11052 | Use self.registered to return early from SubProcess.poll() |
| zmedico | when possible, and remove the related code from |
| | SequentialTaskQueue.schedule() since this makes it obsolete. |
| 11053 | Make AsynchronousTask "registered" attributes private since |
| zmedico | poll() and wait() do the job now. Also, hide |
| | SubProcess.files since there's no reason to expose it. |
| 11054 | * Fix --keep-going breakage that occured when |
| zmedico | Scheduler._choose_pkg() was introduced. * Handle multiple |
| | failed builds when buildinding in parallel. * Fix |
| | Scheduler._do_merge_exit() to remove the correct package |
| | since it's not always at position 0 when using --jobs. in |
| | parallel, so |
| 11055 | When there is more than one failure, show a summary packages |
| zmedico | that failed to build or install. This is especially useful |
| | when using --jobs or --keep-going since there can be |
| | multiple failures. |
| 11056 | When packages fail with --jobs > 1 and the "echo" elog |
| zmedico | module is not enabled, emulate elog's mod_echo module to |
| | show the 'error' level messages, which should include the |
| | important die message. This is implemented by adding a |
| | private hook inside elog_process() which the scheduler uses |
| | to collect error messages. |
| 11057 | Since lots of packages will have to be fixed before stable |
| zmedico | portage can abort with "this code is not 64bit clean", |
| | convert the die call to an eerror message instructing the |
| | user to file a bug at bugs.gentoo.org. This should allow us |
| | to stabilize portage-2.2 without having to ensure that the |
| | entire stable tree is 64 bit clean first. |
svn path=/main/branches/prefix/; revision=11058
Fabian Groffen [Mon, 14 Jul 2008 19:20:17 +0000 (19:20 -0000)]
Merged from trunk 11041:11047
| 11042 | Ensure that that Scheduler._main_loop() doesn't return |
| zmedico | before the merge queue is empty. |
| 11043 | Remove redundant failed_packages check from |
| zmedico | Scheduler._main_loop() since it's now handled inside the |
| | _schedule() call. |
| 11044 | Add async execution support for pkg_preinst and |
| zmedico | pkg_postinst. This allows the scheduler's poll loop to run |
| | so that other parallel tasks aren't starved for output |
| | handling while pkg_preinst and pkg_postinst are executing. |
| 11045 | * Fix doebuild so "returnpid" works for preinst and |
| zmedico | postinst. * Add async support for pkg_prerm and pkg_postrm. |
| | * Add missing "treetype" parameter to dblink constructor |
| | calls. * Fix SubProcess._wait() to check self.returncode |
| | _after_ calling the scheduler. |
| 11046 | Call prepare_build_dirs() prior to pkg_preinst so that |
| zmedico | logging works properly. |
| 11047 | Unregister from poll() objects before closing file in order |
| zmedico | to hopefully avoid stale events that can trigger a KeyError |
| | in Scheduler._poll_loop() if the event's file descriptor no |
| | longer has a registered handler. |
svn path=/main/branches/prefix/; revision=11048
Fabian Groffen [Sun, 13 Jul 2008 14:28:38 +0000 (14:28 -0000)]
Merged from trunk 11038:11040
| 11039 | * Since can_poll_pty() is unsafe due to he possibility of |
| zmedico | the poll() call blocking forever, replace it with a simpler |
| | test on /dev/null that's derived from a test in a glib2 |
| | configure script. * Remove PtyReaderTestCase since it has |
| | the same problem as can_poll_pty(). |
| 11040 | Remove all traces of the "poll" parameter for the |
| zmedico | PollScheduler constructor since it was only used by |
| | can_poll_pty(). |
svn path=/main/branches/prefix/; revision=11041
Fabian Groffen [Sun, 13 Jul 2008 11:56:18 +0000 (11:56 -0000)]
Merged from trunk 11036:11037
| 11037 | In can_poll_tty(), direct bash's stderr into the pty since |
| zmedico | we don't want so see any error message it generates (due to |
| | PipeReader closing it's end of the pty). The error message |
| | is irrelevant since all we want to know is whether or not |
| | the data is successfully transmitted through the pty. |
svn path=/main/branches/prefix/; revision=11038
Fabian Groffen [Sun, 13 Jul 2008 11:28:59 +0000 (11:28 -0000)]
Merged from trunk 11017:11035
| 11018 | Fix a few typos found with pyflakes. Thanks to Cardoe for |
| zmedico | reporting. |
| 11019 | Fix SpawnProcess.start() to return early and notify exit |
| zmedico | listeners if the spawn call fails. |
| 11020 | For subclasses of Task, explicitly assign __hash__ = |
| zmedico | Task.__hash__ for compatibility with python-2.6_beta. Thanks |
| | to Arfrever for reporting. |
| 11021 | * Add a digraph.get() method, analogous to dict.get(), used |
| zmedico | to simplify Scheduler._pkg(). * Define digraph.__contains__ |
| | for containment tests via the "in" operator. |
| 11022 | Create a test case for the poll loop which uses the loop to |
| zmedico | read data from a pipe and assert that the data written to |
| | the pipe is identical to the data read from the pipe. In |
| | order to implement this test, several useful classes have |
| | been added: * PipeReader Reads output from one or more files |
| | and saves it in memory, for retrieval via the getvalue() |
| | method. This is driven by the scheduler's poll() loop, so it |
| | runs entirely within the current process. * QueueScheduler |
| | Add instances of SequentialTaskQueue and then call run(). |
| | The run() method returns when no tasks remain. * |
| | TaskScheduler A simple way to handle scheduling of |
| | AsynchrousTask instances. Simply add tasks and call run(). |
| | The run() method returns when no tasks remain. |
| 11023 | Derive a PtyReaderTestCase from PipeReaderTestCase. This |
| zmedico | test is expected to fail on some operating systems such as |
| | Darwin that do not support poll() on pty devices. |
| 11024 | Split out a portage._create_pty_or_pipe() function to avoid |
| zmedico | duplicate code. |
| 11025 | Implement a runtime test that checks whether it's possible |
| zmedico | to use poll() to read data from a pty device. The test only |
| | runs the first time that the can_poll_pty() function is |
| | called (currently happens when the first PollScheduler |
| | instance is created). The test is known to fail on Darwin |
| | and we're not sure how many other kernels might have a |
| | similar problem, this runtime test allows us to avoid having |
| | to maintain special cases for various kernels. |
| 11026 | Set self._mergelist inside Scheduler._calc_resume_list() |
| zmedico | since it needs to be set when calling _set_digraph(). |
| 11027 | Add missing self.wait() calls when tasks return |
| zmedico | unsuccessfully. |
| 11028 | Remember to close file descriptors before returning early |
| zmedico | from can_poll_pty(). |
| 11029 | Rename PollScheduler._schedule() to _schedule_wait(). |
| zmedico | |
| 11030 | * Wrap calls to PollScheduler._schedule_tasks() with a |
| zmedico | _schedule() method that automatically returns early from any |
| | recursive calls that the _schedule_tasks() call might |
| | trigger. This makes _schedule() safe to call from inside |
| | exit listeners. * Call _schedule() inside |
| | Scheduler._job_exit() to trigger a new job when possible. * |
| | Fix SequentialTaskQueue._task_exit() to avoid a potential |
| | KeyError if the task had already been removed from |
| | self.running_tasks for some reason. |
| 11031 | Decrement the job count prior to merging a given package |
| zmedico | (after it's been built or extracted). This will allow |
| | additional jobs to spawn sooner in some cases when there may |
| | be idle resources. |
| 11032 | Fix Scheduler._schedule_tasks() so that it never schedules a |
| zmedico | task when a package has already failed. |
| 11033 | In order to avoid having BlockerDB instantiate a new |
| zmedico | FakeVartree for each merge, add a FakeVartree.sync() method |
| | and so that the same FakeVartree can be reused. Package |
| | counters and timestamps are used to validate package |
| | instances during each sync() call. |
| 11034 | Fix broken binpkg path comparison in in binarytree.inject() |
| zmedico | so that duplicate entries are correctly from the Packages |
| | index. |
| 11035 | Changes to pym/_emerge/__init__.py from the previous commit |
| zmedico | weren't meant to be committed yet. |
svn path=/main/branches/prefix/; revision=11036
Fabian Groffen [Fri, 11 Jul 2008 07:41:11 +0000 (07:41 -0000)]
Merged from trunk 11001:11016
| 11002 | Use the EbuildFetcher class to implement async fetch for the |
| zmedico | EbuildBuild class. When in background mode, fetch output is |
| | logged to emerge-fetch.log. This solves a problem with |
| | calling doebuild(returnpid=1) and then doebuild calling |
| | fetch() synchronously. In that case, doebuild would return |
| | an int if fetch() failed (including when running |
| | pkg_nofetch), which would lead to a TypeError since |
| | doebuild(returnpid=1) is supposed to return a list |
| | containing a spawned pid. |
| 11003 | For parallel-fetch prefetchers, pass fetchonly=1 into the |
| zmedico | EbuildFetcher constructor. |
| 11004 | Bug #231358 - Fix 'NameError: global name 'p' is not |
| zmedico | defined' in getmaskingstatus() that's triggered by a |
| | conditional in LICENSE. |
| 11005 | Like in Binpkg, cancel or wait for the prefetcher in |
| zmedico | EbuildBuild. |
| 11006 | Fix Scheduler._is_restart_necessary() to return False if the |
| zmedico | replacement version of portage is the same exact version as |
| | the currently running instance. |
| 11007 | * Handle errno.ECHILD and errno.ESRCH from waitpid() and |
| zmedico | kill() calls. These errors commonly occur when ^C is used to |
| | kill emerge. * Remove spawned pids from |
| | portage.process.spawned_pids immediately in order to avoid a |
| | race condition for removing it. |
| 11008 | * Fix AsynchronousTask._wait_hook() to prevent potential |
| zmedico | recursive calls triggered when calling exit listeners. * |
| | Make SequentialTaskQueue use exit listeners to trigger |
| | scheduling as soon as a task exits. This makes it possible |
| | for the queues to automatically schedule new tasks while |
| | scheduler remains in it's poll() loop. |
| 11009 | Make digestcheck() skip the "checking ebuild checksums" part |
| zmedico | when fetching in the background. |
| 11010 | Bug #231382 - If the open() call in getconfig() raises an |
| zmedico | unexpected IOError, write a message to stderr showing the |
| | exact call that failed, including the path of the file, in |
| | order to aid in debugging. |
| 11011 | When a package replaces another one, add the corresponding |
| zmedico | uninstall task for the replaced package to |
| | Scheduler._completed_tasks so that it's properly accounted |
| | for in _dependent_on_scheduled_merges(). |
| 11012 | Add support for parallel --regen, using the existing --jobs |
| zmedico | and --load-average options: * Split out a PollLoop base |
| | class from Scheduler and derive a MetadataRegen class to |
| | handle parallel scheduling for --regen. * Add |
| | pordbapi._metadata_process() and _metadata_callback() |
| | methods to implement asynchronous metadata generation. One |
| | method returns an EbuildMetadataPhase instance to |
| | encapsulate the async task. The other method is called to |
| | save the metadata when the process completes successfully. |
| | These methods share code with aux_get to avoid duplicate |
| | code. |
| 11013 | Refactor and simplify the main task scheduling and poll |
| zmedico | loops: * Make output handlers unregister themselves and call |
| | wait() to notify exit listeners immediately. This makes the |
| | exit listeners more useful for scheduling tasks. This makes |
| | the poll loop nice an clean because it just calls the |
| | handlers and then the handlers can do the scheduling when |
| | necessary. * Make SequentialTaskQueue.add() and addFront() |
| | trigger scheduling internally, so that it's more of a chain |
| | reaction than something that has to be done explicitly. |
| 11014 | Document the new --jobs and --load-average options for |
| zmedico | parallelization. |
| 11015 | Call settings.reset() in EbuildMetadataPhase.start() since |
| zmedico | that's what portdbapi does too before generating metadata, |
| | and without it, a previous CATEGORY can leak into the ebuild |
| | env and corrupt it (breaks lots of packages that reference |
| | $CATEGORY). |
| 11016 | Copy INHERITED/_eclasses_ handling from |
| zmedico | portdbapi._metadata_callback() to portdbapi.aux_get() since |
| | it's still needed there or else aux_get won't properly |
| | return INHERITED. |
svn path=/main/branches/prefix/; revision=11017
Fabian Groffen [Wed, 9 Jul 2008 18:19:19 +0000 (18:19 -0000)]
Merged from trunk 10997:10999
| 10998 | Fix SubProcess._poll to handle a missing pid gracefully. |
| zmedico | |
| 10999 | * Unify the scheduler's "build" and "extract" queues into a |
| zmedico | single "jobs" queue. * Add support for logging fetches to |
| | /var/log/emerge-fetch.log when --jobs is enabled. Previously |
| | this log was only used for the parallel-fetch feature but |
| | now it's also used for --jobs. The scheduler's "prefetch" |
| | queue has been renamed to "fetch" since it's not exclusively |
| | used for parallel-fetch anymore. * Pass the "background" |
| | parameter from Binpkg in to the BinpkgFetcher instance, to |
| | send output to emerge-fetch.log instead of stdout. |
svn path=/main/branches/prefix/; revision=11001
Fabian Groffen [Wed, 9 Jul 2008 17:05:16 +0000 (17:05 -0000)]
Merged from trunk 10988:10996
| 10989 | * Call self._wait() when unregistering output handlers, in |
| zmedico | order to avoid triggering a tight loop. Also fix |
| | Subprocess._wait() to only schedule when self.registered is |
| | True. * Add an assertion inside Scheduler._schedule_main() |
| | to try and detect tight loops like the one above. * Fix typo |
| | in Scheduler._merge_exit(). |
| 10990 | Remove redundant call to _schedule_main(). |
| zmedico | |
| 10991 | Fix Scheduler._dependent_on_scheduled_merges() to properly |
| zmedico | distinguish "nomerge" nodes from "uninstall" nodes. |
| 10992 | In scheduler._schedule_main(), only consider a poll() event |
| zmedico | to be a state change if it results in a handler being |
| | unregistered. |
| 10993 | Make the "tight loop" assertion trigger whenever there is no |
| zmedico | state change detected for a given _schedule_main() call. |
| 10994 | * Fix _choose_pkg() to pop the first node if there are no |
| zmedico | other jobs running. * Allow _choose_pkg() to choose an |
| | uninstall node when it reaches the front of the queue. TODO: |
| | fix order for uninstall operations. * Fix |
| | _dependent_on_scheduled_merges() to handle direct circular |
| | deps correctly. |
| 10995 | Fix _prune_digraph() to correctly distinguish "nomerge" |
| zmedico | nodes from "uninstall" nodes. |
| 10996 | Fix Scheduler._choose_pkg() to perform uninstallation |
| zmedico | actions (due to blockers) in the correct order when building |
| | in parallel. |
svn path=/main/branches/prefix/; revision=11000
Fabian Groffen [Wed, 9 Jul 2008 07:17:53 +0000 (07:17 -0000)]
Merged from trunk 10972:10988
| 10973 | Add a new "SRC_URI.mirror" check which checks to if a uri |
| zmedico | listed in profiles/thirdpartymirrors is found in SRC_URI. |
| | Thanks to Betelgeuse for the initial patch which has now |
| | been optimized with a regex. |
| 10974 | * Add new CompositeTask._default_final_exit() method and use |
| zmedico | it as the new generic task exit callback. * Remove erroneous |
| | self.wait() calls inside MergeListItem.start(). |
| 10975 | Rename SubProcess.reg_id to _reg_id since it no longer needs |
| zmedico | to be exposed. |
| 10976 | Add a Scheduler._digraph attribute for use in parallel build |
| zmedico | scheduling. |
| 10977 | Use plain sequential search for the SRC_URI.mirror check |
| zmedico | since the regex approach is actually much slower. |
| 10978 | Add a missing check in Scheduler._main_loop() to ensure that |
| zmedico | max_jobs isn't exceeded. |
| 10979 | Add a MergeListItem.background attribute for putting a task |
| zmedico | in the background when max_jobs > 1. |
| 10980 | Also add "background" attributes to the EbuildBuild and |
| zmedico | Binpkg classes. |
| 10981 | Add AsynchronousTask.background attribute and add support |
| zmedico | for it to the EbuildPhase class. |
| 10982 | * Add background support to the SpawProcess class. * Make |
| zmedico | Binpkg pass the current background setting into subtasks. |
| 10983 | Implement parallel build support by adding new --jobs and |
| zmedico | --load-average options that are analogous to the |
| | corresponding `make` options. Input and output handling |
| | still need work to make it look better and act more friendly |
| | for things like interactive ebuilds that require input. |
| 10984 | Use a normal list instead of a deque for |
| zmedico | Scheduler._pkg_queue since deque doesn't have a remove() |
| | method until python-2.5. |
| 10985 | Fix ValueError triggered when Scheduler._choose_pkg() |
| zmedico | doesn't find a package and returns None. |
| 10986 | Fix infinite loop in CompositeTask._wait(). |
| zmedico | |
| 10987 | Raise an AssertionError in CompositeTask._wait() if it's |
| zmedico | detected that self._current_task hasn't been properly |
| | updated after calling wait on it. |
| 10988 | Derive PackageMerge from AsynchronousTask instead of |
| zmedico | CompositeTask since CompositeTask is designed for |
| | self._current_task to be set. |
svn path=/main/branches/prefix/; revision=10997
Fabian Groffen [Mon, 7 Jul 2008 19:47:15 +0000 (19:47 -0000)]
Merged from trunk 10968:10971
| 10969 | remove TODO list as it's not maintained anyway |
| genone | |
| 10970 | Make SubProcess._wait() call scheduler.schedule(self.reg_id) |
| zmedico | so it's encapsulated and callers don't have to know about |
| | it. |
| 10971 | Move the "registered" attribute to the SubProcess class too. |
| zmedico | |
svn path=/main/branches/prefix/; revision=10972
Fabian Groffen [Mon, 7 Jul 2008 09:18:40 +0000 (09:18 -0000)]
Merged from trunk 10944:10966
| 10945 | Correct TaskSequence docstring to refer to the |
| zmedico | addExitListener() method. |
| 10946 | Call _wait_hook() from poll() if the wait call occurs there. |
| zmedico | |
| 10947 | * Fix AsynchronousTask.poll() to call _wait_hook() when |
| zmedico | necessary. * Use the default poll() and cancel() |
| | implementations for BinpkgVerifier. |
| 10948 | Fix typo in xterm titles total package count which causes it |
| zmedico | to show the current package instead. Thanks to Arfrever for |
| | this patch. |
| 10949 | Add a CompositeTask._assert_current() method that |
| zmedico | asynchronous callbacks can use detect possible bugs. |
| 10950 | Split out a reusable CompositeTask._default_exit() method |
| zmedico | that subclasses can use as a generic task exit callback. |
| 10951 | Add CompositeTask._final_exit() method and use it to fix |
| zmedico | breakage from the previous commit. |
| 10952 | Split out a CompositeTask._start_task() for subclasses to |
| zmedico | use as a generic way to start a task. |
| 10953 | Add async support to EbuildBuild, and an synchronous |
| zmedico | install() method. |
| 10954 | * Fix broke return code handling from previous commit, in |
| zmedico | MergeListItem.execute(). * Fix |
| | TaskSequence._task_exit_handler() so it won't call |
| | final_exit() if _default_exit() has already set |
| | self._current_task to None. |
| 10955 | Fix --getbinpkg to inject downloaded packages into the local |
| zmedico | bintree. |
| 10956 | Make AsynchronousTask subclasses override _wait() and |
| zmedico | _poll() so that calls to public methods can be wrapped for |
| | implementing hooks such as exit listener notification. |
| 10957 | Fix parent class constructor call in the BinpkgFetcher |
| zmedico | constructor. |
| 10958 | Make BinpkgFetcher send output directly to stdout when |
| zmedico | appropriate, so that wget's progress bar works normally. |
| 10959 | Add async support to the Binpkg class. |
| zmedico | |
| 10960 | Add async support to MergeListItem. |
| zmedico | |
| 10961 | Add a PackageMerge class to serve as an asynchronous |
| zmedico | interface to package merges. For now it executes |
| | synchronously inside the start() method. |
| 10962 | * Implement MergeListItem._poll() and _wait(). * Fix |
| zmedico | BinpkgVerifier.start() to call wait() since it's not |
| | asynchronous. |
| 10963 | Fix typo in Binpkg.start() which prevents --genbinpkg |
| zmedico | prefetcher sync from working properly in some cases. |
| 10964 | Fix EbuildPhase._set_returncode() so that it correctly |
| zmedico | updates the returncode attrbute instead of just a local |
| | variable. |
| 10965 | Fix broken code in AsynchronousTask.poll(). |
| zmedico | |
| 10966 | * Implement CompositeTask._poll(). * Make AsynchronousTask |
| zmedico | classes call self.wait() to notify exit listeners. * Rewrite |
| | Scheduler._main_loop() to bring it closer to allowing |
| | parallel build scheduling. |
svn path=/main/branches/prefix/; revision=10968
Fabian Groffen [Mon, 7 Jul 2008 09:11:52 +0000 (09:11 -0000)]
Merged from trunk 10928:10943
| 10929 | Bug #230525 - Work around ObjectProxy breakage in `portageq |
| zmedico | vdb_path`. |
| 10930 | Add a PollConstants class to serve as a layer of indirection |
| zmedico | for accessing select.POLL* attributes which do not exist on |
| | interix. Thanks to grobian for reporting. |
| 10931 | TODO: For parallel scheduling, everything in MergeListItem |
| zmedico | needs asynchronous execution support (start, poll, and wait |
| | methods). |
| 10932 | Convert EbuildFetcher to an asynchronous interface: * Rename |
| zmedico | EbuildFetcher to EbuildFetchPretend. * Rename |
| | EbuildFetcherAsync to EbuildFetcher. |
| 10933 | Make EbuildBuild inherit from EbuildBuildDir since it's |
| zmedico | going to hold the build dir lock while it runs |
| | asynchronously. |
| 10934 | Make Binpkg inherit from EbuildBuildDir since it's going to |
| zmedico | hold the build dir lock while it runs asynchronously. |
| 10935 | * Implement a new binarytree.digestCheck() method and use it |
| zmedico | to check digests for binary packages. * Split out a |
| | AsynchronousTask base class from SubProcess. * Derive a new |
| | BinpkgVerifier class from AsynchronousTask. Even though this |
| | is not really asynchronous yet, it can fake the interface by |
| | doing everything in the start() method. |
| 10936 | Rename BinpkgFetcherAsync class to BinpkgFetcher and use it |
| zmedico | to replace the older class with the same name |
| 10937 | Remove unused variable. |
| zmedico | |
| 10938 | Use the EbuildPhase class to execute the "clean" phase |
| zmedico | asynchronously. |
| 10939 | Add async support to EbuildBinpkg by making it inherit from |
| zmedico | EbuildPhase. |
| 10940 | Add a new CompositeTask class which can be used to combine |
| zmedico | separate AsynchronousTask instances into a single instance. |
| | The CompositeTask instance used task exit listeners as a |
| | means to (asynchronously) trigger progression from one |
| | subtask to the next. This technique is used to group |
| | together all the ebuild phases executed by EbuildExecuter, |
| | and should be useful for grouping many more sets of tasks |
| | into similar composite tasks. |
| 10941 | Fix CompositeTask.cancel() so that it's safe to call when |
| zmedico | there is no running task. |
| 10942 | Make EbuildExecuter inherit from AsynchronousTask. |
| zmedico | |
| 10943 | Split out common code from CompositeTask and EbuildExecuter |
| zmedico | into a new CompositeTask class and rename the old |
| | CompositeTask class to TaskSequence. |
svn path=/main/branches/prefix/; revision=10967
Fabian Groffen [Thu, 3 Jul 2008 17:05:34 +0000 (17:05 -0000)]
Merged from trunk 10904:10913
| 10905 | Split out a new _add_prefetchers() method from |
| zmedico | Scheduler._merge(). |
| 10906 | Remove the Scheduler._post_merge() method, and create a new |
| zmedico | _show_failed_fetches() method. |
| 10907 | Remove unused BinpkgMerge class. |
| zmedico | |
| 10908 | Split out a _restart_if_necessary() method from |
| zmedico | Scheduler._merge(). |
| 10909 | Add a portage._disable_legacy_globals() function. This |
| zmedico | deletes the ObjectProxy instances that are used for lazy |
| | initialization of legacy global variables. The purpose of |
| | deleting them is to prevent new code from referencing these |
| | deprecated variables. This allows the removal of the |
| | PORTAGE_LEGACY_GLOBALS variable which used to serve the same |
| | purpose. |
| 10910 | Clean up Scheduler.merge() and split out a |
| zmedico | _save_resume_list() method. |
| 10911 | Split logging and world atom code out of |
| zmedico | Scheduler._execute() task, and trigger it inside |
| | EbuildPhase.execute(). |
| 10912 | Remove old unused vars inside _execute_task() and fix code |
| zmedico | not to use the old vars. |
| 10913 | Split out a _create_prefetcher() method from |
| zmedico | _add_prefetchers(). |
svn path=/main/branches/prefix/; revision=10914
Fabian Groffen [Thu, 3 Jul 2008 06:49:48 +0000 (06:49 -0000)]
Merged from trunk 10893:10903
| 10894 | Handle missing select.poll on interix by using select() to |
| zmedico | emulate a poll object. |
| 10895 | Fix EbuildBuildDir so that it works properly with binary |
| zmedico | packages. |
| 10896 | Fix broken except statement. Thanks to hawking. |
| zmedico | |
| 10897 | Use stdout.write() instead of "print", for py3k compat. |
| zmedico | |
| 10898 | Split out a SpawnProcess base class out of |
| zmedico | EbuildFetcherAsync. |
| 10899 | Move post ebuild phase code (originally from spawnebuild) |
| zmedico | from EbuildExecuter.execute() to |
| | EbuildPhase._set_returncode(). |
| 10900 | Add missing BinpkgFetcherAsync.registered attribute. |
| zmedico | |
| 10901 | Make BinpkgFetcherAsync inherit from SpawnProcess. |
| zmedico | |
| 10902 | Implement asynchronous binary package extraction, so that |
| zmedico | the scheduler can run while a package is extracting in the |
| | background. |
| 10903 | Split out a new _check_manifests() method from |
| zmedico | Scheduler._merge() since this method is not useful for |
| | parallel scheduling and any useful code needs to be |
| | relocated. |
svn path=/main/branches/prefix/; revision=10904
Fabian Groffen [Wed, 2 Jul 2008 10:49:22 +0000 (10:49 -0000)]
Merged from trunk 10884:10892
| 10885 | * Rename existing EbuildBuild class to EbuildExecuter. * |
| zmedico | Split more code out of Scheduler._execute_task() and use it |
| | to make a more comprehensive EbuildBuild class. |
| 10886 | Remove debugging code from the previous commit. |
| zmedico | |
| 10887 | Split out a Binpkg class from code inside |
| zmedico | Scheduler._execute_task(). |
| 10888 | Fix inverted buildpkgonly logic. |
| zmedico | |
| 10889 | Fix EbuildBuild.execute() to return os.EX_OK on success. |
| zmedico | |
| 10890 | Py3k compatibility patch by Ali Polatel <hawking@g.o>. Don't |
| zmedico | use the format raise Exception, "string" |
| 10891 | Split out a SubProcess base class for EbuildFetcherAsync, |
| zmedico | EbuildPhase, and BinpkgFetcherAsync. |
| 10892 | Remove $PORTAGE_BUILDDIR locking from portage.pkgmerge() and |
| zmedico | use an instance of EbuildBuildDir instead. |
svn path=/main/branches/prefix/; revision=10893
Fabian Groffen [Tue, 1 Jul 2008 18:47:14 +0000 (18:47 -0000)]
it works better if all files are available, and if you reference existing variables
svn path=/main/branches/prefix/; revision=10884
Fabian Groffen [Tue, 1 Jul 2008 18:39:57 +0000 (18:39 -0000)]
make sure we do not clash with standard names for expansion, as e.g. $BASH
svn path=/main/branches/prefix/; revision=10883
Fabian Groffen [Tue, 1 Jul 2008 17:40:20 +0000 (17:40 -0000)]
my attempt to do python 2.6 compatibility thing
svn path=/main/branches/prefix/; revision=10882
Fabian Groffen [Tue, 1 Jul 2008 17:32:45 +0000 (17:32 -0000)]
Merged from trunk 10869:10875
| 10870 | Py3k compatibility patch #1 by Ali Polatel <hawking@g.o>. |
| zmedico | Replace dict.has_key() calls with "in" and "not in" |
| | operators.. |
| 10871 | Py3k compatibility patch #2 by Ali Polatel <hawking@g.o>. |
| zmedico | Replace dict.has_key() calls with "in" and "not in" |
| | operators. |
| 10872 | Py3k compatibility patch #3 by Ali Polatel <hawking@g.o>. |
| zmedico | Replace dict.has_key() calls with "in" and "not in" |
| | operators. |
| 10873 | Py3k compatibility patch #4 by Ali Polatel <hawking@g.o>. |
| zmedico | Replace dict.has_key() calls with "in" and "not in" |
| | operators. |
| 10874 | Py3k compatibility patch #5 by Ali Polatel <hawking@g.o>. |
| zmedico | Replace dict.has_key() calls with "in" and "not in" |
| | operators. |
| 10875 | Py3k compatibility patch #6 by Ali Polatel <hawking@g.o>. |
| zmedico | Replace dict.has_key() calls with "in" and "not in" |
| | operators. |
svn path=/main/branches/prefix/; revision=10881
Fabian Groffen [Tue, 1 Jul 2008 17:22:29 +0000 (17:22 -0000)]
Merged from trunk 10853:10869
| 10854 | Avoid python-2.6 deprecation warnings for md5 and sha |
| zmedico | modules by trying to import hashlib first and then falling |
| | back to the deprecated modules if necessary. Thanks to |
| | ColdWind for reporting. |
| 10855 | Reimplement parallel-fetch by spawning the `ebuild fetch` |
| zmedico | command for each ebuild. The benefit of using this approach |
| | is that it can be integrated together with parallel build |
| | scheduling that's planned. Parallel-fetch support for |
| | binhost is not implemented yet, though it worked previously. |
| 10856 | Clear the self._task_queue to avoid duplicate parallel-fetch |
| zmedico | tasks in --keep-going mode. |
| 10857 | Add "(no inline comments)" to qualify "comments begin with |
| zmedico | #" statements. |
| 10858 | Bug #230245 - Pass the correct directory when calling `snv |
| zmedico | list` and `svn status` since repoman supports category-level |
| | and repo-level commits. |
| 10859 | Bug #230245 - Use os.path.basename() on paths returned from |
| zmedico | `svn list` and `svn status`. |
| 10860 | Bug #230249 - Disable the "ebuild.notadded" check when not |
| zmedico | in commit mode and running `svn list` and `svn status` calls |
| | in every package dir will be too expensive. |
| 10861 | Fix typo. |
| zmedico | |
| 10862 | add a call to pruneNonExisting() at the end of |
| zmedico | dbapi.vartree.PreservedLibsRegistry.__init__() |
| 10864 | Split out a write_contents() function and a |
| zmedico | vardbapi.removeFromContents() function. This is refactoring |
| | of code from the blocker file collision contents handling in |
| | dblink.treewalk(). Also, there is a new |
| | dblink._match_contents() method derived from isowner(). It |
| | returns the exact path from the contents file that matches |
| | the given path, regardless of path differences due to things |
| | such as symlinks. |
| 10865 | Handle potential errors in PreservedLibsRegistry.store() now |
| zmedico | that it can be called via pruneNonExisting(), due to things |
| | such as portageq calls where the user may not have write |
| | permission to the registry. |
| 10866 | Also avoid sandbox violations in |
| zmedico | PreservedLibsRegistry.store(), for running portage inside |
| | ebuild phases. |
| 10867 | Never do realpath() on an empty string for |
| zmedico | portdbapi.porttree_root since otherwise it can evaluate to |
| | $CWD which leads to undesireable results. |
| 10868 | Add a new BinpkgFetcherAsync class and use it to implement |
| zmedico | parellel-fetch for --getbinpkg. |
| 10869 | Add a "prefix" keyword parameter to slot_dict_class() which |
| zmedico | controls the prefix used when mapping attribute names from |
| | keys. Use this to change the syntax from files["foo"] to |
| | files.foo (it's fewer characters to look at). |
svn path=/main/branches/prefix/; revision=10880
Fabian Groffen [Tue, 1 Jul 2008 17:09:13 +0000 (17:09 -0000)]
Merged from trunk 10843:10853
| 10844 | Handle invalid atoms inside depgraph._add_pkg_deps(), to |
| zmedico | avoid an unhandled InvalidAtom exception from dep_expand() |
| | when matching against the vardb. |
| 10845 | Split out a _spawn_misc_sh() function from spawnebuild(). |
| zmedico | |
| 10846 | Split out a _post_src_install_uid_fix() function from |
| zmedico | spawnebuild(). |
| 10847 | Split out a _check_build_log() function from spawnebuild(). |
| zmedico | |
| 10848 | In EbuildBuild.execute(), call doebuild() separately for |
| zmedico | each phase since it will be easier to add asynchronous |
| | support to doebuild() if it's called this way. |
| 10849 | * Add "fd_pipes" and "returnpid" parameters to doebuild() |
| zmedico | and pass these into spawn calls, enabling ebuild processes |
| | to execute asynchronously. * Add a EbuildPhase class that's |
| | derived from the pty logging code inside portage.spawn(). * |
| | Integrate post-phase code from spawnebuild() into |
| | EbuildBuild.execute() so that it still gets called even |
| | though doebuild() calls execute asynchronously. |
| 10850 | Add EMERGE_FROM to the blacklisted vars in the config |
| zmedico | constructor. |
| 10851 | Centralize select.poll() event handling in |
| zmedico | MergeTask._schedule(). This will allow the parent process to |
| | handle output of multiple child processes running in |
| | parllel. |
| 10852 | * Tweak conditionals in doebuild() to fix emerge --fetch |
| zmedico | breakage reported by Arfrever. * Change a couple EMERGE_FROM |
| | conditionals to use the "returnpid" parameter instead. |
| 10853 | Rename the MergeTask class to Scheduler. |
| zmedico | |
svn path=/main/branches/prefix/; revision=10879
Fabian Groffen [Tue, 1 Jul 2008 16:59:40 +0000 (16:59 -0000)]
Merged from trunk 10833:10843
| 10834 | Use the EbuildMerge class instead of portage.merge(). |
| zmedico | |
| 10835 | Bug #229859 - Make portageq check atom validity when |
| zmedico | has_version() and best_version() are called from inside the |
| | ebuild environment. |
| 10836 | Copy portageq exit code validation from has_version() to |
| zmedico | best_version(). |
| 10837 | Bug #229859 - Also add atom validation to match(). |
| zmedico | |
| 10838 | * Remove unused EbuildBuild.pretend attribute. * Add TODO |
| zmedico | not about asynchronous execution. |
| 10839 | Make EbuildBinpkg delegate everything up to src_install() to |
| zmedico | the EbuildBuild class. |
| 10840 | Handle re.error exceptions raised from re.compile() when |
| zmedico | ACCEPT_CHOSTS is invalid. Thanks to solar for reporting. |
| 10841 | Split out an EbuildBuildDir class to handle locking of the |
| zmedico | build dir. |
| 10842 | Instead of calling the ebuild "clean" phase in |
| zmedico | MergeTask.merge(), move it inside doebuild() where it can be |
| | tied into the actionmap_deps framework. |
| 10843 | Move clean code, from the previous commit, from doebuild() |
| zmedico | to EbuildBuild.execute() where it fits better. |
svn path=/main/branches/prefix/; revision=10878
Fabian Groffen [Tue, 1 Jul 2008 16:55:38 +0000 (16:55 -0000)]
Merged from trunk 10824:10833
| 10825 | Split the MergeTask._merge() method into 3 smaller methods. |
| zmedico | The new methods are _execute_task() and _post_merge(). |
| 10826 | Split out an EbuildFetcher class. |
| zmedico | |
| 10827 | Split out a BinpkgFetcher class. |
| zmedico | |
| 10828 | * Split out a BinpkgMerge class. * Fix typos in |
| zmedico | _get_hash_key() methods. |
| 10829 | Split out an EbuildMerge class. |
| zmedico | |
| 10830 | Fix typo. |
| zmedico | |
| 10831 | Split out an EbuildBuild class. |
| zmedico | |
| 10832 | * Split out an EbuildBinpkg class. * Remove unused |
| zmedico | EbuildBuild.ldpath_mtimes attribute. |
| 10833 | Split out a PackageUninstall class. |
| zmedico | |
svn path=/main/branches/prefix/; revision=10877
Fabian Groffen [Tue, 1 Jul 2008 16:48:46 +0000 (16:48 -0000)]
Merged from trunk 10816:10824
| 10817 | Generate and log eerror messages for any packages that need |
| zmedico | to be dropped due to unsatisfied dependencies when |
| | --keep-going is enabled. |
| 10818 | Add documentation for the new --keep-going option. |
| zmedico | |
| 10819 | Fix typo. |
| zmedico | |
| 10820 | Pass the digraph into the MergeTask constructor. It's |
| zmedico | currently unused but it will be useful for parallel |
| | scheduling. |
| 10821 | Break references from Package instances in the digraph |
| zmedico | before passing it into the MergeTask constructor. |
| 10822 | Remove the MergeTask._blocker_db attribute since it can just |
| zmedico | be a local variable. |
| 10823 | Fix depgraph.break_refs() to work with DependencyArg |
| zmedico | instances (or anything else that may have a "root_config" |
| | attribute). |
| 10824 | Bug #226307 - Copy come code from |
| zmedico | depgraph._iter_atoms_for_pkg() that was used to solve bug |
| | #218854, and use it inside unmerge() when matching sets to |
| | packages. |
svn path=/main/branches/prefix/; revision=10876
Fabian Groffen [Tue, 1 Jul 2008 07:26:37 +0000 (07:26 -0000)]
Do not use hardcoded python, bug #230247
svn path=/main/branches/prefix/; revision=10863
Fabian Groffen [Fri, 27 Jun 2008 15:55:18 +0000 (15:55 -0000)]
more windows user/groupname quoting
svn path=/main/branches/prefix/; revision=10816
Fabian Groffen [Fri, 27 Jun 2008 14:53:20 +0000 (14:53 -0000)]
Merged from trunk 10801:10812
| 10802 | Handle KeyError from aux_get() inside |
| zmedico | dbapi._iter_match_slot() and _iter_match_use(). Thanks to |
| | grobian for reporting. |
| 10803 | Use settings["ROOT"] at the beginning of env_update() to |
| zmedico | avoid breakage due to "root" being an ObjectProxy instance. |
| 10804 | * Remove PORTAGE_LEGACY_GLOBALS hack for portage import |
| zmedico | since late initialization of portage.settings (via |
| | ObjectProxy) allows us to rely on being able to access the |
| | portage.exception namespace before portage.settings is |
| | initialized. * Use portage.settings["ROOT"] instead of |
| | portage.root to avoid potential ObjectProxy compatibility |
| | issues. |
| 10805 | Fix the PermissionDenied message for color.map. |
| zmedico | |
| 10806 | Add "PATH" to the set of allowed pacakge metadata keys for |
| zmedico | the PackageIndex. |
| 10807 | Call use_reduce() with matchall=1 when checking depstrings. |
| zmedico | Otherwise it's possible for invalid deps to be ignored. |
| | Thanks to grobian for reporting. |
| 10808 | For brevity, and consistency with pkgcore, rename |
| zmedico | "all-installed" to just "installed". Thanks to ferringb for |
| | the suggestion. |
| 10809 | Split the --skipfirst code into a resume_depgraph() function |
| zmedico | that will be useful for implementing a --keep-going option |
| | (bug #12768). |
| 10810 | Use bool() to simplify ObjectProxy.__nonzero__(). |
| zmedico | |
| 10811 | Bug #12768 - Add a --keep-going option. This uses the same |
| zmedico | resume_depgraph() function that's called for emerge --resume |
| | operations. Given the remaining tasks, depedencies are |
| | recalculated and any tasks with unsatisfied dependencies are |
| | automatically dropped. |
| 10812 | Call clear_caches() after the depgraph is out of scope, in |
| zmedico | MergeTask.merge(). |
svn path=/main/branches/prefix/; revision=10815
Fabian Groffen [Fri, 27 Jun 2008 14:47:19 +0000 (14:47 -0000)]
Merged from trunk 10788:10801
| 10789 | Swap out the whole Package.root_config attribute inside |
| zmedico | depgraph.break_refs(). |
| 10790 | Add a generic portage.cache.mappings.slot_dict_class() |
| zmedico | function which generates mapping classes that behave similar |
| | to a dict but store values as object attributes that are |
| | allocated via __slots__. Instances of these objects have a |
| | smaller memory footprint than a normal dict object. These |
| | classes are used to reduce the memory footprint of the |
| | dbapi.aux_get() caches and the Package.metadata attribute. |
| 10791 | Fix indentation. |
| zmedico | |
| 10792 | Fix KeyError constructor style. |
| zmedico | |
| 10793 | Fix typo. |
| zmedico | |
| 10794 | Add docstring to slot_dict_class(). |
| zmedico | |
| 10795 | Fix typo. |
| zmedico | |
| 10796 | Use SlotDict where appropriate in binarytree._populate(). |
| zmedico | |
| 10797 | Make PackageIndex use SlotDict for package metadata storage. |
| zmedico | The set of allowed keys is passed into the PackageIndex |
| | constructor (normal dict instances will be used if the set |
| | of keys is not passed in for some reason). A |
| | SlotDict.allowed_keys attribute now provides access to a |
| | frozenset of allowed keys. |
| 10798 | Implement lazy initialization of global "portdb", "settings" |
| zmedico | and other variables that pollute the portage module. This |
| | works by initializing the global variables with dummy |
| | "proxy" objects that serve as a means to trigger lazy |
| | initialization. As soon as the first attribute access or |
| | method call occurs on one of the proxy objects, it causes |
| | all the proxy objects to be replaced with the real ones. |
| | It's possible for an unsupported attribute access or method |
| | call on a proxy object to trigger an error, leading to |
| | breakage. However, hopefully these such corner cases will |
| | negligible (only time will tell). |
| 10799 | Use a separate proxy type to trigger portage.portdb |
| zmedico | initialization separately from the rest of the legacy global |
| | variables. This can be useful since sometimes the other |
| | variables are needed while the portdb is not. |
| 10800 | Also use a separate proxy type for portage.mtimedb since |
| zmedico | it's independent from the portdb and settings. |
| 10801 | change default name of EverythingSet to @all-installed (bug |
| genone | #229467) |
svn path=/main/branches/prefix/; revision=10814
Fabian Groffen [Fri, 27 Jun 2008 12:11:33 +0000 (12:11 -0000)]
need to quote more, on Windows user and groupnames can have spaces :(
svn path=/main/branches/prefix/; revision=10813
Fabian Groffen [Wed, 25 Jun 2008 20:26:36 +0000 (20:26 -0000)]
Merged from trunk 10784:10787
| 10785 | Fix Atom -> str breakage in depgraph.saveNomergeFavorites(). |
| zmedico | Thanks to grobian and darsiide. |
| 10786 | Clarify EverythingSet.description a bit. Thanks to Necoro. |
| zmedico | |
| 10787 | Clarify EverythingSet.description a bit. Thanks to Necoro. |
| zmedico | |
svn path=/main/branches/prefix/; revision=10788
Fabian Groffen [Wed, 25 Jun 2008 18:49:44 +0000 (18:49 -0000)]
Merged from trunk 10781:10783
| 10782 | After the depgraph caches the vardb state in a FakeVartree, |
| zmedico | to make some room on the heap, clear the vardbapi caches. |
| 10783 | Fix repoman breakage wrt _PackageMetadataWrapper._keys |
| zmedico | values. |
svn path=/main/branches/prefix/; revision=10784
Fabian Groffen [Wed, 25 Jun 2008 09:00:23 +0000 (09:00 -0000)]
Merged from trunk 10770:10780
| 10771 | Bug #229233 - Fix Atom -> str breakage in the |
| zmedico | depgraph.display_problems() package.provided warning |
| | message. |
| 10772 | Use weakref.WeakValueDictionary to make cached Atom |
| zmedico | instances eligible for garbage collection when no strong |
| | references remain. |
| 10773 | If dep calculation time exceeds 20 seconds then |
| zmedico | automatically enable "complete" mode since any performance |
| | difference is not as likely to be noticed by the user after |
| | this much time has passed. |
| 10774 | Fix spelling of depgraph._complete_threshold. |
| zmedico | |
| 10775 | Bug #229069 - Before deleting the depgraph, break references |
| zmedico | pointing to the depgraph from Package instances in the merge |
| | list. This helps reduce the heap size a lot. |
| 10776 | For the Package.metadata attribute, only implement the dict |
| zmedico | interface instead of actually inheriting from dict. This |
| | slightly decreases the memory footprint by defining |
| | __slots__ and storing items as object attributes. |
| 10777 | Remove the BlockerDB._blocker_cache attribute and just |
| zmedico | create new instances on demand instead of taking space on |
| | the heap. |
| 10778 | Make clear_caches() call portage.dircache.clear(). |
| zmedico | |
| 10779 | Use os.listdir() instead of portage.listdir() to avoid |
| zmedico | needless caching of directories that only need to be listed |
| | once. |
| 10780 | Implement __contains__, pop() and clear() for |
| zmedico | Package.metadata attributes. |
svn path=/main/branches/prefix/; revision=10781
Fabian Groffen [Tue, 24 Jun 2008 15:42:51 +0000 (15:42 -0000)]
Merged from trunk 10767:10769
| 10768 | Fix some remaining corner cases that cause bug #220341 to |
| zmedico | reappear intermittently. Thanks to pva for reporting. |
| 10769 | Clear dbapi caches just after deleting the depgraph in |
| zmedico | action_build(). This trims down the heap size by a few megs, |
| | for bug #229069. |
svn path=/main/branches/prefix/; revision=10770
Fabian Groffen [Mon, 23 Jun 2008 19:31:56 +0000 (19:31 -0000)]
Merged from trunk 10760:10764
| 10761 | Bug #228939 - Fix display list interaction with --tree mode |
| zmedico | to prevent display of a duplicate list. |
| 10762 | Bug #228977 - Protect against possible infinite loop in |
| zmedico | dblink._preserve_libs(). |
| 10763 | Bug #228935 - Add a new "command not found" build log QA |
| zmedico | Notice. Thanks to Olivier Huber for the initial patch. |
| 10764 | Bug #228977 - During dblink._preserve_libs() calls, cache |
| zmedico | results of LinkageMap.findProviders(), |
| | LinkageMap.findConsumers(), and os.path.realpath() calls in |
| | order to improve performance. This makes a huge difference |
| | in performance for glibc upgrades since glibc provides so |
| | many libs to check consumerge for. |
svn path=/main/branches/prefix/; revision=10767
Fabian Groffen [Mon, 23 Jun 2008 15:36:44 +0000 (15:36 -0000)]
Use paths from portage.const instead of hardcoded versions (which don't match in Prefix). Please merge this in trunk.
svn path=/main/branches/prefix/; revision=10765
Fabian Groffen [Sun, 22 Jun 2008 15:29:37 +0000 (15:29 -0000)]
Merged from trunk 10738:10759
| 10739 | Make the visibility related config methods such as |
| zmedico | getMaskAtom() and getProfileMaskAtom() private since these |
| | methods really should take Package instances before we |
| | expose them as public api. |
| 10740 | Instead of having Atom inherit from str, just emulate the |
| zmedico | interface. This allows us to define __slots__ (not allowed |
| | when inheriting from str) and therefore should conserve |
| | some memory by avoiding a __dict__ attribute on every Atom. |
| 10741 | Use a metaclass to cache Atom instances transparently. This |
| zmedico | should improve performance and conserve memory in cases |
| | when the same atom is more than once. |
| 10742 | Make the Atom cache dict private and add a docstring for |
| zmedico | _AtomCache. |
| 10743 | Make Atom use str.__hash__. |
| zmedico | |
| 10744 | Make Atom use str.__eq__ and __ne__ also. |
| zmedico | |
| 10745 | Make isvalidatom() use the Atom cache to avoid validating |
| zmedico | the same atom twice. |
| 10746 | Bug #228595 - Use os.path.realpath() before comparing paths |
| zmedico | to those returned from portdbapi.getRepositoryPath() since |
| | those paths are also cannonical. |
| 10747 | Add subversion support for repoman. (thanks grobian) |
| zmedico | |
| 10748 | Remove unused Atom.string attribute. |
| zmedico | |
| 10749 | Fix Atom -> str breakage in WorldSet.write(). |
| zmedico | |
| 10750 | drop old -i,--include-masked option #226429 by Tobias |
| SpankMan | Klausmann |
| 10751 | Use bash's built-in echo instead of the actual echo binary |
| zmedico | since it has compatibility issues on FreeBSD systems. |
| | Thanks to aballier for reporting the issue and testing this |
| | patch. |
| 10752 | Exclude calls to autoheader and makeinfo from the automake |
| zmedico | "maintainer mode" check (filter some false positives). |
| | Thanks to Flameeyes. |
| 10753 | Fix implicit_pattern to match different quote character |
| zmedico | found in warnings generated by gcc-4.3. Thanks to aballier |
| | for reporting with sample log. |
| 10754 | Make LibraryConsumerSet.mapPathsToAtoms() use the contents |
| zmedico | index for more efficient owner lookups. |
| 10755 | Fix Atom -> str breakage in depgraph.display_problems(). |
| zmedico | |
| 10756 | Bug #228489 - Restore the "ci" alias for "commit" mode. |
| zmedico | Thanks to grobian for the patch. |
| 10757 | Implement Atom.__cmp__() so that things like list.sort() |
| zmedico | work correctly for Atom instances. |
| 10758 | Fix Atom -> str breakage in |
| zmedico | depgraph._show_slot_collision_notice(). Thanks to Arfrever |
| | for reporting. |
| 10759 | Fix broken path handling wrt $ROOT in |
| zmedico | LibraryConsumerSet.mapPathsToAtoms(). |
svn path=/main/branches/prefix/; revision=10760
Fabian Groffen [Fri, 20 Jun 2008 11:29:14 +0000 (11:29 -0000)]
Merged from trunk 10729:10735
| 10730 | Make emerge path search for multiple owners of directories. |
| zmedico | This makes it possible to use `emerge /lib/modules` as a |
| | decent substitute for module-rebuild. |
| 10731 | Fix typo. |
| zmedico | |
| 10732 | Document the new emerge feature. |
| zmedico | |
| 10733 | update release notes/news |
| genone | |
| 10734 | revert accidential commit |
| genone | |
| 10735 | reenable warning about missing repository names |
| genone | |
svn path=/main/branches/prefix/; revision=10738
Fabian Groffen [Fri, 20 Jun 2008 11:26:08 +0000 (11:26 -0000)]
Implemented the missing part in preserve-libs for Mach-O systems.
Unfortunately we have to call otool twice for each lib we have
preserved. Fortunately, it is to be expected that the number of
preserved libs remains low. Still avoiding the calls to otool and
scanelf at this stage would be really preferable, especially since bash
can do the magic we need to do here a lot easier than python can.
svn path=/main/branches/prefix/; revision=10737
Fabian Groffen [Thu, 19 Jun 2008 20:03:58 +0000 (20:03 -0000)]
cleanup, set proper version
svn path=/main/branches/prefix/; revision=10729
Fabian Groffen [Thu, 19 Jun 2008 19:41:50 +0000 (19:41 -0000)]
Merged from trunk 10716:10726
| 10717 | Bug #228075 - Explicitly call gc.collect() to try and free |
| zmedico | memory when checking for blockers. This avoids a heap |
| | overflow that triggers 'Cannot allocate memory' errors |
| | (reported with python-2.5). |
| 10723 | Refactor the 'inherit.autotools' and 'IUSE.undefined' checks |
| zmedico | into classes derived from LineCheck. |
| 10725 | Pass a Package instance into LineCheck.new(), and use this |
| zmedico | to avoid passing the ebuild mtime into the EbuildHeader |
| | constructor (the mtime is given when the new() method is |
| | called). |
svn path=/main/branches/prefix/; revision=10728
Fabian Groffen [Thu, 19 Jun 2008 19:28:30 +0000 (19:28 -0000)]
IndexError: tuple index out of range
I got confused with on-disk format, and the array that is used here.
svn path=/main/branches/prefix/; revision=10727
Fabian Groffen [Wed, 18 Jun 2008 15:41:54 +0000 (15:41 -0000)]
Merged from trunk 10709:10715
| 10710 | Use optparse instead of getopt. |
| zmedico | |
| 10711 | Add a help string for --debug. |
| zmedico | |
| 10712 | Bug #225285 - Add a --skip-manifest option that disables all |
| zmedico | interaction with the manifest. |
| 10713 | Bug #225285 - Add support for persistent options stored in |
| zmedico | the EBUILD_DEFAULT_OPTS environment variable (similar to |
| | {EMERGE,QUICKPKG}_DEFAULT_OPTS). |
| 10714 | Add an exemption for x-modular in the "inherit.autotools" |
| zmedico | check. Thanks to remi` for reporting. |
| 10715 | As suggested by remi`, make the 'inherit.autotools' check |
| zmedico | only ebuilds that inherit the autotools eclass directly |
| | (rather than indirectly through an eclass such as apache-2 |
| | or x-modular). |
svn path=/main/branches/prefix/; revision=10716
Fabian Groffen [Tue, 17 Jun 2008 21:12:50 +0000 (21:12 -0000)]
it must be too late or something
svn path=/main/branches/prefix/; revision=10708
Fabian Groffen [Tue, 17 Jun 2008 21:10:31 +0000 (21:10 -0000)]
import before using it...
svn path=/main/branches/prefix/; revision=10707
Fabian Groffen [Tue, 17 Jun 2008 20:47:47 +0000 (20:47 -0000)]
I suck at syntax
svn path=/main/branches/prefix/; revision=10706
Fabian Groffen [Tue, 17 Jun 2008 20:20:19 +0000 (20:20 -0000)]
Merged from trunk 10703:10704
| 10704 | More eblank. |
| zmedico | |
svn path=/main/branches/prefix/; revision=10705
Fabian Groffen [Tue, 17 Jun 2008 19:51:14 +0000 (19:51 -0000)]
Merged from trunk 10697:10698
| 10698 | Remove eblank docs. |
| zmedico | |
svn path=/main/branches/prefix/; revision=10700
Fabian Groffen [Tue, 17 Jun 2008 19:48:36 +0000 (19:48 -0000)]
'port' isMasterLink to LinkageMapMachO, further sync differences, be more careful with os.path.realpath
svn path=/main/branches/prefix/; revision=10699
Fabian Groffen [Tue, 17 Jun 2008 18:49:17 +0000 (18:49 -0000)]
Merged from trunk 10692:10696
| 10693 | Do not preserve the master link of a library to avoid |
| genone | packages being linked against preserved libs on rebuilds |
| 10694 | Remove eblank nonsense |
| genone | |
| 10695 | Remove eblank nonsense |
| genone | |
| 10696 | remove stray line |
| genone | |
svn path=/main/branches/prefix/; revision=10697
Fabian Groffen [Tue, 17 Jun 2008 16:48:53 +0000 (16:48 -0000)]
Merged from trunk 10654:10690
| 10656 | Fix config._accept_chost_re so it's only an instance |
| zmedico | variable. |
| 10658 | Add some write access checks in post_merge() in order to |
| zmedico | avoid triggering permission related exceptions. |
| 10659 | Make some post_merge() things conditional on the vdb lock |
| zmedico | being held (mtimedb commit and info dirs processing). |
| 10660 | Bug #223417 - Due to 1 second mtime granularity in < |
| zmedico | python-1.5, mtime checks are not always sufficient to |
| | invalidate vardbapi caches. Therefore, the caches need to be |
| | actively invalidated when packages are added and removed. |
| 10661 | Re-enable vardbapi.cpv_all() cache now that bug #223417 is |
| zmedico | solved. |
| 10669 | Tweak the config._accept_chost() regex. |
| zmedico | |
| 10671 | Document the new ACCEPT_CHOSTS variable. |
| zmedico | |
| 10673 | Fix typo. |
| zmedico | |
| 10675 | Add support for an new "eblank" elog function that shows a |
| zmedico | blank line. Consecutive eblank calls are all collapsed into |
| | a single blank line. Thanks to Joe Peterson <lavajoe@g.o> |
| | for this patch. |
| 10677 | * Rename NEUTRAL color to BLANK for eblank. * Document the |
| zmedico | new BLANK code in color.map.5. * Implement python version of |
| | eblank for mod_echo. |
| 10679 | Fix BLANK order and color. |
| zmedico | |
| 10681 | Add "blank" to the default PORTAGE_ELOG_CLASSES setting. |
| zmedico | |
| 10683 | Add a "Interaction with previous installed version" section |
| zmedico | to document the upgrade/downgrade phase execution order |
| | change from bug #226505. |
| 10685 | Add note about bug #226505. |
| zmedico | |
| 10687 | * Document eblank and eqawarn in the ebuild.5 man page. * |
| zmedico | Create "Ebuild Helper Functions" section docbook format, |
| | including all the functions documented in the ebuild.5 man |
| | page. |
| 10690 | fix typo |
| genone | |
svn path=/main/branches/prefix/; revision=10692
Fabian Groffen [Tue, 17 Jun 2008 16:43:29 +0000 (16:43 -0000)]
Merged from trunk 10625:10654
| 10626 | Fix missing initialization. |
| zmedico | |
| 10628 | Fix typo. |
| zmedico | |
| 10631 | Fix typo. |
| zmedico | |
| 10633 | Add some sanity checks and error tolerance in the owners |
| zmedico | cache. |
| 10636 | Bug #225285 - Allow digestcheck() to succeed when the |
| zmedico | Manifest is empty and strict mode is disabled. |
| 10638 | Use isinstance() instead of handling TypeError. |
| zmedico | |
| 10640 | Add another sanity check in the owners cache. |
| zmedico | |
| 10642 | Use spawn() instead of system(). |
| zmedico | |
| 10644 | Bug #225767 - Suppress warnings for installed packages |
| zmedico | masked by keywords if there is an equivalent ebuild in the |
| | portage tree (same cpv) with visible keywords. |
| 10645 | Handle InvalidDependString. |
| zmedico | |
| 10646 | Fix indent. |
| zmedico | |
| 10648 | Handle InvalidDependString in _package_cache.__setitem__(). |
| zmedico | |
| 10651 | Pass missing "installed" parameter into Package constructor. |
| zmedico | |
| 10652 | Add two new build log qa checks, suggested by Diego |
| zmedico | Pettenò: * Detect automake "maintainer mode". See |
| | http://www.gentoo.org/proj/en/qa/autofailure.xml for more |
| | information. * Detect "Unrecognized options" messages from |
| | configure scripts. |
| 10653 | Fix the 'inherit.autotools' check to account for |
| zmedico | apache-2_src_unpack() calling eautoreconf. |
| 10654 | Add support for and ACCEPT_CHOSTS variable that controls |
| zmedico | masking behavior for binary packages wrt CHOST. The variable |
| | is a space separated list of chosts. It support regular |
| | expressions, so if the actual chost contains any special |
| | characters then the user must escape them when setting |
| | ACCEPT_CHOSTS. |
svn path=/main/branches/prefix/; revision=10691
Fabian Groffen [Mon, 9 Jun 2008 20:06:30 +0000 (20:06 -0000)]
we're not yet using it, but keep Mach-O comment up-to-date
svn path=/main/branches/prefix/; revision=10625
Fabian Groffen [Mon, 9 Jun 2008 20:03:53 +0000 (20:03 -0000)]
store rootgid in portage.const_autotool.py, and use it instead of hardcoded 0
svn path=/main/branches/prefix/; revision=10624
Fabian Groffen [Mon, 9 Jun 2008 19:54:28 +0000 (19:54 -0000)]
Merged from trunk 10606:10612
| 10607 | make sure that scanelf is called with the right paths, and |
| genone | properly register all preserved objects to fix bug #223591 |
| 10608 | When inside fakeroot, directories with portage's gid appear |
| zmedico | to have root's gid. Therefore, use root's gid instead of |
| | portage's gid to avoid spurrious permissions adjustments |
| | when inside fakeroot. |
| 10609 | Add CONTENTS indexing support for optimization of owner |
| zmedico | lookups. The vardbapi cache maintains a hash table (inside |
| | vdb_metadata.pickle) that serves to index package contents |
| | by mapping the basename of file to a list of possible |
| | packages that own it. This is used to optimize owner lookups |
| | by narrowing the search down to a smaller number of |
| | packages. It increases the size of vdb_metadata.pickle by |
| | approximately 30% and it's used in the following cases: * |
| | When an unexpected file collision occurs (whether or not |
| | collision-protect is enabled) * `emerge ` * `portageq |
| | owners` The |
| 10612 | Remove unused PackageVirtualDbapi.__getitem__() method. |
| zmedico | |
svn path=/main/branches/prefix/; revision=10623
Fabian Groffen [Mon, 9 Jun 2008 15:17:42 +0000 (15:17 -0000)]
do NOT refer to /usr/bin/python, use python from path instead, bug #225591 by Stuart Shelton
svn path=/main/branches/prefix/; revision=10621
Fabian Groffen [Sun, 8 Jun 2008 11:27:54 +0000 (11:27 -0000)]
Merged from trunk 10585:10604
| 10586 | Add vardbapi.aux_get() support for an "_mtime_" value which |
| zmedico | corresponds to the installed package directory's mtime |
| | (numeric value from stat result). This value can be used to |
| | validate indexes or caches used in the optimization of vdb |
| | query operations for various types of package metadata such |
| | as dependencies and file contents. |
| 10587 | Add Package.counter and mtime attributes. |
| zmedico | |
| 10588 | Add a PackageVirtualDbapi.__getitem__() method. |
| zmedico | |
| 10589 | Bug #224271 - Add a 'IUSE is not defined' ebuild.minorsyn |
| zmedico | warning. |
| 10591 | remove old/unused gen_wrapper function |
| SpankMan | |
| 10592 | As suggested by Flameeyes, add a new 'inherit.autotools' |
| zmedico | check which warns when autotools has been inherited but |
| | none of the eautomake, eautoconf or eautoreconf functions |
| | are called like they are supposed to be. |
| 10593 | Bug #224271 - New check 'IUSE.undefined', renamed from |
| zmedico | generic 'ebuild.minorsyn'. |
| 10594 | Make load_emerge_config() filter out empty |
| zmedico | PORTAGE_CONFIGROOT and ROOT values, and those containing |
| | only whitespace. |
| 10596 | Validate ROOT from make.conf. |
| zmedico | |
| 10598 | Inside, create_trees(), pass target_root="/" into the |
| zmedico | config constructor when necessary to override the setting |
| | in make.conf. |
| 10600 | Make repoman pass Package instances into run_checks(), so |
| zmedico | that the checks can use the Package.mtime and inherited |
| | attributes. |
| 10601 | Fix typo. |
| zmedico | |
| 10602 | Add additional functions such as eaclocal and eautoheader |
| zmedico | to the inherit.autotools regex. Thanks to Arfrever. |
| 10603 | Make portdbapi.aux_get() return float type for _mtime_. |
| zmedico | |
| 10604 | Bug #225285 - Allow digestcheck() to succeed when the |
| zmedico | Manifest is missing and strict mode is disabled. |
svn path=/main/branches/prefix/; revision=10605
Fabian Groffen [Thu, 5 Jun 2008 17:17:49 +0000 (17:17 -0000)]
Merged from trunk 10577:10582
| 10578 | Use sets for more accurate cache modification counts |
| zmedico | BlockerCache and vardbapi. |
| 10580 | Mention PORTAGE_RO_DISTDIRS in the DISTDIR docs. |
| zmedico | |
| 10582 | Bug #224713 - Avoid TypeError when make.conf is missing: |
| zmedico | TypeError: argument of type 'NoneType' is not iterable |
svn path=/main/branches/prefix/; revision=10585
Fabian Groffen [Wed, 4 Jun 2008 20:05:47 +0000 (20:05 -0000)]
fix syntax error
svn path=/main/branches/prefix/; revision=10577