The old solution didn't actually work as expected, because devtools
configuration belongs to filesystem (as well as sudo one), so it was
still required to run setup command.
In order to handle additional repositories, the POSTSETUP and PRESETUP
commands variables have been introduced. FAQ has been updated as well
* allow to use one application for multiple repositories
* update tests
* handle None append argument everywhere
* rewrite repository definition logic
* drop optional flags from docs
* support of new schema in systemd units
* add migration docs and ability to migrate tree automatically
* use repostory id instead
* verbose multiarchitectureerror
* object path support for s3 sync
* fix tests after rebase
* add support of remote task tracking
* add remote call trigger implementation
* docs update
* add cross-service upload
* add notes about user
* add more ability to control upload
* multipart upload with signatures as well as safe file save
* configuration reference update
* rename watcher methods
* erase logs based on current package version
Old implementation has used process id instead, but it leads to log
removal in case of remote process trigger
* add --server flag for setup command
* restore behavior of the httploghandler
Since llast upgrade build is broken. Lets fully migrate to
pyproject.toml. Note for maintaners: because data_files option is
deprectated (see https://github.com/pypa/setuptools/discussions/2648)
you will have to install files manually inside your packaging process
This migration includes
* removal of community repository as it is no more
* fixed paths for devtools configurations
* migration of archlinux packaging git url
Some commands have been moved to another group and thus having another
default name (old subcommands are still available...for now):
* daemon -> repo-daemon
* key-import -> service-key-import
* repo-clean -> service-clean
* repo-config -> service-config
* repo-config-validate -> service-config-validate
* repo-setup -> service-setup
* repo-shell -> service-shell
* version -> help-version
Note that this commit contains the following breaking changes:
* remote pull and remote push triggers are now enabled by default (with
empty target list)
* remote pull and remote push triggers now require target option to be
set (old behaviour had fallback on `gitremote`)
* validation is now considered to be stable, so it is enabled by default
in docker image (can be disabled however)
Some commands were made unsafe in old versions, but nowadays they can be
run without having special privileges.
There was also a bug in which status commands were not available if you
are not ahriman user and unix socket is used. It has been fixed by
switching to manual socket creation (see also
https://github.com/aio-libs/aiohttp/issues/4155)
* Unlike older version, currently service will always try to pull AUR
package to check version. Previously if no-vcs flag is set, it would
ignore VCS packages completelly
* Introduce build.vcs_allowed_age option. If set, it will skip version
calculation if package age (now - build_date) is less than this value