- PVSM.RU - https://www.pvsm.ru -
Сегодня мы рады представить релиз Rust 1.0 Beta [1]! Бета-релиз является очень важным звеном на пути к финальному релизу 1.0. В частности, в бета-релизе все библиотеки и элементы языка, которые мы собирались сделать стабильными в 1.0, отмечены как стабильные. Поэтому по бета-релизу можно весьма точно представить, что вас будет ожидать в Rust 1.0.
Список основных изменений в новой версии можно найти в примечаниях к выпуску [2].
Бета-релиз также является поворотным пунктом в нашем подходе к стабильности [3] (перевод [4]). Во время альфа-цикла использование нестабильных API и элементов языка разрешалось, но вызывало предупреждения компилятора. Начиная с беты, однако, их использование станет ошибкой (в случае, если вы не используете nightly- или собстенные сборки).
Экосистема Rust продолжает уверенно расти. Репозиторий crates.io [5] уже предоставляет больше 1700 пакетов и только что отметил миллионное скачивание. Многие из самых популярных пакетов собираются стабильным подмножеством Rust, а над остальными ведётся работа. Поэтому мы рекомендуем новым пользователям начать знакомство с Rust с бета-релиза, а не с nightly-сборок, и поэтому мы изменили скрипт rustup.sh [1] так, что теперь он по умолчанию устанавливает бета-версию. При этом вы всегда можете переключиться на nighly-срборку, если какие-либо из зависимостей вашего проекта ещё не обновились.
Финальный релиз Rust 1.0 запланирован на 15 мая — в точности шесть недель от данного момента. В это время мы собираемся приложить свои усилия к исправлению ошибок, улучшению документации и сообщений об ошибках и вообще к улучшению юзабилити. Мы не планируем изменений в функциональности стабилизированных элементов, но мы можем вносить небольшие изменения или добавления в API библиотек, если выявятся какие-то их недостатки или проблемы (но планка для таких изменений относительно высока).
Хотя мы и не собираемся добавлять новые фичи (или API) в релизе 1.0, это не значит, что мы совсем прекратили работу над ними. Совсем наоборот! Согласно модели "поезда" [6] (перевод [7]), мы продолжим работу над новыми фичами в основной ветке параллельно с бетой. И конечно, мы выпустим релиз 1.1-beta одновременно с финальным релизом 1.0 — долго ждать не придётся.
Чтобы убедиться, что при добавлении новых фич мы не сломаем существующий код, ведётся работа над новой CI-инфраструктурой, которая позволит нам следить, какие из пакетов собираются nightly-сборками, и выявлять регрессии во всей экосистеме, а не только в нашей собственной кодовой базе. Эта инфраструктура всё ещё в разработке, но вы можете посмотреть пример отчёта здесь [8].
Как всегда, релиз 1.0-beta стал возможными только благодаря всему сообществу Rust. Большое спасибо всем, кто участвовал в обсуждениях RFC; в особенности мы благодарны 172 контрибьюторам этого релиза: список [9].
Автор: Googolplex
Источник [14]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/programmirovanie/87993
Ссылки в тексте:
[1] Rust 1.0 Beta: http://www.rust-lang.org/install.html
[2] примечаниях к выпуску: https://github.com/rust-lang/rust/blob/master/RELEASES.md#version-100-beta-april-2015
[3] подходе к стабильности: http://blog.rust-lang.org/2014/10/30/Stability.html
[4] перевод: http://habrahabr.ru/post/243315/
[5] crates.io: https://crates.io/
[6] модели "поезда": http://blog.rust-lang.org/2014/12/12/1.0-Timeline.html
[7] перевод: http://habrahabr.ru/post/250577/
[8] здесь: https://gist.github.com/brson/a30a77836fbec057cbee
[9] список: http://blog.rust-lang.org/2015/04/03/Rust-1.0-beta.html#a-community-achievement
[10] /r/rust: http://reddit.com/r/rust
[11] Stackoverflow по тегу rust: http://stackoverflow.com/questions/tagged/rust
[12] users.rust-lang.org: http://users.rust-lang.org/
[13] Rust по-русски: https://groups.google.com/forum/#!forum/rust-russian
[14] Источник: http://habrahabr.ru/post/254961/
Нажмите здесь для печати.