🦀 Наш Євангеліст Ярослав випустив чергову статтю на DOU "Чому обирають Rust".
У цій статті розкрито такі питання:
- чому бізнес вибирає Rust
- чому фахівці обирають Rust
- для чого потрібен Rust Bootcamp
- агресивна стратегія для перекваліфікації на Rust та Альтернативи
🔥 Переходьте за посиланням та підтримайте статтю вподобайкою!
У цій статті розкрито такі питання:
- чому бізнес вибирає Rust
- чому фахівці обирають Rust
- для чого потрібен Rust Bootcamp
- агресивна стратегія для перекваліфікації на Rust та Альтернативи
🔥 Переходьте за посиланням та підтримайте статтю вподобайкою!
DOU
Чому обирають Rust
Привіт, в травні я готував статтю про перший випуск навчальної групи з Rust, зголосився готувати статтю за власним бажанням бо мені подобається Rust й звісно сама спільнот
🔥16❤4
DOU збирають респондентів для анонімного зарплатного опитування: https://dou.ua/goto/bnHM
Шукають ще 2 000 розробників, тож саме ваша анкета дуже важлива.
Проходження опитування займає всього 10 хв 🤌🏻
Приєднуйтесь!
Шукають ще 2 000 розробників, тож саме ваша анкета дуже важлива.
Проходження опитування займає всього 10 хв 🤌🏻
Приєднуйтесь!
Google Docs
Портрет і зарплатне опитування DOU, літо 2023
Не зраджуємо традиції і продовжуємо щопівроку збирати анонімні дані про зарплати українських IT-спеціалістів. Як завжди влітку, до зарплат додаємо ще опитування «Портрет ІТ-спеціаліста».
Якщо ви зараз знаходитеся в Україні або переїхали за кордон через…
Якщо ви зараз знаходитеся в Україні або переїхали за кордон через…
👏11👍2🎄1
Привіт, друзі! Раді представити одну із доповідей UA Rust Conference 2023 на тему “Using WebAssembly in the backend” 🔥
У цій доповіді Андрій Сокирко розповідає:
▪️ Що таке WASM
▪️ WASM для плагінів у вашому проекті
▪️ Альтернатива контейнерам
▪️ Bytecodealliance, Components Model
▪️ Чим запустити WASM (runtimes)
▪️ Популярні рантайми написані на Rust
Переходь за посиланням та став вподобайку!
У цій доповіді Андрій Сокирко розповідає:
▪️ Що таке WASM
▪️ WASM для плагінів у вашому проекті
▪️ Альтернатива контейнерам
▪️ Bytecodealliance, Components Model
▪️ Чим запустити WASM (runtimes)
▪️ Популярні рантайми написані на Rust
Переходь за посиланням та став вподобайку!
YouTube
Using WebAssembly in the backend
Speech 7
Topic: "Using WebAssembly in the backend"
Speaker: Андрій Сокирко
Language: ukrainian 🇺🇦
Subnoscripts: english 🇬🇧 , ukrainian 🇺🇦
Presentation: https://drive.google.com/file/d/1whp7J9rPdnqxsxH_2PLSXY-fIzdJ-BxD/view?usp=share_link
About presentaion:…
Topic: "Using WebAssembly in the backend"
Speaker: Андрій Сокирко
Language: ukrainian 🇺🇦
Subnoscripts: english 🇬🇧 , ukrainian 🇺🇦
Presentation: https://drive.google.com/file/d/1whp7J9rPdnqxsxH_2PLSXY-fIzdJ-BxD/view?usp=share_link
About presentaion:…
🔥24❤5
Що нового в Rust 1.71.0
Мова
* Виправлення лінтів `
Компілятор
* Прапірець компілятора який виводить інформацію про таргет деплою для Apple девайсів, їх версію та тип (macos, ios, watchos, tvos)
* Стабілізації ABIs (`extern "C"`) тепер доступні під фічею `
* Оновлення таргету `
* Фіча `flatten-format-args` для генерації оптимальнішого коду макросом `println!` тепер увімкнена по дефолту.
* Дефолтний CPU для таргету `
Новий таргет `
Бібліотеки
* Перероблена обробка рекурсивних панік (наприклад паніка в дропі після іншої паніки) що врятує від дедлоку при бектрейсі
* Баунд на `
* Прибраний баунд
* Стабілізації деяких методів`
Cargo
* Метадата cargo тепер включає в себе дефолтні пакети воркспейсу
* Тепер cargo буде обирати крейти по найбільш підходящій (встановленій) версії расту якщо вона вказана в інформації про крейт
* При створенні нового проекту через `cargo new`/` cargo init` у воркспейсі будуть успадковані його поля
Документація
* Новий лінт для документації '
* Закреслення в документації тепер пишиться одинарними тільдами (`~~old~~` vs. `~new~`)
Мова
* Виправлення лінтів `
{dropping,forgetting}_{references,copy_types}` які тепер видаватимуть попередження при виклику `std::mem::drop` та `std::mem::forget` на копі типах та посиланняхКомпілятор
* Прапірець компілятора який виводить інформацію про таргет деплою для Apple девайсів, їх версію та тип (macos, ios, watchos, tvos)
* Стабілізації ABIs (`extern "C"`) тепер доступні під фічею `
c_unwind` які дозволяють розмотку стеку між різними мовами* Оновлення таргету `
*-linux-musl` що дозволяє використовувати time64 на 32-бітних системах* Фіча `flatten-format-args` для генерації оптимальнішого коду макросом `println!` тепер увімкнена по дефолту.
* Дефолтний CPU для таргету `
aarch64-apple-darwin` тепер Apple M1 замість Apple A14Новий таргет `
x86_64h-apple-darwin` для старих Apple девайсівБібліотеки
* Перероблена обробка рекурсивних панік (наприклад паніка в дропі після іншої паніки) що врятує від дедлоку при бектрейсі
* Баунд на `
From<&[T]> for Box<[T]>` тепер потребує лише `T: Clone замість T: Copy`* Прибраний баунд
T: `Send на SendError<T>`, `TrySendError<T>` та `SendTimeoutError<T>`* Стабілізації деяких методів`
NonZeroI*, CStr::is_empty, BuildHasher::hash_one` та іншеCargo
* Метадата cargo тепер включає в себе дефолтні пакети воркспейсу
* Тепер cargo буде обирати крейти по найбільш підходящій (встановленій) версії расту якщо вона вказана в інформації про крейт
* При створенні нового проекту через `cargo new`/` cargo init` у воркспейсі будуть успадковані його поля
Документація
* Новий лінт для документації '
#![warn(rustdoc::unescaped_backticks)]` який попереджає про незакриті backticks* Закреслення в документації тепер пишиться одинарними тільдами (`~~old~~` vs. `~new~`)
GitHub
Release Rust 1.71.0 · rust-lang/rust
Language
Stabilize raw-dylib, link_ordinal, import_name_type and -Cdlltool.
Uplift clippy::{drop,forget}_{ref,copy} lints.
Type inference is more conservative around constrained vars.
Use fulfillm...
Stabilize raw-dylib, link_ordinal, import_name_type and -Cdlltool.
Uplift clippy::{drop,forget}_{ref,copy} lints.
Type inference is more conservative around constrained vars.
Use fulfillm...
🎉15
Раді вам представити Software Architecture fwdays'23 — це конференція, присвячена практичним питанням архітектури програмного забезпечення 🙌. Серед тем події: Solution Architecture, System Architecture, Cloud Architecture та DevOps.
На конференції будуть українські та міжнародні експерти у сфері розробки software architecture, дискусії з ТОП-спеціалістами, розбір актуальних кейсів💪
🗓 Дата: 19 вересня та 23 вересня
🗣 Формат: онлайн та офлайн (у Києві)
🎙 Мови доповідей: українська та англійська
Є два типи квитків:
✔️ONLINE TICKET (доступ та записи всіх ефірів, Q&A зі спікерами, приватний чат, сертифікат участі)
✔️FULL TICKET (всі опції з ONLINE TICKET, Offline участь у конференції, живий нетворкінг, смачний обід та кава-брейки)
Використайте промокод 79E0FFCDE7 та отримайте знижку 10%, читайте відгуки та деталі за посиланням 👉https://bit.ly/3pVTWOZ
Також команда Fwdays шукає спікерів та спікерок! 🤓 Маєте класний практичний досвід у розробці Software Architecture та хочете виступити на конференції? Будь ласка, заповніть форму до 7 серпня!
*На правах реклами від інформаційного партнера*
На конференції будуть українські та міжнародні експерти у сфері розробки software architecture, дискусії з ТОП-спеціалістами, розбір актуальних кейсів💪
🗓 Дата: 19 вересня та 23 вересня
🗣 Формат: онлайн та офлайн (у Києві)
🎙 Мови доповідей: українська та англійська
Є два типи квитків:
✔️ONLINE TICKET (доступ та записи всіх ефірів, Q&A зі спікерами, приватний чат, сертифікат участі)
✔️FULL TICKET (всі опції з ONLINE TICKET, Offline участь у конференції, живий нетворкінг, смачний обід та кава-брейки)
Використайте промокод 79E0FFCDE7 та отримайте знижку 10%, читайте відгуки та деталі за посиланням 👉https://bit.ly/3pVTWOZ
Також команда Fwdays шукає спікерів та спікерок! 🤓 Маєте класний практичний досвід у розробці Software Architecture та хочете виступити на конференції? Будь ласка, заповніть форму до 7 серпня!
*На правах реклами від інформаційного партнера*
Facebook
Software Architecture fwdays'23 conference
Networking event by Fwdays - Tech Events on Tuesday, September 19 2023
👏7
🎓 Шукаємо Rust викладача в університет!
Привіт, спільното! Одна з наших цілей - інтеграція Rust 🦀 в українські університети. Зараз ми ведемо переговори і маємо попередні домовленості з декількома з кращих ВНЗ-ів України щоб інтегрувати в навчальну програму Rust. Серед них: Києво-Могилянська академія. КНУТД, Київський політехнічний інститут, УКУ та інші.
Нам бракує 🔎 тих, хто мріє про те, щоб викладати в університеті улюблену мову програмування на 1/4, 1/2, 3/4 або навіть на повну ставку. 💼 Натомість ви можете отримати викладацький досвід, внести свій вклад у розвиток освітньої системи України, а працевлаштування на 3/4 ставки дає ще й імунітет від зони бойових дій.
Звертайтесь до @wandalen_me
Привіт, спільното! Одна з наших цілей - інтеграція Rust 🦀 в українські університети. Зараз ми ведемо переговори і маємо попередні домовленості з декількома з кращих ВНЗ-ів України щоб інтегрувати в навчальну програму Rust. Серед них: Києво-Могилянська академія. КНУТД, Київський політехнічний інститут, УКУ та інші.
Нам бракує 🔎 тих, хто мріє про те, щоб викладати в університеті улюблену мову програмування на 1/4, 1/2, 3/4 або навіть на повну ставку. 💼 Натомість ви можете отримати викладацький досвід, внести свій вклад у розвиток освітньої системи України, а працевлаштування на 3/4 ставки дає ще й імунітет від зони бойових дій.
Звертайтесь до @wandalen_me
❤16🤷♂4👍2🫡1
Друзі, раді опублікувати наступну доповідь “Fuzz testing in Rust” із UA Rust Conference 2023 🦀
Тут доповідач Григорій Гонта розповідає:
▪️What is fuzz testing
▪️When you need it
▪️Available tools
▪️Setup initial input
▪️Understand output
▪️Demo time
Переходьте за посиланням та ставте вподобайку!
Тут доповідач Григорій Гонта розповідає:
▪️What is fuzz testing
▪️When you need it
▪️Available tools
▪️Setup initial input
▪️Understand output
▪️Demo time
Переходьте за посиланням та ставте вподобайку!
YouTube
Fuzz testing in Rust / Fuzz тестування у Rust (Gregory Gonta)
Speech 4
Topic: "Fuzz testing in Rust"
Speaker: Григорій Гонта
Language: ukrainian 🇺🇦
Subnoscripts: english 🇬🇧 , ukrainian 🇺🇦
Presentation: https://drive.google.com/file/d/1LNeUOVFq6X9_jl5io7mN30OviBHDuFsb/view?usp=share_link
About presentaion:
У доповіді…
Topic: "Fuzz testing in Rust"
Speaker: Григорій Гонта
Language: ukrainian 🇺🇦
Subnoscripts: english 🇬🇧 , ukrainian 🇺🇦
Presentation: https://drive.google.com/file/d/1LNeUOVFq6X9_jl5io7mN30OviBHDuFsb/view?usp=share_link
About presentaion:
У доповіді…
🔥11❤4
Наступна 🎤 доповідь про “Property-Based Testing”, яка була на UA Rust conference 2023 від Сергія Потапова. У ній доповідач розповідає:
▪️Що таке property-based тести та як вони працюють
▪️У чому різниця між property-based тестами та fuzzing'ом
▪️Існуючі бібліотеки для property-based тестів та їх порівняння
▪️Наглядний приклад використання бібліотек
▪️На що варто звернути увагу
Переходь за посиланням та став вподобайку!
▪️Що таке property-based тести та як вони працюють
▪️У чому різниця між property-based тестами та fuzzing'ом
▪️Існуючі бібліотеки для property-based тестів та їх порівняння
▪️Наглядний приклад використання бібліотек
▪️На що варто звернути увагу
Переходь за посиланням та став вподобайку!
YouTube
Property based testing in Rust / Property based тестування у Rust (Sergiy Potapov)
Speech 3
Topic: "Property based testing in Rust"
Speaker: Сергій Потапов
Language: ukrainian 🇺🇦, english 🇬🇧
Subnoscripts: english 🇬🇧 , ukrainian 🇺🇦
Presentation: https://drive.google.com/file/d/13rPFtlzuaiz-hKhS9DNftFrSdlxqhD6K/view?usp=sharing
About presentaion:…
Topic: "Property based testing in Rust"
Speaker: Сергій Потапов
Language: ukrainian 🇺🇦, english 🇬🇧
Subnoscripts: english 🇬🇧 , ukrainian 🇺🇦
Presentation: https://drive.google.com/file/d/13rPFtlzuaiz-hKhS9DNftFrSdlxqhD6K/view?usp=sharing
About presentaion:…
🔥10👌1
Forwarded from Kostyantyn Wandalen
Прекомпільований serde_derive макрос та ризики пов'язані з ним
З версії 1.0.171
Зі слів, dtolnay, це було зроблено з метою пришвидшення компіляції проєктів, які використовують `serde. Проте такий хід dtolnay, веде до порушення декількох умов контракту між розробником FOSS та користувачами, а саме:
- прозорість процесу компіляції - це безпекові ризики
- обіцяна кросплатформеність, - бо бінарник був зібраний лише для x64 систем.
- версіонування змін, зміна лише "патчу" 1.0.170 -> 1.0.171 порушує semver домовленість і потенційно ламає системи в продакшені ( саме так світ і дізнався про зміну сховану під капотом )
Створюється враження, що цією зміною
Навіть після відкату цих нововведень мейнтейнер
З версії 1.0.171
serde_derive використовує прекомпільований бінарник макросу. Процедурні макорси виконуються на машині розробника, як звичайна програма та генерують код на основі вхідних аргументів. serde дуже популярний крейт і це означає, що скомпільований автором бінарник буде виконуватися на мільйонах машин, що потенційно є загрозою безпеці, бо такий бінарник має повний доступ до середовища в якому збирається програма і якщо відбудеться підміна файла на сервері то середовище розробника разом із всіма його секретами стане доступним зловмиснику.Зі слів, dtolnay, це було зроблено з метою пришвидшення компіляції проєктів, які використовують `serde. Проте такий хід dtolnay, веде до порушення декількох умов контракту між розробником FOSS та користувачами, а саме:
- прозорість процесу компіляції - це безпекові ризики
- обіцяна кросплатформеність, - бо бінарник був зібраний лише для x64 систем.
- версіонування змін, зміна лише "патчу" 1.0.170 -> 1.0.171 порушує semver домовленість і потенційно ламає системи в продакшені ( саме так світ і дізнався про зміну сховану під капотом )
Створюється враження, що цією зміною
dtolnay намагався змусити мейтнейнрів crates.io зробити зміни, котрі необхідні для оптимізації швидкості збірки. І хоча такі мотиви загальнокорисні, але методи їх досягнення через нав'язування, а також тон спілкування лишають осад, а порушення договору робить появу форка serde ймовірною.Навіть після відкату цих нововведень мейнтейнер
serde стоїть на своєму, що можна зрозуміти зокрема із опису релізу 1.0.184.👾4🔥2😱1
Що нового в Rust 1.72.0
Мова
* Змінена поведінка
видаляє лише атрибути нижче себе
* Лінти clippy перенесено в Rust: undropped_manually_drops, invalid_utf8_in_unchecked, cast_ref_to_mut, cmp_nan
* Прибрана вимога мати асоційовані типи з
Компілятор
* Імена об'єктів які конфігуруються фічами тепер видно в діагностиці (наприклад використання
* Всі нативні бібліотеки тепер примусово лінкуються статично, якщо збирається статична бібліотека
* Виправлення відображення діагностичної інформації про 128-бітних enum'ів
Бібліотеки
* Детальніше розписана документація для
* Прибрані явні
* Повернення
* Додана імплементація
* Використання u128 для TypeId хешу замість u64
Документація
* Оновлена гарантія часу виконання
* Тепер пробіл можна використовувати як сепаратор шляху, так само як
* Тип об'єктів тепер видно в пошуку і текстом, а не просто кольором, як раніше
* Фіча пошуку в документації, як анбоксінг -
* Пошук слайсів та масивів тепер можна робити по
Cargo
* При запуску тестів документації поточна директорія ставиться на сам крейт в воркспейсах, а не увесь воркспейс
Мова
* Змінена поведінка
#![cfg(FALSE)] - раніше він видаляв всі атрибути з, а видаляє лише атрибути нижче себе
* Лінти clippy перенесено в Rust: undropped_manually_drops, invalid_utf8_in_unchecked, cast_ref_to_mut, cmp_nan
* Прибрана вимога мати асоційовані типи з
Self: Sized баундом на dyn Trait об'єктах Компілятор
* Імена об'єктів які конфігуруються фічами тепер видно в діагностиці (наприклад використання
Deserialize без фічі derive в serde буде краще описуватись) * Всі нативні бібліотеки тепер примусово лінкуються статично, якщо збирається статична бібліотека
* Виправлення відображення діагностичної інформації про 128-бітних enum'ів
Бібліотеки
* Детальніше розписана документація для
thread::{park, unpark}, HashSet::insert, io::Write::write * Прибрані явні
T: Sized баунди на BufReader<T>, BufWriter<T> та LineWriter<T> * Повернення
Ok при спробі вбити процес який вже завершився * Додана імплементація
PartialOrd на Vec для різних алокаторів * Використання u128 для TypeId хешу замість u64
Документація
* Оновлена гарантія часу виконання
select_nth_unstable з O(n) на O(n log n) * Тепер пробіл можна використовувати як сепаратор шляху, так само як
:: * Тип об'єктів тепер видно в пошуку і текстом, а не просто кольором, як раніше
* Фіча пошуку в документації, як анбоксінг -
Vec<i32> можна знайти по i32 * Пошук слайсів та масивів тепер можна робити по
[] Cargo
* При запуску тестів документації поточна директорія ставиться на сам крейт в воркспейсах, а не увесь воркспейс
Gist
rust-1.72.0.md
GitHub Gist: instantly share code, notes, and snippets.
👍5❤3🔥2
Хотіли асинхронність? Зробіть самі!
Відправтесь в глибини асинхронного рантайму та дізнайтесь що таке
Подорож починається з простого блокуючого вебсервера та закінчується асинхронним, в якого під капотом абстракція на абстракції та з абстракцією абстрагуються. Пропонуємо кожному ознайомитись з цією статтею, особливо, якщо вам цікаво розібратися як async працює під капотом.
Повна стаття тут
Приємної подорожі!
Відправтесь в глибини асинхронного рантайму та дізнайтесь що таке
epoll, як він допомагає нам будувати аплікації що виконують декілька задач одночасно, як за допомогою нього написати свій рантайм, за що треба любити вже готові async/await елементи синтаксису та як боляче було без них!Подорож починається з простого блокуючого вебсервера та закінчується асинхронним, в якого під капотом абстракція на абстракції та з абстракцією абстрагуються. Пропонуємо кожному ознайомитись з цією статтею, особливо, якщо вам цікаво розібратися як async працює під капотом.
Повна стаття тут
Приємної подорожі!
Ibraheem Ahmed
Learning Async Rust With Entirely Too Many Web Servers
Async Rust is a whole new world of programming. Let's try to understand it by working our way through a series of web servers, learning the details of concurrency and I/O along the way.
🔥21🥰4
🔥Наступна доповідь із UA Rust Conference 2023 - “Low latency backend (UDP pub/sub)”!
Максим Воробйов у ній розкриває такі питання:
▪️What is low latency?
▪️What problems are we trying to solve?
▪️Deep dive to microseconds level
▪️Discover CPU cache and system scheduler impact
Переходь за посиланням, став вподобайку та підписуйся на канал 😉
Максим Воробйов у ній розкриває такі питання:
▪️What is low latency?
▪️What problems are we trying to solve?
▪️Deep dive to microseconds level
▪️Discover CPU cache and system scheduler impact
Переходь за посиланням, став вподобайку та підписуйся на канал 😉
YouTube
Low latency backend UDP pub sub / Бекенд з низькою затримкою (UDP pub/sub) (Maxym Vorobiov)
Speech 2
Topic: "Low latency backend UDP pub sub"
Speaker: Максим Воробйов
Language: ukrainian 🇺🇦
Subnoscripts: english 🇬🇧 , ukrainian 🇺🇦
Presentation: https://drive.google.com/file/d/1uaDDtaKgq7EwPZdxS8EJKD_inyR9TZa0/view?usp=share_link
About presentaion:…
Topic: "Low latency backend UDP pub sub"
Speaker: Максим Воробйов
Language: ukrainian 🇺🇦
Subnoscripts: english 🇬🇧 , ukrainian 🇺🇦
Presentation: https://drive.google.com/file/d/1uaDDtaKgq7EwPZdxS8EJKD_inyR9TZa0/view?usp=share_link
About presentaion:…
🔥10👍2
RustRover - A Standalone Rust IDE by JetBrains
Компанія JetBrains анонсує випуск RustRover - окремого середовища розробки (IDE) для Rust 🦀.
📌 Функціонал RustRover можна встановити як плагін до IntelliJ IDEA Ultimate та CLion. Компанія не планує додавати фічі їхнього опенсорсного плагіна, вони його залишать відкритим, але усі нові фічі будуть у rr.
📌 Як і багато інших IDE від JetBrains, середовище буде платним. Проте, RustRover буде безкоштовним під час Public Preview, а модель ліцензування буде остаточно уточнена ближче до дати комерційного релізу.
📌 Окрім цього, компанія JetBrains приєднюється до Rust Foundation та обіцяє підтримувати їхні ініціативи у розвитку.
Такі кроки свідчать лиш про те, що компанія вірить у майбутнє та потенціал екосистеми і спільноти Rust 🔥
Детальніше читайте у статті. А що ви думаєте про це?
Компанія JetBrains анонсує випуск RustRover - окремого середовища розробки (IDE) для Rust 🦀.
📌 Функціонал RustRover можна встановити як плагін до IntelliJ IDEA Ultimate та CLion. Компанія не планує додавати фічі їхнього опенсорсного плагіна, вони його залишать відкритим, але усі нові фічі будуть у rr.
📌 Як і багато інших IDE від JetBrains, середовище буде платним. Проте, RustRover буде безкоштовним під час Public Preview, а модель ліцензування буде остаточно уточнена ближче до дати комерційного релізу.
📌 Окрім цього, компанія JetBrains приєднюється до Rust Foundation та обіцяє підтримувати їхні ініціативи у розвитку.
Такі кроки свідчать лиш про те, що компанія вірить у майбутнє та потенціал екосистеми і спільноти Rust 🔥
Детальніше читайте у статті. А що ви думаєте про це?
The JetBrains Blog
Introducing RustRover – A Standalone Rust IDE by JetBrains | The RustRover Blog
“When will there be a Rust IDE?” We get this question from our users quite frequently, and today we’re happy to announce that the day has arrived. Please welcome RustRover, our standalone IDE for R
🔥19❤2👍1👏1🙉1
Українська Rust Спільнота pinned «RustRover - A Standalone Rust IDE by JetBrains Компанія JetBrains анонсує випуск RustRover - окремого середовища розробки (IDE) для Rust 🦀. 📌 Функціонал RustRover можна встановити як плагін до IntelliJ IDEA Ultimate та CLion. Компанія не планує додавати…»
Вчора відбулася перша лекція та практичні заняття із курсу “Мова програмування Rust” у Києво-Могилянській Академії! 💥
Вдячні факультету Інформатики за можливість запуску вибіркового курсу, на який записалось 33 студенти! Навчальну програму склали наші євангелісти, а викладає наш лідер Костянтин.
Це перший крок до інтеграції Rust 🦀 в систему освіти України та він би не був можливим без праці та сприяння Павла і Андрія, а також інших активних резидентів нашої спільноти. Сподіваємось, студентам припаде Rust до душі та ми побачимо багатьох з них серед нас 🙂
Вдячні факультету Інформатики за можливість запуску вибіркового курсу, на який записалось 33 студенти! Навчальну програму склали наші євангелісти, а викладає наш лідер Костянтин.
Це перший крок до інтеграції Rust 🦀 в систему освіти України та він би не був можливим без праці та сприяння Павла і Андрія, а також інших активних резидентів нашої спільноти. Сподіваємось, студентам припаде Rust до душі та ми побачимо багатьох з них серед нас 🙂
❤29👍4🔥4👀2
Що нового в Rust 1.73.0
Мова
* Новий лінт clippy що повідомляє, що вказівник на функцію ніколи не може бути null [link]
* Додане попередження про виклики функцій, що не виконують операцій (noop)
[link]
* Додана підтримка передачі блоків для
* Додане попередження до
* Покращений лінт що виникає при невалідному касту посиланнь (наприклад
Компілятор
* Додана підтримка
* Стабілізація
* Зроблена перевірка лайфтаймів на
* Зроблена перевірка типу для слайс паттерну для масивів з фіксованим розміром [link]
* Прибрана дефолтна імплементація
* Додані нові таргети компіляції:
Бібліотеки
* Додані
* Змерджили функціонал
* Додана дефолтна імплементація для
* Змінений дефолтний формат повідомлення про паніку, тепер текст помилки буде на наступному рядку, значно покращує читабельність [link]
* Поліпшені повідомлення про паніку в макросах
Cargo
* Виправлення енкодінгу параметрів посилання для
* Додана помилка якщо
Сумістність
* Оновлена мінімальна версія LLVM до 15 [link]
* Додана перевірка на визначність типу при повернені
Та деякі внутрішні зміни: оптимізації, оновлення до LLVM 17, новий шаблон для issues.
Мова
* Новий лінт clippy що повідомляє, що вказівник на функцію ніколи не може бути null [link]
* Додане попередження про виклики функцій, що не виконують операцій (noop)
[link]
* Додана підтримка передачі блоків для
try та async в макросах [link]* Додане попередження до
unconditional_recursion при рекурсивному дропі [link]* Покращений лінт що виникає при невалідному касту посиланнь (наприклад
self as *const Self as *mut Self що є UB) [link]Компілятор
* Додана підтримка
.comment секцій в скомпільованому бінарнику яка містить версію компілятора [link]* Стабілізація
thiscall ABI [link]* Зроблена перевірка лайфтаймів на
impl відносно лайфтаймів трейту, тепер статичні лайфтайми не перекривають лайфтайми зазначені в impl [link]* Зроблена перевірка типу для слайс паттерну для масивів з фіксованим розміром [link]
* Прибрана дефолтна імплементація
auto трейтів, якщо існує явна [link]* Додані нові таргети компіляції:
teeos, csky, riscv64-android, riscv64gc-hermit, unikraft, ohos, та wasm32-wasi-threads з підтримкою std::thread::spawn [link]Бібліотеки
* Додані
Read, Write, та Seek імплементації для Arc<File> [link]* Змерджили функціонал
io::Sink в io::Empty, тепер io::Empty імплементує io::Read + io::Write [link]* Додана дефолтна імплементація для
ExitStatus [link]* Змінений дефолтний формат повідомлення про паніку, тепер текст помилки буде на наступному рядку, значно покращує читабельність [link]
* Поліпшені повідомлення про паніку в макросах
assert_eq! та assert_ne! [link]Cargo
* Виправлення енкодінгу параметрів посилання для
SourceId в Cargo.lock [link]* Додана помилка якщо
cargo:: використовується в кастомному build.rs скрипту [link]Сумістність
* Оновлена мінімальна версія LLVM до 15 [link]
* Додана перевірка на визначність типу при повернені
impl Trait (прозорий тип невідомий до повернення) [link]Та деякі внутрішні зміни: оптимізації, оновлення до LLVM 17, новий шаблон для issues.
GitHub
Release Rust 1.73.0 · rust-lang/rust
Language
Uplift clippy::fn_null_check lint as useless_ptr_null_checks.
Make noop_method_call warn by default.
Support interpolated block for try and async in macros.
Make unconditional_recursion l...
Uplift clippy::fn_null_check lint as useless_ptr_null_checks.
Make noop_method_call warn by default.
Support interpolated block for try and async in macros.
Make unconditional_recursion l...
🔥13🦄1
Українська Rust Спільнота pinned «Що нового в Rust 1.73.0 Мова * Новий лінт clippy що повідомляє, що вказівник на функцію ніколи не може бути null [link] * Додане попередження про виклики функцій, що не виконують операцій (noop) [link] * Додана підтримка передачі блоків для try та async…»
Ferrocene для Rust в промислових середовищах
Чи ви вже чули про альтернативу Rust компілятору сертифіковану для розробки у автомобільному та промисловому середовищах?
Наразі Ferrocene перебуває на завершальних стадіях кваліфікації, яка є більше юридичною ніж технічною вимогою. Ця кваліфікація гарантує відсутність недопустимих ризиків, пов'язаних із некоректною роботою електричних або електронних систем, а також забезпечує безпеку від потенційних ушкоджень або шкоди здоров'ю людей в результаті аварій чи впливу на навколишнє середовище. Додатково, в майбутніх планах проєкту передбачено розширення кваліфікацій для залізничних та аерокосмічних стандартів.
Протягом двох років розробки, компілятор став готовим до використання в комерційних проєктах. Він ліцензований під Apache 2.0 & MIT, так само як і звичайний rustc. Ferrocene буде пропонуватися за ціною €25 на місяць за одне робоче місце. Хоча ліцензія не відмінна від rustc, можна користуватися Ferrocene без підтримки і з публічною документацією. Однак, приватна документація буде доступна лише для клієнтів компанії. Якщо ви плануєте реалізовувати продукт у автомобільній сфері, покупка Ferrocene є обов'язковою, адже до комплекту входять також сертифікати кваліфікації, необхідні для комерційного використання.
Не важко передбачити зростаючий попит на Rust розробників у сферах, таких як автомобільна промисловість, промислова робототехніка, системи управління для літаків та потягів, а також у дослідницьких роверах.
Репозиторій компілятора можна знайти тут
Та публічну документацію за посиланням
Чи ви вже чули про альтернативу Rust компілятору сертифіковану для розробки у автомобільному та промисловому середовищах?
Наразі Ferrocene перебуває на завершальних стадіях кваліфікації, яка є більше юридичною ніж технічною вимогою. Ця кваліфікація гарантує відсутність недопустимих ризиків, пов'язаних із некоректною роботою електричних або електронних систем, а також забезпечує безпеку від потенційних ушкоджень або шкоди здоров'ю людей в результаті аварій чи впливу на навколишнє середовище. Додатково, в майбутніх планах проєкту передбачено розширення кваліфікацій для залізничних та аерокосмічних стандартів.
Протягом двох років розробки, компілятор став готовим до використання в комерційних проєктах. Він ліцензований під Apache 2.0 & MIT, так само як і звичайний rustc. Ferrocene буде пропонуватися за ціною €25 на місяць за одне робоче місце. Хоча ліцензія не відмінна від rustc, можна користуватися Ferrocene без підтримки і з публічною документацією. Однак, приватна документація буде доступна лише для клієнтів компанії. Якщо ви плануєте реалізовувати продукт у автомобільній сфері, покупка Ferrocene є обов'язковою, адже до комплекту входять також сертифікати кваліфікації, необхідні для комерційного використання.
Не важко передбачити зростаючий попит на Rust розробників у сферах, таких як автомобільна промисловість, промислова робототехніка, системи управління для літаків та потягів, а також у дослідницьких роверах.
Репозиторій компілятора можна знайти тут
Та публічну документацію за посиланням
❤22👍2🔥1
Вчора наші євангелісти Павло та Микола відвідали Київську Школу Економіки із гостьовою лекцією для студентів “Знайомство із Rust та її алгебраїчними типами”💥
Також ми зібрали у студентів фідбек та розіграли книгу по Rust 🎁.
В планах налагодити співпрацю й із іншими передовими університетами України.
Також ми зібрали у студентів фідбек та розіграли книгу по Rust 🎁.
В планах налагодити співпрацю й із іншими передовими університетами України.
👍17🔥9
Наш Євангеліст Ігор та активний учасник спільноти Назар відвідали із гостьовою лекцією Український Католицький Університет у Львові! 🔥
Вони провели доповідь на тему “Знайомство із Rust та алгебраїчними типами даних”, а також розіграли книгу по 🦀 Rust серед активних студентів!
Радіємо, що все більше провідних університетів України відкриті до співпраці із нашою спільнотою 😊
Вони провели доповідь на тему “Знайомство із Rust та алгебраїчними типами даних”, а також розіграли книгу по 🦀 Rust серед активних студентів!
Радіємо, що все більше провідних університетів України відкриті до співпраці із нашою спільнотою 😊
❤15👍5