Выпуск Rust 1.20

оригинал: The Rust Core Team • перевод: red75prime и Илья Богданов • новости • поддержите на Patreon

Команда Rust рада представить выпуск Rust 1.20. Rust — это системный язык программирования, нацеленный на скорость, безопасность и параллельное выполнение кода.

Если у вас установлена предыдущая версия Rust, для обновления достаточно выполнить:

1
$ rustup update stable

Если же Rust ещё не установлен, вы можете установить rustup с соответствующей страницы нашего веб-сайта и ознакомится с подробными примечаниями к выпуску Rust 1.20 на GitHub.

Что вошло в стабильную версию 1.20

В предыдущих версия Rust вы могли определять типажи, структуры и перечисления, имеющие «ассоциированные функции»:

1
2
3
4
5
6
7
8
9
10
11
struct Struct;

impl Struct {
    fn foo() {
        println!("foo - это ассоциированная функция для Struct");
    }
}

fn main() {
    Struct::foo();
}

Мы называем их «ассоциированными функциями», потому что эти функции связаны непосредственно с самим типом, а не с каким-то определённым экземпляром.

В Rust 1.20 была добавлена возможность определять «ассоциированные константы»:

1
2
3
4
5
6
7
8
9
struct Struct;

impl Struct {
    const ID: u32 = 0;
}

fn main() {
    println!("the ID of Struct is: {}", Struct::ID);
}

Таким образом, константа ID ассоциирована с Struct. Подобно функциям, ассоциированные константы работают и с типажами, и с перечислениями.

Game development in Rust, 14 сентября, Санкт-Петербург

• Логачев Федор • новости • поддержите на Patreon

14 сентября в Санкт-Петербурге состоится первая в истории встреча посвящённая разработке игр на Rust.

alt "Ferris"

Будут представлены доклады:

  • SHAR — 3d action на Rust, Фёдор Логачев

Обзор внутренностей и организации достаточно большой игры на Rust.

  • Three-rs — взгляд изнутри, Илья Богданов

Рассмотрим архитектурные решения и библиотеки, используемые при создании одного из самых молодых и активно развивающихся игровых движков на Rust.

  • Ржавые пошаговые игры, Андрей Лесников

Андрей расскажет о своём опыте хобби-разработки игры Zone of Control, немного о связанном с этим инструментарии и о своём новом проекте.

Мы будем рады как Rust-энтузиастам, так и тем, кто пока просто приглядывается к Rust с безопасного расстояния.

Мероприятие состоится 14-го сентября (четверг) в 19-00 в петербургском офисе JetBrains.

Для участия во встрече необходима регистрация на meetup

Как настроить сборку и тестирование для Open Source проекта на Rust под Windows с помощью AppVeyor

• Михаил Панков • обучение • поддержите на Patreon

teaser

Как зарегистрироваться на AppVeyor, подключить туда свой проект на Rust и сделать первую сборку.

Это цикл статей:

Как настроить сборку и тестирование для Open Source проекта на Rust под Linux с помощью Travis

• Михаил Панков • обучение • поддержите на Patreon

teaser

Как зарегистрироваться на Travis, подключить туда свой проект на Rust и сделать первую сборку.

Это цикл статей:

Выпуск Rust 1.19

оригинал: The Rust Core Team • перевод: Илья Богданов • новости • поддержите на Patreon

Команда Rust рада представить выпуск Rust 1.19. Rust — это системный язык программирования, нацеленный на скорость, безопасность и параллельное выполнение кода.

Если у вас установлена предыдущая версия Rust, для обновления достаточно выполнить:

1
$ rustup update stable

Если же Rust ещё не установлен, вы можете установить rustup с соответствующей страницы нашего веб-сайта и ознакомится с подробными примечаниями к выпуску Rust 1.19 на GitHub.

Что вошло в стабильную версию 1.19.0

В Rust 1.19.0 вошли некоторые долгожданные функции, но для начала, замечание для пользователей Windows. На этой ОС Rust использует для сборки link.exe, который входит в состав «Microsoft Visual C++ Build Tools». В последнем выпуске Visual Studio 2017 структура директорий для этих инструментов изменилась. Из-за этого вы были вынуждены использовать инструменты версии 2015 или изменять переменные среды (например, запуская vcvars.bat). В Rust 1.19.0, rustc знает, как найти инструменты версии 2017, поэтому вам не потребуется более использовать обходные пути.

А теперь к новым возможностям! Rust 1.19.0 — это первый выпуск, поддерживающий union (Объединения):

1
2
3
4
union MyUnion {
    f1: u32,
    f2: f32,
}