summaryrefslogtreecommitdiff
path: root/src/upgrade.c
AgeCommit message (Collapse)AuthorFilesLines
2013-06-13solver: rewrite as deductive solver -- core featuresTimo Teräs1-5/+3
Implementing basic dependency handling, install_if and awareness of pinning.
2013-04-29upgrade: handle solver failure gracefullyTimo Teräs1-1/+1
It is internal bug, but don't segfault on it. Fixes #1576.
2012-02-29solver, test: make conflicts unconditionalTimo Teräs1-1/+1
Solver will now never report partial solution where a conflict constraint is not satisfied. The is because with --force we might install the partial solution; and if conflicted packages were to be installed we might have extra trouble.
2012-02-16solver: record repository tag, and flags in solutionTimo Teräs1-2/+2
name state could get overwritten later, so we can't use that when generating the changeset.
2012-01-17solver, upgrade: properly detect missing repository tagsTimo Teräs1-0/+5
* upgrade needs explicit check so we don't try self-upgrade (which would print additional messages on screen) * add can fix problems, so check against the new world * merge the code in few places
2012-01-17upgrade: make -a reset versioned dependencies like it used toTimo Teräs1-2/+21
regression from upgrade to the new solver system.
2011-09-16solver: inheritable solver flagsTimo Teräs1-1/+1
allow per-name solver flags to be inheritable, and use them in self-upgrade, add -u and the fix applet. this gives more familiar behaviour for the upgrades.
2011-09-14solver: make state pointers completely internalTimo Teräs1-4/+1
the only bit of information needed in solver commit is the "hard" topology sorting information for trigger ordering. fixes a bug in "apk del" which uses the state pointers to do intermediate calculations between solution solving and commit.
2011-09-14solver, db: run triggers in dependency orderTimo Teräs1-1/+4
fixes #738
2011-09-14upgrade: --no-self-upgrade optionTimo Teräs1-5/+16
Use it to avoid self-upgrade loops in case something fails during the initial upgrade attempt.
2011-09-14upgrade: reimplement self-upgrade (after solver merge)Timo Teräs1-16/+28
2011-09-13all: update copyright year statementTimo Teräs1-1/+1
2011-09-09upgrade: fix context allocationTimo Teräs1-0/+1
2011-09-09applets: start using solver codeTimo Teräs1-48/+22
still todo: - 'fix' is missing - 'del -R' does not work - 'upgrade' does not do self-upgrade first ... and a lot of testing.
2011-04-09upgrade: Improve english messages on apk-tools/baselibs upgrade transaction.William Pitcock1-2/+2
2011-03-30state: use db in own struc when committingNatanael Copa1-2/+2
The db parameter to apk_state_commit is not needed so we remove it.
2011-03-19upgrade: reset world dependencies during traversalTimo Teräs1-18/+2
This allows us to get apk-tools dependencies get reset at proper time in world. As a bonus, it reduces code amount.
2011-01-01various: use APK_DEPMASK_REQUIRE where applicableTimo Teräs1-2/+2
.. instead of the longer flag combo.
2011-01-01upgrade: perform upgrade of apk-tools first if availableTimo Teräs1-1/+47
Also re-exec's apk-tools to perform rest of the upgrade using the new apk-tools. This allows handling of new apk-tools features properly. Fixes #140.
2011-01-01various: fix breakage from converting dependency versions to atomsTimo Teräs1-2/+4
The version now needs to be initialized atom always, since it's dereferenced in various places.
2010-06-15upgrade: warn (do not fail) on missing top-level package namesTimo Teräs1-3/+23
We we can upgrade rest of system just fine then.
2010-06-11First steps for libapkNatanael Copa1-0/+1
2010-06-01state: improve error messages from dependency failuresTimo Teräs1-7/+5
Print more information why installation changeset calculation failed. Fixes #187.
2010-05-12upgrade: reset versioned deps in world when doing upgrade -aNatanael Copa1-2/+7
Doing "apk add file.apk" adds a versioned dependency to allow downgrading, and sticky version. Most often this is to install single packages from newer repository. So it would make sense to reset them to non-versioned if doing: apk upgrade -a fixes #346
2009-08-06all: implement database open optionsTimo Teras1-14/+10
so user can override trusted keys directory and repositories file.
2009-08-04state: fix world dependencies to be honored alwaysTimo Teras1-0/+3
previously they might have been skipped on certain situations. this also fixes some other reverse dependency enforcements and implements new "pending" state for locked name.
2009-06-25help: auto construct helpTimo Teras1-3/+6
And add some more verbosity to the help message.
2009-06-25upgrade: add --available optionTimo Teras1-1/+20
That will make the upgrade prefer packages available in repositories. This is good if one want's to downgrade packages by removing an experimental repository. Or to force re-install of locally built vs. repository version when the package version are same, but checksum is different. Fixes #51.
2009-06-25upgrade: new appletTimo Teras1-0/+55
Currently just goes through all world dependencies and updates them where possible (ref #51).