summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2009-04-14state: rework changeset calculation algorithmTimo Teras13-236/+581
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-14blob: add strspn helpersTimo Teras2-1/+37
2009-04-14info: option '-r' to print "required by" infoTimo Teras1-43/+71
2009-04-14db: track reverse dependenciesTimo Teras2-0/+24
This will be used later by the commit change calculator (for improved changeset calculation, ref #7). Will be also used by "apk info" to show reverse dependencies or "required by" information.
2009-04-14build: use version from git describe if availableTimo Teras1-3/+7
2009-04-13version: avoid end up in endless loop if we compare 2 equal invalid versionsNatanael Copa1-1/+1
fixes issue with apk version -t asdf asdf
2009-04-13version: allow more digits come after letterNatanael Copa1-1/+4
This is so we can handle arpwatch-2.1a15 This makes us not 100% compatible with Gentoo
2009-04-13version: allow token letter after digit_or_zeroNatanael Copa1-1/+2
Otherwise we only allow letters after first digit, i.e 2a, 2b but not 2.2a, 2.2b etc.
2009-04-03version: allow only TOKEN_LETTER after a digitNatanael Copa1-1/+1
2009-04-03ver: added --check/-c option to vaildate given version stringNatanael Copa1-0/+17
2009-04-03ver: test given version strings with -t or --testNatanael Copa1-7/+41
2009-04-03search: use fnmatch so we have support for wildcardsNatanael Copa1-1/+2
2009-03-202.0_pre10apk-tools-2.0_pre10Timo Teras1-1/+1
2009-03-17io: implement write cacheTimo Teras1-4/+35
speeds up writing of package / file database.
2009-03-17pkg: write dependencies directly file instead of bufferTimo Teras3-6/+26
So we don't get artificial limits on the amount of dependencies (fixes #8).
2009-03-07Created search appletCameron Banta3-29/+150
2009-03-06Added -o option to apk info to list repository packagesCameron Banta1-1/+29
2009-03-042.0_pre9apk-tools-2.0_pre9Timo Teras1-1/+1
2009-03-04db: unlink apk-new if it is identical to existing configNatanael Copa1-0/+3
2009-03-04db: apk-new should be created if the existing file is modifiedTimo Teras1-1/+1
2009-03-04db: fix overwrite warningTimo Teras1-2/+1
2009-03-04apk: --force to overwrite filesTimo Teras3-6/+15
2009-03-04apk: --clean-protected optionTimo Teras3-22/+22
So you will not get .apk-new files of the new configuration files.
2009-02-27pkg: show warning if deprecated .INSTALL is present in packageTimo Teras1-1/+14
2009-02-27db: new apk to have separate install scripts for each actionTimo Teras1-2/+6
2009-02-17db: allow more than one --repository argNatanael Copa3-6/+29
2009-02-12release 2.0_pre8apk-tools-2.0_pre8Natanael Copa1-1/+1
2009-02-08db: do not allow overwrite busybox linksNatanael Copa1-2/+1
we let bb use /bin and /sbin, all packages overriding busybox must install the bins in /usr/bin and /usr/sbin
2009-02-08info: list contents follw same style as list dependsNatanael Copa1-6/+7
- empty lines comes after not before - separate pkgname with : when using -v option
2009-02-08info: implement -R/--depends to show dependenciesNatanael Copa1-1/+42
2009-01-23release 2.0_pre7apk-tools-2.0_pre7Natanael Copa1-1/+1
2009-01-22db: fix purging of packages from databaseTimo Teras1-4/+3
apk_hash_delete() actually deletes the file entry, so unlinking from other lists need to happen before that. Also free the diri instead of leaking it.
2009-01-22db: print files when (un)installing if --verboseNatanael Copa1-0/+8
2009-01-22db: always create directories during installNatanael Copa1-3/+1
We dont care if a directory have references or not, we care if directory is relly there. Only the creator of the direcotry will set the permissions. This fixes the situation where you install a package owning a dir then you remove this dir manually and try install a second package also owning the dir. For example: apk add e2fsprogs-dev rm -rf /usr/lib/pkgconfig apk add zlib-dev
2009-01-21Revert "Revert "pkg: use absolute filenames for packages""Natanael Copa1-2/+7
This reverts commit 600f9e7e031c9e7244e078f35ec6c8dce1011149. My bad. This was correct.
2009-01-21Revert "pkg: use absolute filenames for packages"Natanael Copa1-7/+2
This reverts commit 46430ceb5607ac9e395432648c6a8c1a7cbceaf1. The problem this was suppoed to fix was fixed by letting apk_db_open() return with same working dir.
2009-01-21db: let apk_db_open() leave working dir as it wasNatanael Copa1-0/+2
2009-01-20release 2.0_pre6apk-tools-2.0_pre6Natanael Copa1-1/+1
2009-01-20info: don't print package name unless its installedNatanael Copa1-1/+2
2009-01-20info: list contents with -LNatanael Copa1-0/+43
2009-01-20pkg: use absolute filenames for packagesTimo Teras1-2/+7
2009-01-19db: try creating db if locking failsTimo Teras1-0/+10
Otherwise creating rootfs from scratch with --initdb cannot be locked due to the lock file path missing.
2009-01-18release 2.0_pre5apk-tools-2.0_pre5Natanael Copa1-1/+1
2009-01-18db: create .apk-new even if file not in dbNatanael Copa1-5/+8
Protect files in protected dirs even if the file is not previously registered in the database. We do so by always extracting to a .apk-new file name, compare the checksums afterwards and rename if file was identical.
2009-01-17archive: utimes modifies file, not link so don't use it for symlinksTimo Teras1-7/+9
2009-01-17archive: preserve mtime on extractionapk-tools-2.0_pre4Timo Teras1-8/+27
2009-01-17db: database locking and creation to part of opening itTimo Teras8-79/+111
Add flags field to db open call. Also make error reporting quite a bit more detailed.
2009-01-17apk: added option --version/-VNatanael Copa1-14/+25
Both variants should work: apk --version apk <applet> --version
2009-01-17archive: set suid bit after chown if neededNatanael Copa1-0/+6
chown will reset the suid bit so we need to set it again.
2009-01-17del: proper ordering of file db entry deletionTimo Teras2-6/+3