The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Браузер Chrome переведён на шрифтовой движок Skrifa, написанный на Rust

20.03.2025 15:11

Компания Google перевела браузер Chrome на библиотеку Skrifa, написанную на языке Rust и предоставляющую возможности для обработки шрифтов в формате OpenType. Skrifa реализует подмножество возможностей шрифтового движка FreeType, необходимое для 2D-библиотеки Skia, применяемой в Chrome и Chromium. Для избавления библиотеки Skia от привязки к движку FreeType создан новый шрифтовой бэкенд, основанный на Skrifa.

В Chrome 128 написанный на Rust бэкенд был включён в экспериментальном режиме для редко используемых форматов шрифтов, таких как CFF2 и цветные шрифты. Начиная с выпуска Chrome 133 новый бэкенд задействован для всех web-шрифтов в сборках для платформ Linux, Android и ChromeOS. На платформах Windows и macOS новый движок пока используется в качестве запасного и применяется в случае, если система не поддерживает формат шрифта, который пытается отобразить браузер.

Код Skrifa разработан инженерами Google в рамках инструментария Fontations и открыт под лицензиями MIT и Apache 2.0. Для проверки корректности работы Skrifa подготовлено около 700 unit-тестов. Библиотека поддерживает декодирование глифов в форматах glyf, CFF, CFF2, COLRv0, COLRv1, EBDT, CBDT и sbix, вариативные шрифты в форматах glyf, CFF2 и COLRv1, хинтиг шрифтов в форматах glyf, CFF и CFF2.

Помимо библиотеки Skrifa, предоставляющей API для доступа к метаданным шрифтов и загрузки контуров глифов, инструментарий Fontations включает низкоуровневые библиотеки для чтения, разбора, изменения и создания шрифтовых данных в формате OpenType. В свою очередь Fontations является частью проекта Oxidize, созданного для перевода утилит и библиотек для работы с текстом и шрифтами с компонентов на языках Python (fonttools, fontmake, nanoemoji) и C++ (HarfBuzz, FreeType) на новые реализации, написанные на Rust.

Разработка компонентов на Rust началась из-за недостаточной эффективности выявления ошибок при помощи fuzzing-тестирования, так как форматы шрифтов слишком сложны для охвата всех возможных комбинаций. Например, на прошлой неделе во FreeType была выявлена критическая уязвимость, позволяющая выполнить код при обработке специально оформленных шрифтов из переполнения буфера. Помимо движка FreeType проблемы с обеспечением безопасности могут создавать и используемые в нём зависимости, такие как bzip2, libpng и zlib.

Использование Rust позволило значительно снизить вероятность появления проблем при работе с памятью, повысить качество кода, снизить затраты времени на исправление проблем с безопасностью и ускорить внесение улучшений в возможности Chrome, связанные со шрифтами. По статистике Google и Microsoft около 70% опасных уязвимостей вызваны проблемами при работе с памятью, которых можно избежать при использовании языка Rust без unsafe-блоков.

Например, использование Rust, позволило бы избежать ранее выявлявшихся в коде FreeType проблем, связанных с обращением к освобождённым областям памяти, выходом за границу буфера, доступом к массивам без проверки индексов, целочисленными переполнениями, некорректным использованием необнулённых областей памяти и ошибками приведения типов.

  1. Главная ссылка к новости (https://developer.chrome.com/b...)
  2. OpenNews: Уязвимость во FreeType, позволяющая выполнить код при обработке шрифтов
  3. OpenNews: Google отключил поддержку io_uring в ChromeOS и Android из-за плачевного состояния безопасности
  4. OpenNews: Методы безопасной работы с памятью позволили существенно снизить число уязвимостей в Android
  5. OpenNews: В кодовой базе Chromium разрешено использование языка Rust
  6. OpenNews: 70% проблем с безопасностью в Chromium вызваны ошибками при работе с памятью
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/62922-chrome
Ключевые слова: chrome, font, rust
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (220) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (1), 15:33, 20/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +13 +/
    Скоро они узнают что кроме выхода за границы есть ещё много видов ошибок.
     
     
  • 2.2, Аноним (-), 15:35, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +43 +/
    И будут радоваться тому, что не тратят время на высчитывания границ, а сосредоточиться на недопущении этих самых ошибок.
    Например логических.
     
     
  • 3.12, Аноним (12), 15:56, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Я вот все читаю про битву Си и Rust.
    Складывается впечатление что выход за пределы границ, не проблема языка, а прказатель уровня владения им. Не приведет ли rust к аналогии работы с калькулятором, что некоторые личности настолько активно его начинают использовать что теряют навык счета в уме.
     
     
  • 4.18, Аноним (-), 16:08, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +5 +/
    Если бы так было то профи не допускали бы таких ошибок Но практика показыает об... большой текст свёрнут, показать
     
     
  • 5.41, Аноним (41), 16:35, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Загружаемые веб-шрифты - дыра в системе, недавние новости это подтвердили.
     
     
  • 6.51, Аноним (-), 16:56, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Загружаемые веб-шрифты - дыра в системе, недавние новости это подтвердили.

    Так вот эту дыру и хотят закрыть.
    Ну или хотя бы существенно минимизировать поверхность атаки.

     
     
  • 7.99, Аноним (99), 18:08, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Испольованием доп.компилятора? Смешно... От гугл? вовсе печально такое слышать.. очередное разочарование в человечестве.
     
     
  • 8.123, Аноним (-), 18:59, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Использование недырявого языка Тем не менее гугл заинтересован в недырявости св... текст свёрнут, показать
     
     
  • 9.131, Аноним (12), 19:41, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Как жешь они раньше-то жили И каким, интересно, образом он браузер смог набрат... текст свёрнут, показать
     
     
  • 10.134, Аноним (-), 19:47, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Плохо жили opennet ru opennews art shtml num 59746 Критическая 0-day уязвимость... большой текст свёрнут, показать
     
  • 5.58, Аноним (58), 17:07, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • –5 +/
    Откуда вы знаете какие ошибки делают профессиональные программисты на С Исходны... большой текст свёрнут, показать
     
     
  • 6.73, Аноним (73), 17:22, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Э А Юникс Именно ради него СИшка была создана Ага, прям из воздуха и появи... большой текст свёрнут, показать
     
  • 6.120, Аноним (120), 18:38, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +7 +/
    > В ядро Linux профессионалы не пишут.

    Все так. Профессионалы пишут сугубо в опеннетные комментарии.

     
  • 6.252, Аноним (252), 12:25, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >Откуда вы знаете какие ошибки делают профессиональные программисты на С?

    Компании сами о них докладывают через неделю программу CVE. Заходите на сайт и смотрите и статистику и отдельные случаи.

     
  • 4.24, Аноним (-), 16:16, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Думаю битва еще не особо началась О, я люблю слушать сказки и котоламповые исто... большой текст свёрнут, показать
     
     
  • 5.211, Аноним (211), 08:28, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • –2 +/
    >А я взамен, приведу пример Теодора "вы не заставите меня выучить раст" Тцо.

    Зачем ты привел позор растовиков?

    Взялись делать систему интеграции в ядро и не смогли сделать автоматические биндинги.

    Стали требовать поддерживать биндинги от ВСЕХ разработчиков и получили по рогам. Так как это требование перекладывает их работу на других людей.

    Выкинуть, правда, совсем раст не получилось. Но попытка обернулась тем, что Линус подтвердил: пишите не оглядываясь на обертки rust, разок-другой можем задержать интеграцию написанного из-за неготовности rust-оберток, а если будут постоянно опаздывать - дропнем не поддерживаемое.

     
     
  • 6.278, Аноним (-), 14:49, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > и получили по рогам.

    Получили по рогам как раз сишники.
    Мейнтенера DMA натыкали в ссаные тряпки и объяснили что нужно знать свое место и не пытаться контролировать как и кто использует его код.
    Снежинка такого не пережила и выпилилась из мейнтейнеров. Плак-плак))

    Остальным же Торвальдс доходчиво объяснил, что оно или учат раст и принимают участие в обсуждениях, или не учат и закрывают варешку.
    Получилось вполне неплохо.

    А дроп неподдерживаемого кода из-за неготовности или отсутствие мейнтейна - так это и сишку касается. Я конечно подозреваю, что диды-копротивляторы будут стараться максимально подоcpaтьгде только могут, но и это переживем.

     
  • 4.29, fidoman (ok), 16:24, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +7 +/
    Хорошая аналогия кстати, чтобы грамотно в C памятью управлять - это примерно как вы будете 10-значные числа на бумажке перемножать. А в соседний отдел завезли калькуляторы. А вам - пачку рекомендаций, как на бумажке правильно числа записывать, чтоб не ошибиться.
     
     
  • 5.88, Флудер (?), 17:44, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Через 10 лет отдел с калькуляторами деградирует до саморазрушения. А те, что на бумажках - продолжат неспеша выполнять любые задачи.
     
     
  • 6.94, Аноним (-), 17:52, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Через 10 лет отдел с калькуляторами деградирует до саморазрушения.

    Смелое предположение, пруфов, я так понимаю, предоставлено не будет?

    > А те, что на бумажках - продолжат неспеша выполнять любые задачи.

    Лет за 10-20, а там уже и пенсия.
    А надо было посчитать за неделю.


     
     
  • 7.103, Аноним (99), 18:16, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • –3 +/
    Какие тебе пруфы? С какой стати? Сам ищи, пруфы на общеизветные факты...

    Люди даже в уме числа всегда в истории считали,
    до появления калькуляторов...

    На - можешь начать хоть с этого пруфа: антагоист бывший бухгалтер у Ильфа и Петрова, но понятно он был не единственный такой в мире.


    /мимопроходил

     
     
  • 8.117, Аноним (120), 18:34, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Что за бред Ты про абаки, догарифмические линийки и прочие устройства не слышал... текст свёрнут, показать
     
     
  • 9.194, n00by (ok), 06:33, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Про верёвку с 12-ю узлами, для построения прямого угла, наверняка не слышал Зат... текст свёрнут, показать
     
  • 8.122, Аноним (-), 18:47, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Хм, ты решил использовать гамбит пруфов нет - кукарекай про 700 общеизвестные... текст свёрнут, показать
     
  • 8.196, User (??), 06:45, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Да-да, ждём примера успешных успехов бухотделов, ручками записывающих результаты... текст свёрнут, показать
     
     
  • 9.205, Флудер (?), 07:52, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Пример одного ВУЗа СССР 80е - на каждом курсе на факультете по 3-4 группы по 30... текст свёрнут, показать
     
     
  • 10.227, User (??), 10:17, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Не-не-не, мне не нужен пример одного вуза и сравнение бухучета в СССР с РФ то... текст свёрнут, показать
     
  • 7.206, Флудер (?), 08:10, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Смелое предположение, пруфов, я так понимаю, предоставлено не будет?

    Возьми свой "калькулятор", посчитай на нем количество значимых научных открытий и изобретений за определенные десятилетия/столетия, проведи корреляцию с количеством и производительностью этих "калькуляторов". Определи тренд. Не плачь.

     
  • 5.96, Аноним (96), 17:59, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Не на бумажке, а в уме чтобы, первоначально речь зашла. И люди-счётчики показывают феноминальные результаты. Проверяющие даже не успевают на калькуляторе набрать, а те уже ответ выдвли. И не только перемножать, но корни извлекать.
    При подготовке космонавтов подобному обучают. Может, и не с 10-значными числами, конечно.
     
     
  • 6.101, fidoman (ok), 18:15, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Вот именно, не 10-значные. Пока все работают строго по утверждённым схемам, входят так где вход и выходят там где выход - всё работает прекрасно. Как только находится один идиот, который влезает в окно - ну вот понадобилось ему для "оптимизации" скопировать куда-то указатель - всё рассыпается как карточный домик. Проблема программистов в том, что в целом они необучаемы. Ну вот невозможно приучить людей хранить данные о кодировке, когда у них есть стандартная библиотека, которая просто копирует строки. И проблема с кодировками "решилась" только когда всех добровольно-принудительно загнали на одну, весёлую и с эмоджи. Так же и тут.
     
     
  • 7.214, Аноним (211), 08:36, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Ну вот невозможно приучить людей хранить данные о кодировке

    И как все работало? Или не работало. Знаю тех кто и сейчас использует локаль KOI8-R.

     
  • 4.93, Аноним (96), 17:52, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Тут говорят, что тотально приведёт. Потому, как скоро кодить будет AI.
     
     
  • 5.119, пох. (?), 18:36, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +4 +/
    да когда ж эта гадина будет наконец-то за меня кодить?!

    Пока больше похоже что она научится за меня врать почему проект не сделан вовремя. Ну, в принципе, приемлемо...

     
  • 4.125, Аноним (125), 19:03, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Rust далеко не единственный язык с безопасной работой с памятью. Можно поглядеть что за ошибки и сколько их в других языках. Ну например есть PHP....
     
  • 4.166, Кулёк (?), 22:27, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Вы, видать, ничего сложнее функции fib() не писали. У среднего разработчика 10 мегабайт исходного кода в голове не умещаются. Просто поработайте над серьёзным проектом на Сях, а потом на Расте, сразу увидите разницу в скорости разработки и качестве кода. ;)
     
     
  • 5.195, n00by (ok), 06:42, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Средний разработчик в России, усилиями активистов СПО, умещает в голове любое количество кода.

    Ему достаточно помнить git clone && make install, и полный цикл разработки готов.

    АН: Политика ALT состояла все эти годы в том, чтобы построить п͟о͟л͟н͟ы͟й͟ ц͟и͟к͟л͟ р͟а͟з͟р͟а͟б͟о͟т͟к͟и, независимый, а это очень длительный процесс, причем нельзя сказать, что мы с самого начала ставили перед собой такую цель.

     
     
  • 6.235, Аноним (235), 11:24, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >Ему достаточно помнить git clone && make install, и полный цикл разработки готов.

    Ну ещё свои копюрайты вбить.

     
  • 6.241, Аноним (241), 11:46, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    А этот позор фамилии уверен, что сборка чужого кода это и есть полный цикл разработки? 😂
     
     
  • 7.279, n00by (ok), 14:55, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Не думаю, что он человек глупый. Подозреваю, дурачит сознательно и достаточно успешно, учитывая количество верующих в профанацию.

    Интервью известное, кстати. Удивлён, что "Сообщество" такое схавало - в то время понимающих было наверняка побольше. Это я пропустил его, поскольку в то время был в другой ОС.

     
  • 4.177, Аноньимъ (ok), 02:17, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Нет никакой битвы.
     
  • 4.224, Аноним (224), 10:00, 21/03/2025 Скрыто ботом-модератором     [к модератору]
  • –1 +/
     
  • 4.231, bOOster (ok), 10:55, 21/03/2025 Скрыто ботом-модератором     [к модератору]
  • +/
     
  • 4.244, laindono (ok), 11:53, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > некоторые личности настолько активно его начинают использовать что теряют навык счета в уме

    Почему это вообще является проблемой? Калькулятор всегда под рукой. Тоже самое с картами и навигаторами. Умение использовать компас или астролябию это безусловно круто. Но не для повседневного использования.

    > Складывается впечатление что выход за пределы границ, не проблема языка, а прказатель уровня владения им

    Для людей совершенно нормально и естественно ошибаться. Одно дело, если ты не используешь калькулятор при подсчёте своих покупок. Другое дело, при подсчёте какой-то сложной штуки вроде авиалайнера. Цена ошибки слишком высока, чтоб полагаться на человеческий фактор.

     
  • 2.4, Аноним (4), 15:42, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Сравни 1% уязвимостей из-за логических ошибок и 70% из-за кривой работы с памятью. Остальные 29% разные SQL injection, Command Injection, Path Traversal, XSS, Missing Authentication, Type Confusion,  которые в данном случае неприменимы или слишком тривиальны для уровня Google.
     
     
  • 3.15, Аноним (1), 16:04, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • –4 +/
    Сравни денежные потери от выхода за границы буфера в 0 долларов. И потери от логических ошибок в 100 миллиардов долларов.
     
     
  • 4.23, Аноним (23), 16:16, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Откуда цифры?
     
     
  • 5.27, Ося Бендер (?), 16:22, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +3 +/
    От кэмэла, вестимо.
     
  • 5.33, Аноним (-), 16:29, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > Откуда цифры?

    Аноним просто ткнул пальчем в небо (или в какую-то другую сущность) и выдал результат.
    И да, пруфов не будет, мы анонимы друг друга не обманываем (с).

    Heartbleed - buffer over-read уязвимость которая повлияла на кучу сайтов. К счастью жила всего 3 года.
    Импакт оценили в $500 лямов.

     
     
  • 6.60, Аноним (60), 17:11, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Недавно новости были про перечисление случайным людям около миллиарда, вместо 20 долларов.

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

    А вот малые.... И это крупнейшие банки США.

     
     
  • 7.106, Аноним (106), 18:19, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Причем тут работа с памятью? Это явно логическая ошибка.
     
     
  • 8.138, Аноним (138), 19:59, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    А может и переполнение ... текст свёрнут, показать
     
     
  • 9.198, n00by (ok), 06:53, 21/03/2025 Скрыто ботом-модератором     [к модератору]
  • +/
     
  • 8.213, Аноним (211), 08:34, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Так про это и речь, что именно логические ошибки приводят к огромным потерям И ... текст свёрнут, показать
     
  • 5.197, n00by (ok), 06:49, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Цифры он взял из летнего "отказа Windows", когда в драйвере CrowdStrike разыменовывали нулевой указатель. По обыкновению малость приврал.
     
  • 4.26, px (??), 16:20, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    https://ru.wikipedia.org/wiki/Heartbleed
     
     
  • 5.107, Аноним (106), 18:20, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Ошибке три тысячи миллионов лет, а ты все носишься с ней и пытаешься что-то сам себе доказать?
     
  • 2.25, px (??), 16:19, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Выход за границы — это самое тривиальное, что может быть. Раст предотвращает очень многие потенциальные ошибки связанные с доступом к памяти, в весьма неочевидных ситуациях. А ещё, решает проблемы с гонками данных, в многопоточных приложениях, что принципиально улучшает сон и аппетит. У меня складывается впечатление, как будто «адепты старой школы» сами вообще никогда не писали на Си или плюсах реальных проектов.
     
     
  • 3.56, Аноним (56), 17:05, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > У меня складывается впечатление, как будто «адепты старой школы» сами вообще никогда не писали на Си или плюсах реальных проектов.

    Опеннетные "ярые одепты си" - в основном проекты вида laba1.c, laba2.c ... labaX.c и было это давно. И чем давнее, тем яростнее и беспощаднее "одепт".
    Эдакая "любовь на расстоянии", потому что любить сишку именно как ЯП - ну вот абсолютно не за что.

    Тут как в том анекдоте "Дед, при Сталине жилось лучше? Конечно лучше, внучек! Почему, деда? Потому что при Сталине у меня - стоял!"

     
  • 3.113, Аноним (99), 18:22, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • –4 +/
    > У меня складывается впечатление, как будто «адепты старой школы» сами вообще никогда не писали на Си или плюсах реальных проектов.

    Ты и правда считаешь что, всё EXE проектов в мире - на Rust/Java/Pyhon/C#/.../BrainFuck ? Что куришь?...

     
  • 3.126, анонд (?), 19:04, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    В Паскале нет выхода за границы массива. Вообще нет. И всегда так было. Это приводит к аварийному завершению программы. Тем более в Ада.
     
     
  • 4.254, Конь (ok), 12:41, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Как это нет
    Вот проверил только что в fpc
    > program project1;
    > var
    >     a: array[0..2] of integer;
    >     i: integer;
    > begin
    >     for i := 0 to 2 do
    >       a[i] := 1;
    >     for i := 0 to 5 do
    >       Write(a[i], ' ');
    > end.

    выдает: 1 1 1 0 4 0

     
  • 2.181, Аноним (181), 02:43, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Скоро они узнают что кроме выхода за границы есть ещё много видов ошибок.

    Что же не позволяет тебе дочитать новость до конца? Тебе же в дополнение перечислили еще пучок (и заметь, именно они, вместе с выходом за границы, дают львиную часть именно критических ошибок высокой опасности):

    "Например, использование Rust, позволило бы избежать ранее выявлявшихся в коде FreeType проблем, связанных с обращением к освобождённым областям памяти, выходом за границу буфера, доступом к массивам без проверки индексов, целочисленными переполнениями, некорректным использованием необнулённых областей памяти и ошибками приведения типов."

    Опережая следующую твою сентенцию - и нет, это не полный и исчерпывающий список, от чего еще мог бы защитить раст в отличие от сишки.

     
  • 2.215, Cucumber (?), 08:48, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Жду возвращения к bitmap-шрифтам
     

     ....большая нить свёрнута, показать (62)

  • 1.3, Аноним (-), 15:37, 20/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –8 +/
    О, наконец-то.
    Теперь крикуны "в хроме нет раста" получили неоспоримый пруф))

    ps жду нытья "на моем rhel6 не хватает пакетов"
    ps2 и потока нытья от гентушников "как же это все пересобирать"

     
     
  • 2.16, Аноним (1), 16:04, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ты рад что всем стало плохо?
     
     
  • 3.22, Аноним (-), 16:14, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • –4 +/
    > Ты рад что всем стало плохо?

    Почему всем?
    Гентушники и некролюбы - это девиация даже среди линуксойдного меньшинства.
    Всем остальным наоброт станет лучше.


     
     
  • 4.190, Аноним (190), 05:19, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • –2 +/
    >Ты рад что всем стало плохо?
    >Почему всем?

    Потому что в инфраструктуру добавили два вендерлока: сам rust и эта skrifa. С одной стороны какая разница, если хром это один большой вендерлок? С другой не все так просто, сейчас этот движок как раковая опухоль начнет поражать всю экосистему Линукс.

    >Всем остальным наоброт станет лучше.

    [sarcasm]Ага, лично я просто прыгаю от счастья осознавая это.[/sarcasm]

     
     
  • 5.207, Аноним (207), 08:14, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > экосистему Линукс

    …которой не существует.

     
  • 5.217, Аноним (217), 09:26, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >Потому что в инфраструктуру добавили два вендерлока: сам rust и эта skrifa.

    Про xorg вы благополучно забыли

     
  • 4.216, Аноним (216), 09:07, 21/03/2025 Скрыто ботом-модератором     [к модератору]
  • –1 +/
     
  • 3.97, Аноним (96), 18:03, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Так это же его хлеб. Ему за это платят.
     
  • 3.182, Аноним (181), 02:46, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Ну почему сразу всем. Отвыкай говорить за всех. Мне вот стало хорошо. От того, что потенциальных дыреней стало (и станет) меньше.
     
  • 2.28, Oi (?), 16:23, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    emerge www-client/google-chrome затащит бинарный пакет.
     
     
  • 3.35, Аноним (-), 16:32, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > emerge www-client/google-chrome затащит бинарный пакет.

    Перефразирую старый комикс про Неми:
    "- А как называется гентушник, который тащит бинарные пакеты?
    -- Предатель!"

    У них же компиляние ради компиляния.
    Это не самый странный фетиш, но даже среди линуксоидных меньшинств они довольно маргинальные.

     
     
  • 4.100, dannyD (?), 18:13, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    теоретик [рука\лицо]
     
  • 4.142, Аноним (142), 20:07, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ну и как ты скомпилируешь программу без исходного кода? Хромиум в счёт не берём, там синхронизацию отключили
     
  • 4.168, Perlovka (ok), 22:51, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    А ты этих "них" видел-то хоть раз, Андерсен ты наш? )
     
     
  • 5.199, User (??), 07:07, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    В каждой второй новости на opennet'е, ага.
     
  • 4.261, Герострат (?), 12:58, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Если вдруг захотелось собрать систему из исходников, это не значит, что нужно собирать абсолютно всё. Держишь хромы и расты во флатпаке и в ус не дуешь. Ещё и права доступа можно обрезать прямо в кдешном system settings.
     
  • 2.86, FSA (ok), 17:32, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > "в хроме нет раста"

    Так его там реально нет. Есть только бинарники собранные из исходников Rust :-D

     
  • 2.102, Аноним (96), 18:16, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Ждём серверов с водяным охлаждением. Можно будет горячую воду в контур отопления дачи пустить, по аналогии с этим https://habr.com/ru/articles/874044/ вместо электрокотла. Сразу два зайца убили: и емержит, и отапливает.
     

  • 1.5, Аноним (-), 15:43, 20/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –3 +/
    Safety
    Unsafe code is forbidden by a #![forbid(unsafe_code)] attribute in the root of the library.
    github.com/googlefonts/fontations/tree/main/skrifa#safety

    Ого, оказывается на расте можно писать вот воообще без ансейфа.
    Правда для этого нужно быть гуглом, а не неосилятором.

    А вообще тенденция радует.
    Дырявую сишку потихоньку заменяют на нормальный язык.

     
     
  • 2.137, Аноним (137), 19:55, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Дырявую сишку потихоньку заменяют на нормальный язык.

    Ещё нет, zig будет позже. Когда устанут компилять рустовую разросшуюся кодовую базу.

     
     
  • 3.140, Аноним (140), 20:01, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >> Дырявую сишку потихоньку заменяют на нормальный язык.
    > Ещё нет, zig будет позже. Когда устанут компилять рустовую разросшуюся кодовую базу.

    Это тот самый зиг в котором double-free делается запросто, а списка UB в документации нету?
    Даааа, ну может лет через 20, оно дорастет до уровня раста.


     
     
  • 4.146, Аноним (120), 20:55, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Это тот самый зиг в котором double-free делается запросто

    Тот самый Zig, где ручками управляешь ресурсами.

     
     
  • 5.185, Аноним (-), 03:13, 21/03/2025 Скрыто ботом-модератором     [к модератору]
  • –1 +/
     
  • 3.218, Аноним (217), 09:29, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Хватит вам носится со своим zig-ом, у него до сих пор релизной версии нет. А с учётом того, что ничего прорывного в нём нет, то это вообще какой-то позор. Ладно бы они там афинные/зависимые типы делали или какую-то другую вещ, они скопипастить готовый функционал не могут
     
  • 2.149, Аноним (-), 21:14, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Правда для этого нужно быть гуглом, а не неосилятором.

    Не нужно быть гуглом для этого. Этот crate-level аттрибут попадается во многих крейтах. Подавляющее большинство растоманов избегает ансейфа даже в тех случаях, когда плюсы его применения могли бы перевесить минусы. А если они и так не используют unsafe, то почему бы не похвастаться этим в src/lib.rs.

     

  • 1.6, 12yoexpert (ok), 15:45, 20/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    на сколько пожирнел?
     
  • 1.7, Аноним (7), 15:48, 20/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –3 +/
    Ерунда. Эти гуглярщики сделали какуюто там либу. Несложную. А на самом деле чем занимаются? Гребут бабки на рекламе в ютуб. Гребут бабло.
     
     
  • 2.9, Аноним (-), 15:50, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Ерунда. Эти гуглярщики сделали какуюто там либу.

    Не какую-то, а которую будут использовать миллиарды юзеров.

    > Несложную.

    Угу, настолько несложную что бракодеры из FreeType уже которую CVE/RCE допускают.

    > Гребут бабки на рекламе в ютуб. Гребут бабло.

    Завидно?))


     
     
  • 3.154, Tron is Whistling (?), 21:26, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Юзер у этой либы один - сам гугл.
     
  • 2.64, 12yoexpert (ok), 17:16, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Эти гуглярщики сделали

    ты хотел сказать переписали?

     
     
  • 3.162, anono111111111111111111 (?), 21:47, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Скоро и переписывать не надо будет - GrapRAG (LLM)
    https://youtu.be/1VgptLwP588?t=1960 (Mark Russinovich, Microsoft)
    Пофайловая конвертация с Python на Rust
     
     
  • 4.169, 12yoexpert (ok), 23:01, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    да-да, скоро зажравшихся айтишнегов заменит "ИИ"
    а я пока побегу накручивать просмотры
     
     
  • 5.175, ИТ_НЕ_ТАК_ПРОСТО_КАК_ТЫ_ДУМАЕШЬ_КОПИРАЙТЕР (?), 01:21, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    А , ещё иногда требуется исправить заголовочные фаилы ты не ослышался: вручную , скоро всё вскроется это проект индустрия 2.0 тут можно стрелять так же и по своим ногам благославляя ложь и мошеннические действия в виде заговоров
     
  • 4.174, ИТ_НЕ_ТАК_ПРОСТО_КАК_ТЫ_ДУМАЕШЬ_КОПИРАЙТЕР (?), 01:04, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Не поможет везде разные флаги , одна программа ждёт -03 другая может вообще какой нибудь -01 третья ждёт добавления пока не известного флага иначе будет в пол тора раза медленее и так далее и только вороватые чужих инвестиции через банки могут быть уверены что они правы
     
  • 2.201, Аноним (201), 07:13, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Это разные люди.
     
  • 2.245, Аноним (-), 11:53, 21/03/2025 Скрыто ботом-модератором     [к модератору]
  • –1 +/
     

  • 1.13, нах. (?), 16:00, 20/03/2025 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • –2 +/
     

  • 1.30, Аноним (30), 16:27, 20/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Не беда, еще остались Epiphany, Otter Browser и Ladybird.
     
     
  • 2.34, Аноним (34), 16:30, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Спасибо, поржал. Первые два - просто несамостоятельные шкурки; последний - проект одного ноунэйма, который получил грант на лям: как только деньги закончатся, он перестанет его пилить, или потребует от милого камьюнити ещё деньжат на развлечение.
     
  • 2.109, Аноним (96), 18:20, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Ladybird теперь уже не совсем lady, его на Swift переписывают.
     
     
  • 3.155, Tron is Whistling (?), 21:27, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Перепишут - переименуют в Ladyboy.
     

  • 1.31, Ося Бендер (?), 16:28, 20/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –4 +/
    Потому и тормозит этот ваш хром. Для полноты картины нужно написать сервис работы с закладами на джаве, парсинг дома на питончике, а сервис настроек на басике. Да, и еще какой-нить сервис на перлушечке.
     
     
  • 2.39, Аноним (-), 16:35, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Потому и тормозит этот ваш хром.

    А оно сейчас тормозит? Но новой либы еще нет у юзеров)))
    Вы прям как из того анекдота "Вы только подумайте, что будет, когда мы её включим..."

    Ну и тормозит по сравнению с чем? С тормозилой? С творением шерстяного? С линксами?
    Просто не жалейте хрому оперативы и все будет летать.

     
  • 2.42, Bob (??), 16:36, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Где он тормозит то?
    Давно в мировой интернет выходил на нём?
     
     
  • 3.44, Ося Бендер (?), 16:40, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Вот прямо вчера очередной раз сверил часы. Тормозит как не в себя.

    Да и лучше огненной птицы пока нет.

     
     
  • 4.55, Аноним (-), 17:04, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >  Вот прямо вчера очередной раз сверил часы. Тормозит как не в себя.

    Удивительно. УМВР и ничего не тормозит...
    Может ты пытаешься его запустить на каком-то пылесосе?

    > Да и лучше огненной птицы пока нет.

    Ты уже принял их обновленную еулу?))

     
  • 4.136, Аноним (136), 19:52, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Огненная птица??? FireBird? Sql-бд?
     
     
  • 5.212, Аноним (241), 08:32, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Перед тем, как стать Firefox браузер успел побыть Phoenix и Firebird
    Но я не думаю, что с Mozilla Firebird сейчас можно хоть на какой-то сайт попасть
     

  • 1.32, Аноним (41), 16:29, 20/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > если система не поддерживает формат шрифта, который пытается отобразить браузер

    ...такой шрифт (формат) не должен применяться вообще.

     
  • 1.36, Аноним (58), 16:32, 20/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    на сайте freetype:

    The main author of FreeType was David Turner, who created the library in 1996 to render TrueType fonts, including an interpreter for handling TrueType bytecode. It was originally written in the Pascal programming language. In 1997, Robert Wilhelm ported it to C, and Werner Lemberg joined the team. Originally, the C and Pascal versions were developed in parallel, however, development of the Pascal version stopped in 2000.

     
     
  • 2.40, Аноним (58), 16:35, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Core Developers
    Alexei Podtelezhnikov (Алексей Подтележников)
    Suzuki Toshiya (鈴木俊哉)
     

  • 1.43, myster (ok), 16:39, 20/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Такое ощущение, что Раст тут для отвлечения внимания, погодите.

    А самого главного не написали. Skrifa позволит Гуглу больше не отслеживать пользователей через свои онлайн шрифты, или наоборот расширит эту возможность и через Skrifa-API будут постоянно дёргаться сервера Гугла?

     
     
  • 2.61, Аноним (61), 17:13, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > постоянно дёргаться сервера Гугла?

    а чьи еще сервера должно дергать гуглоподелие?

     
     
  • 3.98, Аноним (12), 18:04, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Ой чет у ungoogled chromium, работенки прибавится...
     

  • 1.46, Аноним (-), 16:41, 20/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +8 +/
    Отличная новость!
    Но что еще более отлично - что таких новостей будет все больше и больше :)

    Количеством горения местных сишников неудовлетворен.
    Где возмущение? Где "мы сделаем форк!!!111"?

     

  • 1.47, ОШИБКА Отсутствуют данные в поле Name (?), 16:43, 20/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    А потом вдруг вспомнят, что выход за границы можно предотвратить только во время исполнения, а не на этапе компиляции. На этапе компиляции можно понапихать проверок, которые будут отрабатывать во время выполнения, а потом может быть переизобретут "сборку мусора". Но сначала -- распил и откаты.
     
     
  • 2.79, чатжпт (?), 17:25, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +4 +/
    В раст в худшем случае, если не использовать get и проверки индексов, произойдет паника при выходе за границу, а не выполнение кода как в сишке. Сборка мусора не нужна
     
     
  • 3.105, Аноним (41), 18:18, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • –2 +/
    > если не использовать get и проверки индексов, произойдет паника при выходе за границу

    Как она произойдёт, если нет проверки индекса? Магия...

     
     
  • 4.124, чатжпт (?), 19:03, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    вот так и произойдет

    fn main() {
        let v = vec![0, 1, 3, 4];
        println!("{}", v[5]);
    }

    $ ./target/debug/test

    thread 'main' panicked at src/main.rs:3:21:
    index out of bounds: the len is 4 but the index is 5

     
     
  • 5.130, Аноним (130), 19:37, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Тут уже ассемблер надо смотреть, есть ли там проверка условия выхода за границу
     
     
  • 6.144, чатжпт (?), 20:17, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Тут уже ассемблер надо смотреть, есть ли там проверка условия выхода за
    > границу

    так я про конечного программистов говорю, что не обязательно париться с границами если паника допустима

     
     
  • 7.187, Аноним (41), 03:30, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    1984 год, Turbo Pascal

    Turbo Pascal checks if values are within limits. If the value is constant it is immediately checked for lower and upper limit. If it is not constant and range checking is enabled, Turbo Pascal will generate range checking code.

     
     
  • 8.188, чатжпт (?), 03:53, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    ага, ничто не ново под луной, в раст собрано много хорошего из разных языков ... текст свёрнут, показать
     
  • 8.203, User (??), 07:16, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Ужасный, отвратительный был язык Угнетал свободолюбивых дiдов и мешал стрелять ... текст свёрнут, показать
     
  • 5.186, Аноним (41), 03:19, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    И что ты тут понакалякал? v[5] - тут твой безопастный компилятор вставил рантайм проверку. Это умел делать ещё паскаль в прошлом веке.
     
  • 5.189, Аноним (189), 04:52, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Так даже в Си можно сделать, когда все известно на этапе компиляции.
     
  • 5.202, n00by (ok), 07:14, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > вот так и произойдет
    > fn main() {
    >     let v = vec![0, 1, 3, 4];
    >     println!("{}", v[5]);
    > }
    > $ ./target/debug/test
    > thread 'main' panicked at src/main.rs:3:21:
    > index out of bounds: the len is 4 but the index is
    > 5

    Показательный пример. Теряюсь в догадках, зачем он такой был выбран.

    #include  <stdio.h>

    int main()
    {
        int v[] = {0, 1, 3, 4};
        printf("%i", v[5]);
    }

    <source>:6:18: error: array index 5 is past the end of the array (that has type 'int[4]') [-Werror,-Warray-bounds]
        6 |     printf("%i", v[5]);
          |                  ^ ~
    <source>:5:5: note: array 'v' declared here
        5 |     int v[] = {0, 1, 3, 4};
          |     ^
    1 error generated.
    Compiler returned: 1

    https://godbolt.org/z/Wcehs45xe

     
     
  • 6.255, Аноним (252), 12:49, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    заметим что данный код уже эквивалентен вот этому:

      fn main() {
          let v = [0, 1, 3, 4];
          println!("{}", v[5]);
      }

    и выдает ошибку компиляции:

    error: this operation will panic at runtime
    --> src/main.rs:3:20
      |
    3 |     println!("{}", v[5]);
      |                    ^^^^ index out of bounds: the length is 4 but the index is 5
      |
      = note: '#[deny(unconditional_panic)]' on by default

     
     
  • 7.280, n00by (ok), 15:06, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Так я и заметил начало ветки - "А потом вдруг вспомнят, что выход за границы можно предотвратить только во время исполнения, а не на этапе компиляции."
     
  • 6.256, laindono (ok), 12:49, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ты забыл malloc/free. Тип std::vec::Vec<T> является contiguous growable array. Динамическим массивом.

    fn main () {
        let a = [1, 2, 3, 4];
        println!("{}", a[5]);
    }

    error: this operation will panic at runtime
    --> src/main.rs:3:20
      |
    3 |     println!("{}", a[5]);
      |                    ^^^^ index out of bounds: the length is 4 but the index is 5
      |
      = note: '#[deny(unconditional_panic)]' on by default

     
     
  • 7.281, n00by (ok), 15:08, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Я ничего не забыл. Я не реагирую на последнее сообщение ветки, а читаю с корневого сообщения:

    "А потом вдруг вспомнят, что выход за границы можно предотвратить только во время исполнения, а не на этапе компиляции."

    Почему меня и удивило, что спор ушёл не совсем туда.

     
  • 3.128, анонд (?), 19:07, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Удивлю, но программы на Паскале отродясь так работают так что Раст не нужен :)
     
     
  • 4.176, Аноним (176), 01:58, 21/03/2025 Скрыто ботом-модератором     [к модератору]
  • +/
     
  • 2.157, Аноним (-), 21:29, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Я не думаю, что об этом кто-то забывал Это же базовые факты которые обсуждаются... большой текст свёрнут, показать
     
     
  • 3.170, Аноним (170), 23:10, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Сишочные технологии шагнули куда дальше этой унылой математической черты! Ведь компилятор считает, что все уже доказано и никаких выходов за границы/целочисленных переполнений и т.д. нет и оптимизирует исходя из этого. С - это поистине могучий инструмент для сильных разумом! Жаль, что еще не родился тот сишник, что смог бы с ним совладать. Ну а пока легенда ждет своего героя, можно в комментариях болеть за любимую сишку, самое главное - не пытаться на ней писать.
     
  • 3.220, Аноним (217), 09:34, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >Это же базовые факты которые обсуждаются в базовом IT образовании: проблема останова не позволяет статически доказывать такие факты о коде

    Для этого нужны статические типы, о которых сишники до сих пор не знают. Про языки типа ATS или Idris вообще не слышали

     
  • 3.240, Аноним (56), 11:45, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Проблема останова лишь наглядно показывает, что нельзя доказать все-все-все д... большой текст свёрнут, показать
     
  • 2.210, Аноним (210), 08:27, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > А потом вдруг вспомнят, что выход за границы можно предотвратить только во время исполнения, а не на этапе компиляции.

    На этапе компиляции можно на зависимых типах: https://dl.acm.org/doi/pdf/10.1145/277650.277732

     
  • 2.219, Аноним (217), 09:32, 21/03/2025 Скрыто ботом-модератором     [к модератору]
  • +/
     

  • 1.78, Аноним (60), 17:25, 20/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Хорошая ниша для rust. Никакого обрудования. Никаких вариантов компиляции. Строго берем файлы и вытаскиваем их них информацию аккуратно парся.

    Вот тут да. Многие могут понаделать ошибок с памятью. Вопрос только почему шрифты окажутся подменёнными?

    На компьютере пользователя? Так значит систему уже взломали.

    На сервере гугла, откуда качаются шрифты. Так значит гугла уже взломали и оттуда что угодно прилететь может.

     
     
  • 2.82, 12yoexpert (ok), 17:29, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > Вот тут да. Многие могут понаделать ошибок с памятью

    могли лет 30 назад, когда парсили scanf-ами

    > Вопрос только почему шрифты окажутся подменёнными?

    потому что каждый второй сайт сейчас грузит свои шрифты, а uBlock Origin, который позволял этот мусор резать, в хроме запретили

     
     
  • 3.84, Аноним (60), 17:31, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Так этот парсер будет работать только с теми шрифтами, которые с гугла качаются. Или я неправильно понял?
     
     
  • 4.85, 12yoexpert (ok), 17:32, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    не знаю, я новость не читал
     
  • 4.92, нах. (?), 17:46, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Так этот парсер будет работать только с теми шрифтами, которые с гугла
    > качаются. Или я неправильно понял?

    неправильно. Вон чатгопота тебе уже принесла образец.

     
  • 2.83, чатжпт (?), 17:30, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +3 +/
    @font-face {
        font-family: 'MyCustomFont';
        src: url('/static/mycustomfont.woff') format('woff');
    }

    шрифт может лежать где угодно

     
  • 2.184, Аноним (181), 02:59, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Вопрос только почему шрифты окажутся подменёнными? ...На компьютере пользователя? ... На сервере гугла

    на любом сайте интернета. Еще в pdf'ку и тому подобное тебе могут всунуть кастомный шрифт, со своими глифами и всем что там полагается.

     
  • 2.248, Аноним (-), 12:00, 21/03/2025 Скрыто ботом-модератором     [к модератору]
  • +/
     

  • 1.145, мяв (?), 20:55, 20/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >частью проекта Oxidize, созданного для перевода утилит и библиотек для работы с текстом и шрифтами с компонентов на языках Python (fonttools, fontmake, nanoemoji) и C++ (HarfBuzz, FreeType) на новые реализации, написанные на Rust.

    зачемв  питонореализации, применяемые, очевидно, только в питоне, руст ?
    оно ни безопаснее не будет, ни быстрее - форк кратно дороже
    любого питонокода будет.
    и даже если там как-то можно что-то сделать ffi'ем, то, все равно, зачем ??

     
  • 1.147, мяв (?), 20:59, 20/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >Например, на прошлой неделе во FreeType была выявлена критическая уязвимость,

    мне интересно, это аффтар новость не читал, или.. или кто ?
    не верю, что это разрабы написали.
    в FT была ошибка из-за неверного приведения типа. раст умеет от этого спасать ? (при условии, что разрабы просто варнинги выключают)

     
     
  • 2.151, Вася Пупкин (?), 21:19, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    с типами ржавый очень педантичный, все заставляет явно приводить
     
  • 2.153, Анонимусс (-), 21:22, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Угу А дальше что было А дальше писали мимо буфера в результате чего может во... большой текст свёрнут, показать
     
     
  • 3.156, Tron is Whistling (?), 21:28, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Накладные расходы на такие извращения в inner/medium inner loop могут быть очень весёлыми.
     
     
  • 4.159, Анонимусс (-), 21:36, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Накладные расходы на такие извращения в inner/medium inner loop могут быть очень весёлыми.

    Где там расходы?
    Нужно не экономить битики в цикле с писать сумму в u64 или i64. А u16.into() превращается в нужный u64 вообще одной асм командой (в релизе). Просто от программиста требуется явно указать что он таки хочет ковертнуть типы.

    Но да, намного веселее получить CVE in the wild и взломы со словами "зато я пару тактов сэкономил!"))

     
     
  • 5.225, Tron is Whistling (?), 10:01, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    И как, много CVE in the wild лично вас затронули? Ну или хотя бы кого-то из крупняка?
     
  • 4.161, Аноним (-), 21:46, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Накладные расходы на такие извращения в inner/medium inner loop могут быть очень весёлыми.

    Могут быть, а могут и не быть. У тебя есть профайлер для того, чтобы увидеть разницу, и если накладные расходы кусаются, то сделать как-то иначе. В большинстве же случаев приведения эти накладные расходы невозможно заметить никакими приборами, и жертвовать надёжностью кода во всех этих случаях ради некоторых особых случаев -- это так себе идея.

     
     
  • 5.223, Tron is Whistling (?), 09:56, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Хруст и профайлер, вы серьёзно? Они консольные утилиты-то годами переписывают кое-как в версию 0.01 с кучей багов.
     
  • 4.204, n00by (ok), 07:24, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Это выявляется на этапе трансляции, но в Си не является ошибкой. Если же требуется проверка именно во время исполнения, то накладные расходы на неё существенно меньше, чем на "выделение буфера [неверного размера]".
     
  • 3.163, Аноним (-), 21:56, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Кек try_into unwrap Смотри и учить, салага, как делать без проверок и ... большой текст свёрнут, показать
     
     
  • 4.165, Анонимусс (-), 22:15, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Если преобразовываться будет не числовой литерал, а аргумент функции, компилятор промолчит.

    И нафиг такое счастье? Мне наоборот нужно, чтобы он меня предупредил.
    Варнинги в коде признак того, что код начинает попахивать. И их нужно исправлять.

    > Если второе

    Вроде бы очевидно что второе. Тебе что в одном варианте, что в другом нужно явно написать "ДА, я хочу конвертнуть числа".

     
  • 3.178, мяв (?), 02:31, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >разумеется

    а если скобки почитать ?
    компиляторы С тоже об этом пишут. просто ребята с фридесктопа "проверили на ошибку", поотрубав варнинги.

     
  • 2.160, Аноним (-), 21:44, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    В расте неверные приведения целых чисел генерируют ошибки, а не варнинги И ошиб... большой текст свёрнут, показать
     
     
  • 3.167, Вася Пупкин (?), 22:44, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >// вот тут явное приведение типа, которое компилятор скушает молча

    бзв поэтому лучше писать let b = u16::from(a);

     
     
  • 4.172, laindono (ok), 23:55, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    the trait 'From<u64>' is not implemented for 'u16'

    А вот TryFrom<u64> вполне себе.

     
  • 3.179, мяв (?), 02:36, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    вообще, да.
    но и варнинги не по приколу существуют.
    более того, их описания тоже на что-то обычно наталкивают.
    поэтому тут скорее плохой танцор, решивший танцевать с инструментом с таким к.-вом ub.
     
     
  • 4.180, мяв (?), 02:40, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    причем, __явно__ проигнорировавший табличку о последствиях.
     
  • 4.238, Аноним (-), 11:31, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > но и варнинги не по приколу существуют.

    Странно, судя про крупным проектам на них могут забивать годами.
    На какой год существования ядра решили -werror включить?
    И таки все поломалось. Куча народу жаловалось.

    Пришлось искать ко(м)промисы и в kernel оно было включено не полностью.

     

  • 1.148, Аноним (-), 21:07, 20/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    > Использование Rust позволило значительно снизить вероятность появления проблем при работе с памятью,

    Ссылку на измерения в студию или не было.

    > По статистике Google и Microsoft около 70% опасных уязвимостей вызваны проблемами при работе с памятью,

    Это всё та же статистика десятилетней давности, про которую растоманы нам не устают повторять, или были какие-то фоллоап исследования, подтверждающие числа?

     
     
  • 2.152, Аноним (-), 21:20, 20/03/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    >> Использование Rust позволило значительно снизить вероятность появления проблем при работе с памятью,
    > Ссылку на измерения в студию или не было.

    security.googleblog.com/2022/12/memory-safe-languages-in-android-13.html

    > Это всё та же статистика десятилетней давности, про которую растоманы нам не устают повторять, или были какие-то фоллоап исследования, подтверждающие числа?

    Там был классный followup - отчет о написании 1.5млн строк расто кода в 13 андроиде.
    To date, there have been zero memory safety vulnerabilities discovered in Android’s Rust code.


     
     
  • 3.173, Аноним (41), 00:35, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • –3 +/
    > 1.5млн строк расто кода

    если написать 1.5млн строк на си типа 2+2, в них тоже будет zero memory safety vulnerabilities

     

  • 1.183, Аноним (183), 02:54, 21/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Rust предотвращает double-free и use-after-free. Никаких гарантий невыхода за границы буфера он не дает. Покажите где я не прав.
     
     
  • 2.192, Аноним (192), 05:42, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Покажите где я не прав.

    Где-то в части про никаких гарантий.
    Раст, если при реализации втупую обратиться к индексу за пределами массива, просто паникнёт, не приводя к получению доступа к произвольным данным, выполнениям произвольного кода и прочим UB, за которые так любят сишку 90-летние пердуны.
    Но нормальный разработчик будет использовать интерфейсы к массиву, которые будут давать Option или Result, которые обязательно надо обработать... либо использует iter().

     
  • 2.234, Аноним (-), 11:21, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Никаких гарантий невыхода за границы буфера он не дает.
    > Покажите где я не прав.

    Ты не можешь выйти за границы буфера если программа паникует при попытке и аварийно завершается. И то что ты не выйдешь тебе гарантируется))

     

  • 1.193, Аноним (193), 06:13, 21/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Отлично! Гугл таки вляпался в раст. Будет весело)))
     
     
  • 2.222, Аноним (34), 09:55, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Настало время изумительных историй.
     
  • 2.282, Аноним (-), 15:11, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Гугл таки вляпался в раст

    Что значит вляпался?
    Он один из создателей RustFoundation и платиновый спонсор. Они платят деньги чтобы раст развивался и становился лучше.

    Код на расте гугл использует где-то с 2018-19 года (андроид).
    Но кто ж из хейтеров об этом знает)))

    И оно уже давно в проде у миллионов юзеров.
    Поэтому весело должно было быть уже лет пять, но что-то мир не рухнул (и андроид тоже).

     

  • 1.208, Pret78 (?), 08:19, 21/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Похоже, что основная причина создания Rust это работа со шрифтами:
    "Использование Rust позволило значительно снизить вероятность появления проблем при работе с памятью, повысить качество кода, снизить затраты времени на исправление проблем с безопасностью и ускорить внесение улучшений в возможности Chrome, связанные со шрифтами."
     
     
  • 2.221, Аноним (34), 09:54, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Причём тут шрифты до Раста?
    Сильно печот?
     
     
  • 3.230, Pret78 (?), 10:51, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > Причём тут шрифты до Раста?
    > Сильно печот?

    Читай внимательно - не шрифты для раста, а раст для шрифтов.

     

  • 1.209, Аноним (209), 08:27, 21/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    > Использование Rust позволило значительно снизить вероятность

    Просьба дать точечную и интервальную оценку указанной вероятности. Хотя полагаю, что подобные исследования вряд ли выполнялись. Автор исследования любит использовать терминологию из области науки, в которой не является специалистом. Все это характеризует обстоятельства вокруг сабжа как не имеющие никакого отношения к программированию.

     
     
  • 2.263, Аноним (252), 13:04, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    https://security.googleblog.com/2022/12/memory-safe-languages-in-android-13.ht

    "As the amount of new memory-unsafe code entering Android has decreased, so too has the number of memory safety vulnerabilities. From 2019 to 2022 it has dropped from 76% down to 35% of Android’s total vulnerabilities. 2022 is the first year where memory safety vulnerabilities do not represent a majority of Android’s vulnerabilities."

     

  • 1.226, Аноним (226), 10:05, 21/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    > По статистике Google и Microsoft около 70% опасных уязвимостей вызваны проблемами при работе с памятью, которых можно избежать при использовании языка Rust **без unsafe-блоков**.

    Ну как бы даже в основной новости написано, что Rust'ом тоже надо уметь пользоваться, чтобы избежать проблем с памятью. Вот внезапность то! И с C / C++ надо уметь пользоваться! И если всё делаете правильно, а не неправильно, то не будет проблем. XD

    В общем: как всегда, гаркнуть лозунг гаркнули, а вот в реальности всё будет обстоять совершенно иначе. И Раст ну никак нигде не поможет.

     
     
  • 2.228, xsignal (ok), 10:34, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    И, о чудо, если на Си программировать сосредоточенно и вдумчиво, а не левой ногой с анимешечкой фоном, то тоже будет всё хорошо! Проблема-то не в языке, а в котелке!)
     
     
  • 3.233, Аноним (-), 11:17, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > а не левой ногой с анимешечкой фоном, то тоже будет всё хорошо!

    Это что же получается? Все сишники - онимэшниги???

    У дидов из FreeType и прочих дыряшечных поделий анимешного фона не видно.
    Зато дыреней понаделывали - на сто лет вперед!

    > Проблема-то не в языке, а в котелке!)

    И у всех сишников проблемы с котелком...
    Может сишка разрушает мозг? Или на сишке изначально могут писать только отбитые?

    Но да, убогий недоязык из 70х явно в этом не виноват! Вердикт кексперта с опеннета))

     
     
  • 4.237, xsignal (ok), 11:27, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Это что же получается? Все сишники - онимэшниги???
    > И у всех сишников проблемы с котелком...

    Весь мир сейчас на Си крутится - в каждом утюге, роутере и микроволновке есть прошивка на Си, и ничего - утюги греют, роутеры трафик гоняют, микроволновки еду готовят - всё нормально, никаких проблем с памятью не возникает. Так что сказки про какие-то там "страшные дыры" - это всего лишь плод влажных фантазий воинствующих растовиков)

     
     
  • 5.242, Аноним (-), 11:49, 21/03/2025 Скрыто ботом-модератором     [к модератору]
  • +1 +/
     
     
  • 6.249, xsignal (ok), 12:05, 21/03/2025 Скрыто ботом-модератором     [к модератору]
  • –1 +/
     
     
  • 7.253, Аноним (-), 12:26, 21/03/2025 Скрыто ботом-модератором     [к модератору]
  • +/
     
     
  • 8.257, xsignal (ok), 12:51, 21/03/2025 Скрыто ботом-модератором     [к модератору]
  • +/
     
     
  • 9.260, Аноним (260), 12:57, 21/03/2025 Скрыто ботом-модератором     [к модератору]
  • +/
     
     
  • 10.265, xsignal (ok), 13:21, 21/03/2025 Скрыто ботом-модератором     [к модератору]
  • +/
     
  • 7.262, Аноним (-), 12:59, 21/03/2025 Скрыто ботом-модератором     [к модератору]
  • +/
     
     
  • 8.267, xsignal (ok), 13:27, 21/03/2025 Скрыто ботом-модератором     [к модератору]
  • +/
     
     
  • 9.272, Аноним (-), 14:04, 21/03/2025 Скрыто ботом-модератором     [к модератору]
  • +/
     
     
  • 10.277, xsignal (ok), 14:39, 21/03/2025 Скрыто ботом-модератором     [к модератору]
  • +/
     
  • 9.283, n00by (ok), 15:37, 21/03/2025 Скрыто ботом-модератором     [к модератору]
  • +/
     
  • 5.251, Аноним (-), 12:18, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Кажется ты уронил свой нос 128308 Давай просто сделаем поиск по сайту просто... большой текст свёрнут, показать
     
     
  • 6.259, xsignal (ok), 12:54, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > И что же мы видим?

    И что? Ошибки в программах были, есть и будут. Обнаружили, пофиксили - всего делов! Это даже хорошо, что ошибки находят - как раз благодаря простоте и прозрачноси Си.
    Какие-либо серьёзные последствия этих ошибок были?

     
     
  • 7.271, Аноним (-), 14:00, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > И что? Ошибки в программах были, есть и будут.

    "Аварии всегда были, есть и будут. Зачем нужны ремни, подушки, ограниченичения скорости, светофоры, прочее пдд! А так хорошие водители выживыт, плохие нет, а все остальные пострадавшие - это допустимые потери"))

    > Это даже хорошо, что ошибки находят - как раз благодаря простоте и прозрачноси Си.

    Угу, именно поэтому ошибки живут годами и десятилетиями.
    А находят их в основном фаззиногом или генераторами невалидных данных "тупые машины". Потому что мясные мешки неосиливают увидеть все связи и edge кейсы.

    > Какие-либо серьёзные последствия этих ошибок были?

    Конечно была. Миллионы баксов убытков от простоем, взломы, воровство бизнес инфы.


     
  • 4.239, xsignal (ok), 11:39, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > убогий недоязык из 70х

    Т.е. ты ездишь на суперсовременных треугольных колёсах, а не на убогих круглых недоколёсах из древности?)

     
     
  • 5.243, Аноним (-), 11:53, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Т.е. ты ездишь на суперсовременных треугольных колёсах,
    > а не на убогих круглых недоколёсах из древности?)

    Я езжу на современных бескамерных колесах с асимметричным протектором и беспроводным датчиком давления.

    А ты все еще ездишь на литых каучуковых?
    Или на оббитых металлом деревянных от телеги?
    Или на каменных из флинстонов?

     
     
  • 6.246, Аноним (209), 11:57, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Я езжу на современных бескамерных колесах с асимметричным протектором и беспроводным датчиком давления.

    Мы искренне рады за вас. Но как это поможет, если авто на скорости 160 км/ч на повороте с дороги вылетит?
    Впрочем, приложениям на русте скорость не грозит.

     
     
  • 7.258, Аноним (260), 12:52, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Мы искренне рады за вас. Но как это поможет, если авто на скорости 160 км/ч на повороте с дороги вылетит?

    Так они и помогут "не вылететь")
    Это как сравнивать нормальные шины и китайский китай.
    У каких сцепление будет лучше?
    От то-то и оно.

    > Впрочем, приложениям на русте скорость не грозит.

    Какой громкий пук от кексперта! Жаль в лужу.
    По скорости раст сравним с дырявыми языками, спасибо проверкам "на этапе компиляции".
    Можешь посмотреть тесты, но сомневаюсь что ты будешь это делать.

     
  • 2.229, xsignal (ok), 10:42, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    А дураку дай *** стеклянный он и *** разобьет и руки порежет =)
     
     
  • 3.232, Аноним (232), 11:07, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    У дурака фантазия ещё шире :)
     
     
  • 4.247, Аноним (209), 11:59, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Фантазия ограничивается продажей онлайн курсов и толстых бессмысленных книг. И это хороший бизнес: питон окучили, взялись за руст. Так что кто тут дурак? Как сказал один такой сборщик донатов - не ломайте мне бизнес.
     
     
  • 5.270, Аноним (241), 13:39, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Везде тебе заговоры мерещатся
    Ты бы бросил бухать, а то видимо уже алкогольная деменция началась
     
     
  • 6.274, Аноним (209), 14:19, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Спасибо за комментарий - подтвердили, что один из способов борьбы за бабло - дискредитация оппонента. Ч.т.д.
     

     ....большая нить свёрнута, показать (26)

  • 1.250, Аноним (-), 12:07, 21/03/2025 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • +/
     
  • 1.264, Аноним (264), 13:20, 21/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    >"написанный на Rust"

    А как часто про C на заголовках новостей пишут про то, что это написано на С?

     
     
  • 2.266, Аноним (-), 13:23, 21/03/2025 Скрыто ботом-модератором     [к модератору]
  • +/
     
  • 2.268, Аноним (34), 13:34, 21/03/2025 Скрыто ботом-модератором     [к модератору]
  • +/
     
  • 2.275, Аноним (209), 14:22, 21/03/2025 Скрыто ботом-модератором     [к модератору]
  • +/
     
  • 2.276, Аноним (-), 14:30, 21/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > А как часто про C на заголовках новостей пишут про то, что это написано на С?

    В новосях про С обычно пишут "найдена новая CVE"

     

  • 1.269, Аноним (34), 13:34, 21/03/2025 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • +1 +/
     
  • 1.273, Аноним (-), 14:11, 21/03/2025 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • +1 +/
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2025 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру