Merge pull request #1128 from aurutils/depends-pm
[aurutils.git] / makepkg / aurutils.changelog
blobcc4f6393f52d95dc5ace799f8501eb194d35097d
1 ## 19
3 * `aur-build`
4   + early check for buildscript
6 * `aur-depends`
7   + verify dependency version requirements by default
8   + add `--no-verify`
10 * `aur-repo`
11   + fix invalid output with `--json --search` (#1126)
13 * `perl`
14   + add `Depends.pm`
16 ## 18.5
18 * `aur-repo`
19   + prefix pacman.conf in error messages (#1118)
21 * `aur-build`
22   + propagate `--pacman-conf` to local repository upgrade
24 ## 18.4
26 * `aur-repo`
27   + fix incomplete output with `--search` (`--json`, #1120)
29 ## 18.3
31 * `aur-build--pkglist`
32   + do not source `PKGBUILD` in `$PATH` (#1115)
34 * `aur-repo`
35   + use pacman `DBPath` as `root` (`--sync`)
37 * `aur-depends`
38   + skip lines with equal `pkgbase` (`--pkgbase`)
40 ## 18.2
42 * `aur-repo`
43   + do not require `file://` path for specified repository (#1113)
45 * `aur-depends`
46   + fix regression introduced in v18 (#1112)
48 * `aur-build`
49   + fix `--temp` (#1111)
51 ## 18.1
53 * `aur-chroot`
54   + remove `/usr/share/devtools/pacman.conf.d/aurutils.conf` path introduced in v18
56 ## 18
58 * `aur-build`
59   + add `--dbext`
60   + shell escape file paths in diagnostics
62 * `aur-chroot`
63   + take file paths in `/etc/aurutils` into account
64   + add `--build` options (`-A`, `--nocheck`, `--namcap`, `--checkpkg`, `--temp`, `--user`)
65   + add `--status`
66     + `--path` is now deprecated
67   + `--suffix` no longer defaults to `extra`
69 * `aur-depends`
70   + `RequiredBy` is now a flat dictionary (`--json`, `--jsonl`)
72 * `aur-fetch`
73   + only run git-rebase/merge on new upstream commits
75 * `aur-repo`
76   + shell escape printed file paths
77   + add `--dbext`
78   + require a configured pacman repository (`--database`)
80 ## 17.3
82 * `aur-build`
83   + use `printf` instead of `warning` (#1101)
85 ## 17.2
87 * `aur-sync`
88   + remove repository write check
90 * `examples`
91   + rename `sync-rebuild --vcs` to `--pkgver`
93 ## 17.1
95 * `examples`
96   + add `--vcs` for `sync-rebuild`
98 ## 17
100 * `aur-sync`
101   + `--no-build` now prints `AURDEST` paths regardless of `AUR_SYNC_USE_NINJA` (#1096)
103 * `examples`
104   + remove `python-pyxdg` dependency (#1096)
105   + fixes for `sync-rebuild` (#1096)
107 ## 16.5
109 * `examples`
110   + add `--chroot`, `--user` for `sync-rebuild`
112 ## 16.4
114 * `aur-repo-parse`
115   + improve `Repository` field
116   + check database extension
118 * `examples`
119   + add AUR dependency resolution for `sync-rebuild`
121 ## 16.3
122 * `aur-sync`
123   + only print queue with `--no-build` to standard output
125 ## 16.2
127 * `aur-sync`
128   + `--save` now applies when building packages
130 ## 16.1
132 * `examples`
133   + fixes for `sync-rebuild`
135 ## 16
137 * `aur-repo`
138   + `--status` is now the default
139   + add `Repository` to `--json` / `--jsonl` output
141 * `aur-format`
142   + add `%R` format option
144 * `perl`
145   + `write_json()` now returns a string
147 * `aur`
148   `--env` now prints `PERL5LIB`
150 ## 15.7
152 * `aur-repo`
153   + add `--search`, `--search-by` (#1057)
155 * `aur-sync`
156   + `--save`: do not use `/dev/stdout` (#1083)
158 ## 15.6
160 * `examples`
161   + remove `AUR_EXEC_PATH` from `sync-asroot` [fixup]
163 ## 15.5
165 * `aur-build`
166   + support makepkg configuration in `/etc/aurutils` (#1076)
168 * `aur-depends`
169   + add `--jsonl`
171 ## 15.4
173 * `aur-sync`
174   + add `--save`
176 * `examples`
177   + `sync-asroot` now works with `AUR_PAGER=ranger` (#1077)
178   + `sync-rebuild` python rewrite
180 ## 15.3
182 * `aur-pkglist`, `aur-view`, `aur-search`
183   + prefix errors with command name
185 ## 15.2
187 * `aur-chroot`
188   + adjust default `makepkg`, `pacman` paths depending on `devtools` version (#1072)
190 ## 15.1
192 * `aur-pkglist`
193   + remove deprecated options (`-J` (`--json`), `-I`, `-S`) [fixup]
195 ## 15
197 * `aur-repo`
198   + add `--format` (`-f`), `--delim`
200 * `aur-format`
201   + support `aur-repo-parse --jsonl` input (`AUR::Json.pm`)
203 * `aur-pkglist`
204   + remove deprecated options (`-J` (`--json`), `-I`, `-S`)
205   + update documentation
207 * `examples`
208   + `sync-rebuild` now respects package `epoch`
210 ## 14.1
212 * `aur-sync`
213   + fix exit codes for `tsort`, `aur-repo-parse`
215 ## 14
217 * `aur-depends`
218   + add `Self` dependency for every target (#1065)
220 * `aur-sync`
221   + `--rebuild-tree` now implies `--no-provides` (#1068)
222   + add `--no-sync` (`aur-build --no-sync`) (#1064)
224 ## 13.8
226 * `aur-depends`
227   + add `--show-all` (alias for `--all`)
228   + prune virtual targets with `--all`
230 ## 13.7
232 * `aur-depends`
233   + fix regression in 13.6
235 ## 13.6
237 * `aur-depends`
238   + fix output when non-AUR targets are specified on the command-line (#1062)
240 ## 13.5
242 * `aur-build`
243   + use /etc/aurutils/pacman-<db_name>.conf only with `--database` or `AUR_REPO` set
245 ## 13.4
247 * `aur-fetch`
248   + exit 0 on empty stdin (`-`, `/dev/stdin`)
250 * `aur-depends`
251   + exit 0 on empty stdin (`-`, `/dev/stdin`)
253 * `aur-query`
254   + exit 0 on empty stdin (`-`, `/dev/stdin`)
256 * `aur-view`
257   + evaluate `AUR_CONFIRM_PAGER`
259 ## 13.3
261 * `Makefile`
262   + correctly install to `AUR_LIB_DIR`
264 * `aur-build`
265   + get local repository state before `--chroot` configuration
267 * `aur-graph`
268   + add `PRINTALL`
270 * `aur.1`
271   + fixes for `aur-format`
273 ## 13.2
275 * `build--pkglist`
276   + set `pkgname` as fallback for `pkgbase` (#1058)
278 ## 13.1
280 * `aur-fetch`
281   + fix regression for `aur-fetch--mirror`
283 ## 13
285 * `aur-build`
286   + add `--null` (`-z`)
287   + add `AUR_BUILD_PKGLIST` environment variable
289 * `aur-build--pkglist`
290   + remove `--user` (`-U`)
291   + only run as root with `AUR_ASROOT` set
293 * `aur-depends`
294   + add `--assume-installed`
296 * `aur-srcver`
297   + accept arbitrary source directories as arguments
298   + add `--arg-file` (`-a`), `--null` (`-z`), `--margs`
299   + add `AUR_MAKEPKG` environment variable
300   + only run as root with `AUR_ASROOT` set
301   + exit 1 if any `makepkg` job failed
303 * `aur-sync`
304   + `--ignore` now removes dependencies of ignored targets
306 * `examples`
307   + update `sync-asroot` to use `AUR_BUILD_PKGLIST`
309 ## 12.1
311 * `AUR.pm`
312   + call `urlencode()` when retrieving URIs with `AUR::Query` (#1053)
314 * `aur-depends`
315   + documentation updates
317 ## 12
319 * `aur-build`
320   + merge helper `aur-build--sync` back to `aur-build`
321   + avoid errors with PKGBUILDs that fail to source with `set -e`
323 * `aur-repo-filter`
324   + `unbuffer` is now optional (#1052)
326 * `aur-view`
327   + use null seperated lists as input to vifm(1)
329 * `examples`
330   + add `sync-rebuild`
332 * `lib`
333   + unset `CDPATH` where needed
334   + use `getopt` instead of `parseopts.sh` from libmakepkg
336 * `man1`
337   + documentation updates
339 ## 11
341 * `aur-build`
342   + add `aur-build--sync` helper for local repository upgrades
343     - `sudo pacman -Syu --config` is replaced by `sudo pacsync <repo>` and `sudo pacman -S <repo>/<pkg>`
344     - local repository upgrades are now unaffected by `--pacman-conf`
345   + add `exist:` to `--results` output
346     - remove `--dry-run`
347   + fallback to `/etc/aurutils/pacman-<machine>.conf` if `pacman-<database>.conf` does not exist
348   + rename `MAKEPKG` environment variable to `AUR_MAKEPKG`
349   + replace experimental `AUR_ASROOT` functionality (#1023)
350     - add `examples/sync-asroot`
351     - add `--user` to `aur-build--pkglist`
352     - add `AUR_GPG`, `AUR_REPO_ADD`, `AUR_MAKEPKG` environment variables
354 * `aur-chroot`
355   + remove `--packagelist` (deprecated in v8)
356   + run `sudo --preserve-env` when `AUR_PACMAN_AUTH` is empty or `sudo`
358 * `aur-depends`
359   + perl rewrite
360   + add `--json`, `--reverse`
361   + take provides on the command-line into account (#837)
362     - add `--no-provides`
363   + default output changed to `--graph --pkgbase`
364     - ordered output with `aur-depends --reverse | tsort`
366 * `aur-fetch`
367   + add `aur-fetch--mirror` helper for `aur.git` mirrors
368     - defaults to `github.com/archlinux/aur`
369     - enable with `AUR_FETCH_USE_MIRROR=1`
370   + run flock(1) when modifying existing repositories
371   + run git-checkout(1) when using `--sync=rebase` with `--discard` (#1006)
373 * `aur-graph`
374   + selectively disable/enable depends with `aur graph -v <TYPE>=[0|1]`
375     - supported types: `DEPENDS`, `MAKEDEPENDS`, `CHECKDEPENDS`, `OPTDEPENDS`
376     - forwarded by `aur-sync` (`--optdepends`, `--no-check`)
378 * `aur-repo`
379   + add `--json`, `--jsonl`
381 * `aur-query`
382   + perl rewrite
383   + remove support for parallel (`AUR_QUERY_PARALLEL`) and `GET` requests
384   + set operations (union, intersection) are moved to `aur-search`
385     - remove `--any`, `--exit-if-empty`
386     - `--raw` is noop
387   + remove `--dump-curl-config`
388     - print command-lines with `AUR_DEBUG=1`
389   + `-t` / `--type` is now a required parameter
391 * `aur-search`
392   + perl rewrite
393   + add `--reverse`
394     - `-r` is now an alias to `--reverse`
395   + add `--submitter`, `--provides`, `--conflicts`, `--replaces`, 
396     `--keywords`, `--comaintainers`
397   + exit 4 on AUR response errors such as `query too small` (was: exit 2)
399 * `aur-sync`
400   + add diagnostic for missing packages with `--continue`
401   + save `ninja.build` files in `XDG_STATE_HOME/aurutils/sync`
402   + add `--columns`
404 * `aur-view`
405   + add `--exclude`, `--prefix`
407 * `aur-format`
408   + new helper
410 * `aur-repo-parse`
411   + new helper
413 * `completion`
414   + support extending `zsh` completion for third party commands (#1016)
416 * `examples`
417   + add `view-delta` (requires: `bat`, `git-delta`)
418   + add `sync-asroot`
420 ## 10
422 * `aur`
423   + support environment files (`$AUR_ENV`, defaults to `$XDG_CONFIG_HOME/aurutils/env`)
424   + add `--env`
426 * `aur-build`
427   + use `AUR_PACMAN_AUTH` as elevation command (prior: `PACMAN_AUTH`)
428   + use `$PWD` as default value for `$LOGDEST`
429   + bug fixes for gpg signing (`--sign`)
431 * `aur-chroot`
432   + use `AUR_PACMAN_AUTH` as elevation command (prior: `PACMAN_AUTH`)
434 * `aur-fetch`
435   + `--sync=auto`: run `git-merge` instead of `git-reset`
436     - add `--ff`, `--ff-only`, `--no-ff`, `--no-commit` options
437     - fix a bug where setting `aurutils.rebase` affected unrelated targets
438     - set default author for merge commits to `aurutils@localhost`
439   + `--sync=auto` now preserves local changes by default
440     - `--discard` (`-f`) resets the branch on new upstream commits
441   + add `--reset`, `--rebase`, `--auto` (`--sync=reset`, `--sync=rebase`, `--sync=auto`)
442   + support multiple branches, with commits merged from `origin/master`
444 * `aur-pkglist`
445   + output is now independent of command-line argument order
446   + deprecate `-I`, `-S`, `-u`
447     - renamed to: `-i` (`--info`), `-s` (`--search`) `-q` (`--quiet`)
448   + deprecate `-J` (`--json`)
449     - behaves like `--plain`, remove pretty-printing with `jq`
450   + add `--systime`
452 * `aur-repo`
453   + `-q` now applies to `--list` and `--upgrades`
454   + add `--list-attr`
455   + deprecate `--status-file`
457 * `aur-search`
458   + add `--color` (`auto`, `always`, `none`)
460 * `aur-srcver`
461   + remove `-E`, `--env` (deprecated in v8)
463 * `aur-sync`
464   + use pkgspec `<REPOSITORY>/<PACKAGE>` format for `--ignore-file`
465     - support for sections (introduced with v6.3) is removed (#880)
466     - <PACKAGE> ignores apply to all local repositories
467   + add `--rebase`, `--reset` options for `aur-fetch`
468   + exit 22 on dependency cycles (v7 regression)
469   + filter dependency graph by pkgname, not depends (v7 regression)
470   + store `build.ninja` files in `$XDG_RUNTIME_DIR/aurutils`
472 * `completions`
473   + major overhaul of zsh completions (#990)
475 ## 9.6
477 * `aur-pkglist`
478   + add `AUR_METADEST` (directory where metadata archives are stored)
479   + add `--quiet`
481 * `aur-fetch`
482   + write `git-merge` to `results_file` if the command is run
484 ## 9.5
486 * `aur-build`
487   + add `--results-append`
488   + write results file as build user
490 * `aur-query`
491   + support `--type=suggest`
493 ## 9.4
495 * `aur-build`
496   + revert "retrieve local repository before setting --chroot paths"
498 ## 9.3
500 * `examples`
501   + rework `sync-list`
503 ## 9.2
505 * `aur-build`
506   + deprecate `--results`
507   + retrieve local repository before setting `--chroot` paths
508   + unset `PKGEXT` when using `--chroot`
510 * `aur-search`
511   + use OSC8 terminal hyperlinks (#849)
513 ## 9.1
515 `aur-build` now uses `setpriv(1)` to run unprivileged commands (`makepkg`, `gpg`,
516 `repo-add`) when `AUR_ASROOT` is combined with `--user`. This change has no
517 effect when running `aur-build` as a regular user.
519 Usage:
521   $ sudo env AUR_ASROOT=1 aur build --chroot --user <build_user> ...
523 The above works with `--chroot` (`makechrootpkg -U`). Environment variables in
524 the root environment are preserved for user commands, similar to `runuser -c`.
525 Host builds using `makepkg --syncdeps` to install dependencies require further
526 configuration.
528 ┌──────────────────────────────────────────────────────────────────────────────┐
529 │ WARNING!                                                                     │
530 │                                                                              │
531 │ Running `aur-build` as root is experimental and disabled by default. If your │
532 │ install breaks, you get to keep both pieces.                                 │
533 └──────────────────────────────────────────────────────────────────────────────┘
535 ## 9
537 * `examples`
538   + add `chroot-batch`
540 * `lib`
541   + add `aur-build--pkglist`
543 * `aur-build`
544   + add `--dry-run`
545   + redirect `makepkg -od` output (`--pkgver`) to stderr
546   + sign existing packages (#967)
548 * `aur-fetch`
549   + add `--no-pager` to the `git log` command (#969)
550   + `--existing`: clone instead of skip targets if they exist
552 * `aur-sync`
553   + redirect `aur-fetch` output to stderr (#974)
555 ## 8.3
557 * `aur-fetch`
558   + add `--revision`
559   + add `--no-patch`
561 * `aur-repo`
562   + add `--field`
564 * `examples`
565   + add `vercmp-devel`, `sync-list`
566   + rename `aur-sync-devel` to `sync-devel`
568 ## 8.2
570 * `aur-srcver`
571   + add separator before first failed package
573 * `aur-fetch`
574   + handle empty `git` repositories (#959)
576 * `man7`
577   + remove `aurvcs.7`, move `aur-sync-devel` to `examples`
579 ## 8.1
581 * `aur-srcver`
582   + fix directory to source the build script from (#958)
584 ## 8
586 * `aur-chroot`
588 The `aur-chroot` command-line was changed so that `--create`, `--build` and
589 `--update` can be used in a single command. Command-line arguments are now
590 exclusively used for packages passed to `mkarchroot` and `arch-nspawn`.
591 To set `makechrootpkg` options, the new `--margs` and `--cargs` options are
592 available. As `aur-build --margs`, these take a comma-delimited string and
593 can be specified multiple times. (Issues: #950, #807)
595 The `--packagelist` command is now deprecated. The container path can be
596 retrieved with the `--path` option, e.g for use with `makepkg --config`.
598 * `aur-build`
599   + Consider all repositories (`Usage = Install`) for local repository upgrade (#956)
601 * `aur-srcver`
602   + add `--buildscript`
603   + deprecate `-E` / `--env`
604     - `get_full_version` from `libmakepkg` is now used after running `makepkg`
605   + take arguments from `stdin` if `-` is specified
607 * `aurvcs.7`
608   + run `aur-fetch` and `aur-view` before `aur-srcver`
609   + sample code remaned to `aur-sync-devel`
611 ## 7.2
613 * `aur-search`
614   + add `OptDepends` to `--info` output (#945)
615   + handle empty keywords in `--info` output (#946)
617 * `aur-depends`
618   + add `--optdepends` (#945)
620 * `aur-sync`
621   + add `--optdepends` (#945)
623 ## 7.1
625 * `aur-build`
626   + pass --nocheck to chroot (#942)
628 * `aur-sync`
629   + avoid off-by-one in ninja build summary (#940)
631 * `aur-query`
632   + do not abort if `-t` is unspecified (#938)
634 ## 7
636 This release adds optional support for the `ninja` build system. If the
637 `AUR_SYNC_USE_NINJA` environment variable is set to a positive value,
638 `aur-sync` will generate `build.ninja` where each target has an `aur-build`
639 command-line. This allows to continue building a series of packages when
640 several failed, with the maximum of failed targets controlled by the `-k` /
641 `--keep-going` option.  On failure, a summary of successful ("OK") and failed
642 ("FAIL") package builds is printed. The `--no-build` option in turn only
643 generates `build.ninja`, and prints the corresponding directory to `stdout`.
645 The logic to generate `build.ninja` files is exposed in the `aur-sync--ninja`
646 script. It can be used with other `aur` programs that output `pkgbase
647 depends_pkgbase` pairs, for example:
649   $ aur depends --graph "$@" | aur sync--ninja "$PWD" -- aur build
651 When running `ninja` on the resulting file, each successfully built `pkgbase`
652 will result in a `pkgbase.stamp` file. If the corresponding `PKGBUILD` is
653 modified, it will be marked for rebuilding by `ninja`. This can for example be
654 used for a git repository which hosts multiple `PKGBUILD` directories.
656 ## 6.4
658 * `aur-depends`
659   - add `--graph`
660   - checkdepends are now removed during dependency resolution, not afterwards (#882)
662 ## 6.3
664 * `aur-sync`
665   - `--ignore-file` now supports per-repository sections (INI-style)
666   - do not ignore targets when specified on the command-line
668 ## 6.2
670 * `aur-pkglist`
671   - add `-v` / `--verify` (verifies published sha256sums)
673 * `aur-repo-filter`
674   - add repository to dependency messages ("dependency foo satisfied by repo/bar")
675   - deduplicate results on stdout
677 ## 6.1
679 * `aur-search`
680   - do not print additional messages on errors or no results
682 * `aur-query`
683   - add `-a` alias for `--any`
684   - add missing newline in case of errors (`jq -r`)
686 ## 6
688 In previous versions, `aur search` would display an intersection of search
689 results, the symmetric difference with `-a` (bug), and the concatenation with
690 `-r`. (#918)
692 `aur search -a` now correctly returns the union, and the `-r` output is
693 processed with jq(1) to return the intersection by default, or the union (with
694 duplicates removed) with `-a`. This processing is done because the RPC
695 interface as of aurweb 6.0.11 does not expose set operations, and so
696 `aur-search` performs one search for each argument. `aur search --json` was
697 added as an alias to `--raw`, and the latter option is now deprecated.
699 The implementation is done in `aur-query`, which now takes the intersection of
700 search results by default. The union can be taken with `aur query --any`, or
701 unprocessed results shown with `-r` or `--raw`. In each case, the output is
702 newline delimited (JSON Lines, `jq -r`). If the search completed without
703 results, `aur-query` will either exit with status 0 (if no request resulted in
704 an error), 1 (if the `-e` option was specified), or 2 (if at least one request
705 resulted in an error).
707 `AUR_QUERY_RPC_SPLITNO_POST` received bug fixes (#920), and the default has
708 been reduced to 500 after experiencing issues with a larger number of
709 arguments. Users looking to use `aur-query -t info` with a very large number
710 of arguments should instead consider `aur pkglist --info`.
711 `AUR_QUERY_RPC_PARALLEL` also received several bugfixes.
713 ## 5
715 * `aur-srcver`
716   + add `-E` / `--env` (#898)
718 * `aur-query`
719   + support HTTP POST for info-type requests
720   + use `aurutils` user agent (`curl -A`)
722 * `aur-pkglist`
723   + use `aurutils` user agent (`curl -A`)
725 * `aur-repo-filter`
726   + add `--config` to set pacman configuration
728 ## 4.4
730 * `aur-sync`
731   + fix regressions with `--ignore` from 4.3 release
733 ## 4.3
735 * `aur-build`
736   + wordsplit MAKEPKG and PACMAN_AUTH
738 * `aur-sync`
739   + improve error handling
741 ## 4.2
743 * `aur-build`
744   + support PACMAN_AUTH environment variable for custom elevation command
746 * `aur-repo`
747   + improve error handling
748   + remove extraneous `--` on `--path` output
750 ## 4.1
752 * `aur-build`
753   + handle absolute paths in `--arg-file`
755 * `aur-pkglist`
756   + add `--users` (`-U`) to retrieve a list of AUR users
757   + update aur-pkglist(1) man page
759 * `aur-repo`
760   + fix formatting for `--table` and packages with no dependencies
762 ## 4
764 * `aur-build`
765   + add `--no-check` (`makepkg --nocheck`)
767 * `aur-search`
768   + add `--table`
770 * `aur-fetch`
771   + add compatibility options (`--recurse`)
773 * `aur-repo`
774   + add compatibility options (`--path`, `--path-list`, `--repo-list`)
775   + fix regression with `AUR_QUERY_PARALLEL`
777 * `aur-sync`
778   + add `--no-check` (short for `--no-checkdepends`)
779     - implies `aur-build --no-check`
780   + apply `--ignore` to local repository targets
781   + `--ignore-file` now works with process substitution (#880)
782   + remove `--no-depends`, `--no-makedepends`
784 ## 3.3.0
786 `aur-query` and `aur-fetch` now take arguments from the command-line
787 by default. If `-` or `/dev/stdin` is the first (and only) arguments,
788 they are taken from `stdin` instead. In particular, `aur fetch --recurse`
789 is now written as `aur depends --pkgbase ... | aur fetch -`, and the
790 explicit `--recurse` option was removed.
792 The `-` argument propagates to `aur-depends` and `aur-search`
793 transparently. Additionally, `aur-sync` no longer calls `aur-depends`
794 and `aur-fetch` with `xargs`, avoiding the 123 exit code on failure of
795 these commands.
797 ## 3.2.1
799 * `aur-query`
800   + support AUR_LOCATION
801   + preserve `curl --parallel` exit codes (requires curl >=7.77.0)
802   + complete aur-query(1) man page
804 * `aur-pkglist`
805   + support multiinfo and search dumps (`--info`, `--search`)
806   + support HTTP Last-Modified
808 * `aur-fetch`
809   + add `--existing`
811 * `aur-view`
812   + new script that includes the package inspection logic from `aur-sync`
814 ## 3.2.0
816 * `aur-build`
817   + retrieve database extension from `AUR_DBEXT` (defaults to .db) (#700)
818   + resolve path argument to `--results`
819   + use `aur repo --status` for repository selection
820     - allows specifying `--root` without `--database`
821   + print diagnostic if packages were not moved to local repository (#794)
822   + merge `--config` and `--pacman-conf` (#808, #824)
823   + fallback to /etc/aurutils/pacman-<arch>.conf if --chroot is used without --database (#846)
824   + add diagnostic if chroot pacman.conf is non-existing (#783)
826 * `aur-depends`
827   + add `--no-depends`, `--no-makedepends`, `--no-checkdepends` (#826)
828   + add dependency kind column to `--table` output
830 * `aur-chroot`
831   + preserve `SSH_AUTH_SOCK` to support ssh-based operations (#832)
833 * `aur-repo`
834   + retrieve database extension from `AUR_DBEXT` (defaults to .db) (#700)
835   + add `--status`
836     - `repo:<NAME>\nroot:<PATH>\npath:<PATH/NAME.DBEXT>` output format
837     - replaces `--path`
838   + rename `--repo-list` to `--list-repo`
839   + rename `--path-list` to `--list-path`
841 * `aur-repo-filter`
842   + run `pacsift` with `unbuffer` (#804)
844 * `aur-vercmp`
845   + remove colon from `checkupdates` and `equal_or_newer` format (#833)
847 ## 3.1.2 - 2020-11-09
849 This releases fixes a regression in 3.1.1 where `AUR_LIB_DIR` was not
850 subsituted in `aur`.
852 ## 3.1.1 - 2020-11-09
854 * `aur`
855   + add `--version`
857 ## 3.1.0 - 2020-11-09
859 * `aur`
860   + fix example `aur-remove` script (#785)
862 * `aur-build`
863   + change default pacman-conf for chroot builds to /etc/aurutils/pacman-<dbname>.conf
864   + clarify conditions on pacman-conf for chroot builds in `aur-build.1`
866 * `aur-chroot`
867   + add `--create`
868     - seperate mode which runs `mkarchroot` with packages taken from the command-line
869     - defaults to base-devel (and multilib-devel, if applicable) if no packages are specified
870     - `--update` no longer runs `mkarchroot`
871   + `--packagelist` now uses `makepkg.conf` inside the container
872   + add `Devtools limitations` section to `aur-chroot.1` (#782)
873   + add additional error messages for missing pacman configuration
875 * `aur-repo`
876   + add `--path-list`
877   + update man page for new arguments (#784)
878   + remove `--ini` (only offered pacman.conf information)
880 ## 3.0.3 - 2020-11-02
882 * fix broken `zsh` completion (#776)
883 * use `/tmp/aurutils-$UID` as default temporary directory (#775)
885 ## 3.0.2 - 2020-10-30
887 * `aur-sync`
888   + add missing `--suffix` option (#773)
890 ## 3.0.1 - 2020-10-29
892 The commits:
894 + aur-sync: use XDG_RUNTIME_DIR for view directory (5341c059736d3eff59daea5cb52b7d35c98d0824)
895 + aur-repo: simplify command line (57c1b2157806e645e7de85bf24e2c28b7d5f4458)
897 were part of the 3.0.0 release tarball, but not the 3.0.0 tag. The 3.0.1 tag now includes these commits.
899 ## 3.0.0 - 2020-10-29
901 * `aur`
902   + add `AUR_EXEC_PATH` environment variable
903   + add example `aur-gc`, `aur-remove` scripts to `aur.1`
905 * `aur-build`
906   + add `AUR_DEBUG`, `NO_COLOR`, `MAKEPKG` environment variables
907   + add mollyguard for running as the `root` user
908   + add `build:` prefix to `--results` output
909     - `build:file:///path/to/package.tar.xz`
910   + add `--new`, `--prevent-downgrade` (`repo-add` options)
911   + add `Running` message for all `makepkg` invocations
912   + replace `--build-command` with `--margs` and `$MAKEPKG`
913   + remove default `makepkg` arguments (#635)
914     - specify common `makepkg` options as `aur-build` arguments (`--syncdeps`, `--rmdeps`, `--ignorearch`, `--log`, `--noconfirm`)
915     - pass `--syncdeps`, `--rmdeps` to `--pkgver` makepkg command (#716)
916     - make `-r` an alias for `--rmdeps` (was: alias for `--root`)
917     - make `-S` an alias for `--sign` (was: `-s`)
918   + use `--margs` to set makepkg options instead of EOF seperator (`--`)
919   + `--makepkg-conf` now sets the makepkg configuration for host builds (avoid quoting issues with setting `--config` in `--margs`)
920   + use `makepkg --noextract` if `--pkgver` is specified (#708)
921   + use `print_all_package_names` (`/usr/share/makepkg/util/pkgbuild.sh`) instead of `makepkg --packagelist` (#755)
922   + pass pacman.conf (`--config`) to `aur-repo` (#654)
923   + only remove intermediary package directory if empty (#602)
924   + remove `--delta`
925   + use `PKGDEST` instead of `makepkg.conf` to set package destination
927 * `aur-chroot`
928   + add `AUR_DEBUG` environment variable
929   + add `--packagelist`
930     - use `print_all_package_names` (`/usr/share/makepkg/util/pkgbuild.sh`)
931   + replace `--no-prepare` and `--no-build` (disable steps) with `--update` and `--build` (enable steps) respectively
932   + remove `--database`
933   + use static pacman configuration (defaults to `/usr/share/devtools/pacman-extra.conf`)
934     - `--suffix` to override `extra` in the default path
935     - if `--suffix` begins in `multilib`, install `multilib-devel` (instead of `base-devel`)
937 * `aur-fetch`
938   + add `AUR_DEBUG`, `NO_COLOR` environment variables
939   + add `--results` (colon-delimited output)
940   + add `--sync`
941     - only run `git fetch` by default;
942     - run `git reset` if `--sync=reset` is specified;
943     - run `git rebase` if `--sync=rebase` is specified;
944     - run either `git reset` or `git rebase` if `--sync=auto` is specified
945   + exit `1` if `git clone` or `git fetch` failed
946   + remove support for `tar` archives
947   + remove diff output (`--log-dir`, `--verbose`, `--format`)
948     - diffs can be generated from the extended --results output (done in `aur-sync`)
949   + remove setting `orderfile` (done in `aur-sync`)
950   + use `git -C` for `git` calls
952 * `aur-jobs` (removed)
953   - remove script
955 * `aur-pkglist`
956   + add `AUR_DEBUG` environment variable
957   + use `curl` for transfers instead of `wget`
959 * `aur-rpc` (`aur-query`)
960   + add `AUR_DEBUG`, `AUR_QUERY_RPC`, `AUR_QUERY_RPC_SPLITNO`, `AUR_QUERY_PARALLEL`, `AUR_QUERY_PARALLEL_MAX` environment variables
961   + rename to `aur-query`
962   + set AUR RPC address with `AUR_QUERY_RPC` instead of a combination of `--rpc-url`, `--rpc-ver` and `AUR_LOCATION`
963   + set number of packages for splitting URIs with `AUR_QUERY_RPC_SPLITINFO`
964   + set `AUR_QUERY_RPC_SPLITNO` to set of number of packages for splitting URIs
965   + use `curl` for transfers instead of `wget`
966     - enable parallel transfers (`curl --parallel`) with `AUR_QUERY_PARALLEL=1`
967     - set maximum amount of parallel transfers (`curl --parallel-max`) with `AUR_QUERY_PARALLEL_MAX`
968   + exit `1` if a transfer failed
970 * `aur-repo-filter`
971   + add `AUR_DEBUG` environment variable
972   + add `--sysroot` (`pacsift --sysroot`, `pacinfo --sysroot`)
973   + use `pacinfo` for package information instead of `expac`
975 * `aur-repo`
976   + add `AUR_DEBUG` environment variable
977   + add `--config`
978   + add `--ini`
979   + add `--quiet`/`-q` (`aur-vercmp -q`)
980   + add `--table`
981   + add pacman configuration to `--status-format` (colon-delimited)
982   + print fully resolved path to local repository
983   + require `--path` to print the local repository path
984   + remove `expac` dependency
986 * `aur-search`
987   + add `AUR_DEBUG`, `NO_COLOR` environment variables
988   + unset `LC_ALL` when printing `Popularity`
990 * `aur-srcver`
991   + add `AUR_DEBUG` environment variable
992   + add `--jobs`
993   + do not use `makepkg --log`
994   + remove `parallel` dependency
996 * `aur-sync`
997   + add `AUR_DEBUG`, `NO_COLOR`, `AUR_CONFIRM_PAGER` environment variables
998     - use confirmation prompt after package review if `AUR_CONFIRM_PAGER` is set
999   + add `--rebuild-all`
1000   + add mollyguard for running as the `root` user
1001   + add default ignore file in `$XDG_CONFIG_HOME/aurutils/sync/ignore`
1002   + do not fallback to `PAGER` or `less` (`AUR_PAGER` must be set or `vifm` installed)
1003   + enable `--provides` by default
1004     - disable with `--no-provides`
1005     - specify repositories with `--provides-from` (comma-delimited)
1006   + remove additional `aur-build` arguments after EOF separator (`--`) (#678)
1007   + remove `parallel` dependency
1008   + remove `AURDEST_SNAPSHOT` environment variable
1009   + remove `--git`, `--tar`
1010   + rename `--print` to `--no-build`/`-o`
1011   + rename `--no-ver-shallow` to `--no-ver-argv`
1012   + store commits viewed by the user (#379, #711)
1013   + use `aur-fetch --sync=auto`
1015 * `aur-vercmp`
1016   + add `AUR_DEBUG`, `NO_COLOR` environment variables
1018 * `Makefile`
1019   + allow overriding `AUR_LIB_DIR` at build time
1021 ## 2.3.7
1023 ## 2.3.6
1025 ## 2.3.5
1027 ## 2.3.4
1029 ## 2.3.3
1031 ## 2.3.2
1033 ## 2.3.1 - 2019-02-21
1035 * `aur-build`
1036   + add `--results`
1037 * `aur-sync`
1038   + documentation updates (#350, #507)
1039   + ask for confirmation if `PAGER` is set (#530)
1040 * `aur-repo-filter`
1041   + documentation updates (#438)
1043 ## 2.3.0 - 2019-02-18
1045 * `aur-build`
1046   + add `--holdver` to makepkg with `--pkgver`
1047   + exit 2 if `db_path` is not found
1048 * `aur-repo-filter`
1049   + support versioned packages (#404)
1050   + remove `--repo` alias to `--database`
1051 * `aur-srcver`
1052   + remove `--noprepare` from default makepkg options
1053   + add `--noprepare` option (#523)
1054 * `aur-sync`
1055   + wrap repo-add `-R` (#521)
1056   + add `--no-graph` (workaround for #516)
1057 * `aur-vercmp`
1058   + add `-q`/`--quiet`
1059   + rename `--equal` to `--current`
1060 * `completions`
1061   + group options by type (#520)
1062   + complete `aur-depends` options (#526)
1064 ## 2.2.1 - 2019-01-25
1066 * `aur-build`
1067   + add `--holdver` to `makepkg` options if `--pkgver` is enabled
1068 * `aur-repo`
1069   + do not include `repo:` in error messages
1070   + `--all` implies `--upgrades`
1071 * `aur-sync`
1072   + `cd` before invoking `$PAGER` (#518)
1073 * `aur-repo-filter`
1074   + if `stdin` is connected to a terminal, mention this on `stderr`
1075 * `aur-rpc`
1076   + if `stdin` is connected to a terminal, mention this on `stderr`
1077 * `aur-vercmp`
1078   + if `stdin` is connected to a terminal, mention this on `stderr`
1080 ## 2.2.0 - 2019-01-22
1082 * `aur`
1083   + update `CacheDir` instructions in `aur(1)`
1084 * `aur-build`
1085   + rename `--run-pkgver` to `--pkgver`, remove `LANG=C` from `makepkg -od`
1086   + remove `~` package backup on `--force` (#444)
1087   + propagate `--pacman-conf` to `pacman-conf` (local builds)
1088   + unset `PKGDEST` prior to running `makepkg` (#513)
1089   + remove `--rmdeps` from default options (#508)
1090 * `aur-fetch`
1091   + expose AUR URL through `AUR_LOCATION` environment variable
1092 * `aur-pkglist`
1093   + do not require `-P` for regex match
1094   + Expose AUR URL through `AUR_LOCATION` environment variable
1095 * `aur-rpc`
1096   + add `--rpc-ver`, `--rpc-url`
1097   + Expose AUR URL through `AUR_LOCATION` environment variable
1098 * `aur-search`
1099   + exit 1 on no results
1100   + exit 2 on AUR error (e.g. "too many results")
1101   + Expose AUR URL through `AUR_LOCATION` environment variable
1102 * `aur-sync`
1103   + add `--pkgver` (`aur-build --pkgver`)
1104   + remove `--rmdeps` from default options (#508)
1105 * `completion`
1106   + allow `zsh run-help` to display the correct man page (#506)
1108 ## 2.1.0 - 2019-01-16
1110 * `aur-build` 
1111   + `--build-command` now works correctly
1112   + add `--run-pkgver` to run `makepkg -od` before `makepkg --pkglist` (relevant to VCS packages)
1113 * `aur-depends`
1114   + now takes input as arguments, instead from `stdin`
1115   + add `--table`, `--pkgbase`, `--pkgname` and `--pkgname-all` (defaults to `--pkgname`)
1116 * `aur-search`
1117   + add `--raw` to display JSON output
1118 * `aur-sync`
1119   + add `--ignore-file` (same as `aursync --ignore`)
1120   + check the (`.SRCINFO`) dependency graph before file inspection
1121 * `aur-fetch-git` and `aur-fetch-snapshot` were removed and merged to `aur-fetch`
1123 ## 2.0.1 - 2019-01-11
1125 * `aur-build`
1126   + do not export PKGDEST for non-chroot builds (#498)                               
1127   + add --build-command (#498)
1128   + man page updates (#217)
1129 * `aur-sync`
1130   + add --keep-order for parallel aur-fetch
1132 ## 2.0.0 - 2019-01-10
1134 * `aur` *(new)*
1135   + wrapper for the new `git(1)` based design
1136 * `aur-build`
1137   + remove `repose` support, see https://bbs.archlinux.org/viewtopic.php?pid=1707649#p1707649
1138   + abort if updating a signed database without `-s` (#246)
1139   + add `AUR_REPO`, `AUR_DBROOT` environment variables (#302)
1140   + add `--makepkg-conf`, `--pacman-conf` (#242)
1141   + use `pacman-conf` instead of `pacconf`
1142 * `aur-chroot` *(new)*
1143   + new tool containing the functionality of `aur-build -c`
1144   + support container builds without using a local repository
1145   + support multiple repositories
1146   + preserve `GNUPGHOME` (#427)
1147   + use `pacman-conf` instead of `pacconf`
1148 * `aur-fetch`
1149   + use `HEAD@{upstream}` instead of `HEAD` for `git reset` (#349)
1150   + use `wget` instead of `aria2c` or `curl`
1151   + support diffs for `tar` snapshots (requires: `diffstat`)
1152 * `aur-graph`
1153   + rewrite in awk (#361)
1154   + add support for virtual and versioned dependencies (#10)
1155 * `aur-repo` *(new)*
1156   + manage local repositories
1157 * `aur-rpc` *(new)*
1158   + send `GET` requests to `aurweb`
1159   + use `wget` instead of `aria2c` or `curl`
1160 * `aur-search` 
1161   + add `License`, `Keyword`, `Depends`, `MakeDepends` and `CheckDepends` fields
1162   + add `depends`, `makedepends` search (#432)
1163   + add popularity to `brief` output (#420)
1164   + colorize if `stdout` is a terminal (#473)
1165   + use intersection of results for multiple terms (#328)
1166   + use `aur-rpc` to query `aurweb`
1167 * `aur-sync`
1168   + add `AUR_PAGER` environment variable (file review, #51)
1169   + add `--bind-rw` (#428)
1170   + add `--ignore-arch` (`makepkg -A`, #309)
1171   + add `--nover-shallow` (only check versions for depends, #374)
1172   + add `--provides` (virtual dependencies, #452)
1173   + add `--rebuild`, `--rebuildtree` aliases (#424)
1174   + rename `--repo` to `--database` (#353)
1175   + the `--ignore` option now takes a comma-separated list of packages
1176   + fetch sources in parallel
1177   + set the default value for `AURDEST` to `$XDG_CACHE_HOME/aurutils/sync`
1178 * `aur-srcver` *(new)*
1179   + print latest revision of VCS packages
1180 * `aur-vercmp-devel` *(new)*
1181   + compare latest revision of VCS packages to a local repository
1182 * `officer` *(removed)*
1183   + removed in favor of `pacman --config`
1184 * `completion`
1185   + add `bash` completion (requires: `bash-completion`)
1186   + add `zsh` completion in a later release (#458)
1187 * Fixes for known issues in `1.5.3`.