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

Compile core crates before std #51440

Closed
wants to merge 6 commits into from

Conversation

est31
Copy link
Member

@est31 est31 commented Jun 8, 2018

Right now, many crates used by std need to manually specify dependencies onto crates like core, as they need to be built after core has been built. For some crates from external sources, we provide our own Cargo.toml files so that we can write out that dependency (and other, rustbuild specific things).

This PR splits up the std compilation step in rustbuild into two semi-steps. One which compiles three #![no_std] crates libcore, compiler_builtins, and libstd_unicode, and a second step which compiles the remainder.

Thanks to this, it alleviates the need to specify dependencies onto those crates, and allows libstd to depend on #![no_std] crates from crates.io without modification.

Needed by #51408

r? @Mark-Simulacrum

@rust-highfive rust-highfive added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Jun 8, 2018
@est31 est31 mentioned this pull request Jun 8, 2018
4 tasks
@rust-highfive
Copy link
Collaborator

The job x86_64-gnu-llvm-3.9 of your PR failed on Travis (raw log). Through arcane magic we have determined that the following fragments from the build log may contain information about the problem.

Click to expand the log.
/usr/local/lib/python2.7/dist-packages/pip/_vendor/requests/packages/urllib3/util/ssl_.py:122: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. You can upgrade to a newer version of Python to solve this. For more information, see https://urllib3.readthedocs.io/en/latest/security.html#insecureplatformwarning.
  InsecurePlatformWarning
/usr/local/lib/python2.7/dist-packages/pip/_vendor/requests/packages/urllib3/util/ssl_.py:122: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. You can upgrade to a newer version of Python to solve this. For more information, see https://urllib3.readthedocs.io/en/latest/security.html#insecureplatformwarning.
  InsecurePlatformWarning
  Downloading https://files.pythonhosted.org/packages/1f/fe/70b051d7b8ff6c486ce223f690b85a8daf42edb09bb2237747469243c828/awscli-1.15.35-py2.py3-none-any.whl (1.3MB)
    0% |▎                               | 10kB 3.3MB/s eta 0:00:01
    1% |▌                               | 20kB 1.5MB/s eta 0:00:01
    2% |▉                               | 30kB 1.7MB/s eta 0:00:01
    3% |█                               | 40kB 1.5MB/s eta 0:00:01
---
    100% |████████████████████████████████| 61kB 5.4MB/s 
Collecting botocore==1.10.35 (from awscli)
/usr/local/lib/python2.7/dist-packages/pip/_vendor/requests/packages/urllib3/util/ssl_.py:122: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. You can upgrade to a newer version of Python to solve this. For more information, see https://urllib3.readthedocs.io/en/latest/security.html#insecureplatformwarning.
  InsecurePlatformWarning
  Downloading https://files.pythonhosted.org/packages/1b/b3/740d993c812453729ac06c41e210997dd94e37adb24dc4aee49eee96fca4/botocore-1.10.35-py2.py3-none-any.whl (4.3MB)
    0% |                                | 10kB 44.1MB/s eta 0:00:01
    0% |▏                               | 20kB 42.4MB/s eta 0:00:01
    0% |▎                               | 30kB 49.7MB/s eta 0:00:01
    0% |▎                               | 40kB 37.1MB/s eta 0:00:01
---
[00:36:54] 
[00:36:54] 
[00:36:54] failed to run: /checkout/obj/build/bootstrap/debug/bootstrap build
[00:36:54] Build completed unsuccessfully in 0:29:51
[00:36:54] Makefile:28: recipe for target 'all' failed
[00:36:54] make: *** [all] Error 1
35492 ./obj/build/x86_64-unknown-linux-gnu/stage1-rustc/release/build
34916 ./obj/build/x86_64-unknown-linux-gnu/native/jemalloc/src
34588 ./obj/build/x86_64-unknown-linux-gnu/native/jemalloc/lib
33884 ./src/llvm-emscripten/lib/Target

I'm a bot! I can only do what humans tell me to, so if this was not helpful or you have suggestions for improvements, please ping or otherwise contact @TimNN. (Feature Requests)

Copy link
Member

@Mark-Simulacrum Mark-Simulacrum left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Other than one nit I think this looks good (presuming it works).


let _folder = builder.fold_output(|| format!("stage{}-std", compiler.stage));
builder.info(&format!("Building stage{} std artifacts ({} -> {})", compiler.stage,
&compiler.host, target));
run_cargo(builder,
&mut cargo,
&mut core_cargo_invoc,
&libstd_stamp(builder, compiler, target),
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think it'd be best to have a dedicated stamp file for core.

@rust-highfive
Copy link
Collaborator

The job x86_64-gnu-llvm-3.9 of your PR failed on Travis (raw log). Through arcane magic we have determined that the following fragments from the build log may contain information about the problem.

Click to expand the log.
[00:34:45]    Compiling build_helper v0.1.0 (file:///checkout/src/build_helper)
[00:34:45]    Compiling rustc_codegen_llvm v0.0.0 (file:///checkout/src/librustc_codegen_llvm)
[00:34:45]    Compiling cc v1.0.15
[00:34:46]    Compiling rustc_llvm v0.0.0 (file:///checkout/src/librustc_llvm)
rror[E0463]: can't find crate for `core` which `std` depends on
[00:35:32] error: aborting due to previous error
[00:35:32] 
[00:35:32] For more information about this error, try `rustc --explain E0463`.
[00:35:32] For more information about this error, try `rustc --explain E0463`.
[00:35:32] error: Could not compile `ucd-util`.
[00:35:32] To learn more, run the command again with --verbose.
[00:35:32] 
[00:35:32] 
[00:35:32] command did not execute successfully: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage0/bin/cargo" "build" "--target" "x86_64-unknown-linux-gnu" "-j" "4" "--release" "--locked" "--color" "always" "--manifest-path" "/checkout/src/tools/rustdoc/Cargo.toml"
[00:35:32] command did not execute successfully: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage0/bin/cargo" "build" "--target" "x86_64-unknown-linux-gnu" "-j" "4" "--release" "--locked" "--color" "always" "--manifest-path" "/checkout/src/tools/rustdoc/Cargo.toml"
[00:35:32] expected success, got: exit code: 101
[00:35:32] 
[00:35:32] 
[00:35:32] failed to run: /checkout/obj/build/bootstrap/debug/bootstrap build
[00:35:32] Build completed unsuccessfully in 0:29:45
[00:35:32] Makefile:28: recipe for target 'all' failed
[00:35:32] make: *** [all] Error 1
397172 ./.git/objects
397132 ./.git/objects/pack
315016 ./src/llvm
249872 ./obj/build/x86_64-unknown-linux-gnu/stage0/lib/rustlib/x86_64-unknown-linux-gnu/lib
---
128708 ./obj/build/x86_64-unknown-linux-gnu/stage1-rustc/x86_64-unknown-linux-gnu
128704 ./obj/build/x86_64-unknown-linux-gnu/stage1-rustc/x86_64-unknown-linux-gnu/release
127192 ./obj/build/x86_64-unknown-linux-gnu/stage1-std
123808 ./obj/build/bootstrap/debug/incremental/bootstrap-1r3bppl29tbrj
123804 ./obj/build/bootstrap/debug/incremental/bootstrap-1r3bppl29tbrj/s-f1t3fg562a-1u7wzzq-np04vflf21if
91300 ./obj/build/x86_64-unknown-linux-gnu/stage1
91276 ./obj/build/x86_64-unknown-linux-gnu/stage1/lib
89812 ./src/llvm/test/CodeGen
83912 ./obj/build/x86_64-unknown-linux-gnu/stage1-rustc/x86_64-unknown-linux-gnu/release/deps

I'm a bot! I can only do what humans tell me to, so if this was not helpful or you have suggestions for improvements, please ping or otherwise contact @TimNN. (Feature Requests)

@rust-highfive
Copy link
Collaborator

The job x86_64-gnu-llvm-3.9 of your PR failed on Travis (raw log). Through arcane magic we have determined that the following fragments from the build log may contain information about the problem.

Click to expand the log.

I'm a bot! I can only do what humans tell me to, so if this was not helpful or you have suggestions for improvements, please ping or otherwise contact @TimNN. (Feature Requests)

@est31
Copy link
Member Author

est31 commented Jun 9, 2018

So... it seems to fail building rustdoc. Lemme try finding a fix.

@Mark-Simulacrum
Copy link
Member

We need to add CoreLink to the force_use_stage1 if for Std, otherwise core and related libraries aren't linked in to the stage2 sysroot.

@Mark-Simulacrum
Copy link
Member

@bors r+

If you don't want to do it yourself, could you open an issue about deleting the libc shim? I think it should no longer be necessary.

@bors
Copy link
Contributor

bors commented Jun 9, 2018

📌 Commit c9c42db has been approved by Mark-Simulacrum

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Jun 9, 2018
@est31 est31 mentioned this pull request Jun 10, 2018
@bors
Copy link
Contributor

bors commented Jun 10, 2018

🔒 Merge conflict

@bors bors added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. labels Jun 10, 2018
Add CoreLink to Std::run()
@est31
Copy link
Member Author

est31 commented Jun 10, 2018

rebased. re-r? @Mark-Simulacrum

@Mark-Simulacrum
Copy link
Member

@bors r+

@bors
Copy link
Contributor

bors commented Jun 10, 2018

📌 Commit 046a95d has been approved by Mark-Simulacrum

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Jun 10, 2018
@bors
Copy link
Contributor

bors commented Jun 10, 2018

⌛ Testing commit 046a95d with merge c40895d133ef007bdca9238fa14128c3f64242c7...

@est31 est31 force-pushed the core_crates_before_std branch 2 times, most recently from 2d64d7d to 57ca376 Compare June 11, 2018 00:22
@est31
Copy link
Member Author

est31 commented Jun 11, 2018

travis was green when I enabled the wasm runner. re-r? @Mark-Simulacrum

@Mark-Simulacrum
Copy link
Member

@bors r+

@bors
Copy link
Contributor

bors commented Jun 11, 2018

📌 Commit 57ca376 has been approved by Mark-Simulacrum

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Jun 11, 2018
@bors
Copy link
Contributor

bors commented Jun 11, 2018

⌛ Testing commit 57ca376 with merge bd6aaf62d4f7b45ddc37fde1e63b49acb918e2b2...

@bors
Copy link
Contributor

bors commented Jun 11, 2018

💔 Test failed - status-appveyor

@bors bors added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. labels Jun 11, 2018
@rust-highfive
Copy link
Collaborator

The job dist-i586-gnu-i586-i686-musl of your PR failed on Travis (raw log). Through arcane magic we have determined that the following fragments from the build log may contain information about the problem.

Click to expand the log.
[01:09:13] ---- [run-pass] run-pass/extern-prelude-core.rs stdout ----
[01:09:13] 
[01:09:13] error: compilation failed!
[01:09:13] status: exit code: 101
[01:09:13] command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/src/test/run-pass/extern-prelude-core.rs" "--target=i686-unknown-linux-musl" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/run-pass/extern-prelude-core/a" "-Crpath" "-O" "-Zunstable-options" "-Lnative=/checkout/obj/build/i686-unknown-linux-musl/native/rust-test-helpers" "-Clinker=/musl-i686/bin/musl-gcc" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/run-pass/extern-prelude-core/auxiliary"
[01:09:13] ------------------------------------------
[01:09:13] 
[01:09:13] ------------------------------------------
[01:09:13] stderr:
[01:09:13] stderr:
[01:09:13] ------------------------------------------
[01:09:13] error: linking with `/musl-i686/bin/musl-gcc` failed: exit code: 1
[01:09:13]   |
[01:09:13]   = note: "/musl-i686/bin/musl-gcc" "-Wl,--as-needed" "-Wl,-z,noexecstack" "-Wl,--eh-frame-hdr" "-Wl,-(" "-m32" "-Wl,-melf_i386" "-nostdlib" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/i686-unknown-linux-musl/lib/crt1.o" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/i686-unknown-linux-musl/lib/crti.o" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/i686-unknown-linux-musl/lib" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/run-pass/extern-prelude-core/a.extern_prelude_core0-317d481089b8c8fe83113de504472633.rs.rcgu.o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/run-pass/extern-prelude-core/a.extern_prelude_core1-317d481089b8c8fe83113de504472633.rs.rcgu.o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/run-pass/extern-prelude-core/a.extern_prelude_core2-317d481089b8c8fe83113de504472633.rs.rcgu.o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/run-pass/extern-prelude-core/a.extern_prelude_core3-317d481089b8c8fe83113de504472633.rs.rcgu.o" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/run-pass/extern-prelude-core/a" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/run-pass/extern-prelude-core/a.crate.allocator.rcgu.o" "-Wl,--gc-sections" "-no-pie" "-Wl,-z,relro,-z,now" "-Wl,-O1" "-nodefaultlibs" "-L" "/checkout/obj/build/i686-unknown-linux-musl/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/run-pass/extern-prelude-core/auxiliary" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/i686-unknown-linux-musl/lib" "-Wl,-Bstatic" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/i686-unknown-linux-musl/lib/liballoc_jemalloc-bc383e0f057203ff.rlib" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/i686-unknown-linux-musl/lib/libstd-6a80ec8be7cd108e.rlib" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/i686-unknown-linux-musl/lib/libpanic_unwind-9dc4a36381d3e96f.rlib" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/i686-unknown-linux-musl/lib/libunwind-cb8f79e68e7bccd2.rlib" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/i686-unknown-linux-musl/lib/liballoc_system-5280629c3db400fb.rlib" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/i686-unknown-linux-musl/lib/liblibc-e341d15b13410457.rlib" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/i686-unknown-linux-musl/lib/liballoc-5d430cabf0a1afd6.rlib" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/i686-unknown-linux-musl/lib/libcore-28a7cc3bf4217758.rlib" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/i686-unknown-linux-musl/lib/libcompiler_builtins-e2fcc1d0db99a66e.rlib" "-static" "-Wl,-rpath,/checkout/obj/lib/rustlib/i686-unknown-linux-musl/lib" "-Wl,--enable-new-dtags" "-Wl,-Bdynamic" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/i686-unknown-linux-musl/lib/crtn.o" "-Wl,-)"
[01:09:13]   = note: /checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/i686-unknown-linux-musl/lib/libcompiler_builtins-e2fcc1d0db99a66e.rlib(compiler_builtins-e2fcc1d0db99a66e.compiler_builtins12-8730ddb7c7ab62a37c92724f5ac1c1d7.rs.rcgu.o): In function `memcmp':
[01:09:13]           /checkout/src/rustc/compiler_builtins_shim/../../libcompiler_builtins/src/mem.rs:55: multiple definition of `memcmp'
[01:09:13]           /checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/i686-unknown-linux-musl/lib/liblibc-e341d15b13410457.rlib(memcmp.lo):/build/musl-1.1.18/src/string/memcmp.c:4: first defined here
[01:09:13]           /checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/i686-unknown-linux-musl/lib/libcompiler_builtins-e2fcc1d0db99a66e.rlib(compiler_builtins-e2fcc1d0db99a66e.compiler_builtins12-8730ddb7c7ab62a37c92724f5ac1c1d7.rs.rcgu.o): In function `memcpy':
[01:09:13]           /checkout/src/rustc/compiler_builtins_shim/../../libcompiler_builtins/src/mem.rs:9: multiple definition of `memcpy'
[01:09:13]           /checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/i686-unknown-linux-musl/lib/liblibc-e341d15b13410457.rlib(memcpy.lo):/build/musl-1.1.18/src/string/i386/memcpy.s:7: first defined here
[01:09:13]           /checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/i686-unknown-linux-musl/lib/libcompiler_builtins-e2fcc1d0db99a66e.rlib(compiler_builtins-e2fcc1d0db99a66e.compiler_builtins12-8730ddb7c7ab62a37c92724f5ac1c1d7.rs.rcgu.o): In function `memcpy':
[01:09:13]           /checkout/src/rustc/compiler_builtins_shim/../../libcompiler_builtins/src/mem.rs:9: multiple definition of `memmove'
[01:09:13]           /checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/i686-unknown-linux-musl/lib/liblibc-e341d15b13410457.rlib(memmove.lo):/build/musl-1.1.18/src/string/i386/memmove.s:4: first defined here
[01:09:13]           collect2: error: ld returned 1 exit status
[01:09:13] 
[01:09:13] error: aborting due to previous error
[01:09:13] 
[01:09:13] 
---
[01:09:13] 
[01:09:13] thread 'main' panicked at 'Some tests failed', tools/compiletest/src/main.rs:498:22
[01:09:13] 
[01:09:13] 
[01:09:13] command did not execute successfully: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage0-tools-bin/compiletest" "--compile-lib-path" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib" "--run-lib-path" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/i686-unknown-linux-musl/lib" "--rustc-path" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "--src-base" "/checkout/src/test/run-pass" "--build-base" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/run-pass" "--stage-id" "stage2-i686-unknown-linux-musl" "--mode" "run-pass" "--target" "i686-unknown-linux-musl" "--host" "x86_64-unknown-linux-gnu" "--llvm-filecheck" "/checkout/obj/build/x86_64-unknown-linux-gnu/llvm/build/bin/FileCheck" "--linker" "/musl-i686/bin/musl-gcc" "--host-rustcflags" "-Crpath -O -Zunstable-options " "--target-rustcflags" "-Crpath -O -Zunstable-options  -Lnative=/checkout/obj/build/i686-unknown-linux-musl/native/rust-test-helpers" "--docck-python" "/usr/bin/python2.7" "--lldb-python" "/usr/bin/python2.7" "--gdb" "/usr/bin/gdb" "--llvm-version" "6.0.1\n" "--cc" "" "--cxx" "" "--cflags" "" "--llvm-components" "" "--llvm-cxxflags" "" "--adb-path" "adb" "--adb-test-dir" "/data/tmp/work" "--android-cross-path" "" "--color" "always"
[01:09:13] 
[01:09:13] 
[01:09:13] failed to run: /checkout/obj/build/bootstrap/debug/bootstrap test --target i586-unknown-linux-gnu,i686-unknown-linux-musl
[01:09:13] Build completed unsuccessfully in 1:06:19
---
travis_time:end:11a949fe:start=1528688566535580383,finish=1528688566542637180,duration=7056797
travis_fold:end:after_failure.3
travis_fold:start:after_failure.4
travis_time:start:33d1d173
$ head -30 ./obj/build/x86_64-unknown-linux-gnu/native/asan/build/lib/asan/clang_rt.asan-dynamic-i386.vers || true
head: cannot open ‘./obj/build/x86_64-unknown-linux-gnu/native/asan/build/lib/asan/clang_rt.asan-dynamic-i386.vers’ for reading: No such file or directory
travis_fold:end:after_failure.4
travis_fold:start:after_failure.5
travis_time:start:03182a24
$ dmesg | grep -i kill

I'm a bot! I can only do what humans tell me to, so if this was not helpful or you have suggestions for improvements, please ping or otherwise contact @TimNN. (Feature Requests)

@kennytm kennytm added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Jun 11, 2018
@pietroalbini
Copy link
Member

Ping from triage @est31! It's been a while since we heard from you on this, will you have time to work on this again?

@est31
Copy link
Member Author

est31 commented Jun 18, 2018

I'm waiting on #49219

@pietroalbini pietroalbini added S-blocked Status: Marked as blocked ❌ on something else such as an RFC or other implementation work. and removed S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Jun 18, 2018
@kennytm
Copy link
Member

kennytm commented Jun 20, 2018

@bors r-

Wrongly requeued

@bors bors added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-blocked Status: Marked as blocked ❌ on something else such as an RFC or other implementation work. labels Jun 20, 2018
@kennytm kennytm added S-blocked Status: Marked as blocked ❌ on something else such as an RFC or other implementation work. and removed S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Jun 20, 2018
@bors
Copy link
Contributor

bors commented Jul 3, 2018

☔ The latest upstream changes (presumably #52014) made this pull request unmergeable. Please resolve the merge conflicts.

@est31
Copy link
Member Author

est31 commented Jul 3, 2018

The period of my contributions to Rust upstream has reached an end. Thus I'm unable to continue my work on this. I still think something like this is a great addition. I urge anyone interested in this change to adopt and continue it from here on. Thanks.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
S-blocked Status: Marked as blocked ❌ on something else such as an RFC or other implementation work.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants