* 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
* 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
* refactor(upgrade): reduce code duplication in Print methods and fix typo in Filter documentation
* refactor(upgrade): optimize UserExcludeUpgrades with early return and simplify GraphUpgrades function
* Fix handling targets with specified db
Handle it in a similar way to handling targets with unspecified db.
Also refactored GraphSyncPkg method to make stuff more DRY.
* update go-mod
* Fix excluding of packages with unsatisfied deps
When dependency is unsatisfied, add to the graph not only a dep node,
but relationship with parent too.
* Remove excess(duplicate) logic
* Add test cases of upgrading with unsatisfied deps
Before this fix dependencies for AUR targets were added to the graph
after each addition of a target node. Now dependencies are added only
after all target nodes are added to the graph.
Also added some tests for previously bugged cases.
* extract runtime building from cfg
* respect AURRPCURL
* use -Syu if there are no targets, allows to pass extra options
* one more step towards removing runtime from cfg
* fix dep graph, existing in graph
* do not change from same dep reason
* roll up layer installs in case of fail
* re-use pacman exclude mechanism
should finish the reimplementation of the missing guards from the legacy
engine.
* include update in debug log
* test rollups
* use logger in dep graph
* use logger in dep graph
* use logger in dep graph
* only query for AUR packages once per tier. useful for rpc
* fix performance regression for ros-melodic
* prefer name search first
* implement needed at target gathering
* set default config
* fixup tests for needed
* show new packages in upgrade form if they exist
* refactor up select
* remove unused graph parts
* readd len
* Complete upgrade graphing
* Extract to upgrade pkg
* remove unused dep method
* remove uneeded dep
* cleanup method
* specify io Reader for testing
* use specified input vector
* fix non-active devel
* test base cases
* add devel test cases
* add range tests
* add logger struct
* use logger struct in upgrade
* follow golangci recommendations
* update deps
* update golangci