Jguer / yay

Yet another Yogurt - An AUR Helper written in Go
GNU General Public License v3.0
11.14k stars 363 forks source link

Pamac shows an AUR update, but yay does not, thoughts? #1593

Closed Scotty-Trees closed 3 years ago

Scotty-Trees commented 3 years ago

Affected Version

yay v10.3.1 - libalpm v13.0.0

Describe the bug

I use pamac-aur to check what updates are coming out throughout the week, (I know you can also use checkupdates in a terminal as well). Because of this I knew I had a few AUR updates to take care of. So I updated my system today via sudo pacman -Syu and everything went smoothly. I knew I had 3 AUR packages to update thanks to pamac-aur, so I ran yay and only 2 AUR packages were updated oddly enough. I’ve updated my mirrors and I’ve used pamac’s ‘Refresh Databases’ option so I know I’m up to date at least on that end of things.

My problem is pamac-aur is showing I have one AUR update (the package is popsicle-git), but yay says I’m fully up to date and there’s nothing to do. I’m a bit confused at the moment. I've searched around a few of the closed tasks to see if I could attempt to figure it out, but so far I haven't gotten much luck.

Reproduction Steps

1.Using pamac-aur to search for updates shows there's one new AUR git package to update. Close pamac-aur

  1. Open a terminal and tried using yay and yay -Syu --devel to update the AUR git package returns nothing.
  2. Unsure how to proceed.

Expected behavior

When an AUR update for a package is available, I usually run yay to help me update any AUR packages to the latest version. This is my first time using an AUR git package update, so I'm struggling at the moment to get it to update, any help or assistance would be most appreciated since I'd prefer to update my system all from the terminal instead of relying on pamac-aur for that.

Output

Hopefully some relevant outputs to assist this matter. I ran yay -Y --gendb and yay -Syu --devel but the popsicle-git package wasn't updated for some reason.

[scott@endeavourOS ~]$ yay -Y --gendb
:: Querying AUR...
 -> Flagged Out Of Date AUR Packages:  bitwarden  minecraft-launcher
:: PKGBUILD up to date, Skipping (1/31): gwe
:: PKGBUILD up to date, Skipping (2/31): python-py3nvml
:: PKGBUILD up to date, Skipping (3/31): optimus-manager-qt
:: PKGBUILD up to date, Skipping (4/31): pamac-aur
:: PKGBUILD up to date, Skipping (5/31): libopenmpt
:: PKGBUILD up to date, Skipping (6/31): pika-backup
:: PKGBUILD up to date, Skipping (7/31): optimus-manager
:: PKGBUILD up to date, Skipping (8/31): python-injector
:: PKGBUILD up to date, Skipping (9/31): python-pysdl2
:: PKGBUILD up to date, Skipping (10/31): libpamac-aur
:: PKGBUILD up to date, Skipping (11/31): ttf-ms-fonts
:: PKGBUILD up to date, Skipping (12/31): yaru-colors-gtk-theme
:: PKGBUILD up to date, Skipping (13/31): tauon-music-box
:: PKGBUILD up to date, Skipping (14/31): yaru (yaru-gnome-shell-theme yaru-gtk-theme yaru-gtksourceview-theme yaru-icon-theme yaru-metacity-theme yaru-session yaru-sound-theme)
:: Downloaded PKGBUILD (15/31): python-pylyrics
:: Downloaded PKGBUILD (16/31): gdm-prime (gdm-prime libgdm-prime)
:: Downloaded PKGBUILD (17/31): chrome-gnome-shell
:: Downloaded PKGBUILD (18/31): python-stagger
:: Downloaded PKGBUILD (19/31): python-hsaudiotag3k
:: Downloaded PKGBUILD (20/31): python-isounidecode
:: Downloaded PKGBUILD (21/31): timeshift
:: Downloaded PKGBUILD (22/31): nvm
:: Downloaded PKGBUILD (23/31): popsicle-git
:: Downloaded PKGBUILD (24/31): python-pulsectl
:: Downloaded PKGBUILD (25/31): spotify
:: PKGBUILD up to date, Skipping (26/31): bitwarden
:: PKGBUILD up to date, Skipping (27/31): humanity-icon-theme
:: PKGBUILD up to date, Skipping (28/31): papirus-folders
:: PKGBUILD up to date, Skipping (29/31): minecraft-launcher
:: Downloaded PKGBUILD (30/31): archlinux-appstream-data-pamac
:: Downloaded PKGBUILD (31/31): ttf-roboto-slab
:: (1/31) Parsing SRCINFO: gdm-prime (gdm-prime libgdm-prime)
:: (2/31) Parsing SRCINFO: python-hsaudiotag3k
:: (3/31) Parsing SRCINFO: python-pulsectl
:: (4/31) Parsing SRCINFO: python-stagger
:: (5/31) Parsing SRCINFO: chrome-gnome-shell
:: (6/31) Parsing SRCINFO: pamac-aur
:: (7/31) Parsing SRCINFO: tauon-music-box
:: (8/31) Parsing SRCINFO: libpamac-aur
:: (9/31) Parsing SRCINFO: popsicle-git
:: (10/31) Parsing SRCINFO: ttf-ms-fonts
:: (11/31) Parsing SRCINFO: yaru-colors-gtk-theme
:: (12/31) Parsing SRCINFO: nvm
:: (13/31) Parsing SRCINFO: libopenmpt
:: (14/31) Parsing SRCINFO: pika-backup
:: (15/31) Parsing SRCINFO: python-pylyrics
:: (16/31) Parsing SRCINFO: spotify
:: (17/31) Parsing SRCINFO: yaru (yaru-gnome-shell-theme yaru-gtk-theme yaru-gtksourceview-theme yaru-icon-theme yaru-metacity-theme yaru-session yaru-sound-theme)
:: (18/31) Parsing SRCINFO: gwe
:: (19/31) Parsing SRCINFO: optimus-manager
:: (20/31) Parsing SRCINFO: optimus-manager-qt
:: (21/31) Parsing SRCINFO: python-py3nvml
:: (22/31) Parsing SRCINFO: python-pysdl2
:: (23/31) Parsing SRCINFO: python-injector
:: (24/31) Parsing SRCINFO: python-isounidecode
:: (25/31) Parsing SRCINFO: timeshift
:: (26/31) Parsing SRCINFO: archlinux-appstream-data-pamac
:: (27/31) Parsing SRCINFO: bitwarden
:: (28/31) Parsing SRCINFO: humanity-icon-theme
:: (29/31) Parsing SRCINFO: minecraft-launcher
:: (30/31) Parsing SRCINFO: papirus-folders
:: (31/31) Parsing SRCINFO: ttf-roboto-slab
 -> Found git repo: github.com/pop-os/popsicle.git
:: GenDB finished. No packages were installed
[scott@endeavourOS ~]$ yay -Syu --devel
[sudo] password for scott: 
:: Synchronizing package databases...
 core is up to date
 extra is up to date
 community is up to date
 multilib is up to date
 endeavouros is up to date
:: Starting full system upgrade...
 there is nothing to do
:: Searching databases for updates...
:: Searching AUR for updates...
:: Checking development packages...
 -> Flagged Out Of Date AUR Packages:  bitwarden  minecraft-launcher
 there is nothing to do
[scott@endeavourOS ~]$ yay -Pg
{
    "aururl": "https://aur.archlinux.org",
    "buildDir": "/home/scott/.cache/yay",
    "absdir": "/home/scott/.cache/yay/abs",
    "editor": "",
    "editorflags": "",
    "makepkgbin": "makepkg",
    "makepkgconf": "",
    "pacmanbin": "pacman",
    "pacmanconf": "/etc/pacman.conf",
    "redownload": "no",
    "rebuild": "no",
    "answerclean": "",
    "answerdiff": "",
    "answeredit": "",
    "answerupgrade": "",
    "gitbin": "git",
    "gpgbin": "gpg",
    "gpgflags": "",
    "mflags": "",
    "sortby": "votes",
    "searchby": "name-desc",
    "gitflags": "",
    "removemake": "ask",
    "sudobin": "sudo",
    "sudoflags": "",
    "requestsplitn": 150,
    "sortmode": 0,
    "completionrefreshtime": 7,
    "sudoloop": false,
    "timeupdate": false,
    "devel": false,
    "cleanAfter": false,
    "provides": true,
    "pgpfetch": true,
    "upgrademenu": true,
    "cleanmenu": true,
    "diffmenu": true,
    "editmenu": false,
    "combinedupgrade": false,
    "useask": false,
    "batchinstall": false
}

Some additional screenshots to show that pamac-aur shows an update, but yay says there is nothing to do. Screenshot from 2021-08-27 13-37-49 Screenshot from 2021-08-27 13-38-22

It's almost the weekend, so I do hope you enjoy your time off if you have some! This is a minor bug/issue in my opinion so it's not like a big huge rush to get this all figured out right away. With that said though I will always be available to assist you in this issue, feel free to respond/ping me anytime and I'll respond accordingly. Thank you for taking the time to read this and thank you very much also for making an awesome AUR helper like yay it's a great tool to use while I'm using EndeavourOS.

Jguer commented 3 years ago

Hey @Scotty-Trees ,

yay -Y --gendb creates the file ~/.cache/yay/vcs.json with the latest SHA of the origin for each -git package. It gives a starting point for yay to start checking devel upgrades. At this point for yay it does think that you have the latest upstream version installed (even if you do not).

When you run yay -Syu --devel, yay checks again all of the remote SHAs against ~/.cache/yay/vcs.json and proposes the package for upgrade if they differ.

Hopefully if you use yay on a regular basis once the upstream SHA of a -git package has changed, it will be proposed by yay, you'll install it and yay will update its entry in ~/.cache/yay/vcs.json .

It's a matter of eventual consistency so yay -Y --gendb just tells yay to assume all those -git packages have their latest version installed.

I haven't checked how this is handled on pamac's side but traditional AUR helpers generally treated -git packages as normal packages or as packages that needed updated on every run

Scotty-Trees commented 3 years ago

Thanks very much for the quick reply! So that I get this straight, since today was the first time that I ran yay -Y --gendb anything after that then yay will see the git update, but since I just did it for the first time today, everything looks up to date. So essentially the next time that popsicle-git has an update, that is when yay will for sure see the update I take it? Do I understand that correctly?

Jguer commented 3 years ago

Thanks very much for the quick reply! So that I get this straight, since today was the first time that I ran yay -Y --gendb anything after that then yay will see the git update, but since I just did it for the first time today, everything looks up to date. So essentially the next time that popsicle-git has an update, that is when yay will for sure see the update I take it? Do I understand that correctly?

Exactly that :+1:

Scotty-Trees commented 3 years ago

Ah okay no worries, that's good to know. Definitely helps to now have a better understanding of how yay works. I think since it's not really an issue/bug, but more by design I think it's okay if you close this issue then? Thanks for helping me better understand yay I appreciate the work you do for it, it's a lovely AUR helper for sure! Thanks again for you help with this :)