From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 13F92158042 for ; Thu, 7 Nov 2024 16:50:04 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 47686E093D; Thu, 7 Nov 2024 16:49:58 +0000 (UTC) Received: from smtp.gentoo.org (dev.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 94E93E0934 for ; Thu, 7 Nov 2024 16:49:57 +0000 (UTC) From: Sam James To: kangie@gentoo.org Cc: gentoo-dev@lists.gentoo.org, rust@gentoo.org Subject: Re: [gentoo-dev] [PATCH 00/10] new eclass: rust; slotting dev-lang/rust{-bin} In-Reply-To: <20241106112510.1518157-1-kangie@gentoo.org> (kangie@gentoo.org's message of "Wed, 6 Nov 2024 21:25:00 +1000") Organization: Gentoo References: <20241106112510.1518157-1-kangie@gentoo.org> Date: Thu, 07 Nov 2024 16:49:53 +0000 Message-ID: <878qtv3s5q.fsf@gentoo.org> Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-dev@lists.gentoo.org Reply-to: gentoo-dev@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply MIME-Version: 1.0 Content-Type: text/plain X-Archives-Salt: ba23bdb2-bc84-4cb0-a75d-0a1c99a42a40 X-Archives-Hash: 4f5afd4d28620c11b7ec8b77030f8977 kangie@gentoo.org writes: > From: Matt Jolly > > This patchset slots Rust, adds `rust.eclass`, a helper eclass for slotted Rust, > and updates `cargo.eclass` to take advantage of the new slotted Rust, requiring a > revbump of dependent packages. Thanks for doing this. As we've already discussed privately extensively as well as in #gentoo-rust and in part on the PR, I think it's fine to go in once I've done a few more passes to satisfy any nits, and all my comments have been addressed. I agree that the big-bang move is sort of necessary here (as regrettable as that may be) and we just need to be prepared to be on-call to handle any issues in the period after merging. > > The intent is to immediately deprecate and shortly remove legacy Rust slots > and the virtual package which do nothing but inflict pain on developers and users. > > There are several example ebuilds using the new eclass attached. > > These patches, along with a mega-commit containing required revbumps for > every cargo.eclass ebuild (a vast majority of the rust ecosystem) are > also available for comment as a PR. The intent is to merge the PR when > all cargo eclass packages have been revbumped and tested and the eclass > has been reviewed. > > https://github.com/gentoo/gentoo/pull/39218 > > I'm about 100 cargo eclass ebuilds deep at this point. Please do not > merge anything that uses the Cargo eclass (or any new Rust packages, > really) until this is (hopefully) merged in a few days. > > Some example ebuilds have been included to demonstrate usage of > the eclass for anything more complex than just `inherit rust`. > > Please let me know if you have any concerns or feedback and I'll address > them promptly. > > Cheers, > > Matt > > Matt Jolly (10): > rust.eclass: Introduce new eclass for slotted Rust > cargo: update for rust eclass > dev-lang/rust: port to llvm-r1 and slot (-r100) > profiles/arch/mips: use.mask system-llvm on rust-1.71.1-r100 > dev-lang/rust-bin: llvm-r1 and slot (-r100) > dev-lang/rust{,-bin}: -r100: Drop the `profiler` USE. > www-client/chromium: example chromium with slotted rust > www-client/firefox: add 132.0-r1 - rust and llvm-r1 eclasses > gnome-base/librsvg: rust eclass > net-libs/rustls-ffi: rust slot > > dev-lang/rust-bin/rust-bin-1.71.1-r100.ebuild | 233 +++ > dev-lang/rust-bin/rust-bin-1.74.1-r100.ebuild | 243 +++ > dev-lang/rust-bin/rust-bin-1.75.0-r100.ebuild | 243 +++ > dev-lang/rust-bin/rust-bin-1.77.1-r100.ebuild | 245 +++ > dev-lang/rust-bin/rust-bin-1.79.0-r100.ebuild | 248 +++ > dev-lang/rust-bin/rust-bin-1.80.1-r100.ebuild | 252 +++ > dev-lang/rust-bin/rust-bin-1.81.0-r100.ebuild | 249 +++ > dev-lang/rust-bin/rust-bin-1.82.0-r100.ebuild | 250 +++ > dev-lang/rust-common/Manifest | 4 + > .../rust-common/rust-common-1.81.0.ebuild | 42 + > .../rust-common/rust-common-1.82.0.ebuild | 42 + > dev-lang/rust/rust-1.71.1-r100.ebuild | 726 +++++++++ > dev-lang/rust/rust-1.74.1-r100.ebuild | 762 +++++++++ > dev-lang/rust/rust-1.75.0-r100.ebuild | 765 +++++++++ > dev-lang/rust/rust-1.77.1-r100.ebuild | 764 +++++++++ > dev-lang/rust/rust-1.79.0-r100.ebuild | 767 +++++++++ > dev-lang/rust/rust-1.80.1-r100.ebuild | 765 +++++++++ > dev-lang/rust/rust-1.81.0-r100.ebuild | 766 +++++++++ > dev-lang/rust/rust-1.82.0-r100.ebuild | 773 +++++++++ > eclass/cargo.eclass | 46 +- > eclass/rust.eclass | 480 ++++++ > gnome-base/librsvg/librsvg-2.58.2-r1.ebuild | 421 +++++ > .../rustls-ffi/rustls-ffi-0.13.0-r1.ebuild | 107 ++ > profiles/arch/mips/package.use.mask | 4 + > .../chromium/chromium-130.0.6723.91-r1.ebuild | 1387 +++++++++++++++++ > www-client/firefox/firefox-132.0-r1.ebuild | 1341 ++++++++++++++++ > 26 files changed, 11912 insertions(+), 13 deletions(-) > create mode 100644 dev-lang/rust-bin/rust-bin-1.71.1-r100.ebuild > create mode 100644 dev-lang/rust-bin/rust-bin-1.74.1-r100.ebuild > create mode 100644 dev-lang/rust-bin/rust-bin-1.75.0-r100.ebuild > create mode 100644 dev-lang/rust-bin/rust-bin-1.77.1-r100.ebuild > create mode 100644 dev-lang/rust-bin/rust-bin-1.79.0-r100.ebuild > create mode 100644 dev-lang/rust-bin/rust-bin-1.80.1-r100.ebuild > create mode 100644 dev-lang/rust-bin/rust-bin-1.81.0-r100.ebuild > create mode 100644 dev-lang/rust-bin/rust-bin-1.82.0-r100.ebuild > create mode 100644 dev-lang/rust-common/Manifest > create mode 100644 dev-lang/rust-common/rust-common-1.81.0.ebuild > create mode 100644 dev-lang/rust-common/rust-common-1.82.0.ebuild > create mode 100644 dev-lang/rust/rust-1.71.1-r100.ebuild > create mode 100644 dev-lang/rust/rust-1.74.1-r100.ebuild > create mode 100644 dev-lang/rust/rust-1.75.0-r100.ebuild > create mode 100644 dev-lang/rust/rust-1.77.1-r100.ebuild > create mode 100644 dev-lang/rust/rust-1.79.0-r100.ebuild > create mode 100644 dev-lang/rust/rust-1.80.1-r100.ebuild > create mode 100644 dev-lang/rust/rust-1.81.0-r100.ebuild > create mode 100644 dev-lang/rust/rust-1.82.0-r100.ebuild > create mode 100644 eclass/rust.eclass > create mode 100644 gnome-base/librsvg/librsvg-2.58.2-r1.ebuild > create mode 100644 net-libs/rustls-ffi/rustls-ffi-0.13.0-r1.ebuild > create mode 100644 www-client/chromium/chromium-130.0.6723.91-r1.ebuild > create mode 100644 www-client/firefox/firefox-132.0-r1.ebuild