Как выполнить тест груза по ночному каналу?

Я пытаюсь запустить свои тесты с ночным Rust с помощью Windows Powershell. Я запускаю cargo test в каталоге и получаю

Compiling rustcraft v0.1.0 (file:///C:/Users/Phoenix/Desktop/Rust/rustcraft)
error[E0554]: #![feature] may not be used on the stable release channel
 --> C:\Users\Phoenix\Desktop\Rust\rustcraft\src\main.rs:1:1
  |
1 | #![feature(integer_atomics)]
  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error[E0554]: #![feature] may not be used on the stable release channel
 --> C:\Users\Phoenix\Desktop\Rust\rustcraft\src\main.rs:2:1
  |
2 | #![feature(collections)]
  | ^^^^^^^^^^^^^^^^^^^^^^^^

Очевидно, я должен сказать Cargo, чтобы он скомпилировал его на ночном канале, но как? Я не могу найти ссылку на указание канала в разделе справки или на любом другом веб-сайте, который я нашел.


person Phoenix    schedule 03.02.2018    source источник


Ответы (2)


Решение командной строки может помочь вам настроить вашу IDE:

cargo +nightly test

При условии, конечно, что у вас установлен ночной канал. Если нет, возможно, установите его с rustup install nightly (не нужно переключаться на него, но убедитесь, что вы все еще используете стабильную версию: rustup show).

person Community    schedule 03.02.2018
comment
Если кто-то столкнется с тем же, что и я, порядок аргументов имеет значение. То есть cargo test +nightly не работает. - person firechant; 23.02.2018

Функциональность +<toolchain> поступает от rustup, менеджера цепочки инструментов Rust. Он работает как для cargo +<toolchain>, так и для rustc +<toolchain>.

Кроме того, вы можете использовать

  • rustup run <toolchain> <any arbitrary command goes here>
  • Поскольку вашему проекту требуются ночные функции, вы можете перейти в каталог и запустить rustup override set <toolchain>, чтобы всегда использовать ночной набор инструментов в этом каталоге.
  • Создайте в своем каталоге файл с именем rust-toolchain, содержащий имя требуемой цепочки инструментов (например, nightly). Это имеет безопасный эффект как переопределение, но может быть передано в систему управления версиями.

Смотрите также:

person Shepmaster    schedule 03.02.2018