summaryrefslogtreecommitdiff
path: root/usr.sbin/pkg_add/OpenBSD/UpdateSet.pm
AgeCommit message (Collapse)Author
2010-01-04There's no reason for -l to imply -z.Marc Espie
Also, fix a nasty bug: when finding installed packages in a set, don't remove them silently, just tag them to be kept, and let tracker know about it (fixes loop1 regress)
2010-01-02keep going after collisionsMarc Espie
2010-01-01(C) of affected filesMarc Espie
2010-01-01make the merge_paths operations visibleMarc Espie
2010-01-01make updatesets aware of repository pathsMarc Espie
2010-01-01propagate errorinfo thru set->cleanup (finally better messages thanMarc Espie
can't install)
2009-12-29a few more tweaks:Marc Espie
- allow for merged updates if we want them - deplist becomes a hash, maybe useful for big sets - simplify loop checking. We don't actually care whether we find any. - be more aggressive in keeping cached stuff, create solver or conflict_cache if need be.
2009-12-29prepare for smarter sets, with cache infoMarc Espie
2009-12-28nitsMarc Espie
2009-12-27solver is no longer needed at that point, so kill it. this shaves a bit ofMarc Espie
memory.
2009-12-27sortMarc Espie
2009-12-19create a $state->todo method to account for sets to install.Marc Espie
have tracker keep track of sets not done, and ask it directly for how many there's still to do. Provide an offset into next for cases where we know we already did a set but haven't accounted for it yet. -> more accurate number of sets still to do.
2009-12-14since some packages in updatesets don't need updates, be explicit about it.Marc Espie
This is more complex and simpler at the same time...
2009-12-13okay, so old libs are not 'kept', keep track of updates correctly insteadMarc Espie
2009-12-13simplify set printingMarc Espie
2009-12-12fix the fam->libgamin issue. Look for update candidates in self beforeMarc Espie
asking the repository. This solves this kind of conflicts. also, register packages we keep, this makes for simpler scenarios (todo: split updateset into further categories)
2009-12-07don't use $set->print, consistent messages.Marc Espie
2009-12-07simplify tracker a bit now we know what we're doing.Marc Espie
kill code that never got used
2009-12-05make quirks silent. Track # of updates found, instead of newer size, sinceMarc Espie
we may end up updating sets with newer == 0
2009-12-02fix some inter-dependencies case:Marc Espie
- when we merge updatesets, invalidate the solver (there isn't any, usually). - look inside set for check_depends. - do register_dependencies after committing all plists to cache.
2009-11-30better errors: have $set->cleanup mark set as finished.Marc Espie
in case there is an issue, register set as not updateable with tracker.
2009-11-29slightly simpler error handlingMarc Espie
2009-11-28prepare for "better" merge: we can't just wipe the old set, we have to pointMarc Espie
it to the new set, as tracker stuff may still know about it.
2009-11-24sets that were not solved should still display something...Marc Espie
2009-11-24more regular. Note that newer can be a hash as well (why not ?)Marc Espie
2009-11-22change the timing a bit: create a list of updateset first, and processMarc Espie
them later. To do that, normal additions go through hint2, and the findtruelocation code moves to Update.pm This will allow for more systematic handling of all names (including solving more stuff on the fly, instead of upfront).
2009-11-16create a pseudo vstat object inside state, so that we can modify VstatMarc Espie
interface very locally... model hints objects like Locations, to uniformize further treatment.
2009-11-16start pulling all the code that's the same between pkg_add and pkg_deleteMarc Espie
into a common AddDelete package... lots of identical options and handling, actually...
2009-11-11vsystem, system, unlink can mostly go through state, and do the ->clear partMarc Espie
as well.
2009-11-11remove redirector: if we want to run system AND log, just say soMarc Espie
2009-11-11don't use Warn if we've got a $state, get through errprint/errsay.Marc Espie
Also: reset lastdisplay on clear, and don't clear twice.
2009-11-11also get most STDERR messages through the same wayMarc Espie
2009-11-11progressmeter puts STDOUT in autoflush if -t, so that it can display to it ↵Marc Espie
instead of piping a lot of stuff to STDERR. Go through state->print for most messages, so they will NOT do weird things with the progressmeter. Use a ->say shortcut which does the same thing that perl 5.10 say does...
2009-11-11make things so that $state->print always work, with or without progressmeter,Marc Espie
even before we set it up.
2009-11-11remove forwarders, and provide a sensible API that says what's going onMarc Espie
(e.g., we're logging information for later).
2009-11-11bad idea to inherit from Error, compose object insteadMarc Espie
2009-11-10bad espie: use strict/warnings consistently, and fix two nits and twoMarc Espie
actual errors !
2009-11-10zap handle method, we finally no longer use it.Marc Espie
2009-11-10document what's going on...Marc Espie
2009-11-08add the notion of "hints" to UpdateSet, in order to unify -z/-l handling:Marc Espie
create updatesets with nothing but a hint of what to install. Have Update.pm do the dirty work. More importantly, make Tracker aware of what's going on.
2009-11-04cleanup a bit printoutsMarc Espie
2009-10-19basic routines to handle the merging of updatesets: mark updatesets asMarc Espie
already done, separate remove/mark_installed in tracker, create a merge method that allows the merging of updatesets.
2009-10-15let handle compute pkgnames correctly, simplifies code a bitMarc Espie
2009-10-14move OpenBSD::Handle into its own file. I guess I need to disentangle thisMarc Espie
code before I go further....
2009-10-14add a "print" method to ProgressMeter and StubProgress to allow me to cleanMarc Espie
up the current mess (e.g., print things out to stderr without needing to explicitly clear the current line if needed). create a choose_location method directly in state, that will replace all instances of looking for a package eventually (hopefully).
2009-10-11store installed packages in a hash, since we have simple keys for that.Marc Espie
provide newer_names/older_names methods, and a shorter print version of an updateset (to display during update since it's no longer quite pkg_add -r)
2009-10-10have modifiers return self so we can chain themMarc Espie
2009-04-19synch with my new style search/location changesMarc Espie
It's likely there will be some fallout, but it's getting a bit too large to keep around. This does kill a few very old oddities as well.
2008-03-08rename forced to definesMarc Espie
2007-06-30move the UpdateSet stuff into its separate file, leaving Vstat much cleaner.Marc Espie