LINUX.ORG.RU

Сообщения dotcoder

 

Ghostty 1.4.0

 , , ,

Группа Open Source

Команда разработчиков эмулятора терминала Ghostty представила версию 1.4.0. Новая версия стала итогом 7 месяцев активной разработки: над ней трудились 172 контрибьютора, сделавших 2 289 коммитов. В этой версии: серьёзное ускорение работы, снижение потребления памяти, полноценная поддержка протокола Kitty и множество других улучшений для всех поддерживаемых платформ.

Ghostty — это быстрый, многофункциональный и кроссплатформенный эмулятор терминала, использующий собственный пользовательский интерфейс и аппаратное ускорение графики. Ghostty построен на libghostty — переносимой встраиваемой библиотеке эмуляции терминала . libghostty лежит в основе всех встроенных терминалов в IDE от JetBrains, и сейчас ведутся работы по замене ядра терминала с libvterm на libghostty в Neovim.

( читать дальше... )

>>> Полный список изменений (ghostty.org)

dotcoder
()

PHP готовит экстренные обновления безопасности: потенциальная возможность удалённого выполнения кода на серверах

 , , ,

Группа Безопасность

Команда PHP предупредила о выпуске двух критических исправлений безопасности. Администраторам рекомендуется заранее подготовить инфраструктуру к обновлению: опубликованные сведения об уязвимостях указывают на потенциальную возможность удалённого выполнения кода на серверах.

Две критические уязвимости

Разработчики PHP объявили о подготовке экстренных обновлений для двух уязвимостей — CVE-2026-109618 и CVE-2026-109619. Каждая из них получила оценку критичности 9,2 из 10 по CVSS v4.0.

Согласно официальному уведомлению, выпуск исправлений запланирован на 21 октября 2026 года, 14:00 UTC. Разработчики оставили за собой право опубликовать обновления раньше.

Технические подробности и перечень исправленных версий PHP должны быть опубликованы вместе с обновлениями.

( читать дальше... )

>>> Подробности (arstechnica.com)

dotcoder
()

Вышел стабильный релиз открытого S3-совместимого хранилища RustFS 1.0.0 GA

 , , rustfs,

Группа Кластеры

16 сентября 2026 года проект RustFS объявил о выпуске версии 1.0.0 GA — стабильного релиза распределённого объектного хранилища с совместимостью с API Amazon S3. По словам разработчиков, выпуск 1.0.0 знаменует переход проекта от активной разработки к использованию в производственных средах.

RustFS — распределённая система объектного хранения, полностью написанная на языке Rust. Разработка проекта началась в феврале 2024 года, а в июле 2025 года его исходный код был опубликован под лицензией Apache 2.0. RustFS ориентирован на хранение больших объёмов данных и использование в облачных, корпоративных и инфраструктурах искусственного интеллекта.

( Читать дальше )

>>> Ссылка на анонс (rustfs.com)

dotcoder
()

Apache Iggy™ официально стал проектом высшего уровня (TLP) в фонде Apache

 apache iggy, , ,

19 августа 2026 года Apache Iggy успешно завершил инкубацию и получил статус Top-Level Project (TLP) после единогласного одобрения. Весь путь от попадания в инкубатор до TLP занял всего около полутора лет.

Apache Iggy — это высокопроизводительная персистентная платформа потоковой передачи данных (message streaming), написанная на языке Rust. Проект выступает современной альтернативой классическим инструментам потоковой передачи (таким как Apache Kafka), предлагая разработчикам высокую скорость и простоту эксплуатации. Проект создавался с упором на максимальную эффективность, низкую задержку (single-digit millisecond P99+) и минимальные накладные расходы при обработке сообщений. Платформа построена на базе архитектуры thread-per-core с использованием интерфейса io_uring для дискового и сетевого ввода-вывода, а также алгоритма консенсуса VSR.

В ближайших планах проекта долгожданная функция кластеризации на базе VSR для обеспечения высокой доступности в продакшене, а также завершение работы над шлюзом под протокол Kafka.

Подробности: https://iggy.apache.org/blogs/2026/08/24/apache-iggy-top-level-project-tlp-gr...

dotcoder
()

Turso решили сделать свой Postgres на Rust

 , , turso

Создатели Turso (ребята, которые переписали SQLite на Rust) выкатили громкий анонс: они пишут современную версию Postgres с нуля на Rust. Но самый сок не в самом Rust, а в концепции, которую они закладывают.

Они пошли по тому же пути, что и во время разработки своей версии SQLite: всё есть виртуалка, которая переводит SQL в свой байт-код; для пруфа они запустили немодифицированный Doom в браузере, скомпиленный в байт-код SQLite.

По сути, они превращают Turso в некое подобие «LLVM для баз данных»:

  • Есть одно мощное, надежное и асинхронное ядро со своей виртуальной машиной байт-кода (VDBE).
  • Поверх этого ядра можно натягивать разные фронтенды (SQL-диалекты). Первым был SQLite, вторым официально становится Postgres, а в теории можно прикрутить хоть MySQL или Redis.

Главные фичи и фишки их Postgres:

  • Архитектура: Никаких процессов на каждое соединение, всё полностью асинхронно.
  • Гибкость: Этот Postgres можно будет запускать прямо в браузере через WASM, хранить в одном локальном файле (как SQLite) или поднимать миллиард инстансов на пользователя под капотом edge-функций.
  • Авто-обновляемые материализованные представления: Фича, которую в обычном Postgres ждут годами — «матвьюхи» обновляются сами в реальном времени, без костылей с триггерами и кронами.
  • Совместимость: Обещают поддержку родного wire-протокола, чтобы без проблем подключались привычные ORM и psql. На 100% совместимость не претендуют, но обещают покрыть абсолютное большинство юзкейсов.
  • Лицензия: Всё пишется в опенсорсе под MIT. Код уже можно покрутить в репозитории.
dotcoder
()

Вышел Rust 1.85.0 aka Rust 2024

 

Вышел Rust 1.85.0, который также стабилизирует новую редакцию Rust 2024. Подвезли асинхронные замыкания, улучшения компилятора и API, Cargo теперь разруливает зависимости с учётом поля rust-version.

Подробности тут: https://blog.rust-lang.org/2025/02/20/Rust-1.85.0.html и в руководсте по редакциям Rust: https://doc.rust-lang.org/edition-guide/rust-2024/index.html

dotcoder
()

Немного новостей из мира Rust

 

Последние новости из мира Rust вкратце:

  1. Вышла новая стабильная версия Rust 1.74.0.
  2. Сформирована новая команда по работе над официальной спецификацией языка Rust и представлено их видение.
  3. Ferrocene (набор инструментов компилятора Rust для критически важных сред и систем безопасности) прошёл сертификацию и теперь официально соответствует требованиям ISO 26262 и IEC 61508 и полностью пригоден для использования в средах, критически важных для безопасности.
  4. Доступно видео с конференции EuroRust 2023.
  5. Microsoft вкладывает 10 миллионов долларов, чтобы сделать Rust языком 1-го класса в своих инженерных системах.

Перемещено maxcom из talks

dotcoder
()

JetBrains присоединяется к Фонду Rust и выпускает новую среду разработки под Rust — RustRover

 ,

dotcoder
()

Ушёл из жизни автор Vim — Брэм Муленаар

 bram moolenaar, ,

3 августа ушёл из жизни автор Vim Брэм Муленаар.

https://groups.google.com/g/vim_announce/c/tWahca9zkt4?pli=1

dotcoder
()

Google представила новую операционную систему

 , kataos,

Там это, Google новую операционку анонсировала. Называется KataOS.

Пишут, что для встраиваемых систем, периферийных устройств (типа сетевых камер) и интернета вещей. Цель – написать надёжно-защищённую систему, поэтому «Катя» практически полностью написана на Rust.

В качестве ядра используется микроядро seL4 (и, внимание: seL4’s implementation is formally (mathematically) proven correct (bug-free) against its specification. It was the world’s first operating system with such a proof, and is still the only proven operating system featuring fine-grained capability-based security and high performance).

Подробнее: https://opensource.googleblog.com/2022/10/announcing-kataos-and-sparrow.html

dotcoder
()

Pingora — альтернатива Nginx от Cloudflare

 , pingora,

Компания Cloudflare в своём блоге рассказала о новом HTTP-прокси Pingora, написанном на Rust.

На данный момент Pingorа полностью задействована в продакшне и уже показала более высокую производительность и эффективность по сравнению со старым решением: Pingora обслуживает более 1 трлн. запросов в день, потребляя при этом только треть вычислительных ресурсов и ОЗУ по сравнению с предыдущей инфраструктурой (Pingora потребляет примерно на 70% меньше процессорного времени и на 67% меньше памяти по сравнению со старым сервисом с той же нагрузкой по трафику).

Причиной написания своего прокси послужили ограничения и возможности Nginx, в которые они упёрлись, и было целесообразнее написать своё решение: «мы переросли Nginx» - как они сами пишут в корпоративном блоге.

В будущем Cloudflare планируют открыть исходный код Pingora.

https://blog.cloudflare.com/how-we-built-pingora-the-proxy-that-connects-cloudflare-to-the-internet/

dotcoder
()

grex 1.4.0 — генератор регулярных выражений

 , ,

grex 1.4.0 — генератор регулярных выражений
Группа Разработка

Обновилась утилита для создания регулярных выражений — grex 1.4.0. В новой версии исправлены ошибки, обновлена поддержка Unicode 14, крупным изменением стала возможность компиляции в WebAssembly и теперь grex можно использовать в браузере и Node.js (автор собрал NPM-пакет).

Посмотреть работу grex без установки можно на демо-странице: https://pemistahl.github.io/grex-js/

>>> Подробности (github.com)

dotcoder
()

Carbon — преемник C++ от Google

 ,

На конференции Cpp North был представлен экспериментальный язык программирования Carbon – преемник С++ (по заявлению разработчиков). Видео презентации: https://www.youtube.com/watch?v=omrY53kbVoA

Разработчики обещают производительность, соответствующую C++, взаимодействие с существующим кодом C++, от наследования до шаблонов, быстрые и масштабируемые сборки, совместимые с существующими системами сборки C++, двунаправленную интероперабельность с C++ и многое другое.

Пример кода на Carbon:

( читать дальше... )

тот же код на С++:

( читать дальше... )

Доп. информация: https://9to5google.com/2022/07/19/carbon-programming-language-google-cpp/

dotcoder
()

Rust 1.59.0

 

Вышла новая версия языка программирования Rust, Rust 1.59.0. В этой версии стабилизированы следующие возможности:

Встроенный ассемблер

Теперь можно внедрять инструкции языка ассемблера непосредственно в исходный код и писать низкоуровневый код с доступом к специализированным машинным инструкциям:

use std::arch::asm;

// Multiply x by 6 using shifts and adds
let mut x: u64 = 4;
unsafe {
    asm!(
        "mov {tmp}, {x}",
        "shl {tmp}, 1",
        "shl {x}, 2",
        "add {x}, {tmp}",
        x = inout(reg) x,
        tmp = out(reg) _,
    );
}
assert_eq!(x, 4 * 6);

Встроенный ассемблер стабилизирован для следующих архитектур: x86 и x86-64, ARM, AArch64, RISC-V.

Деструктурирующие присваивания

Теперь можно использовать кортежи, срезы и шаблоны структур в левой части присваивания:

let (a, b, c, d, e);

(a, b) = (1, 2);
[c, .., d, _] = [1, 2, 3, 4, 5];
Struct { e, .. } = Struct { e: 5, f: 3 };

assert_eq!([1, 2, 1, 4, 5], [a, b, c, d, e]);

Примечание: деструктурирующие присваивания с такими операторами как += запрещены.

Значения по умолчанию для константных дженериков и чередование типов параметра

Универсальные типы теперь могут указывать значения по умолчанию для своих универсальных констант:

struct ArrayStorage<T, const N: usize = 2> {
    arr: [T; N],
}

impl<T> ArrayStorage<T> {
    fn new(a: T, b: T) -> ArrayStorage<T> {
        ArrayStorage {
            arr: [a, b],
        }
    }
}

Раньше параметры типа должны были стоять перед всеми константными параметрами. Это ограничение было ослаблено и теперь их можно чередовать:

fn cartesian_product<
    T, const N: usize,
    U, const M: usize,
    V, F
>(a: [T; N], b: [U; M], f: F) -> [[V; N]; M]
where
    F: FnMut(&T, &U) -> V
{
    // ...
}

Предупреждения о несовместимости в будущем

Теперь Cargo будет показывать предупреждение, если та или иная зависимость будет отклонена в будущих версиях Rust. После выполнения команд cargo build или cargo check, можно увидеть примерно такое предупреждение:

warning: the following packages contain code that will be rejected by a future version of Rust: old_dep v0.1.0
note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`

При помощи команды cargo report можно увидеть полный отчёт по коду, который будет отклонён.

Создание урезанных бинарников

Теперь Rust поддерживает удаление отладочной информации во время компоновки. Для этого в Cargo.toml надо добавить строку strip:

[profile.release]
strip = "debuginfo"

Можно также указать symbols или просто true для удаления всей символьной информации там, где это поддерживается.

Инкрементальная компиляция отключена по умолчанию

Из-за возможности возникновения ошибок десериализации (и паник) в этой версии отключена поддержка инкрементальной компиляции (можно принудительно включить через переменную среды RUSTC_FORCE_INCREMENTAL=1). Исправление уже присутствует в бета-версии Rust 1.60; если до релиза не будут найдены другие ошибки, связанные с этой проблемой, инкрементальная компиляция будет включена обратно.

Стабилизированные API

  • std::thread::available_parallelism
  • Result::copied
  • Result::cloned
  • arch::asm!
  • arch::global_asm!
  • ops::ControlFlow::is_break
  • ops::ControlFlow::is_continue
  • TryFrom for u8
  • char::TryFromCharError implementing Clone, Debug, Display, PartialEq, Copy, Eq, Error
  • iter::zip
  • NonZeroU8::is_power_of_two
  • NonZeroU16::is_power_of_two
  • NonZeroU32::is_power_of_two
  • NonZeroU64::is_power_of_two
  • NonZeroU128::is_power_of_two
  • DoubleEndedIterator for ToLowercase
  • DoubleEndedIterator for ToUppercase
  • TryFrom<&mut [T]> for [T; N]
  • UnwindSafe for Once
  • RefUnwindSafe for Once
  • armv8 neon intrinsics for aarch64

Следующие стабильные функции теперь являются const:

  • mem::MaybeUninit::as_ptr
  • mem::MaybeUninit::assume_init
  • mem::MaybeUninit::assume_init_ref
  • ffi::CStr::from_bytes_with_nul_unchecked

Другие изменения

Все остальные изменения и новшества можно увидеть по ссылке: https://blog.rust-lang.org/2022/02/24/Rust-1.59.0.html

Более подробный список изменений доступен по ссылке: https://github.com/rust-lang/rust/blob/master/RELEASES.md#version-1590-2022-02-24

dotcoder
()

Новый редактор — Zed

 , , ,

Авторы редактора Atom представляют своё новое детище — Zed, который является, как они пишут у себя на сайте, «молниеносным редактором кода для совместной работы, написанном на Rust». Основной упор сделан на супер-отзывчивости и возможности совместной работы в реальном времени. Для нового редактора, авторы, вдохновившись Mozilla WebRender, написали новый высокопроизводительный UI-фреймворк — GPUI; для совместного редактирования в реальном времени используются бесконфликтные реплицированные типы данных. Помимо поддержки LSP (Language Server Protocol), авторы создали Tree-sitter — быструю инкрементную библиотеку синтаксического анализа, которая может предоставить Zed деревья синтаксиса для более чем 50 языков. Tree-sitter уже работает и обеспечивает необходимую функциональность на Github.

https://zed.dev/

dotcoder
()

Rust - самый высокооплачиваемый язык программирования в 2021 году

 , ,

Rust - не только самый любимый язык несколько лет подряд согласно опросу на StackOverflow, но и самый высокооплачиваемый язык программирования в 2021 году (по крайней мере в Великобритании): https://thenextweb.com/news/move-over-python-rust-highest-paid-programming-la...

dotcoder
()

Серия видео по Rust для начинающих

 ,

Вдобавок к курсу по Rust для начинающих, компания Microsoft опубликовала серию видео по Rust для начинающих. Серия состоит из 35 видео и затрагивает общие концепции. К концу этой серии, по идее, у вас должно быть достаточно знаний, чтобы писать свои собственные программы на Rust.

dotcoder
()

Интервью с разработчиком Reiser4 Эдуардом Шишкиным

 , ,

Группа Open Source

На habr.com опубликовано новое интервью с разработчиком Reiser4 Эдуардом Шишкиным в формате вопрос-ответ.

>>> Ссылка на интервью (habr.com)

dotcoder
()

Если ты работаешь на IBM, то всё твоё время принадлежит им

 

«As an IBM employee, you are not allowed to use your gmail account to work in any way on VNIC. You are not allowed to use your personal email account as a „hobby“. You are an IBM employee 100% of the time. Please remove yourself completely from the maintainers file. I grant you a 1 time exception on contributions to VNIC to make this change.»

https://git.kernel.org/pub/scm/linux/kernel/git/netdev/net.git/commit/?id=4ac...

dotcoder
()

Microsoft опубликовал у себя курс по Rust

 ,

Microsoft опубликовал у себя на сайте курс для начинающих по языку программирования Rust.

Курс доступен на русском языке, состоит из 8 модулей и предлагает следующие пункты схемы обучения:

  • Установите средства, необходимые для написания первых строк кода на Rust.
  • Ознакомьтесь с основными понятиями Rust.
  • Узнайте, как обрабатывать ошибки.
  • Научитесь управлять памятью в Rust.
  • Используйте универсальные типы и признаки.
  • Настройте модули для пакетов и крейтов.
  • Пишите и запускайте автоматизированные тесты.
  • Создайте программу командной строки.
dotcoder
()