Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Dependency resolution across provided AUR and repos #687

Open
ratijas opened this issue Jan 18, 2021 · 3 comments
Open

Dependency resolution across provided AUR and repos #687

ratijas opened this issue Jan 18, 2021 · 3 comments

Comments

@ratijas
Copy link
Contributor

ratijas commented Jan 18, 2021

Summary

Package from repository with exact match by name takes precedence and hides possible "provided" matches from AUR.

Description

Take a look at zsh/aura session in Konsole on a screenshot below.

aura session in Konsole

Text from the session on a screenshot:

❯ aura -Asr dotnet-host
aur/dotnet-host-bin 5.0.2.sdk102-1 (21 | 4.31)
    A generic driver for the .NET Core Command Line Interface (binary)
aur/dotnet-host-preview 5.0.0+100+rc.2.20479.15-2 (7 | 0.23)
    A generic driver for the .NET Core Command Line Interface (preview, binary)
community/dotnet-host 3.1.8.sdk108-1
    A generic driver for the .NET Core Command Line Interface
❯ aura -Ai dotnet-runtime-bin
Repository  : aur
Name        : dotnet-runtime-bin
Version     : 5.0.2.sdk102-1
AUR Status  : Up to Date
Maintainer  : Gr3q
Project URL : https://www.microsoft.com/net/core
AUR URL     : https://aur.archlinux.org/packages/dotnet-runtime-bin
License     : MIT
Depends On  : dotnet-host>=5.0.2 glibc icu krb5 libcurl.so libunwind openssl zlib
Build Deps  : 
Votes       : 21
Popularity  : 4.31
Description : The .NET Core runtime (binary)

❯ aura -Ai dotnet-host-bin
Repository  : aur
Name        : dotnet-host-bin
Version     : 5.0.2.sdk102-1
AUR Status  : Up to Date
Maintainer  : Gr3q
Project URL : https://www.microsoft.com/net/core
AUR URL     : https://aur.archlinux.org/packages/dotnet-host-bin
License     : MIT
Depends On  : 
Build Deps  : 
Votes       : 21
Popularity  : 4.31
Description : A generic driver for the .NET Core Command Line Interface (binary)

❯ aura -A --json dotnet-host-bin | jq .Provides
[
  "dotnet-host",
  "dotnet-host=5.0.2"
]
❯ sudo aura -A \
>      dotnet-host-bin dotnet-runtime-bin dotnet-sdk-bin dotnet-targeting-pack-bin
aura >>= Determining dependencies...

aura >>= The package dotnet-runtime-bin depends on version >=5.0.2 of dotnet-host, but the most recent version is 3.1.8.sdk108.

Command aura -A --json dotnet-host-bin | jq . shows a package details, and we can clearly see the "Provides" array. But aura refuses to even consider dotnet-host-bin as a candidate package to provide dotnet-host>=5.0.2, even though it was explicitly requested.

Expected behavior

Install all those specified packages at once. According to Arch Linux wiki on .NET Core they should be good together.

Actual behavior

Unable to resolve dependencies, hence refuses to install packages altogether.

Related

#683 seems like the same problem, but sideview. Might as well close a duplicate.

Version

aura-bin: 3.2.2-1

@fosskers
Copy link
Owner

It looks like current Aura is not considering "provides" correctly, at least when AUR packages are concerned. This might have been broken upon the last dependency solving logic rewrite.

That logic is being rewritten in the Rust port anyway, so let's wait for that and then use this specific issue here as a test case.

@ratijas
Copy link
Contributor Author

ratijas commented Feb 15, 2021

Leads to interesting failures. Now I can't just upgrade all packages.

❯ /autism
[sudo] password for pitoo: 
aura >>= Saved package state.
:: Synchronizing package databases...
 core is up to date
[...]
aura >>= AUR Packages to upgrade:
aspnet-runtime-bin             :: 5.0.2.sdk102-1             -> 5.0.3.sdk103-1
aspnet-targeting-pack-bin      :: 5.0.2.sdk102-1             -> 5.0.3.sdk103-1
dotnet-host-bin                :: 5.0.2.sdk102-1             -> 5.0.3.sdk103-1
dotnet-runtime-bin             :: 5.0.2.sdk102-1             -> 5.0.3.sdk103-1
dotnet-sdk-bin                 :: 5.0.2.sdk102-1             -> 5.0.3.sdk103-1
dotnet-targeting-pack-bin      :: 5.0.2.sdk102-1             -> 5.0.3.sdk103-1
jetbrains-toolbox              :: 1.19.7784-1                -> 1.20.7940-1
libnvidia-container            :: 1.3.1-1                    -> 1.3.3-1
libnvidia-container-tools      :: 1.3.1-1                    -> 1.3.3-1
netstandard-targeting-pack-bin :: 5.0.2.sdk102-1             -> 5.0.3.sdk103-1
nvidia-container-toolkit       :: 1.4.0-2                    -> 1.4.2-1
rizin-git                      :: 1:0.2.0.r25612.ed6d93d4d-1 -> 1:0.2.0.r25736.3f71f45c5-1
teamviewer                     :: 15.14.3-1                  -> 15.14.5-1
visual-studio-code-bin         :: 1.52.1-1                   -> 1.53.2-1
zoom                           :: 5.5.0-1                    -> 5.5.2-1

aura >>= Saved package state.
aura >>= Determining dependencies...

aura >>= The package dotnet-runtime-bin depends on version >=5.0.3 of dotnet-host, but the most recent version is 3.1.8.sdk108.
❯ auloc dotnet-host
Name            : dotnet-host-bin
Version         : 5.0.2.sdk102-1
Description     : A generic driver for the .NET Core Command Line Interface (binary)
Architecture    : x86_64
URL             : https://www.microsoft.com/net/core
Licenses        : MIT
Groups          : None
Provides        : dotnet-host  dotnet-host=5.0.2
Depends On      : None
Optional Deps   : None
Required By     : dotnet-runtime-bin
Optional For    : None
Conflicts With  : dotnet-host
Replaces        : None
Installed Size  : 584.70 KiB
Packager        : Unknown Packager
Build Date      : Mon Jan 18 10:53:46 2021
Install Date    : Mon Jan 18 11:03:39 2021
Install Reason  : Explicitly installed
Install Script  : No
Validated By    : None

❯ auras dotnet-host
aur/dotnet-host-bin 5.0.3.sdk103-1 (25 | 5.14) [installed]
    A generic driver for the .NET Core Command Line Interface (binary)
aur/dotnet-host-preview 5.0.0+100+rc.2.20479.15-2 (9 | 1.54)
    A generic driver for the .NET Core Command Line Interface (preview, binary)
community/dotnet-host 3.1.8.sdk108-1
    A generic driver for the .NET Core Command Line Interface

@fosskers
Copy link
Owner

How are things these days? "provides" support has been improved in Aura 4. Have you been using it recently?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants