summaryrefslogtreecommitdiff
path: root/src/commit.c
AgeCommit message (Collapse)AuthorFilesLines
2013-06-19print: move progress bar update logic to apk_print_progressNatanael Copa1-14/+5
- let the apk_print functions deal with the forced print itself. We avoid that the callbacks need to deal with the force flag. We can also get rid of the APK_PRINT_PROGRESS_* defines. - let the reader of --progress-fd decide how often things are updated rather than having a fixed granularity off 1/100 (percent) - avoid detect screen size and percent/bar calculations in case the --no-progress was given - track satistics for both the ascii bar and percent info and update bar only if either percent or bar changes. This makes the bar go smoother when width is wider than 100 chars and it makes the percent counter go smooth when screen width is less thann 100 chars. It also simplifies the callbacks as they no longer need to deal with update granularity.
2013-06-19upgrade: new option: --latest (-l)Timo Teräs1-6/+11
Select latest version of package (if it is not pinned), and print error if it cannot be installed due to other dependencies. Together with --available, it selects the latest package which is present at least in some repository. This also fixes few solver issues with ordering of package selection that got quite apparent with this flag. Namely, we cannot "lock" a package until it's reverse dependencies are locked or not all of the solver flags are propagated properly.
2013-06-18errors: fix a test case, and misanalysis of certain namesTimo Teräs1-0/+2
the pinning11 changed when @repo got the leading @ on error messages. analyze_dep() now properly ignores conflict dependencies, as those names are usually intentionally left unassigned.
2013-06-18db: store repository tag names including leading @Timo Teräs1-17/+10
2013-06-18errors: improve analysis for virtual packagesTimo Teräs1-11/+24
if all packages named N provide the virtual package, list only the name N instead of all packages providing it.
2013-06-18all: various conversions to foreach_array_item, and simplifications of codeTimo Teräs1-15/+9
2013-06-17io: get rid of APK_PROGRESS_SCALETimo Teräs1-5/+3
no need to muldiv all the time, just pass the current amount of bytes done, and let callbacks use that directly.
2013-06-17cache: implement progress bar (ref #1170)Timo Teräs1-3/+4
2013-06-17print: move progress printing to common functionsTimo Teräs1-34/+4
2013-06-14errors: detect self-conflicts properlyTimo Teräs1-4/+6
and add the provided version information to the conflicts. fixes the final test case that was broken. hooray.
2013-06-13solver, errors: fix few additional test cases and clean upsTimo Teräs1-2/+2
2013-06-13pkg: add global reverse dependency iterator helpers and use themTimo Teräs1-58/+10
... in the error printing and the package deletion.
2013-06-13errors: rewrite the logic how errors are reportedTimo Teräs1-102/+255
Instead of the dependency oriented logic, switch to print them for each package or name needed. Might give a bit more readable errors now. There's still few corner cases that proper error is not output, which are cought by the test cases.
2013-06-13solver: prune broken world dependencies with --forceTimo Teräs1-9/+3
mostly useful for reboot, when all packages are not available.
2013-06-13solver: rewrite as deductive solver -- pinning supportTimo Teräs1-1/+1
Fix also pinning test cases to be more sane.
2013-06-13solver: rewrite as deductive solver -- per name flagsTimo Teräs1-7/+12
Handle properly per-name preference flags, and add test cases for testing those via fix applet.
2013-06-13solver: rewrite as deductive solver -- core featuresTimo Teräs1-0/+547
Implementing basic dependency handling, install_if and awareness of pinning.