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

Unable to init project because of compiler errors with proc-macro2 #219

Closed
Mackiovello opened this issue Jul 19, 2018 · 10 comments · Fixed by #222
Closed

Unable to init project because of compiler errors with proc-macro2 #219

Mackiovello opened this issue Jul 19, 2018 · 10 comments · Fixed by #222
Assignees
Labels
bug Something isn't working PR attached there's a PR open for this issue to-do stuff that needs to happen, so plz do it k thx
Milestone

Comments

@Mackiovello
Copy link
Contributor

Steps to reproduce:

$ git show
commit e601e701a75a80df9a75296131215629636e9cf9
Merge: 77fb9cd 88fdbc5
Author: ashley williams <[email protected]>
Date:   Thu Jul 19 11:42:07 2018 -0400

    Merge pull request #198 from Mackiovello/issue/189

    Improve UX for pack and publish path expectations

$ pwd
/home/erlend/rust/wasm-pack
$ mkdir reprod
$ ls
Cargo.lock  CHANGELOG.md        CONTRIBUTING.md  docs            LICENSE-MIT  reprod  target
Cargo.toml  CODE_OF_CONDUCT.md  demo.gif         LICENSE-APACHE  README.md    src     tests
$ cd reprod/
$ cargo init --lib
     Created library project
$ vim Cargo.toml
<!-- add wasm-bindgen and crate-type -->
$ cd ..
$ cargo run init reprod/
   Compiling wasm-pack v0.4.1 (file:///home/erlend/rust/wasm-pack)
    Finished dev [unoptimized + debuginfo] target(s) in 2.57s
     Running `target/debug/wasm-pack init reprod/`

  [1/8] Checking crate configuration...
  [2/8] Adding WASM target...
/ [3/8] Compiling to WASM...
Compilation of your program failed. stderr:

    Updating registry `https://github.com/rust-lang/crates.io-index`
   Compiling unicode-xid v0.1.0
   Compiling serde v1.0.70
   Compiling wasm-bindgen-shared v0.2.11
   Compiling itoa v0.4.2
   Compiling dtoa v0.4.3
   Compiling proc-macro2 v0.4.8
error[E0658]: use of unstable library feature 'proc_macro' (see issue #38356)
  --> /home/erlend/.cargo/registry/src/github.aaakk.us.kg-1ecc6299db9ec823/proc-macro2-0.4.8/src/unstable.rs:33:40
   |
33 |     let works = panic::catch_unwind(|| proc_macro::Span::call_site()).is_ok();
   |                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
   |
   = help: add #![feature(proc_macro)] to the crate attributes to enable

error[E0658]: use of unstable library feature 'proc_macro' (see issue #38356)
   --> /home/erlend/.cargo/registry/src/github.aaakk.us.kg-1ecc6299db9ec823/proc-macro2-0.4.8/src/unstable.rs:213:13
    |
213 |     Nightly(proc_macro::token_stream::IntoIter),
    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |
    = help: add #![feature(proc_macro)] to the crate attributes to enable

<!-- snip -->

error[E0658]: use of unstable library feature 'proc_macro' (see issue #38356)
   --> /home/erlend/.cargo/registry/src/github.aaakk.us.kg-1ecc6299db9ec823/proc-macro2-0.4.8/src/unstable.rs:630:62
    |
630 |             (Literal::Nightly(lit), Span::Nightly(s)) => lit.set_span(s),
    |                                                              ^^^^^^^^
    |
    = help: add #![feature(proc_macro)] to the crate attributes to enable

error: aborting due to 63 previous errors

For more information about this error, try `rustc --explain E0658`.
error: Could not compile `proc-macro2`.
warning: build failed, waiting for other jobs to finish...
error: build failed

More information:

$ rustup -v
rustup 1.11.0 (e751ff9f8 2018-02-13)

Am I doing something wrong here or is this a regression?

@ef4
Copy link

ef4 commented Jul 20, 2018

I am trying out wasm-pack for the first time and also hit this issue. But I think I found the solution. Update to:

wasm-bindgen="0.2.12" 

and adjust your features to:

#![feature(use_extern_macros, wasm_import_module)]

That was enough at least for me to get a hello world to compile.

If I am understanding correctly, this is fallout from this rust change and this wasm-bindgen change.

@ashleygwilliams
Copy link
Member

hey @ef4 and @Mackiovello - this is exactly correct. will be updating the tutorials today- unless someone wants to make the PR to the docs! thanks for filing <3

@Mackiovello
Copy link
Contributor Author

@ashleygwilliams we would have to update the error message for wasm-pack init too since it specifically asks you to add wasm-bindgen = "0.2". I can create a PR later today for the docs and the error message unless someone else does it before me.

@Mackiovello
Copy link
Contributor Author

After looking at this, it seems like the only thing needed to fix it was to update rust with rustup update nightly. It works even if I don't set wasm-bindgen to 0.2.12 or set any feature flags. So do we actually need to update anything? I'm not able to reproduce with latest nightly.

@ashleygwilliams
Copy link
Member

oh huh. thanks for the research @Mackiovello i'll take a look now and see if i can reproduce and if we need any sort of update. i'm giving a talk on this tonight so it's important haah!

@ashleygwilliams
Copy link
Member

@Mackiovello i was able to reproduce. i think it's best for us to update the example to be inline with wasm-bindgen anyways. i'll be filing a PR :)

@ashleygwilliams ashleygwilliams added bug Something isn't working to-do stuff that needs to happen, so plz do it k thx labels Jul 20, 2018
@ashleygwilliams ashleygwilliams self-assigned this Jul 20, 2018
@ashleygwilliams ashleygwilliams modified the milestones: 0.5.0, 0.4.2 Jul 20, 2018
@ashleygwilliams
Copy link
Member

heads up this will be included in a point release i intend to get out today! thanks again for the report- i super appreciate it <3 :)

@Mackiovello
Copy link
Contributor Author

I can't init the project even with features adjusted, would you like to point out where i did wrong?

Have you tried to update to the latest nightly with rustup update nightly?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working PR attached there's a PR open for this issue to-do stuff that needs to happen, so plz do it k thx
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants
@ef4 @ashleygwilliams @Mackiovello and others