Commit Graph

62 Commits

Author SHA1 Message Date
Jo
e28319fece
chore(yay): lift legacy engine (#2189)
* remove legacy engine

* remove legacy dep handlers

* use prepare for gendb

* remove unused method

* remove aur client old interface

* remove unused menu fns

* remove inactive upgrademenu option

* unexport printInfo
2023-05-24 08:22:18 +00:00
Jo
fdcf6ef664
ci(yay): add integration test framework (#2178)
* add integration test framework

* fix integration tests

* fix integration tests
2023-05-22 21:38:02 +00:00
Andrew Geng
d33bf8841d
Fix yay -Sc wiping ~/.cache/yay on 3rd question. (#2175)
If you answer yes to
    :: Do you want to remove all other AUR packages from cache? [Y/n]
then we run cleanAUR(), intending to remove subdirectories of
~/.cache/yay that do not share a name with installed packages not
found in the sync repositories.

Where this was going wrong was cleanAUR() was getting an empty map from
dbExecutor.InstalledRemotePackages()---because InstalledRemotePackages
only recomputes its result if installedRemotePkgMap is nil, whereas
NewExecutor initialized it to an empty map. The symptom was it emptied
my ~/.cache/yay.

We do want a non-nil, empty installedRemotePkgMap to block recomputing
(that is, to indicate the user really has no remote packages), so now
NewExecutor initializes it to nil, and getPackageNamesBySource is
responsible for making sure it's non-nil before writing to it.

Fixes #2152, which seems to have been introduced in
4626a0409c.
2023-05-22 20:34:51 +00:00
smolx
ec15a5b363
Implement tests for -Qu/q (#2156)
Implement tests for -Qu/q (#2061)
2023-05-15 10:33:12 +02:00
Jo
966bfb74ee
feat(dep): add provider resolution on first layer (#2147)
add provider resolution on first layer
2023-05-01 15:56:42 +00:00
Jo
49267b9cd9
feat(upgrade): separate menu for pulled along dependencies (#2141)
try separate menu for pulled along

use installed as term

fix order gap

fix tests

add aur db + aur scenario
2023-04-27 07:20:21 +00:00
Jo
161fede450
chore(yay): use new aur client for -Si (#2112)
* chore(yay): use new aur client for -Si

* chore(yay): use new client for clean
2023-04-11 21:15:21 +00:00
Jo
4a9c736e2a
chore(upgrade): add makedep explain to the upgrade menu (#2110)
* display required by

* cutoff at 2
2023-04-11 16:41:34 +00:00
Jo
c7a51a1614
fix(text): ensure error logs go to stderr (#2105)
ensure Error logs go to stderr
2023-04-10 16:26:09 +00:00
Jo
0892fc7cdd
fix(query): reduce verbosity of -Qu (#2060) 2023-04-03 22:05:45 +00:00
Jo
5d1c54413c
fix(query_builder): use correct aur client for mixed query builder (#2041)
* use same repo search as pacman

use logger child from runtime

* use common interface for aur clients
2023-04-01 10:33:05 +00:00
Jo
e615f8e07e
fix(new_engine): exclude menu removing new deps (#2040)
fix exclude menu removing new deps
2023-03-31 22:15:57 +00:00
Jo
d75e0a001d
fix(clean): modify clean args (#2039) 2023-03-31 21:22:57 +00:00
Jo
3d5a43c294
chore(yay): bump version (#1949)
bump major
2023-03-07 21:04:06 +00:00
Jo
463e60e045
chore(deps): update goalpm (#1947)
* update dependencies

* use logger in cmd runner
2023-03-06 09:19:21 +00:00
Jo
8b8d6001a4
fix(new_engine): Improve partial upgrade protection and pinned deps (#1945)
* 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
2023-03-05 17:31:11 +00:00
Jo
7490836991
fix(new_engine): respect --needed on target gathering (fixes #1552) (#1920)
* 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
2023-02-20 23:14:59 +00:00
Jo
0bf4c2e502
feat(new_install): show (#1915)
* 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
2023-02-17 19:01:26 +00:00
Jo
4626a0409c
fix(vcs): do not vcs update gather orphan info (#1902)
* reduce complexity of devel upgrade gathering

* clean orphans devel
2023-01-23 23:03:32 +00:00
Jo
b8debd1ae7
chore(yay): fix small linting issues (#1885)
* replace context.TODO() in tests context.Background()

* remove mock TODOs

* prettier

* apply missing linting
2023-01-03 21:43:56 +00:00
Jo
28d90c981e
feat(new engine): local install feature testing (#1867)
* 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
2022-12-29 12:34:53 +00:00
Jo
3eb9eb0d3d
feat(new_engine): add support for noDeps and noCheckDeps (#1861)
* feat(new engine): add support for noDeps and noCheckDeps

* test(new engine): Add tests for -dd and normal split package resolution
2022-12-18 20:14:41 +00:00
Jo
7da9f4869d
feat(new engine): skip built and respect --needed (#1852)
* add built package check

* respect --needed for new engine

* add needed check and test

* add test for not built
2022-12-16 17:23:44 +00:00
Jo
6ad63cae10
fix: rework menus to work on both flows (#1830)
* rework menus to work on both flows

* add installed package split

* remove unused field

* Add post install hooks
2022-11-20 00:51:55 +00:00
jguer
b5bdcfbd1a
add basic sync upgrade capabilities 2022-11-01 23:48:35 +01:00
jguer
cadeecc4df
add dep graph for local install 2022-09-06 23:38:47 +02:00
jguer
1a52da5891
Make provides disabled by default. Add Migration to set provides to disabled 2022-08-05 22:55:54 +02:00
J Guerreiro
e4a1f018ea
feat(search): Add fuzzy name matching and mixed sources (#1719)
* fix(alpm): fix callback text

* feat(yay): Add mixed search result

* remove old result structs

* add option for controlling query builder

* only set query builder after parsing args

* add parser args

* update manpage

* write test for results

* write test for results

* mixed source test

* only sort 1 time with every mode
2022-03-06 23:48:15 +00:00
jguer
0e3affd876
fix(input): fix display in wrong line of number input 2022-02-06 10:44:33 +01:00
Matt Alexander
22c165a11f feat(search): add optional setting that formats each search result on a single line, Part II 2021-11-05 09:26:34 +01:00
jguer
57a9630054 chore(alpm): use text.getinput for ialpm 2021-10-27 23:45:23 +02:00
jguer
555d1ead95
chore(version): bump major version 2021-09-08 22:28:08 +02:00
jguer
cb4b57f6d8 chore(golangci): add new linters 2021-08-11 22:19:55 +02:00
jguer
98378642bc test(download): add tests for repo downloading 2021-08-05 10:11:54 +02:00
jguer
50c0ece9a7 chore(style): run gofumpt on packages 2021-08-05 10:11:54 +02:00
jguer
61e38ad2fc chore(pacman): remove pacman 5 support 2021-07-03 18:27:14 +02:00
x1b6e6
faf03436a7 Sync with go-alpm v2.0.5 2021-05-07 23:30:08 +02:00
x1b6e6
767c7975f3 fix test using multiple 'Architecture' value
Signed-off-by: x1b6e6 <ftdabcde@gmail.com>
2021-05-04 08:43:56 +02:00
x1b6e6
de113b87f3 Add support for multiple 'Architecture' values
This allows architecture to be multivalued. On x86-64 machines, this
could be something like:
    Architecture = x86-64-v3 x86-64

We use the first specified Architecture value in mirrorlist $arch
variable replacement, as this is backwards-compatible and sane.

More info:
https://git.archlinux.org/pacman.git/commit/?id=3179db108a83104d9de6d1d607f55f8118e92160

Signed-off-by: x1b6e6 <ftdabcde@gmail.com>
2021-05-04 08:43:56 +02:00
morganamilo
29f4c43227 Sort upslice by pacman repo order 2021-04-24 17:28:53 +02:00
morganamilo
f04a469324 Make UpSlice a struct instead of a type alias 2021-04-24 17:28:53 +02:00
D1CED
eb9ff86aa9 fixed lint issues 2021-03-12 18:11:30 +01:00
Jannis M. Hoffmann
df1361aa05 moved Upgrade to db
to reduce dependencies
2021-03-12 18:11:30 +01:00
Jannis M. Hoffmann
5993613c53 Added type alias for alpm types in db 2021-03-12 18:11:30 +01:00
xvqxy
9fc6d9c128 fix(query): Respect --deps and --explicit.
This fixes #1283.

yay --query --upgrades [--explicit|--deps] will not return same packages pacman
does extended with AUR packages.
yay --show --numberupgrades [--explicit|--deps] will also work.
2021-02-14 22:38:49 +01:00
jguer
8d9fed2ad0
fix(query): fix remote package slow filtering 2020-11-16 08:59:35 +01:00
jguer
c4dc9bec6e fix(ialpm): fix typo 2020-10-26 09:32:22 +01:00
jguer
3e698f313a
test(alpm): implement alpm interfaces 2020-10-01 13:38:03 +02:00
jguer
d6aa288ab8
fix(alpm): update alpm version 2020-09-20 17:00:45 +02:00
jguer
72f120b0f3
feat(config): refactor config to allow running without config 2020-08-21 02:39:52 +02:00