Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 640244

Summary: dev-lang/rust-1.22.1 version bump
Product: Gentoo Linux Reporter: Illia Sechin <sechin.illia>
Component: Current packagesAssignee: Gentoo Rust Project <rust>
Status: RESOLVED OBSOLETE    
Severity: normal CC: anna.chalova.86, aywohallist, bram.b, gentoo, herrtimson, irbis.labs, ivan.dynin.83, jj, leonard, paul.kollen, paul, pavkoz22, perfect007gentleman, sechin.illia, tsmksubc, ua_gentoo_bugzilla, viklevin2, vitya.talov.88, v_talin
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Attachments: rust-1.23.0.ebuild

Description Illia Sechin 2017-12-08 11:27:14 UTC
1. Rust version 1.22.1 released. I suggest to add it to Portage tree from this overlay:
https://github.com/gentoo/gentoo-rust/tree/master/dev-lang/rust

2. cargo package is not needed for Rust >= 1.22.1:
https://github.com/gentoo/gentoo-rust/blob/master/dev-lang/rust/rust-1.22.1.ebuild

But the following packages in Gentoo Portage tree depend on cargo:

- dev-util/rustfmt-0.6.3 (>=dev-util/cargo-0.13.0)
- sys-apps/ripgrep-0.7.1 (>=dev-util/cargo-0.13.0)
- www-client/firefox-57.0.1 (dev-util/cargo)

I think cargo DEPEND/RDEPEND should be removed if dev-lang/rust >= 1.22.1 is installed in the system. For dev-lang/rust < 1.22.1 cargo DEPEND/RDEPEND should still exist for rustfmt, ripgrep, and firefox.
Comment 1 Illia Sechin 2017-12-08 11:45:14 UTC
Similar issue:

https://github.com/gentoo/gentoo-rust/issues/308

The workaround is proposed there.
Comment 2 Ivan Dynin 2017-12-10 21:01:18 UTC
Rust 1.22.1 seems to be latest stable version:

https://www.rust-lang.org/en-US/

https://github.com/rust-lang/rust/releases
Comment 3 Bram B 2017-12-21 22:09:03 UTC
Current bug workaround:

$ cat /etc/portage/profile/package.provided 
dev-util/cargo-0.21.0
Comment 4 George L. Emigh 2018-01-07 23:20:58 UTC
Rust 1.23 is released.
https://blog.rust-lang.org/2018/01/04/Rust-1.23.html
Comment 5 George L. Emigh 2018-01-08 01:31:45 UTC
(In reply to Illia Sechin from comment #0)
> 1. Rust version 1.22.1 released. I suggest to add it to Portage tree from
> this overlay:
> https://github.com/gentoo/gentoo-rust/tree/master/dev-lang/rust
> 

You will need to modify it to inherit multiprocessing and change ${MAKEOPTS} to -j$(makeopts_jobs)

It fails otherwise of MAKEOPTS has a -j specified.
Comment 6 Perfect Gentleman 2018-01-08 07:25:59 UTC
(In reply to George L. Emigh from comment #5)
> 
> You will need to modify it to inherit multiprocessing and change ${MAKEOPTS}
> to -j$(makeopts_jobs)
> 
> It fails otherwise of MAKEOPTS has a -j specified.
why? it's working
---
/tmp/portage/dev-lang/rust-1.23.0/work/rustc-1.23.0-src/build/bootstrap/debug/bootstrap build --verbose --config=/tmp/portage/dev-lang/rust-1.23.0/work/rustc-1.23.0-src/config.toml -j9
---
Comment 7 tt_1 2018-01-08 07:44:48 UTC
It would be great to see the ebuild to honor MAKEOPTS from make.conf, for both the internal llvm build and the rust build. This is especially a problem for arm users, and for all machines with low levels of ram per job (!), because if you swap rust during compilation it will literally take forever to complete. Let alone doing a debug build.
Comment 8 Perfect Gentleman 2018-01-08 09:14:06 UTC
Created attachment 513750 [details]
rust-1.23.0.ebuild
Comment 9 Jarek Rymut 2018-01-11 00:21:25 UTC
I think there is something wrong with 1.22 ebuild:

...
running: /var/tmp/portage/dev-lang/rust-1.22.1/work/rustc-1.22.1-src/build/bootstrap/debug/bootstrap build --verbose --config=/var/tmp/portage/dev-lang/rust-1.22.1/work/rustc-1.22.1-src/config.toml -j2 -l1.7

Unrecognized option: 'l'
...

If rust's x.py does not understand all make options why are we passing it unchanged?
Comment 10 V. Talin 2018-01-23 14:28:17 UTC
(In reply to Illia Sechin from comment #0)

> 2. cargo package is not needed for Rust >= 1.22.1:
> https://github.com/gentoo/gentoo-rust/blob/master/dev-lang/rust/rust-1.22.1.
> ebuild
> 
> But the following packages in Gentoo Portage tree depend on cargo:
> 
> - dev-util/rustfmt-0.6.3 (>=dev-util/cargo-0.13.0)
> - sys-apps/ripgrep-0.7.1 (>=dev-util/cargo-0.13.0)
> - www-client/firefox-57.0.1 (dev-util/cargo)
> 
> I think cargo DEPEND/RDEPEND should be removed if dev-lang/rust >= 1.22.1 is
> installed in the system. For dev-lang/rust < 1.22.1 cargo DEPEND/RDEPEND
> should still exist for rustfmt, ripgrep, and firefox.

Maybe we need to create a bug "cargo dependepcy removal" for each package that depend on it?
Comment 12 Viktor Levin 2018-01-26 14:12:15 UTC
Please close this bug as OBSOLETE.