Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 879815 - dev-lang/rust-1.65.0: stablereq
Summary: dev-lang/rust-1.65.0: stablereq
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Stabilization (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Georgy Yakovlev
URL:
Whiteboard:
Keywords: CC-ARCHES, STABLEREQ
Depends on:
Blocks:
 
Reported: 2022-11-05 06:03 UTC by Georgy Yakovlev
Modified: 2022-12-03 16:07 UTC (History)
5 users (show)

See Also:
Package list:
dev-lang/rust-bin-1.65.0 amd64 arm arm64 ppc ppc64 sparc x86 dev-lang/rust-1.65.0 amd64 arm arm64 ppc64 sparc x86 virtual/rust-1.65.0-r1
Runtime testing required: ---
nattka: sanity-check+


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Georgy Yakovlev archtester gentoo-dev 2022-11-05 06:03:37 UTC
opening early, do not CC anything yet.
Comment 1 Emanuel Czirai 2022-11-17 01:28:10 UTC
I'm just going to make a note here, that because there's now:
virtual/rust-1.65.0-r1 (due to [1] )
without an existing
virtual/rust-1.65.0 (due to [2] which deleted 1.64 and 1.65 ebuilds)
but with an existing:
virtual/rust-1.64.0-r1
(due to [3] still remaining)
then my package mask:
>dev-lang/rust-1.65.0
>virtual/rust-1.65.0

causes emerge to downgrade virtual/rust from 1.65.0 to:
virtual/rust-1.64.0-r1:0/llvm-14::gentoo [1.65.0:0/0::gentoo] 
thus emerging: dev-lang/rust-bin-1.64.0-r1::gentoo

Of course I worked around it by updating my package.mask to:
>virtual/rust-1.65.0-r1

[1] https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c6358c20f460a1be99c3ca1c34f2ee9ef4d92878 
[2] https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=869feec511b29896d24369460575cdfa10a0caa7
[3] https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1c1015afd61317ba45e76ba89a9325c6d690cff7

Or just see the whole changelog: https://packages.gentoo.org/packages/virtual/rust/changelog
Comment 2 Georgy Yakovlev archtester gentoo-dev 2022-11-17 08:13:12 UTC
(In reply to Emanuel Czirai from comment #1)
> I'm just going to make a note here, that because there's now:
> virtual/rust-1.65.0-r1 (due to [1] )
> without an existing
> virtual/rust-1.65.0 (due to [2] which deleted 1.64 and 1.65 ebuilds)
> but with an existing:
> virtual/rust-1.64.0-r1
> (due to [3] still remaining)
> then my package mask:
> >dev-lang/rust-1.65.0
> >virtual/rust-1.65.0
> 
> causes emerge to downgrade virtual/rust from 1.65.0 to:
> virtual/rust-1.64.0-r1:0/llvm-14::gentoo [1.65.0:0/0::gentoo] 
> thus emerging: dev-lang/rust-bin-1.64.0-r1::gentoo
> 
> Of course I worked around it by updating my package.mask to:
> >virtual/rust-1.65.0-r1
> 
> [1]
> https://gitweb.gentoo.org/repo/gentoo.git/commit/
> ?id=c6358c20f460a1be99c3ca1c34f2ee9ef4d92878 
> [2]
> https://gitweb.gentoo.org/repo/gentoo.git/commit/
> ?id=869feec511b29896d24369460575cdfa10a0caa7
> [3]
> https://gitweb.gentoo.org/repo/gentoo.git/commit/
> ?id=1c1015afd61317ba45e76ba89a9325c6d690cff7
> 
> Or just see the whole changelog:
> https://packages.gentoo.org/packages/virtual/rust/changelog

Sorry,  not getting it.
If you masked package on your system it’s up to you to update the mask, right?
Comment 3 Emanuel Czirai 2022-11-17 12:29:19 UTC
(In reply to Georgy Yakovlev from comment #2)
> (In reply to Emanuel Czirai from comment #1)
> > I'm just going to make a note here, that because there's now:
> > virtual/rust-1.65.0-r1 (due to [1] )
> > without an existing
> > virtual/rust-1.65.0 (due to [2] which deleted 1.64 and 1.65 ebuilds)
> > but with an existing:
> > virtual/rust-1.64.0-r1
> > (due to [3] still remaining)
> > then my package mask:
> > >dev-lang/rust-1.65.0
> > >virtual/rust-1.65.0
> > 
> > causes emerge to downgrade virtual/rust from 1.65.0 to:
> > virtual/rust-1.64.0-r1:0/llvm-14::gentoo [1.65.0:0/0::gentoo] 
> > thus emerging: dev-lang/rust-bin-1.64.0-r1::gentoo
> > 
> > Of course I worked around it by updating my package.mask to:
> > >virtual/rust-1.65.0-r1
> > 
> > [1]
> > https://gitweb.gentoo.org/repo/gentoo.git/commit/
> > ?id=c6358c20f460a1be99c3ca1c34f2ee9ef4d92878 
> > [2]
> > https://gitweb.gentoo.org/repo/gentoo.git/commit/
> > ?id=869feec511b29896d24369460575cdfa10a0caa7
> > [3]
> > https://gitweb.gentoo.org/repo/gentoo.git/commit/
> > ?id=1c1015afd61317ba45e76ba89a9325c6d690cff7
> > 
> > Or just see the whole changelog:
> > https://packages.gentoo.org/packages/virtual/rust/changelog
> 
> Sorry,  not getting it.
> If you masked package on your system it’s up to you to update the mask,
> right?

You're absolutely right! I don't know what I was thinking. I should not have said anything.

I apologize.

I should've instead used a mask that ensures no package downgrades can happen(aside from no package upgrades), something like the following appears to work properly:
>dev-lang/rust-1.65.0
<dev-lang/rust-1.65.0
>virtual/rust-1.65.0
<virtual/rust-1.65.0

Thank you for your understanding :)

(I use this mask to make sure that only ebuilds from my localrepo get used, and I manually add new ones to localrepo whenever I notice them in the gentoo repo, after modifying them; ie. I wanted to avoid new rust ebuild(s) from gentoo repo to emerge (as an update) over my now-older ebuild from localrepo, so masking all the new ones seemed like a good workaround, though I didn't mind downgrades until today, so masking downgrades seems necessary because of ebuilds disappearing, or I could just add virtual/rust to my localrepo too and keep using my original package mask, I guess)
Comment 4 Georgy Yakovlev archtester gentoo-dev 2022-11-17 13:43:18 UTC
No problem, got it. I thought I missed something for a moment)

You can also use ~ instead of = as version comparison operator. It will match all revisions of same version.

~dev-lang/rust-1.65.0 will match -r1(and more)

I don’t remember if it works with <> though.

And since you are doing something custom it’s indeed on you to maintain local masks.
New virtual/rust added subslot, older revision was no longer needed, that’s standard practice to remove old virtuals.
Comment 5 Joonas Niilola gentoo-dev 2022-11-17 13:46:52 UTC
(In reply to Emanuel Czirai from comment #3)

> 
> (I use this mask to make sure that only ebuilds from my localrepo get used,
> and I manually add new ones to localrepo whenever I notice them in the
> gentoo repo, after modifying them; ie. I wanted to avoid new rust ebuild(s)
> from gentoo repo to emerge (as an update) over my now-older ebuild from
> localrepo, so masking all the new ones seemed like a good workaround, 

If I understand you correctly, maybe this is what you're looking to do:
package.mask:
dev-lang/rust::gentoo
dev-lang/rust-bin::gentoo
virtual/rust::gentoo

No idea about the possible backlash - we have some packages depending on rust:0/llvm-* in the tree now, so you might face some rather confusing portage messages if you stumble upon those. Unless of course you copy the critical parts to your own overlay.
Comment 6 Georgy Yakovlev archtester gentoo-dev 2022-11-17 13:47:56 UTC
And also you can mask by repo)

dev-lang/rust::gentoo

Will completely mask any version of ebuild coming from gentoo repo. No version guessing needed.
Ok lets stop spamming this bug, I got carried away.
Comment 7 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2022-11-17 15:14:27 UTC
sparc done
Comment 8 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2022-11-17 15:14:29 UTC
arm done
Comment 9 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2022-11-17 15:14:32 UTC
amd64 done
Comment 10 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2022-11-17 15:14:34 UTC
ppc done
Comment 11 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2022-11-17 15:14:36 UTC
ppc64 done
Comment 12 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2022-11-18 03:10:40 UTC
readding sparc for non-bin now I've done it
Comment 13 Arthur Zamarin archtester Gentoo Infrastructure gentoo-dev Security 2022-11-18 18:07:13 UTC
arm64 done
Comment 14 Arthur Zamarin archtester Gentoo Infrastructure gentoo-dev Security 2022-11-22 08:24:40 UTC
sparc done
Comment 15 Arthur Zamarin archtester Gentoo Infrastructure gentoo-dev Security 2022-12-03 16:07:49 UTC
x86 done

all arches done