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

minimize the rust-std component #64823

Merged
merged 6 commits into from Oct 11, 2019

Conversation

@cuviper
Copy link
Member

cuviper commented Sep 26, 2019

This changes the rust-std dist component to only include the artifacts of compiling the libstd step, as listed in .libstd.stamp. This does include test and proc-macro as well. The remaining unstable libraries that are built as part of rustc are packaged into a new rustc-dev component, intended for use in the development of closely related tools (clippy, miri, rls).

Here are the component sizes from the try build:

Name Size
rust-std-nightly-x86_64-unknown-linux-gnu.tar.gz 23.94 MiB
rust-std-nightly-x86_64-unknown-linux-gnu.tar.xz 17.4 MiB
rustc-dev-nightly-x86_64-unknown-linux-gnu.tar.gz 182.03 MiB
rustc-dev-nightly-x86_64-unknown-linux-gnu.tar.xz 157.91 MiB

Fixes #61978
Fixes #62486

@rust-highfive

This comment has been minimized.

Copy link
Collaborator

rust-highfive commented Sep 26, 2019

r? @nikomatsakis

(rust_highfive has picked a reviewer for you, use r? to override)

@cuviper

This comment has been minimized.

Copy link
Member Author

cuviper commented Sep 26, 2019

rust-std contents
rustlib
rustlib/x86_64-unknown-linux-gnu
rustlib/x86_64-unknown-linux-gnu/lib
rustlib/x86_64-unknown-linux-gnu/lib/liballoc-829f3101d977f206.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libbacktrace-ee59192b6de9f368.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libbacktrace_sys-038ea4a0a8c77604.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libcfg_if-7094efc75c4be484.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libcompiler_builtins-a02a6d088515bc50.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libcore-32273be0eb3afdcf.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libgetopts-36cd9a743b40ef37.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libhashbrown-2e9c5bd77f293b4d.rlib
rustlib/x86_64-unknown-linux-gnu/lib/liblibc-cd20ad3e31945caa.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libpanic_abort-4b7362f1daba0b67.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libpanic_unwind-e8f25f1479c7909f.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libproc_macro-117a68358dd52808.rlib
rustlib/x86_64-unknown-linux-gnu/lib/librustc_asan-72a98db263e5b446.rlib
rustlib/x86_64-unknown-linux-gnu/lib/librustc_demangle-360973d6a8a839f2.rlib
rustlib/x86_64-unknown-linux-gnu/lib/librustc_lsan-31819e91fec99c27.rlib
rustlib/x86_64-unknown-linux-gnu/lib/librustc_msan-5690f798957a29fb.rlib
rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_alloc-ccb7f85b9552784b.rlib
rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_core-385f65ee94807303.rlib
rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_std-541cc8a35bc662dd.rlib
rustlib/x86_64-unknown-linux-gnu/lib/librustc_tsan-3a588f132cd70943.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libstd-b36f3fa61e38f00c.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libstd-b36f3fa61e38f00c.so
rustlib/x86_64-unknown-linux-gnu/lib/libterm-d4f65c2c1fcd90e6.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libtest-d8d279e9d913926e.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libtest-d8d279e9d913926e.so
rustlib/x86_64-unknown-linux-gnu/lib/libunicode_width-61a3636ef768b313.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libunwind-b80ef1b761dd638e.rlib
rust-stdZ contents
rustlib
rustlib/x86_64-unknown-linux-gnu
rustlib/x86_64-unknown-linux-gnu/lib
rustlib/x86_64-unknown-linux-gnu/lib/liballoc-829f3101d977f206.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libannotate_snippets-a90b1a04ef902ce2.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libarena-917bcbaf4b9cf449.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libarrayvec-1cbfed4e0b63e66c.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libatty-a6a968217626980d.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libbacktrace-b9e825406ed2c8cf.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libbacktrace-ee59192b6de9f368.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libbacktrace_sys-038ea4a0a8c77604.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libbacktrace_sys-28a66cf5842b6293.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libbitflags-7f2440c8280521d9.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libbyteorder-97eddc76e7dae5fb.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libc2_chacha-d5df7772d76f51b1.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libcc-fba1b04a84d96b8e.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libcfg_if-7094efc75c4be484.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libcfg_if-efadd5aed3f96838.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libchalk_engine-539c05987df4c4fc.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libchalk_macros-dcb718f1369419bc.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libcompiler_builtins-a02a6d088515bc50.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libcore-32273be0eb3afdcf.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libcrc32fast-8105e34220be3072.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libcrossbeam_deque-fe474ed469d8bbce.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libcrossbeam_epoch-aff57d47277c9a5a.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libcrossbeam_utils-9ece8d4987b2f7ca.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libcrossbeam_utils-cf94384094407dbf.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libdatafrog-e15cc7f54f5da188.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libeither-212f3321a8ee66dd.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libena-75bdc410590317b9.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libenv_logger-4f2ca51a92a6d91c.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libflate2-268ba7c6f3d0e098.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libfmt_macros-1985ee02fa190c72.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libgetopts-36cd9a743b40ef37.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libgetrandom-7e2fc951db31d21b.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libgraphviz-6835b819b1a43ba4.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libhashbrown-2e9c5bd77f293b4d.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libindexmap-f384467b29b8520b.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libitoa-f3ab8e820f2f3e46.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libjobserver-b63b1c7e22888428.rlib
rustlib/x86_64-unknown-linux-gnu/lib/liblazy_static-31194f3d49621e6f.rlib
rustlib/x86_64-unknown-linux-gnu/lib/liblazy_static-d95434e3898989e6.rlib
rustlib/x86_64-unknown-linux-gnu/lib/liblibc-cd20ad3e31945caa.rlib
rustlib/x86_64-unknown-linux-gnu/lib/liblibc-ce37efd4d5605311.rlib
rustlib/x86_64-unknown-linux-gnu/lib/liblock_api-751b85934c961cac.rlib
rustlib/x86_64-unknown-linux-gnu/lib/liblog-ff5d2491f3d05340.rlib
rustlib/x86_64-unknown-linux-gnu/lib/liblog_settings-316ffc51cb6cb4bf.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libmeasureme-846e877e2fa9dedb.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libmemmap-5d1ce05df91ff5ad.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libmemoffset-826dd9e6a27e7be8.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libminiz_sys-1ca108c45fcef254.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libnodrop-9548fd0c1aab0345.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libnum_cpus-7a33609527bcec71.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libonce_cell-5effcb4d92b09ec0.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libpanic_abort-4b7362f1daba0b67.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libpanic_unwind-e8f25f1479c7909f.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libparking_lot-c0254d78de2fb43c.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libparking_lot_core-7ed1adc4d24cd3fc.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libpolonius_engine-38bf41783de8ef85.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libppv_lite86-de8a066e3a7b47e1.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libproc_macro-117a68358dd52808.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libpunycode-b8837a6f7f1330e0.rlib
rustlib/x86_64-unknown-linux-gnu/lib/librand-57a3f0d5fd302039.rlib
rustlib/x86_64-unknown-linux-gnu/lib/librand_chacha-848d1e2a0a29fee0.rlib
rustlib/x86_64-unknown-linux-gnu/lib/librand_core-dc5a3b7e4d118535.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libremove_dir_all-a43548349482c5ea.rlib
rustlib/x86_64-unknown-linux-gnu/lib/librls_data-4f2c6d6f34f4396b.rlib
rustlib/x86_64-unknown-linux-gnu/lib/librls_span-d68555bad0c8b4c4.rlib
rustlib/x86_64-unknown-linux-gnu/lib/librustc_apfloat-f7e7bb8e208816f3.rlib
rustlib/x86_64-unknown-linux-gnu/lib/librustc_asan-72a98db263e5b446.rlib
rustlib/x86_64-unknown-linux-gnu/lib/librustc_ast_borrowck-ac2d73d5776bcf49.rlib
rustlib/x86_64-unknown-linux-gnu/lib/librustc-bbf7197366ce1511.rlib
rustlib/x86_64-unknown-linux-gnu/lib/librustc_codegen_ssa-0fcff69c6a276ffb.rlib
rustlib/x86_64-unknown-linux-gnu/lib/librustc_codegen_utils-5a8d0a51bf30ef9b.rlib
rustlib/x86_64-unknown-linux-gnu/lib/librustc_data_structures-952e0c68e9cca6e1.rlib
rustlib/x86_64-unknown-linux-gnu/lib/librustc_demangle-360973d6a8a839f2.rlib
rustlib/x86_64-unknown-linux-gnu/lib/librustc_demangle-a4a5d110fcb9fa25.rlib
rustlib/x86_64-unknown-linux-gnu/lib/librustc_driver-29e6cebe3c3971a7.so
rustlib/x86_64-unknown-linux-gnu/lib/librustc_errors-1dbd806ce6e365ac.rlib
rustlib/x86_64-unknown-linux-gnu/lib/librustc_fs_util-8191714d3280668f.rlib
rustlib/x86_64-unknown-linux-gnu/lib/librustc_hash-22497d43d2cc6980.rlib
rustlib/x86_64-unknown-linux-gnu/lib/librustc_incremental-d2c59145d1cae9df.rlib
rustlib/x86_64-unknown-linux-gnu/lib/librustc_interface-8980247355978da1.rlib
rustlib/x86_64-unknown-linux-gnu/lib/librustc_lexer-64c2ae2961f301d7.rlib
rustlib/x86_64-unknown-linux-gnu/lib/librustc_lint-9124cea9598c026e.rlib
rustlib/x86_64-unknown-linux-gnu/lib/librustc_lsan-31819e91fec99c27.rlib
rustlib/x86_64-unknown-linux-gnu/lib/librustc_macros-ec44d4856a2db4cd.so
rustlib/x86_64-unknown-linux-gnu/lib/librustc_metadata-0dad06b5ad11c6e2.rlib
rustlib/x86_64-unknown-linux-gnu/lib/librustc_mir-7d16ed7716874475.rlib
rustlib/x86_64-unknown-linux-gnu/lib/librustc_msan-5690f798957a29fb.rlib
rustlib/x86_64-unknown-linux-gnu/lib/librustc_passes-829b6f2c7e8c9f27.rlib
rustlib/x86_64-unknown-linux-gnu/lib/librustc_plugin-7f4bebb377e6f695.rlib
rustlib/x86_64-unknown-linux-gnu/lib/librustc_plugin_impl-ecc88b36ceb20b61.rlib
rustlib/x86_64-unknown-linux-gnu/lib/librustc_privacy-492552cefb919cf2.rlib
rustlib/x86_64-unknown-linux-gnu/lib/librustc_rayon_core-b29424abf39b468a.rlib
rustlib/x86_64-unknown-linux-gnu/lib/librustc_rayon-df53eccb80fe0377.rlib
rustlib/x86_64-unknown-linux-gnu/lib/librustc_resolve-670b13e9fd45ca39.rlib
rustlib/x86_64-unknown-linux-gnu/lib/librustc_save_analysis-a757b57b3dbcce55.rlib
rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_alloc-ccb7f85b9552784b.rlib
rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_core-385f65ee94807303.rlib
rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_std-541cc8a35bc662dd.rlib
rustlib/x86_64-unknown-linux-gnu/lib/librustc_target-e350a4a7004a9634.rlib
rustlib/x86_64-unknown-linux-gnu/lib/librustc_traits-b4c705fb4e7105f0.rlib
rustlib/x86_64-unknown-linux-gnu/lib/librustc_tsan-3a588f132cd70943.rlib
rustlib/x86_64-unknown-linux-gnu/lib/librustc_typeck-19519d05e570a035.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libryu-57fed4e24d38e082.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libscoped_tls-db421b31bcc23dbc.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libscopeguard-443b1815dd811120.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libscopeguard-c58b19b79683e2ed.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libserde-dda0d123617e8257.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libserde_json-14ae927e29a576d5.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libserialize-afda782ae116fae8.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libsmallvec-863535aef490ac47.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libstable_deref_trait-e83e41401065dbcc.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libstd-b36f3fa61e38f00c.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libstd-b36f3fa61e38f00c.so
rustlib/x86_64-unknown-linux-gnu/lib/libsyntax-1af5aec2ec936254.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libsyntax_ext-b10a0f6ab0d97a78.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libsyntax_pos-17a1a353e8a92672.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libtempfile-4e88c3b9cfcf48be.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libtermcolor-1cfb690fc61a1c36.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libterm-d4f65c2c1fcd90e6.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libterm_size-52ef24c2e5daa8d8.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libtest-d8d279e9d913926e.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libtest-d8d279e9d913926e.so
rustlib/x86_64-unknown-linux-gnu/lib/libunicode_width-61a3636ef768b313.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libunicode_width-ce3cfcbd66a1b115.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libunicode_xid-dd34bf041afa96c3.rlib
rustlib/x86_64-unknown-linux-gnu/lib/libunwind-b80ef1b761dd638e.rlib
src/bootstrap/dist.rs Outdated Show resolved Hide resolved
@Mark-Simulacrum

This comment has been minimized.

Copy link
Member

Mark-Simulacrum commented Sep 26, 2019

I do think this is a conversation worth having -- at least, it would make sense to me to not ship these components on beta/stable, since to my knowledge no one (should be) using them there; even we don't do so in-tree.

I think in some sense this is also a broader question than just release team, though I'm not sure what teams I'd include necessarily. I guess maybe compiler and infra teams?

@Centril

This comment has been minimized.

Copy link
Member

Centril commented Sep 26, 2019

This seems like an excellent idea!

One wonders why we haven't done this before...

r? @Mark-Simulacrum

@Centril

This comment has been minimized.

Copy link
Member

Centril commented Sep 26, 2019

(Summary from discussion on Discord):

I think we should move out the sanitizers (tsan, lsan, msan, asan) from the rust-std component as well. In total they account for 14M which is 8% of 171M -- that's not nothing. Also worth noting that the sanitizers are unstable (see #47174) and not available on all tier-1 targets (e.g. macOS). Many people have no clue how to use them, including myself.

@cuviper

This comment has been minimized.

Copy link
Member Author

cuviper commented Sep 27, 2019

Oh, the sanitizers are a direct dependency of std, which is why they exist as minimal shims even when not enabled in the build configuration.

[target.x86_64-apple-darwin.dependencies]
rustc_asan = { path = "../librustc_asan" }
rustc_tsan = { path = "../librustc_tsan" }
[target.x86_64-unknown-linux-gnu.dependencies]
rustc_asan = { path = "../librustc_asan" }
rustc_lsan = { path = "../librustc_lsan" }
rustc_msan = { path = "../librustc_msan" }
rustc_tsan = { path = "../librustc_tsan" }

@eddyb

This comment has been minimized.

Copy link
Member

eddyb commented Sep 27, 2019

Aren't the rustc rlibs supposed to be part of the rustc component, in the host part of the sysroot, not in the per-target dirs? Or is that just the dylibs necessary to run the compiler?

I would probably suggest rustc-dev if we want to have a component for specifically rlibs you need in order to build code against host rustc (and see no point in providing target rlibs).

@bjorn3

This comment has been minimized.

Copy link
Contributor

bjorn3 commented Sep 27, 2019

Aren't the rustc rlibs supposed to be part of the rustc component, in the host part of the sysroot, not in the per-target dirs?

You need them to cross compile for example miri.

@ollie27

This comment has been minimized.

Copy link
Contributor

ollie27 commented Sep 27, 2019

This looks like it will be fixing #44037.

@cuviper

This comment has been minimized.

Copy link
Member Author

cuviper commented Sep 27, 2019

Aren't the rustc rlibs supposed to be part of the rustc component, in the host part of the sysroot, not in the per-target dirs? Or is that just the dylibs necessary to run the compiler?

The latter -- the rustc component only has bin/rustc etc. and their related shared objects.

I would probably suggest rustc-dev if we want to have a component for specifically rlibs you need in order to build code against host rustc (and see no point in providing target rlibs).

I'm fine with the name rustc-dev, but I think we probably do want this available for cross compiles. AFAIK that's only a difference in the rustup manifest (src/tools/build-manifest).


Status: the code as-is works for ./x.py dist libstd, but ./x.py install libstd ends up trying to use stage2-std/$target/release/.libstd.stamp, which doesn't exist unless you do a full bootstrap. I'm not sure why dist only uses stage1 in the first place though. I'll try to work this out.

@cuviper cuviper force-pushed the cuviper:min-std branch 2 times, most recently from f1fbbf0 to 465f93c Oct 3, 2019
@cuviper

This comment has been minimized.

Copy link
Member Author

cuviper commented Oct 3, 2019

I think this is in a fairly good state now, with a rustc-dev package for the unstable compiler libs. I'm not sure about the build-manifest stuff, because I don't know how to run that locally. I also don't know how to install rustc-dev by default for nightly users, if we indeed want that.

@cuviper cuviper changed the title [WIP] minimize the rust-std component minimize the rust-std component Oct 3, 2019
@cuviper cuviper marked this pull request as ready for review Oct 3, 2019
@Mark-Simulacrum

This comment has been minimized.

Copy link
Member

Mark-Simulacrum commented Oct 3, 2019

I personally am not sure who all should be in charge of this decision so I'll try and bring it up at core team meeting tomorrow. I myself believe this to be a good step to take presuming it doesn't break anything for our own shipped tools (RLS, clippy).

@cuviper

This comment has been minimized.

Copy link
Member Author

cuviper commented Oct 3, 2019

@bors try

@bors

This comment has been minimized.

Copy link
Contributor

bors commented Oct 3, 2019

⌛️ Trying commit 637ad7b with merge 98951af...

bors added a commit that referenced this pull request Oct 3, 2019
minimize the rust-std component

This changes the `rust-std` dist component to only include the artifacts of compiling the `libstd` step, as listed in `.libstd.stamp`. This does include `test` and `proc-macro` as well.

As a WIP stopgap for testing, I've left the old contents collected in a `rust-stdZ` component. The main difference is that this includes all of the rustc `rlib`s when those are built. None of those are accessible to stable users, but perhaps we should still think about how to ship them. Maybe this should be a new `rust-std-unstable` component? (edit: The extras are now `rustc-dev`.)

```
 18M rust-std-1.40.0-dev-x86_64-unknown-linux-gnu.tar.gz
 14M rust-std-1.40.0-dev-x86_64-unknown-linux-gnu.tar.xz
200M rust-stdZ-1.40.0-dev-x86_64-unknown-linux-gnu.tar.gz
171M rust-stdZ-1.40.0-dev-x86_64-unknown-linux-gnu.tar.xz
```

cc #61978 #62486
cc @rust-lang/release
@bors

This comment has been minimized.

Copy link
Contributor

bors commented Oct 4, 2019

☀️ Try build successful - checks-azure
Build commit: 98951af (98951af235be5a9ac3aa0b556298b09d97d97924)

@alexcrichton

This comment has been minimized.

Copy link
Member

alexcrichton commented Oct 4, 2019

I'm not sure if I'll make it to triage this afternoon but wanted to say that I'm also in favor of this, it's indeed a bummer that a few hundred never-used megabytes are downloaded for only wanting libstd!

I do think that separation into rust-dev packages will break development of clippy/rls/etc since they all link to the compiler and the libraries will no longer be there. Fixing should be relatively easy though since it's just rustup component add. I am not certain whether rustup changes will be necessary to actually use this component (I always forget if they're hardcoded in rustup or dynamically learned about). In any case we probably want to make sure everyone's aware of this change happening (clippy/rls/rustup/etc) before we land it, although I suspect everyone's on board with downloading hundreds of less megabytes for targets!

@jethrogb

This comment has been minimized.

Copy link
Contributor

jethrogb commented Oct 12, 2019

This PR likely broke targets with 3rd party objects, #65335

@kennytm

This comment has been minimized.

Copy link
Member

kennytm commented Oct 12, 2019

All PRs filed involving rustc-dev has been merged and published as v1.7.0.

bors added a commit to rust-lang/miri that referenced this pull request Oct 12, 2019
Rustup for rustc-dev

Fixes fallout from rust-lang/rust#64823
bors added a commit to rust-lang/miri that referenced this pull request Oct 12, 2019
Rustup for rustc-dev

Fixes fallout from rust-lang/rust#64823
Mark-Simulacrum added a commit to Mark-Simulacrum/rust that referenced this pull request Oct 12, 2019
…acrum"

This reverts commit 000d90b, reversing
changes made to 898f36c.
bors added a commit that referenced this pull request Oct 12, 2019
Revert "Auto merge of #64823 - cuviper:min-std, r=Mark-Simulacrum"

This reverts commit 000d90b, reversing
changes made to 898f36c.

This turned out to break quite a few targets, cc #65335
bors added a commit that referenced this pull request Oct 12, 2019
Revert "Auto merge of #64823 - cuviper:min-std, r=Mark-Simulacrum"

This reverts commit 000d90b, reversing
changes made to 898f36c.

This turned out to break quite a few targets, cc #65335
bors added a commit that referenced this pull request Oct 13, 2019
Revert "Auto merge of #64823 - cuviper:min-std, r=Mark-Simulacrum"

This reverts commit 000d90b, reversing
changes made to 898f36c.

This turned out to break quite a few targets, cc #65335
@RalfJung

This comment has been minimized.

Copy link
Member

RalfJung commented Oct 13, 2019

FWIW this is being reverted in #65342 because of the problems it caused.

bors added a commit that referenced this pull request Oct 13, 2019
Revert "Auto merge of #64823 - cuviper:min-std, r=Mark-Simulacrum"

This reverts commit 000d90b, reversing
changes made to 898f36c.

This turned out to break quite a few targets, cc #65335
@RalfJung RalfJung referenced this pull request Oct 14, 2019
@stefson

This comment has been minimized.

Copy link

stefson commented Oct 15, 2019

Since it was reverted due to problems, is this pullrequest going to be rebooted at some point in the future?

bors added a commit that referenced this pull request Oct 16, 2019
[dev-nightly] Testing out rustc-dev

This PR targets a non-official branch such that we can run full CI and eventually build a nightly from the branch on dev-static; this will hopefully allow us to iron out kinks prior to merging this PR's commits into master proper.

cc #64823 and #65337
choller added a commit to choller/rust that referenced this pull request Oct 17, 2019
…acrum"

This reverts commit 000d90b, reversing
changes made to 898f36c.
XiangQingW added a commit to XiangQingW/rust that referenced this pull request Oct 21, 2019
…acrum"

This reverts commit 000d90b, reversing
changes made to 898f36c.
bors added a commit that referenced this pull request Oct 22, 2019
Split the rustc target libraries into separate rustc-dev component

This is re-applies a squashed version of #64823 as well as including #65337 to fix bugs noted after merging the first PR.

The second PR is confirmed as fixing windows-gnu, and presumably also fixes other platforms, such as musl (i.e. #65335 should be fixed); `RUSTUP_DIST_SERVER=https://dev-static.rust-lang.org rustup toolchain install nightly-2019-10-16` can be installed to confirm that this is indeed the case.
@stefson stefson referenced this pull request Oct 22, 2019
bors added a commit that referenced this pull request Oct 22, 2019
Split the rustc target libraries into separate rustc-dev component

This is re-applies a squashed version of #64823 as well as including #65337 to fix bugs noted after merging the first PR.

The second PR is confirmed as fixing windows-gnu, and presumably also fixes other platforms, such as musl (i.e. #65335 should be fixed); `RUSTUP_DIST_SERVER=https://dev-static.rust-lang.org rustup toolchain install nightly-2019-10-16` can be installed to confirm that this is indeed the case.
bors added a commit that referenced this pull request Oct 22, 2019
Split the rustc target libraries into separate rustc-dev component

This is re-applies a squashed version of #64823 as well as including #65337 to fix bugs noted after merging the first PR.

The second PR is confirmed as fixing windows-gnu, and presumably also fixes other platforms, such as musl (i.e. #65335 should be fixed); `RUSTUP_DIST_SERVER=https://dev-static.rust-lang.org rustup toolchain install nightly-2019-10-16` can be installed to confirm that this is indeed the case.
bors added a commit that referenced this pull request Oct 23, 2019
Split the rustc target libraries into separate rustc-dev component

This is re-applies a squashed version of #64823 as well as including #65337 to fix bugs noted after merging the first PR.

The second PR is confirmed as fixing windows-gnu, and presumably also fixes other platforms, such as musl (i.e. #65335 should be fixed); `RUSTUP_DIST_SERVER=https://dev-static.rust-lang.org rustup toolchain install nightly-2019-10-16` can be installed to confirm that this is indeed the case.
bors added a commit that referenced this pull request Oct 24, 2019
Split the rustc target libraries into separate rustc-dev component

This is re-applies a squashed version of #64823 as well as including #65337 to fix bugs noted after merging the first PR.

The second PR is confirmed as fixing windows-gnu, and presumably also fixes other platforms, such as musl (i.e. #65335 should be fixed); `RUSTUP_DIST_SERVER=https://dev-static.rust-lang.org rustup toolchain install nightly-2019-10-16` can be installed to confirm that this is indeed the case.
stefson added a commit to stefson/gentoo-rust that referenced this pull request Nov 8, 2019
pr65474 minimizes the amount of files needed for the install
of a rust-std component by not merging certain dev-header
files and other instable components.

more information:
rust-lang/rust#64823
rust-lang/rust#65474

I opted for +-r1 and dropped keywords, for testing.

Also included pr66103, it shouldn't hurt anyone.

Signed-off-by: Steffen Kuhn <nielson2@yandex.com>
gentoo-bot pushed a commit to gentoo/gentoo-rust that referenced this pull request Nov 11, 2019
pr65474 minimizes the amount of files needed for the install
of a rust-std component by not merging certain dev-header
files and other instable components.

more information:
rust-lang/rust#64823
rust-lang/rust#65474

I opted for +-r1 and dropped keywords, for testing.

Also included pr66103, it shouldn't hurt anyone.

Signed-off-by: Steffen Kuhn <nielson2@yandex.com>
Closes: #464
Signed-off-by: Mikhail Pukhlikov <cynede@gentoo.org>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
You can’t perform that action at this time.