Jo Garnier
73bd048c55
query: precompute metricScore once per result
...
Normalize the search term and name/provider/desc at the metric boundary, drop the per-comparison distance cache, and score each result via prepareMetrics before sorting. Adds a search-flow benchmark to track regressions.
2026-06-25 23:37:26 +02:00
Jo
02fb6ba948
fix(search): fix clober of packages from different sources with the same name ( #2882 )
v13.0.1
2026-06-19 22:39:39 +02:00
Jo
d72402292e
feat(lua): allow configuring answer menus and minor fixes to examples ( #2880 )
...
allow configuring answer menus and minor fixes to examples
2026-06-19 14:31:43 +02:00
Jo
88c72b32b1
fix(lua): change search paths to resolve lua modules in config dir ( #2879 )
...
change search paths to not resolve lua modules in cwd but in the config dir
2026-06-19 12:04:12 +02:00
Jo
8fcaff9e6f
fix(depgraph): reduce memory allocations ( #2875 )
...
* cleanup mem allocs
* lint
2026-06-18 19:58:23 +02:00
Jo
9577e22dba
doc(lua): fix formatting ( #2873 )
...
fix formatting
v13.0.0
2026-06-17 22:14:45 +02:00
Jo
db55be2626
Update man page version to v13 and sync VS Code settings ( #2872 )
...
update man entry
2026-06-17 22:11:39 +02:00
Jo
70d7a0f0a8
fix(lua): Reduce event size of PostInstall and SearchFilter hooks ( #2871 )
...
* remove fields from events that might not be needed yet
* reduce event size
2026-06-17 21:40:02 +02:00
Jo
15057c8dab
misc(ci): add modernize linter and update versioning ( #2870 )
...
* add modernize linter
* lint unused
* update imports
* ignore agent info
2026-06-17 21:09:53 +02:00
Jo
df4cbc4ce4
fix(log): fix debugln not spacing args correctly ( #2869 )
...
* fix debugln not spacing args correctly
* fix tests
2026-06-17 20:39:24 +02:00
Jo
3b3a2b1dcc
fix: search filter hooking and multierror cleanup ( #2868 )
...
* fix search filtering pass along
* prepare inclusion 'modernize' linter and use errors.join instead
2026-06-17 19:34:33 +02:00
Jo
4dbf124c51
feat(lua): add search filter and post install hooks ( #2867 )
...
* search filter and post install
add examples
* add tag
2026-06-16 23:35:18 +02:00
Jo
6927555779
fix: propagate Maintainer field through dep graph and upgrade service ( #2865 )
...
* fix: propagate Maintainer field through dep graph and upgrade service
Add Maintainer to InstallInfo and propagate it through the dependency
graph (dep_resolve, dep_visual) and UpgradeService. Update docs
generator with TOC support and Lua page builder.
* lint
2026-06-16 12:19:19 +02:00
Jo
a70c058875
Fix gendocs index source path ( #2863 )
...
fix gendocs index source path
2026-06-16 00:54:25 +02:00
Jo
18b8b1b29b
Fix Pages artifact action pin ( #2862 )
...
fix pages artifact action pin
2026-06-16 00:51:45 +02:00
Jo
5f2dd7df38
docs: add static docs site generator and Pages deployment ( #2860 )
...
* docs: add static docs site generator and Pages deployment
Render doc/ (man page, Lua API, init.lua template) into a static HTML site via scripts/gendocs and publish it to GitHub Pages on push to next.
* update gendoc
2026-06-16 00:39:58 +02:00
Jo
1ec6f3f793
feat: expose AUR package maintainer to upgrade hooks ( #2858 )
...
lint
2026-06-15 22:07:49 +02:00
dependabot[bot]
425b18b2cd
chore(deps): bump golang.org/x/net from 0.55.0 to 0.56.0 in the go-all group ( #2857 )
...
chore(deps): bump golang.org/x/net in the go-all group
Bumps the go-all group with 1 update: [golang.org/x/net](https://github.com/golang/net ).
Updates `golang.org/x/net` from 0.55.0 to 0.56.0
- [Commits](https://github.com/golang/net/compare/v0.55.0...v0.56.0 )
---
updated-dependencies:
- dependency-name: golang.org/x/net
dependency-version: 0.56.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: go-all
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-15 21:10:02 +02:00
Jo
16479dcaf3
feat: Add AURPostDownload hook ( #2856 )
...
* run hooks after source download
* lint
* nitpick: remove event table indirection
2026-06-15 18:10:41 +02:00
Jo
421b65bf43
feat: Add UpgradeSelect hook, logging and security example ( #2855 )
...
* add upgrade hook structure
* remove extra field
* feat: Add UpgradeSelect hook logging and security example
Add yay.log API to UpgradeSelect hooks for informational and warning messages.
- Add yay.log.info() and yay.log.warn() for hook logging
- Add doc/examples/recently_modified.lua: practical example to pre-exclude
recently-modified AUR packages (supply chain attack mitigation)
- Update doc/init.lua with improved UpgradeSelect example
- Update doc/lua.md with logging API documentation
- Refactor autocmd and load modules for cleaner log integration
- Add comprehensive unit tests for logging functionality
* lint
2026-06-15 15:25:40 +02:00
transifex-integration[bot]
f1f21f1ff8
Updates for file po/en.po in id ( #2853 )
...
* Translate po/en.po in id
100% translated source file: 'po/en.po'
on 'id'.
* Translate po/en.po in id
100% translated source file: 'po/en.po'
on 'id'.
* Translate po/en.po in id
100% translated source file: 'po/en.po'
on 'id'.
* Translate po/en.po in id
100% translated source file: 'po/en.po'
on 'id'.
* Translate po/en.po in id
100% translated source file: 'po/en.po'
on 'id'.
* Translate po/en.po in id
100% translated source file: 'po/en.po'
on 'id'.
* Translate po/en.po in id
100% translated source file: 'po/en.po'
on 'id'.
* Translate po/en.po in id
100% translated source file: 'po/en.po'
on 'id'.
* Translate po/en.po in id
100% translated source file: 'po/en.po'
on 'id'.
* Translate po/en.po in id
100% translated source file: 'po/en.po'
on 'id'.
---------
Co-authored-by: transifex-integration[bot] <43880903+transifex-integration[bot]@users.noreply.github.com>
2026-06-15 15:19:39 +02:00
Jo
1501438fba
AUR: Add AURPreInstall hooks ( #2854 )
...
* add lua hooks on aur package installs
* add abort command to differentiate errors and aborts
* u
2026-06-15 13:31:13 +02:00
rebel onion
977c9562ce
feat: Show AUR Package Age ( #2846 )
...
* feat: show AUR package age
2026-06-12 11:11:50 +02:00
dependabot[bot]
29f5c22d49
chore(deps): bump the go-all group across 1 directory with 2 updates ( #2844 )
...
Bumps the go-all group with 2 updates in the / directory: [golang.org/x/sys](https://github.com/golang/sys ) and [golang.org/x/term](https://github.com/golang/term ).
Updates `golang.org/x/sys` from 0.45.0 to 0.46.0
- [Commits](https://github.com/golang/sys/compare/v0.45.0...v0.46.0 )
Updates `golang.org/x/term` from 0.43.0 to 0.44.0
- [Commits](https://github.com/golang/term/compare/v0.43.0...v0.44.0 )
---
updated-dependencies:
- dependency-name: golang.org/x/sys
dependency-version: 0.46.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: go-all
- dependency-name: golang.org/x/term
dependency-version: 0.44.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: go-all
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-09 16:33:33 +02:00
Jo
ecae3e601e
Add Lua configuration support ( #2845 )
...
* lua opt trial
* go mod tidy
2026-06-09 00:31:26 +02:00
Jo
4c5fda7944
fix(alpm): wire up log callback and add Debug method ( #2843 )
...
fix missing callback
2026-06-08 00:18:39 +02:00
Jo
73090ae5f2
fix: add missing locales ( #2841 )
...
fix missing locales
2026-06-07 19:35:17 +02:00
Jo
ac83d3fb06
Switch to JaroWinkler distance and reweight package search scores ( #2840 )
...
fix(query): use JaroWinkler distance and reweight metric components
Switch from Hamming to JaroWinkler distance for package name matching,
as JaroWinkler handles variable-length strings and gives a prefix-match
bonus better suited to package search.
Reweight the score components from sim*0.50 + simDesc*0.20 + popularity*0.30
to sim*0.35 + simDesc*0.15 + popularity*0.50 to better surface popular
packages when name similarity is moderate.
Roll back the unreleased version target from 13.0.0 to 12.6.0 to align
with the next minor release after v12.5.7.
Fix scanner.Err() check in parseStdin to surface I/O errors that were
previously silently dropped.
v12.6.0
2026-06-07 18:16:46 +02:00
Jo
86e6001498
feat(completions): add deptest and build subcommand completions ( #2839 )
2026-06-07 00:53:51 +02:00
Jo
db19422f2a
fix(runtime): use AUR cache in query builder when RPC disabled ( #2838 )
...
* fix(runtime): use AUR cache in query builder when RPC disabled
* lint
2026-06-07 00:20:07 +02:00
Jo
50c8291a1e
Revert: ini addition to figure out a better customizable system ( #2836 )
...
* Revert "feat(ini): support ini config (#2774 )"
This reverts commit 3e3d5aa111 .
* use base-devel
* fix lint
* fix lint
* fix lint
2026-06-06 23:56:45 +02:00
Jo
e6a7c89130
fix: completion cache goroutine races with ALPM handle cleanup ( #2835 )
...
* fix: completion cache goroutine races with ALPM handle cleanup
* update go mod
* fix: failed ci builder
2026-06-05 10:23:33 +02:00
Jo
e03be81baa
Lock actions in CI ( #2829 )
...
* update dockerfile
* lock actions
* remove dockerhub
* fix golangci-lint install in ci image
2026-06-05 09:59:47 +02:00
dependabot[bot]
ae3b25e98e
chore(deps): bump the go-all group with 3 updates ( #2823 )
...
Bumps the go-all group with 3 updates: [golang.org/x/net](https://github.com/golang/net ), [golang.org/x/sys](https://github.com/golang/sys ) and [golang.org/x/term](https://github.com/golang/term ).
Updates `golang.org/x/net` from 0.53.0 to 0.54.0
- [Commits](https://github.com/golang/net/compare/v0.53.0...v0.54.0 )
Updates `golang.org/x/sys` from 0.43.0 to 0.44.0
- [Commits](https://github.com/golang/sys/compare/v0.43.0...v0.44.0 )
Updates `golang.org/x/term` from 0.42.0 to 0.43.0
- [Commits](https://github.com/golang/term/compare/v0.42.0...v0.43.0 )
---
updated-dependencies:
- dependency-name: golang.org/x/net
dependency-version: 0.54.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: go-all
- dependency-name: golang.org/x/sys
dependency-version: 0.44.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: go-all
- dependency-name: golang.org/x/term
dependency-version: 0.43.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: go-all
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-12 14:55:52 +02:00
dependabot[bot]
d101080bad
chore(deps): bump gopkg.in/ini.v1 from 1.67.1 to 1.67.2 in the go-all group ( #2818 )
...
chore(deps): bump gopkg.in/ini.v1 in the go-all group
Bumps the go-all group with 1 update: gopkg.in/ini.v1.
Updates `gopkg.in/ini.v1` from 1.67.1 to 1.67.2
---
updated-dependencies:
- dependency-name: gopkg.in/ini.v1
dependency-version: 1.67.2
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: go-all
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-05 12:52:07 +01:00
transifex-integration[bot]
21b0514c3f
Updates for file po/en.po in ru_RU ( #2815 )
...
Translate po/en.po in ru_RU
100% translated source file: 'po/en.po'
on 'ru_RU'.
Co-authored-by: transifex-integration[bot] <43880903+transifex-integration[bot]@users.noreply.github.com>
2026-04-27 22:11:23 +01:00
dependabot[bot]
38ec701e5c
chore(deps): bump github.com/deckarep/golang-set/v2 from 2.8.0 to 2.9.0 in the go-all group ( #2816 )
...
chore(deps): bump github.com/deckarep/golang-set/v2 in the go-all group
Bumps the go-all group with 1 update: [github.com/deckarep/golang-set/v2](https://github.com/deckarep/golang-set ).
Updates `github.com/deckarep/golang-set/v2` from 2.8.0 to 2.9.0
- [Release notes](https://github.com/deckarep/golang-set/releases )
- [Commits](https://github.com/deckarep/golang-set/compare/v2.8.0...v2.9.0 )
---
updated-dependencies:
- dependency-name: github.com/deckarep/golang-set/v2
dependency-version: 2.9.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: go-all
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-04-27 22:11:07 +01:00
transifex-integration[bot]
ed536c91b7
Updates for file po/en.po in es ( #2813 )
...
* Translate po/en.po in es
100% translated source file: 'po/en.po'
on 'es'.
* Translate po/en.po in es
100% translated source file: 'po/en.po'
on 'es'.
---------
Co-authored-by: transifex-integration[bot] <43880903+transifex-integration[bot]@users.noreply.github.com>
2026-04-27 10:42:17 +01:00
dependabot[bot]
099f9f19e8
chore(deps): bump the go-all group with 3 updates ( #2812 )
...
Bumps the go-all group with 3 updates: [golang.org/x/net](https://github.com/golang/net ), [golang.org/x/sys](https://github.com/golang/sys ) and [golang.org/x/term](https://github.com/golang/term ).
Updates `golang.org/x/net` from 0.52.0 to 0.53.0
- [Commits](https://github.com/golang/net/compare/v0.52.0...v0.53.0 )
Updates `golang.org/x/sys` from 0.42.0 to 0.43.0
- [Commits](https://github.com/golang/sys/compare/v0.42.0...v0.43.0 )
Updates `golang.org/x/term` from 0.41.0 to 0.42.0
- [Commits](https://github.com/golang/term/compare/v0.41.0...v0.42.0 )
---
updated-dependencies:
- dependency-name: golang.org/x/net
dependency-version: 0.53.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: go-all
- dependency-name: golang.org/x/sys
dependency-version: 0.43.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: go-all
- dependency-name: golang.org/x/term
dependency-version: 0.42.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: go-all
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-04-14 10:33:54 +02:00
Sarbojit Rana and Jo
1879251339
fix: skip cache clean when no valid pacman cache directories exist #2652 ( #2806 )
...
* fix: skip cache clean when no valid pacman cache directories exist
* Update clean.go
remove addtional line as suggested
Co-authored-by: Jo <me@jguer.space >
* fix: apply gofmt
---------
Co-authored-by: Jo <me@jguer.space >
2026-04-12 22:16:34 +02:00
transifex-integration[bot]
29cdc729bb
Updates for file po/en.po in pl ( #2808 )
...
Translate po/en.po in pl
100% translated source file: 'po/en.po'
on 'pl'.
Co-authored-by: transifex-integration[bot] <43880903+transifex-integration[bot]@users.noreply.github.com>
2026-03-30 23:46:46 +02:00
transifex-integration[bot]
3be99fe450
Updates for file po/en.po in pl_PL ( #2807 )
...
Translate po/en.po in pl_PL
100% translated source file: 'po/en.po'
on 'pl_PL'.
Co-authored-by: transifex-integration[bot] <43880903+transifex-integration[bot]@users.noreply.github.com>
2026-03-30 23:46:30 +02:00
dependabot[bot]
3c905568b0
chore(deps): bump github.com/Jguer/dyalpm from 0.1.1 to 0.1.2 in the go-all group across 1 directory ( #2804 )
...
chore(deps): bump github.com/Jguer/dyalpm in the go-all group
Bumps the go-all group with 1 update: [github.com/Jguer/dyalpm](https://github.com/Jguer/dyalpm ).
Updates `github.com/Jguer/dyalpm` from 0.1.1 to 0.1.2
- [Commits](https://github.com/Jguer/dyalpm/compare/v0.1.1...v0.1.2 )
---
updated-dependencies:
- dependency-name: github.com/Jguer/dyalpm
dependency-version: 0.1.2
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: go-all
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-03-30 20:28:18 +02:00
Jo
3b79933638
test: harden coverage and make tests parallel-safe ( #2797 )
...
* Test coverage hardening and parallel-safe refactors
Add focused test coverage for under-tested operational paths, edge branches,
and make key table-driven suites parallel-safe. Also fixed flaky installer
test execution under repeated/parallel runs.
* chore: fix goimports ordering for golangci-lint
* Test(download): expand integration coverage for download paths
Add integration scenarios for force/pull repo updates, repo-only and skip semantics,
and direct AUR download/scanner coverage used by getpkgbuild and package preparation.
* Test(exe): relax systemd-run path assertion
Fix flaky TestBuildGitCmd by accepting an absolute systemd-run path while still
asserting the expected binary is used.
* Test(text): avoid race in color tests
Remove parallel execution from TestColorHash so global UseColor writes do not
overlap with color consumers in parallel tests and trigger race detector
failures.
* fix potential race conditions
2026-03-25 00:51:34 +01:00
transifex-integration[bot]
506d726bae
Updates for file po/en.po in da_DK ( #2802 )
...
Translate po/en.po in da_DK
100% translated source file: 'po/en.po'
on 'da_DK'.
Co-authored-by: transifex-integration[bot] <43880903+transifex-integration[bot]@users.noreply.github.com>
2026-03-25 00:38:30 +01:00
transifex-integration[bot]
4d2bbda015
Updates for file po/en.po in da ( #2803 )
...
Translate po/en.po in da
100% translated source file: 'po/en.po'
on 'da'.
Co-authored-by: transifex-integration[bot] <43880903+transifex-integration[bot]@users.noreply.github.com>
2026-03-25 00:38:11 +01:00
Jo
90ae08862a
Remove timeupdate option ( #2796 )
...
* disable provides by default
* remove time update due to low usage
2026-03-18 23:01:14 +01:00
dependabot[bot]
11da5acc14
chore(deps): bump the go-all group with 2 updates ( #2795 )
...
Bumps the go-all group with 2 updates: [golang.org/x/net](https://github.com/golang/net ) and [golang.org/x/term](https://github.com/golang/term ).
Updates `golang.org/x/net` from 0.51.0 to 0.52.0
- [Commits](https://github.com/golang/net/compare/v0.51.0...v0.52.0 )
Updates `golang.org/x/term` from 0.40.0 to 0.41.0
- [Commits](https://github.com/golang/term/compare/v0.40.0...v0.41.0 )
---
updated-dependencies:
- dependency-name: golang.org/x/net
dependency-version: 0.52.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: go-all
- dependency-name: golang.org/x/term
dependency-version: 0.41.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: go-all
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-03-18 22:13:57 +01:00
TurtleRuss
412c145eb4
fix(query): incorporate AUR popularity into search metric ( #2789 )
...
Replace vote-only sigmoid with a blended votes+popularity score in
aurSortByMetric. AUR's Popularity field (already stored and populated
from the API) is a time-decayed vote score that better reflects current
relevance than raw NumVotes alone.
Falls back to votes-only when popularity <= 0 (brand-new packages).
Uses the same sigmoid normalization pattern as the existing minVotes
constant (minPopularity = 0.5).
Side effect: AUR packages no longer artificially outscore repo packages
via historical vote counts when separateSources is disabled. Updated
two noseparatesources test expectations accordingly.
2026-03-15 23:14:54 +01:00
dependabot[bot]
1dc0aaf4de
chore(deps): bump golang.org/x/sys from 0.41.0 to 0.42.0 in the go-all group ( #2794 )
...
chore(deps): bump golang.org/x/sys in the go-all group
Bumps the go-all group with 1 update: [golang.org/x/sys](https://github.com/golang/sys ).
Updates `golang.org/x/sys` from 0.41.0 to 0.42.0
- [Commits](https://github.com/golang/sys/compare/v0.41.0...v0.42.0 )
---
updated-dependencies:
- dependency-name: golang.org/x/sys
dependency-version: 0.42.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: go-all
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-03-15 23:06:54 +01:00