#prog #rust #itsec
crates.io: Malicious crates faster_log and async_println
crates.io: Malicious crates faster_log and async_println
The users in question were immediately disabled, and the crates in question were deleted from crates.io shortly after. We have retained copies of all logs associated with the users and the malicious crate files for further analysis.
The deletion was performed at 15:34 UTC on September 24, 2025.
Forwarded from Random Rust Dev
Вчера мне открыли issue на
И вы обращайтесь =^_^=
egui-probe
, я прочитал сегодня вечером, добавил нужную фичу и выпустил релизнул патч в течение нескольких часов.И вы обращайтесь =^_^=
👍1
Forwarded from На хую vercheniye 🇮🇱🇺🇦
This media is not supported in your browser
VIEW IN TELEGRAM
😁15😭5❤1
Forwarded from На хую vercheniye 🇮🇱🇺🇦
This media is not supported in your browser
VIEW IN TELEGRAM
❤5🌚5🥰3
#prog #rust #rustreleasenotes
Вышла версия Rust 1.90.0!.. Больше недели назад. В свою защиту могу сказать, что в этой версии заметных для большинства пользователей изменений в языке и нету.
Как всегда, тут только избранные части, всё остальное в детальных заметках о релизе.
▪️Как и было обещано, для таргета
▪️В качестве расширения к методам, добавленным в Rust 1.66.0, добавили методы
▪️
▪️Старый PR докатился до стейбла: в const-контексте наконец можно вызывать
▪️Реализацию
▪️Реализации
▪️Компилятор теперь не даёт скомпилировать код, который упоминает ABI, неподдерживаемый на целевой платформе.
Вышла версия Rust 1.90.0!.. Больше недели назад. В свою защиту могу сказать, что в этой версии заметных для большинства пользователей изменений в языке и нету.
Как всегда, тут только избранные части, всё остальное в детальных заметках о релизе.
▪️Как и было обещано, для таргета
x86_64-unknown-linux-gnu
теперь по умолчанию используется более быстрый линкер lld.▪️В качестве расширения к методам, добавленным в Rust 1.66.0, добавили методы
uX::*_sub_signed
(wrapping
, checked
, overflowing
и saturating
варианты) для корректного вычитания чисел с разной знаковостью.▪️
CString
, CStr
и Cow<CStr>
теперь можно сравнивать на равенство между собой. Нет, PartialOrd
между ними не реализован. Нет, я не знаю, почему.▪️Старый PR докатился до стейбла: в const-контексте наконец можно вызывать
reverse
на слайсах. Также теперь там можно вызывать на числах с плавающей точкой различные методы для округления и fract
для извлечения дробной части.▪️Реализацию
Default
для iter::Fuse
привели в соответствие с документацией: теперь default
создаёт Fuse
, оборачивающий значение по умолчанию внутреннего итератора, вместо создания всегда пустого итератора.▪️Реализации
io::Write
для TcpStream
и UnixStream
теперь на Linux пишут данные с флагом MSG_NOSIGNAL. Это означает, что запись в померший нижележащий сокет теперь возвращает EPIPE
— или, в терминах Rust, io::Error
, у которого kind()
возвращает ErrorKind::BrokenPipe. Данное изменение делает поведение консистентным с тем, как сокеты ведут себя в других местах в std.▪️Компилятор теперь не даёт скомпилировать код, который упоминает ABI, неподдерживаемый на целевой платформе.
👍4❤1
#prog #web #article
You no longer need JavaScript
Демонстрация того, что можно сделать исключительно при помощи CSS. Включая виджет для выбора цвета (в статье). И включая целую игру-кликер.
You no longer need JavaScript
Демонстрация того, что можно сделать исключительно при помощи CSS. Включая виджет для выбора цвета (в статье). И включая целую игру-кликер.
🥴4🔥2
#prog #article
Towards Alias-Free Pointers (PDF)
Папир из 1995 года, про который я узнал из презентации Rust: Correctness at Large, Correctness in Motion. Уже тогда была база для основы Rust! Сама статья не столь ясна, как могла бы быть, поскольку демонстрирует примеры на основе модифицированной версии Eiffel.
И ещё, как отмечает автор:
И подобный подход действительно применяется в программах на Rust, самый наглядный пример — MutexGuard.
Towards Alias-Free Pointers (PDF)
Папир из 1995 года, про который я узнал из презентации Rust: Correctness at Large, Correctness in Motion. Уже тогда была база для основы Rust! Сама статья не столь ясна, как могла бы быть, поскольку демонстрирует примеры на основе модифицированной версии Eiffel.
In this paper we argue that pointer-induced aliasing is largely a self inflicted wound, caused by the almost universal practice in programming to transfer information by copy. As a remedy for this defect we intro duce a concept unshareable objects, and the companion concept of unique pointers, which can be moved from one place to another, but which cannot be copied. We argue that unshareable objects can be employed conveniently in many, if not most, situations where dynamic objects are being used, and without incurring their pitfalls. And we show that it takes no more than minor, and virtually costless, modifications to a typical imperative programming language to support such objects.
И ещё, как отмечает автор:
Another natural application of u-objects [unshareable objects — прим. моё] is discussed in [8], where we show how such objects can be used to implement tokens — objects that, like the capabilities of operating systems, represent certain authority. Such unshareable tokens can be utilized, in particular, for the control of sharing in software systems such as object-oriented databases.
И подобный подход действительно применяется в программах на Rust, самый наглядный пример — MutexGuard.
#prog #rust #article
From Rust to Reality: The Hidden Journey of fetch_max
From Rust to Reality: The Hidden Journey of fetch_max
Why would Rust providefetch_max
as a built-in intrinsic? Intrinsics usually exist to leverage specific hardware instructions. But x86-64 doesn't have anatomic max
instruction. So there had to be a CAS loop somewhere in the pipeline.
<...>
So I started digging. What I found was a fascinating journey through five distinct layers of compiler transformations, each one peeling back another level of abstraction, until I found exactly where that loop materialized. Let me share what I discovered.
❤2
Итак, папищеки.
Я знаю, что среди вас есть те, кто сейчас живут в Армении.
И я знаю, что среди вас есть те, кому интересны настольные ролевые игры.
У меня есть подозрение, что пересечение этих двух подмножеств непустое, потому у меня вопрос:
Кто из вас заинтересован в том, чтобы сыграть в ваншот с системой Pathfinder 2e со мной в качестве мастера?
P. S.: если среди проживающих в Армении достаточно не найдётся, то попробую набрать на онлайн-игру.
Я знаю, что среди вас есть те, кто сейчас живут в Армении.
И я знаю, что среди вас есть те, кому интересны настольные ролевые игры.
У меня есть подозрение, что пересечение этих двух подмножеств непустое, потому у меня вопрос:
Кто из вас заинтересован в том, чтобы сыграть в ваншот с системой Pathfinder 2e со мной в качестве мастера?
P. S.: если среди проживающих в Армении достаточно не найдётся, то попробую набрать на онлайн-игру.
❤5😁3👍1🤯1💩1🤡1🖕1