Solidity v0.8.31 вышел! ✨ Эта последняя версия делает Осака целевым значением по умолчанию для компилятора, расширяет спецификаторы макета хранилища, добавляет новые предупреждения о устаревании, сборки для Linux ARM и многое другое! Основные моменты в теме! ↓🧵
Заметные особенности: ▫️ Эта версия компилятора поддерживает новые функции EVM, введенные обновлением сети Fusaka.
▫️Компилятор Solidity теперь поддерживает опкод CLZ (EIP-7939), который подсчитывает количество ведущих нулевых бит в 256-битном слове. Библиотеки, такие как Solady, имеют много применений для этого и также заменят существующие утилиты, такие как Math.clz() в @OpenZeppelin.
▫️Мы также внедрили различные изменения в наш процесс выпуска. Этот последний релиз включает: - Релизы для Linux ARM - Предварительные релизы - Прекращение релизов PPA
▫️Версия 0.8.31 компилятора Solidity дополнительно расширяет возможности спецификаторов макета хранения. Теперь возможно использовать константные переменные в выражении базового слота, как показано ниже:
▫️v0.8.31 также объявляет устаревшими первую партию функций, запланированных для удаления в версии 0.9.0, которая является разрушающим обновлением, таких как удаление: - Функции .send() и .transfer() - ABI Coder V1 - Виртуальные модификаторы - Операторы сравнения контрактов - Специальный комментарий memory-safe-assembly
19,09K