summaryrefslogtreecommitdiff
path: root/src/info.c
AgeCommit message (Collapse)AuthorFilesLines
2014-03-07info: fix printing of 'replaces' fieldTimo Teräs1-1/+1
2013-06-28various: applet help text and comment fixesDubiousjim1-2/+2
Acked-by: Natanael Copa <ncopa@alpinelinux.org>
2013-06-19all: few behavioural regression fixesTimo Teräs1-1/+3
Wildcard matching with no names should match all packages only for info and search applet. "apk del" would otherwise try to delete everything, etc. Fix also interactive mode to ask questions only if we are actually changing something.
2013-06-19applets: unify help message by removing final dotsTimo Teräs1-1/+1
2013-06-18fix, info, ver: perform wildcard matchingTimo Teräs1-33/+24
ref #511
2013-06-18apk: use string array in applet mains, separate apk_name_foreach_matchingTimo Teräs1-47/+37
2013-06-18all: various conversions to foreach_array_item, and simplifications of codeTimo Teräs1-93/+37
2013-06-17db: refactor repository file constructionTimo Teräs1-1/+1
Fixes also 'fetch' applet to prefer copying/linking to files from cache if possible.
2013-05-29db, info: allow packages to install files/symlinks to rootTimo Teräs1-1/+1
fixes #1578
2012-09-28info: --provides alias -p is reserved for --root, use -PNatanael Copa1-2/+2
fixes #1396
2012-03-30info: fix exit code for -eTimo Teräs1-3/+6
fixes #1069
2012-02-29info: support displaying providesTimo Teräs1-6/+32
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-24all: introduce apk_provides and use it in apk_nameTimo Teräs1-41/+36
in preparation for provides support. implements also some dependency satisfaction helper routines. ref #574.
2012-01-12db: support line feed as 'world' dependency separatorTimo Teräs1-1/+5
* default writing the world with spaces if a space is found (for backwards compatibility) for now
2012-01-06info: display short info if packages are givenNatanael Copa1-0/+10
instead of just list all installed package
2011-12-24info: -e and -W operate on database only (repos not needed)Timo Teräs1-0/+2
.. so do not load them.
2011-10-29solver, db: implement repository pinningTimo Teräs1-16/+18
Improves /etc/apk/repositories format so you can say: http://nl.alpinelinux.org/alpine/v2.3/main @edge http://nl.alpinelinux.org/alpine/edge/main @testing http://nl.alpinelinux.org/alpine/edge/testing After which you can pin dependencies to these tags using: apk add stableapp newapp@edge bleedingapp@testing Apk will now by default only use the untagged repositories, but adding a tag to specific dependency: 1. will prefer that tag for the name 2. allowing pulling in dependencies from that tag (though, it prefers untagged packages to satisfy deps if possible) fixes #575
2011-10-18pkg, info: remember installed packages "replaces"Timo Teräs1-5/+32
"replaces" is now turned to a full dependency type list, so you can make package overwrite files only certain versions of the package (though, we should probably take this into account already at solution calculation phase). Also make 'info --replaces' print the "replaces" of the package. This is in preparation for the policy package support, which still requires "replacement priority" field to decide which packages' files get the preference.
2011-09-13all: update copyright year statementTimo Teräs1-1/+1
2011-09-09applets: start using solver codeTimo Teräs1-1/+0
still todo: - 'fix' is missing - 'del -R' does not work - 'upgrade' does not do self-upgrade first ... and a lot of testing.
2011-03-29state, info: implement install_if (fixes #443)Timo Teräs1-4/+76
Implement the logic for install_if lines. Update info applet to also display the install_if related fields.
2011-01-01pkg: dependencies to specific package checksumTimo Teräs1-2/+1
When package is installed from commandline, we should always install that specific instance of package (never favor repository version if it has difference identity). Otherwise we might not always end-up installing the .apk given on command line. The dependency is now against specific checksum identity (marked with >< dependency comparison). Fixes #492.
2011-01-01various: fix breakage from converting dependency versions to atomsTimo Teräs1-0/+1
The version now needs to be initialized atom always, since it's dereferenced in various places.
2010-12-15info: return error if owning package was not foundNatanael Copa1-3/+6
2010-12-14various: use 'atoms' for certain package field and misc fixesTimo Teräs1-14/+22
- implement a hash table for commonly shared fields such as license, version and architecture - use macroes to print blobs or pkgname-pkgver strings - fix some old cruft
2010-06-11First steps for libapkNatanael Copa1-0/+1
2010-06-08info: fix usage of arraysTimo Teräs1-4/+4
2010-06-05all: rework how arrays workTimo Teräs1-14/+4
Instead of having a null pointer, use a dummy array which just says the array is empty. This helps in multiple places of the code which would otherwise need explicitly need to check first if the array exists. This has been cause of multiple seg.faults in the past as the array check is easily omitted. This also removes (or fixes) all existing checks accordingly.
2010-05-05info: fix querying of removed, but referenced packagesTimo Teras1-1/+1
Check that package name has packages associated with it before dereferencing the pointer. Fixes #345.
2009-09-03index, version: support for repository descriptions (fixes #141)Timo Teras1-1/+1
ability embed description information to repository indexes (e.g. repository name and version) and show it via "apk version -I".
2009-08-13info: clean ups, print triggers (ref #45)Timo Teras1-96/+113
2009-08-12db, pkg: separate structure for fields of installed packagesTimo Teras1-8/+11
this makes the database package entry smaller, and we propbably get more fields to installed_package later too. this cleans up the way scripts are stored and is a preparation for supporting triggers. some parsing for trigger meta-data. ref #45.
2009-08-06all: implement database open optionsTimo Teras1-13/+7
so user can override trusted keys directory and repositories file.
2009-08-05info: fix a --exists to work if the name is non-existantTimo Teras1-0/+3
2009-08-05info: support dependency style tests in package existance checkingTimo Teras1-11/+18
2009-07-14db: speed up fdb creationTimo Teras1-1/+1
avoid recalculating hashes, and store the lengths of names, so we can optimize some operations.
2009-07-07db: open flags revisitedTimo Teras1-1/+1
more fine grained control what to load, and rename some of the flags to be shorter.
2009-06-30info: fix compiler warning on x86_64Natanael Copa1-2/+2
printf %i does not work so well with size_t on 64 bit. Use %zu which seems to be portable enough.
2009-06-25help: auto construct helpTimo Teras1-14/+14
And add some more verbosity to the help message.
2009-06-19info: support for -d, --descriptionNatanael Copa1-5/+20
and re-arrange the order of displayed info
2009-06-19info: allow multiple subactions at the same runNatanael Copa1-18/+45
By using a bitmask we can combine subactions
2009-06-19info: add size and webpage to usageNatanael Copa1-1/+1
2009-06-19info: add -w,--webpage and -s,--size optionsNatanael Copa1-0/+30
2009-06-19improve --help outputNatanael Copa1-1/+2
apk --help will list the generic options only and give a list of commands To get the details for a spefic command, 'apk command --help' should be used.
2009-04-21info: let -e print which packages are installedNatanael Copa1-14/+30
2009-04-21info: do not read the repositories as this tool only query the statedbNatanael Copa1-1/+1
This allows you to query the state db even if you do not have write permissions in cache dir (which is needed if you have remote repositories) This should speed up things and save some memory if you have big and slow remote repositories.
2009-04-16pkg: clean up writing of dependenciesTimo Teras1-3/+8
2009-04-14state: rework changeset calculation algorithmTimo Teras1-3/+4
Calculate changesets directly by stabilizating the package graph instead of recalculating the whole graph and then diffing (similar approach as seen in 'smart' package manager). The algorithm is not complete: defferred search space forking is missing. So you don't always get a solution on complex graphs. Benefits: - usually the search state tree is smaller (less memory used) - speed relational to changeset size, not database size (usually faster) - touch only packages related to users request (can work on partitially broken state; upgrades only necessary packages, fixes #7) Also implemented: - command prompt to confirm operation if packages are deleted or downgraded - requesting deletion of package suggests removal of all packages depending on the package being removed (you'll get list of packages that also get removed if you want package X removed) - option --simulate to see what would have been done (mainly for testing) - an untested implementation of versioned dependencies and conflicts A lot has changed, so expect new bugs too.
2009-04-14info: option '-r' to print "required by" infoTimo Teras1-43/+71