summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2018-05-08url: return relevant error value from apk_istream_fetchEdan Bedrik1-3/+10
2018-04-05db: fix refreshing index if time is zeroTimo Teräs1-3/+5
During netboot on systems without RTC, time() will be near zero, and the index fill not exist. Thus the plain test of st.st_mtime against system time failed. Verify that fstatat() succeeds.
2018-02-21solver: allow names with only one provider to be autoselected regardless of ↵William Pitcock2-3/+11
priority
2018-02-20tests: make sure adding a pinning to a child dependency failsWilliam Pitcock1-0/+5
2018-02-20add: child dependencies can never take a pinning, give a useful errorWilliam Pitcock1-3/+4
2018-02-20apk: in test mode, always exit 0 (so the test harness doesn't stop running ↵William Pitcock1-0/+5
tests)
2018-02-09travis: update alpine-chroot-install to 0.7.0Jakub Jirutka1-3/+3
2018-01-31libfetch: support OpenSSLA. Wilcox1-1/+1
TLS_client_method is a LibreSSL extension. SSLv23_client_method is generic, and doesn't mean SSL v2/v3 only.
2018-01-29list: use `apk list --providers` to search virtual providers instead of ↵William Pitcock1-6/+8
enabling virtuals by default
2018-01-29search: remove from APK_COMMAND_GROUP_QUERYWilliam Pitcock1-1/+0
list does everything search does and more
2018-01-29list: add option to match against real names only instead of providersWilliam Pitcock1-1/+7
2018-01-29list: add --depends option for searching based on rdependsWilliam Pitcock1-3/+27
2018-01-29list: refactor package dumping vs package filteringWilliam Pitcock1-20/+20
2018-01-29test: fix test6 testcaseWilliam Pitcock1-1/+1
2018-01-28list: new appletWilliam Pitcock2-1/+236
The list applet provides a convenient way of inspecting both the available and installed package databases by listing their contents. In some ways, it is similar to `apk search` but is considered to be a superset of `apk search` functionality. A few `apk list` criterion are not yet ready though, such as `apk list --depends` which searches by runtime dependency (replacing `apk info --rdepends`).
2018-01-09apk: make --help --verbose actually work.William Pitcock1-1/+10
2018-01-09apk: properly error out if an unknown command is requestedWilliam Pitcock1-1/+5
2018-01-09apk: commit options help text: fix typo concerning diskless bootWilliam Pitcock1-1/+1
2018-01-09apk: usage: cleanup help text when no applet is selectedWilliam Pitcock16-13/+52
2018-01-09fix --update-cache help to reflect realityTimo Teräs1-1/+1
Internally the value is in seconds, but on command line it's in minutes.
2018-01-08apk-tools-2.9.1v2.9.1Timo Teräs1-1/+1
2018-01-08auto-update index only when database is opened for writingTimo Teräs2-1/+3
2018-01-04increase libfetch connection pool limits slightlyTimo Teräs1-1/+1
2018-01-04enable automatic update of indexes controlled by --cache-max-ageTimo Teräs9-36/+53
This modifies apk cache for indexes to be automatically refreshed periodically without explicit 'update' or '--update-cache' usage. The default is to do if-modified-since request if the local copy is older than 4 hours. This age can be changed with --cache-max-age. Using --update-cache will change this age to 60 seconds to make sure the cached copy is relatively new. The small age is in order to try to avoid downloading indexes second time when apk-tools is upgraded and apk re-execs after self-upgrade. Accordingly using explicitly 'apk update' will now enforce --force-refresh and request the very latest index by requesting any potential http proxy to do refresh too.
2018-01-03url: add "Cache-Control: no-cache" header with --force-refreshTimo Teräs1-1/+1
fixes #8161
2018-01-03split --force to several --force-[type] optionsTimo Teräs9-24/+60
This unloads --force as several of the things are really not wanted together. E.g. --force-refresh is a lot different from --force-broken-world and doing --force to get the other might introduce unwanted behaviour. --force is still kept for backwards compatibility and it enables most things --force was used for.
2018-01-03libfetch: add option to set "Cache-Control: no-cache"Timo Teräs1-1/+4
ref #8161
2018-01-03add new umbrella flag --initramfs-diskless-bootHenrik Riomar1-0/+6
This flag enables a group of options used during initramfs tmpfs initial install.
2018-01-03add new flag --no-commit-hooksHenrik Riomar3-0/+9
This flag skips running hook scripts This flag *must* be used during initramfs tmpfs initial install. The reason that this new flag is needed is that the hooks will currently always fail as musl and /bin/sh is missing at this stage on diskless.
2018-01-03libfetch: honor https_proxy variable for httpsTimo Teräs1-11/+30
fixes #8160
2018-01-03db: fix triggers to report deleted directoriesTimo Teräs2-16/+20
This change just changes to keep deleted directory items in the hash with ref count zero and modified flag set. Those entries are reused when needed. The side effect is that fire_triggers() will now see those removed direcotries and reports them. Other enumerators of the directories hash are protected to skip removed directories when appropriate.
2018-01-03apk, del: fix few memory leaksTimo Teräs2-1/+5
This fixes couple of valgrind reported leaks - though they are non-important since the leak happens on "exit" only and kernel frees it anyway.
2018-01-02commit: properly analyze packages with provides="$pkgname"Timo Teräs3-1/+17
2018-01-02test: add test to ensure a provider that is already satisfied doesn't get ↵William Pitcock1-0/+7
swapped
2018-01-02test: add testcases to ensure provider collisions generate an errorWilliam Pitcock3-0/+36
2017-12-30apk-tools-2.9.0v2.9.0Timo Teräs1-1/+1
2017-12-15fix typo in MIPS byte-order apk_defines.hNils Andreas Svee1-1/+1
2017-12-12solver: fix potential install_if processing failure, fixes #8237Timo Teräs3-46/+77
In discovery phase, there was logic to not process packages multiple times. However, that logic failed to account the package's depth and install_if state for the name being processed. This caused install_if processing failure in certain topologies of the dependency graph. Adds also a test case that should catch this issue reliably.
2017-12-11add detection of mips archsNils Andreas Svee1-0/+8
2017-11-28fetch: print additional error diagnostics in verbose modeTimo Teräs1-2/+5
2017-11-02solver: prefer highest requirer count above installed statusWilliam Pitcock2-7/+8
This ensures a swap is emitted when replacing a virtual with apk add.
2017-11-02solver: fix dbg_printf() call in select_package()William Pitcock1-2/+2
2017-11-02solver: only select a default if there is at least one provider with a ↵William Pitcock3-1/+31
declared provider_priority
2017-11-02solver: instead of tracking selected packages, score by requirer count for ↵William Pitcock2-7/+13
tiebreaking
2017-11-02solver: implement support for choosing default virtualsWilliam Pitcock9-11/+51
By introducing a new package metadata field, `provider_priority` (index letter `k`), we can specify default packages to satisfy a virtual. If a user wishes to select an alternative provider for the virtual, a changeset swapping the default provider for the selected provider will be generated by the dependency resolver.
2017-10-27apk-tools-2.8.1v2.8.1Timo Teräs1-1/+1
2017-10-27build: add 'make tag'Timo Teräs1-0/+4
2017-10-27solver: consider virtual provides to exclude non-provides transitivelyTimo Teräs2-12/+20
this fixes package selection when a 'real' package exists, but would need to be provided by another package with 'virtual provides'. In current package database this can happen with postgresql which is also provided by postgresql-bdr. Normally postgresql would be satisfied by postgresql, but if any package depends on postgresql-bdr and there's no versioned dependency on postgresql this will help apk figure out that postgresql-bdr should be used.
2017-10-12io: fix skip and splice to detect unexpected end-of-fileTimo Teräs2-31/+22
2017-10-10db: handle default root correctly for /procTimo Teräs1-1/+1
dbopts->root may be null; use db->root instead fixes #7162