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

cargo install peermaps-ingest : error[E0554]: #![feature] may not be used on the stable release channel #15

Open
raphael10-collab opened this issue Apr 19, 2022 · 2 comments

Comments

@raphael10-collab
Copy link

raphael10-collab commented Apr 19, 2022

In order to understand how to fully use peermaps I downloaded a small pbf file from https://download.geofabrik.de/europe/guernsey-jersey.html , and then tried to install peermaps-ingest:

But got this error:

(base) raphy@pc:~/peermaps-web/GeoFiles$ sudo apt install cargo
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following additional packages will be installed:
  libssh2-1 libstd-rust-1.57 libstd-rust-dev rustc
Suggested packages:
  cargo-doc lld-13 clang-13
Recommended packages:
  llvm-13
The following NEW packages will be installed:
  cargo libssh2-1 libstd-rust-1.57 libstd-rust-dev rustc
0 upgraded, 5 newly installed, 0 to remove and 11 not upgraded.
Need to get 79.5 MB of archives.
After this operation, 354 MB of additional disk space will be used.
Do you want to continue? [Y/n] Y
Get:1 http://it.archive.ubuntu.com/ubuntu focal/universe amd64 libssh2-1 amd64 1.8.0-2.1build1 [75.4 kB]
Get:2 http://it.archive.ubuntu.com/ubuntu focal-updates/universe amd64 libstd-rust-1.57 amd64 1.57.0+dfsg1+llvm-0ubuntu1~20.04.1 [39.7 MB]
Get:3 http://it.archive.ubuntu.com/ubuntu focal-updates/universe amd64 libstd-rust-dev amd64 1.57.0+dfsg1+llvm-0ubuntu1~20.04.1 [32.9 MB]
Get:4 http://it.archive.ubuntu.com/ubuntu focal-updates/universe amd64 rustc amd64 1.57.0+dfsg1+llvm-0ubuntu1~20.04.1 [3,414 kB]
Get:5 http://it.archive.ubuntu.com/ubuntu focal-updates/universe amd64 cargo amd64 0.58.0-0ubuntu1~20.04.1 [3,446 kB]
Fetched 79.5 MB in 1s (61.7 MB/s)
Selecting previously unselected package libssh2-1:amd64.
dpkg: warning: files list file for package 'droidcam' missing; assuming package has no files currently installed
(Reading database ... 351918 files and directories currently installed.)
Preparing to unpack .../libssh2-1_1.8.0-2.1build1_amd64.deb ...
Unpacking libssh2-1:amd64 (1.8.0-2.1build1) ...
Selecting previously unselected package libstd-rust-1.57:amd64.
Preparing to unpack .../libstd-rust-1.57_1.57.0+dfsg1+llvm-0ubuntu1~20.04.1_amd64.deb ...
Unpacking libstd-rust-1.57:amd64 (1.57.0+dfsg1+llvm-0ubuntu1~20.04.1) ...
Selecting previously unselected package libstd-rust-dev:amd64.
Preparing to unpack .../libstd-rust-dev_1.57.0+dfsg1+llvm-0ubuntu1~20.04.1_amd64.deb ...
Unpacking libstd-rust-dev:amd64 (1.57.0+dfsg1+llvm-0ubuntu1~20.04.1) ...
Selecting previously unselected package rustc.
Preparing to unpack .../rustc_1.57.0+dfsg1+llvm-0ubuntu1~20.04.1_amd64.deb ...
Unpacking rustc (1.57.0+dfsg1+llvm-0ubuntu1~20.04.1) ...
Selecting previously unselected package cargo.
Preparing to unpack .../cargo_0.58.0-0ubuntu1~20.04.1_amd64.deb ...
Unpacking cargo (0.58.0-0ubuntu1~20.04.1) ...
Setting up libssh2-1:amd64 (1.8.0-2.1build1) ...
Setting up libstd-rust-1.57:amd64 (1.57.0+dfsg1+llvm-0ubuntu1~20.04.1) ...
Setting up libstd-rust-dev:amd64 (1.57.0+dfsg1+llvm-0ubuntu1~20.04.1) ...
Setting up rustc (1.57.0+dfsg1+llvm-0ubuntu1~20.04.1) ...
Setting up cargo (0.58.0-0ubuntu1~20.04.1) ...
Processing triggers for man-db (2.9.1-1) ...
Processing triggers for libc-bin (2.31-0ubuntu9.7) ...


(base) raphy@pc:~/peermaps-web/GeoFiles$ cargo install peermaps-ingest
    Updating crates.io index
  Downloaded peermaps-ingest v4.0.1
  Downloaded 1 crate (28.4 KB) in 1.08s
  Installing peermaps-ingest v4.0.1
  Downloaded fastrand v1.7.0
  Downloaded futures v0.3.21
  Downloaded futures-io v0.3.21
  Downloaded futures-macro v0.3.21
  Downloaded futures-core v0.3.21
  Downloaded futures-channel v0.3.21
  Downloaded getrandom v0.1.16
  Downloaded hashbrown v0.9.1
  Downloaded kv-log-macro v1.0.7
  Downloaded lru v0.4.3
  Downloaded adler v1.0.2
  Downloaded indoc v1.0.4
  Downloaded futures-executor v0.3.21
  Downloaded flate2 v1.0.23
  Downloaded getrandom v0.2.6
  Downloaded futures-lite v1.12.0
  Downloaded futures-util v0.3.21
  Downloaded log v0.4.16
  Downloaded libc v0.2.124
  Downloaded pin-utils v0.1.0
  Downloaded futures-sink v0.3.21
  Downloaded polling v2.2.0
  Downloaded syn v1.0.91
  Downloaded value-bag v1.0.0-alpha.8
  Downloaded unindent v0.1.8
  Downloaded ahash v0.2.19
  Downloaded async-attributes v1.1.2
  Downloaded addr2line v0.17.0
  Downloaded ahash v0.4.7
  Downloaded async-global-executor v2.0.4
  Downloaded async-mutex v1.4.0
  Downloaded async-executor v1.4.1
  Downloaded synstructure v0.12.6
  Downloaded async-task v4.2.0
  Downloaded async-std v1.11.0
  Downloaded georender-pack v2.1.1
  Downloaded autocfg v0.1.8
  Downloaded atomic-waker v1.0.0
  Downloaded async-process v1.3.0
  Downloaded const-random v0.1.13
  Downloaded backtrace v0.3.65
  Downloaded failure_derive v0.1.8
  Downloaded failure v0.1.8
  Downloaded hashbrown v0.6.3
  Downloaded slab v0.4.6
  Downloaded miniz_oxide v0.5.1
  Downloaded hex v0.4.3
  Downloaded quote v1.0.18
  Downloaded proc-macro2 v1.0.37
  Downloaded async-trait v0.1.53
  Downloaded signal-hook-registry v1.4.0
  Downloaded anyhow v1.0.56
  Downloaded ppv-lite86 v0.2.16
  Downloaded once_cell v1.10.0
  Downloaded ctor v0.1.22
  Downloaded crunchy v0.2.2
  Downloaded crossbeam-utils v0.8.8
  Downloaded regex v1.5.5
  Downloaded futures-task v0.3.21
  Downloaded version_check v0.9.4
  Downloaded random-access-disk v2.0.0
  Downloaded random-access-storage v4.0.0
  Downloaded parking v2.0.0
  Downloaded tiny-keccak v2.0.2
  Downloaded waker-fn v1.1.0
  Downloaded async-lock v2.5.0
  Downloaded async-channel v1.6.1
  Downloaded socket2 v0.4.4
  Downloaded rand_core v0.5.1
  Downloaded num_cpus v1.13.1
  Downloaded const-random-macro v0.1.13
  Downloaded blocking v1.2.0
  Downloaded rand v0.7.3
  Downloaded event-listener v2.5.2
  Downloaded pin-project-lite v0.2.8
  Downloaded rustc-demangle v0.1.21
  Downloaded unbounded-interval-tree v0.2.3
  Downloaded desert v2.0.1
  Downloaded cc v1.0.73
  Downloaded crc32fast v1.3.2
  Downloaded cache-padded v1.2.0
  Downloaded autocfg v1.1.0
  Downloaded object v0.28.3
  Downloaded concurrent-queue v1.2.2
  Downloaded signal-hook v0.3.13
  Downloaded rand_chacha v0.2.2
  Downloaded eyros v4.6.1
  Downloaded async-io v1.6.0
  Downloaded desert v1.0.3
  Downloaded quick-protobuf v0.8.0
  Downloaded gimli v0.26.1
  Downloaded earcutr v0.1.1
  Downloaded mkdirp v1.0.0
  Downloaded argmap v1.1.1
  Downloaded digit_group v0.1.0
  Downloaded osm-is-area v1.0.0
  Downloaded osmpbf-parser v1.3.1
  Downloaded 97 crates (5.1 MB) in 1.02s
   Compiling libc v0.2.124
   Compiling proc-macro2 v1.0.37
   Compiling unicode-xid v0.2.2
   Compiling syn v1.0.91
   Compiling cfg-if v1.0.0
   Compiling memchr v2.4.1
   Compiling futures-core v0.3.21
   Compiling futures-io v0.3.21
   Compiling pin-project-lite v0.2.8
   Compiling version_check v0.9.4
   Compiling slab v0.4.6
   Compiling log v0.4.16
   Compiling cache-padded v1.2.0
   Compiling cc v1.0.73
   Compiling crunchy v0.2.2
   Compiling fastrand v1.7.0
   Compiling event-listener v2.5.2
   Compiling parking v2.0.0
   Compiling waker-fn v1.1.0
   Compiling tiny-keccak v2.0.2
   Compiling once_cell v1.10.0
   Compiling proc-macro-hack v0.5.19
   Compiling getrandom v0.1.16
   Compiling adler v1.0.2
   Compiling lazy_static v1.4.0
   Compiling async-task v4.2.0
   Compiling signal-hook v0.3.13
   Compiling pin-utils v0.1.0
   Compiling autocfg v1.1.0
   Compiling futures-channel v0.3.21
   Compiling futures-task v0.3.21
   Compiling futures-util v0.3.21
   Compiling atomic-waker v1.0.0
   Compiling futures-sink v0.3.21
   Compiling async-trait v0.1.53
   Compiling gimli v0.26.1
   Compiling crossbeam-utils v0.8.8
   Compiling failure_derive v0.1.8
   Compiling crc32fast v1.3.2
   Compiling fs_extra v1.2.0
   Compiling ppv-lite86 v0.2.16
   Compiling rustc-demangle v0.1.21
   Compiling anyhow v1.0.56
   Compiling desert v2.0.1
   Compiling mkdirp v1.0.0
   Compiling regex-syntax v0.6.25
   Compiling byteorder v1.4.3
   Compiling ahash v0.4.7
   Compiling earcutr v0.1.1
   Compiling hex v0.4.3
   Compiling osm-is-area v1.0.0
   Compiling unindent v0.1.8
   Compiling digit_group v0.1.0
   Compiling argmap v1.1.1
error[E0554]: `#![feature]` may not be used on the stable release channel
 --> /home/raphy/.cargo/registry/src/github.com-1ecc6299db9ec823/argmap-1.1.1/src/lib.rs:1:1
  |
1 | #![feature(extended_key_value_attributes)]
  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove the attribute
  |
  = help: the feature `extended_key_value_attributes` has been stable since 1.54.0 and no longer requires an attribute to enable

For more information about this error, try `rustc --explain E0554`.
error: could not compile `argmap` due to previous error
warning: build failed, waiting for other jobs to finish...
error: failed to compile `peermaps-ingest v4.0.1`, intermediate artifacts can be found at `/tmp/cargo-installv9YQxE`

Caused by:
  build failed

This is the complete output of rustc --explain E0554 :

Feature attributes are only allowed on the nightly release channel. Stable or
beta compilers will not comply.

Erroneous code example:

```
#![feature(lang_items)] // error: `#![feature]` may not be used on the
                        //        stable release channel
```

If you need the feature, make sure to use a nightly release of the compiler
(but be warned that the feature may be removed or altered in the future).

O.S. : Ubuntu 20.04 Desktop

/tmp/cargo-installv9YQxE/.rustc_info.json :
rustc_info-json.txt

How to solve the problem?

@ghost
Copy link

ghost commented May 5, 2022

Thanks, I hadn't published an updated version of the argmap crate that had the appropriate change for stable rust. It's published now in argmap 1.1.2, so if you try to install again it might work now. Otherwise, you can use rust nightly with the rustup command.

@raphael10-collab
Copy link
Author

raphael10-collab commented May 13, 2022

@substack I tried to install argmap but got these errors:

(base) raphy@pc:~/peermaps-web/GeoFiles$ cargo install argmap
    Updating crates.io index
error: there is nothing to install in `argmap v1.1.2`, because it has no binaries
`cargo install` is only for installing programs, and can't be used with libraries.
To use a library crate, add it as a dependency in a Cargo project instead.
(base) raphy@pc:~/peermaps-web/GeoFiles$ 

As far as I understand the ingest repo still contains version 1.1.0 of argmap https://github.com/peermaps/ingest/blob/master/Cargo.toml#L23

I also git clone the peermaps-ingest repo and modified in Cargo.toml the dependencies list, updating argmap to 1.1.2 version:

[dependencies]
eyros = "4.6.1"
georender-pack = "2.1.1"
desert = "2.0.0"
async-std = "1.10.0"
osm-is-area = "1.0.0"
random-access-disk = "2.0.0"
argmap = "1.1.2"
indoc = "1.0.3"
futures = "0.3.13"
osmpbf-parser = "1.3.1"
jemallocator = "0.3.2"
hashbrown = "0.9.1"
digit_group = "0.1.0"

Then I tried to install peermaps-ingest using the updated configuration, but got these errors:

(base) raphy@pc:~/peermaps-web/ingest-folder$ cargo install --path .
  Installing peermaps-ingest v4.0.1 (/home/raphy/peermaps-web/ingest-folder)
    Updating crates.io index
  Downloaded syn v1.0.94
  Downloaded indoc v1.0.6
  Downloaded object v0.28.4
  Downloaded 3 crates (488.3 KB) in 0.43s
   Compiling libc v0.2.125
   Compiling proc-macro2 v1.0.38
   Compiling unicode-xid v0.2.3
   Compiling syn v1.0.94
   Compiling cfg-if v1.0.0
   Compiling memchr v2.5.0
   Compiling futures-core v0.3.21
   Compiling futures-io v0.3.21
   Compiling version_check v0.9.4
   Compiling pin-project-lite v0.2.9
   Compiling slab v0.4.6
   Compiling cc v1.0.73
   Compiling cache-padded v1.2.0
   Compiling log v0.4.17
   Compiling fastrand v1.7.0
   Compiling parking v2.0.0
   Compiling waker-fn v1.1.0
   Compiling crunchy v0.2.2
   Compiling event-listener v2.5.2
   Compiling tiny-keccak v2.0.2
   Compiling once_cell v1.10.0
   Compiling proc-macro-hack v0.5.19
   Compiling getrandom v0.1.16
   Compiling adler v1.0.2
   Compiling lazy_static v1.4.0
   Compiling futures-task v0.3.21
   Compiling futures-channel v0.3.21
   Compiling async-task v4.2.0
   Compiling signal-hook v0.3.13
   Compiling autocfg v1.1.0
   Compiling pin-utils v0.1.0
   Compiling atomic-waker v1.0.0
   Compiling futures-sink v0.3.21
   Compiling gimli v0.26.1
   Compiling async-trait v0.1.53
   Compiling futures-util v0.3.21
   Compiling failure_derive v0.1.8
   Compiling crossbeam-utils v0.8.8
   Compiling ppv-lite86 v0.2.16
   Compiling anyhow v1.0.57
   Compiling crc32fast v1.3.2
   Compiling fs_extra v1.2.0
   Compiling rustc-demangle v0.1.21
   Compiling byteorder v1.4.3
   Compiling desert v2.0.1
   Compiling mkdirp v1.0.0
   Compiling ahash v0.4.7
   Compiling regex-syntax v0.6.25
   Compiling earcutr v0.1.1
   Compiling hex v0.4.3
   Compiling osm-is-area v1.0.0
   Compiling indoc v1.0.6
   Compiling digit_group v0.1.0
   Compiling argmap v1.1.2
   Compiling concurrent-queue v1.2.2
   Compiling value-bag v1.0.0-alpha.9
   Compiling async-mutex v1.4.0
   Compiling async-lock v2.5.0
   Compiling miniz_oxide v0.5.1
   Compiling autocfg v0.1.8
   Compiling backtrace v0.3.65
   Compiling quick-protobuf v0.8.0
   Compiling jemalloc-sys v0.3.2
   Compiling hashbrown v0.9.1
   Compiling hashbrown v0.6.3
   Compiling addr2line v0.17.0
   Compiling object v0.28.4
   Compiling aho-corasick v0.7.18
   Compiling futures-lite v1.12.0
   Compiling async-channel v1.6.1
   Compiling socket2 v0.4.4
   Compiling signal-hook-registry v1.4.0
   Compiling num_cpus v1.13.1
   Compiling quote v1.0.18
   Compiling getrandom v0.2.6
   Compiling flate2 v1.0.23
   Compiling rand_core v0.5.1
   Compiling regex v1.5.5
   Compiling async-executor v1.4.1
   Compiling blocking v1.2.0
   Compiling const-random-macro v0.1.13
   Compiling rand_chacha v0.2.2
   Compiling rand v0.7.3
   Compiling const-random v0.1.13
   Compiling ahash v0.2.19
   Compiling unbounded-interval-tree v0.2.3
   Compiling lru v0.4.3
   Compiling osmpbf-parser v1.3.1
   Compiling synstructure v0.12.6
   Compiling ctor v0.1.22
   Compiling futures-macro v0.3.21
   Compiling async-attributes v1.1.2
   Compiling failure v0.1.8
   Compiling desert v1.0.3
   Compiling polling v2.2.0
   Compiling kv-log-macro v1.0.7
   Compiling random-access-storage v4.0.0
   Compiling async-io v1.6.0
   Compiling async-global-executor v2.0.4
   Compiling async-process v1.4.0
   Compiling async-std v1.11.0
   Compiling futures-executor v0.3.21
   Compiling futures v0.3.21
   Compiling georender-pack v2.1.1
   Compiling jemallocator v0.3.2
   Compiling random-access-disk v2.0.0
error[E0554]: `#![feature]` may not be used on the stable release channel
 --> /home/raphy/.cargo/registry/src/github.com-1ecc6299db9ec823/georender-pack-2.1.1/src/lib.rs:1:12
  |
1 | #![feature(drain_filter)]
  |            ^^^^^^^^^^^^

For more information about this error, try `rustc --explain E0554`.
error: could not compile `georender-pack` due to previous error
warning: build failed, waiting for other jobs to finish...
error: failed to compile `peermaps-ingest v4.0.1 (/home/raphy/peermaps-web/ingest-folder)`, intermediate artifacts can be found at `/home/raphy/peermaps-web/ingest-folder/target`

Caused by:
  build failed

Output of rustc --explain E0554 :

Feature attributes are only allowed on the nightly release channel. Stable or
beta compilers will not comply.

Erroneous code example:

```
#![feature(lang_items)] // error: `#![feature]` may not be used on the
                        //        stable release channel
```

If you need the feature, make sure to use a nightly release of the compiler
(but be warned that the feature may be removed or altered in the future).

May be because I'm not that acquainted to rust, but I do not know how to proceed.
Would you be so kind in helping me?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant