summaryrefslogtreecommitdiff
path: root/usr.sbin/pkg_add/OpenBSD/Replace.pm
AgeCommit message (Collapse)Author
2009-12-27don't ask/report the same exec issue twiceMarc Espie
2009-12-26Better, more global way of dealing with forward dependencies, and toMarc Espie
ask just once per-set for exec/unexec. Todo: forward-deps could be merged, but this might lead to dependency loops, we have to detect them and act first Todo: rewrite the other part of forward dependency handling (dep adjustment)
2009-12-20change verbosity handling: be silent by default, turn on the first level if -v.Marc Espie
Add more levels, specifically, lots of info regarding individual files only visible if -vvvvv. Make -n display the same stuff as normal (need -n -v to display more stuff). Introduce -s, "size-only", turns on -n and does skip any extraction. Sprinkle handlers for SIG_INFO, not really nice yet. Note that -n is non functional for complex updates, because of caching issues I have to fix.
2009-12-17display progressmeter at 0% at start of install/deinstall.Marc Espie
(better synch for packages that start with a huge binary)
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-14temporary fix for kept packages until we move them awayMarc Espie
2009-12-13clean up code, no functional changeMarc Espie
2009-11-29clean up conflict handling and dependency adjustement: build listMarc Espie
of conflict globally, add it as old handles, and then use it everywhere.
2009-11-29handle more general conflicts:Marc Espie
- match old spec against any of the new packages in the set. - manage conflicts globally if several newer packages are there. - remove the limit of 5 conflicting packages, it's no longer really relevant.
2009-11-17revamp interactive stuff: simplify (just one always for everything, perMarc Espie
theo suggestion. Also go through the "state" object which simplifies code a great deal)
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-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-10bad espie: use strict/warnings consistently, and fix two nits and twoMarc Espie
actual errors !
2009-10-15let handle compute pkgnames correctly, simplifies code a bitMarc Espie
2009-10-11don't copy digital sig over when it makes no sense...Marc 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.
2009-03-05call may_check_digest after extractionMarc Espie
2008-10-24tweak compute_digest so that it `defaults' if invoked without a 2nd argument.Marc Espie
switch the default digest to sha256. It's been there for a few weeks, all package tools cope with both formats, now is the time for the switch.
2008-10-07oops, missed one compute_md5Marc Espie
noticed by djm@
2008-06-11defer to the packing element for computing md5Marc Espie
2008-03-08rename forced to definesMarc Espie
2008-03-02fix pkg_add -r -BMarc Espie
problem noticed by winiger@
2007-06-18add tag no shadow, to allow us to specify that we do NOT want tempfilesMarc Espie
into some directories. a few minor style tweaks, such as using a nice join(map()) to build some strings.
2007-06-16Add variation on exec/unexec:Marc Espie
@exec-always @unexec-always @exec-add @unexec-delete @exec-update @unexec-update with the obvious semantics that *update are only run during updates, and *add/delete are only run during `pure' additions/removals. This should solve the problem of those packages that `lose' manual configuration when you update them (e.g., all the mod_xxx apache stuff and postfix). caveat: you will need to go through one finaly broken update before the new stuff kicks in.
2007-06-10make the replacement check methods slightly clearer, avoid doing twoMarc Espie
things at once, mostly.
2007-06-09rework `special' package names a bit.Marc Espie
- do a test to create partial-foo-1.0.1 instead of partial-partial-foo-1.0 when removing partial-foo fails. - have .libs name generation, e.g., .libs-foo, then .libs1-foo, then .libs2-foo instead of .libs-.libs-foo.... extend the pkgspec pattern slightly, so that all these are more or less equivalent for dependencies and conflicts. With this, we can do practically any scenario of shared libs updates and downgrades.
2007-06-09new code is much sturdier with respect to old libraries, we do not haveMarc Espie
to consider .libs-* as `special case', saving old libraries should do the right thing in all cases, more or less...
2007-06-07show messages about keeping libraries more often, starting on verbose.Marc Espie
2007-06-07make compute_size explicit. That way, we can do it once, at the rightMarc Espie
moment.
2007-06-06separate the size computation from other operations in `prepare_for_addition'Marc Espie
`prepare_for_deletion' -> move that to Vstat, as it is common code. Do the splitting of libraries through a deep copy and shallow copy, so that we keep any State information related to libraries (like special group/owners).
2007-06-06tweak split_libs slightly for further changes: make it return the oldMarc Espie
packing-list, and the new, instead of doing `in-place' edition of the plist contents.
2007-06-05reuse the compute_closure code.Marc Espie
2007-06-04avoid parsing libraries by hand.Marc Espie
Store shared libraries in a `better' format, which will also us to report issues more nicely.
2007-06-04some minor systematic changes.Marc Espie
- mark all regexps I can with /o if they can be compiled once. - turn $o->method() into $o->method - remove unneeded prototypes - reduce split /re/ into split "string" where possible.
2007-06-01very small clean-up of dependencies list handling.Marc Espie
2007-06-01apply the same checks on extraction that are done during pkg_createMarc Espie
(modes and owners without annotation WILL be refused). Somewhat pedantic: skip archive entry during extraction of links/symlinks. Doesn't change a thing, except in the very rare case where a package would end with a link in the packing-list. Now we're able to detect a premature end of the tarball. (okay, it's an obscure bug, I haven't even met it for real. So what ?)
2007-06-01don't store stuff in the plist, use the handle which is there for that.Marc Espie
so loop directly over $set->older for replacements.
2007-06-01refactor ProgressMeter code to create objects, put these into state.Marc Espie
Create a common state class for delete and add, put the progressmeter creation in there. neat effect: we don't have a progressmeter, we use a stub class instead and *never* pull the code in at all.
2007-06-01no need to require ProgressMeter twice.Marc Espie
2007-05-30simplify really_add to use real visitors for extraction and installation.Marc Espie
Just do one single try {} catchall {} per-method, as this is enough. New methods: extract_and_progress, install_and_progress, that catch interrupts (die) deal with fake, and handle the progress meter. One single method: mark_progress, can be used for extraction, installation and deletion.
2007-05-30avoid setting partial directly when we can, use inheritance instead.Marc Espie
2007-05-30simplify the way partial installations get recorded: store elementsMarc Espie
already installed in a hash, and do a shallow copy of the list when necessary, using make_copy. This removes a lot of action-at-a-distance in packing-list elements.
2007-05-27so save_old_libs becomes the first routine to handle full UpdateSets.Marc Espie
2007-05-27oops, save_old_libs is now set dependent, we no longer store old packagesMarc Espie
in the same location.
2007-05-27comment out some of this code. Currently, we don't know how to recoverMarc Espie
from collision with old libs (and the result from figure_out_old_libs says so), so don't pretend we're doing anything significant with them...
2007-05-27group packing-list validation for replaced packages with added one.Marc Espie
2007-05-26simplify error logic a bit more, always let prepare_to_add return aMarc Espie
handle. Also kill very old @exec tests.
2007-05-22zap references to pkgdep. Packing-Lists no longer even record it, anyways.Marc Espie
2007-05-20compute list of dependencies to adjust just-in-time.Marc Espie
This lets the pkg_add regress pass, finally.
2007-05-20libs_to_check ? actually, never use it...Marc Espie