* improve topo performance
* fix: Resolve data race in dep_graph_test and clean up local mods
* cleanup
* feat(dep): add split functionality
* cleanup mem allocs
* 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
* 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
* ci(yay): update packages on builder before building release
* update go-aur
* dep/topo: clarify graph API, rename methods, add tests
- Rename topo methods for clarity (TopoSortedLayers, AddProvides, HasProvides, GetProviderInfo)
- Add GoDoc describing edge direction and semantics
- Make ForEach safe when node info is missing
- Add unit tests for Dependencies/Dependents behavior
- Update call sites
* Revert "ci(yay): update packages on builder before building release"
This reverts commit bb64208c64.
* rework relationship between runtime and cfg
* separate runtime from cfg
* simplify instantiation logic
* move installer to appropriate package
* move operator to sync package
* add tests for srcinfo service
* consolidate srcinfo service in sync
* add logger to srcinfo
* add logger to preparer
* remove unused text functions
* remove remaining text.* from srcinfo
* remove global logger parts
* remove global org method exports
* remove global logger
* move text->input
* add rule to prevent fmt.Print
* update golangci go version
* remove outdated FAQs
* remove outdated FAQs
* 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.
* 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
* make config into parameter
* test(new engine): local install test
* test(keys): fix test keys
* complete integration test for local install
* add simple mising mechanism