The OpenNET Project / Index page

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

Выпуск утилиты GNU patch 2.8

30.03.2025 08:52

Спустя семь лет с прошлого выпуска и двенадцать с половиной лет с момента публикации ветки 2.7 представлен релиз утилиты GNU patch 2.8. Утилита позволяет применить к файлам патчи, включающие списки изменений, созданные программой diff. Код написан на языке Си и распространяется под лицензией GPLv3+.

В новой версии:

  • Решена проблема 2038 года - утилита теперь корректно обрабатывает данные о времени файлов, созданных после 2038 года, даже на платформах с 32-разрядным типом time_t.
  • Опция "--follow-symlinks" теперь распространяется не только на входные файлы, но и на создаваемые файлы.
  • В соответствие с требованиями стандарта POSIX.1-2024 запрещено использование символа перевода строки в именах файлов.
  • Запрещено использование нулевых байтов ('\0') в строках с директивами diff.
  • Разрешено указание пробелов и табуляций перед и после значений с номерами строк.
  • Проведена работа по исключению неопределённого или некорректного поведения в нештатных ситуациях, например, при обработке очень больших размеров полей, ошибках ввода/вывода, нехватке памяти, состояниях гонки и отправке сигналов в неподходящие моменты.
  • Удалён старый код "Plan B", созданный для систем с 16-разрядными указателями.
  • Повышены требования к компилятору, который теперь должен поддерживать стандарт C99 (ранее требовался C89).
  • Добавлена поддержка новых версий GCC, Autoconf и Gnulib.


  1. Главная ссылка к новости (https://www.mail-archive.com/i...)
  2. OpenNews: Опасные уязвимости в утилитах beep и patch
  3. OpenNews: Уязвимость в утилите BSD patch и TCP-стеке FreeBSD
  4. OpenNews: Разработка новых вариантов diff и grep для обработки сложных структур данных
  5. OpenNews: Новая версия утилиты GNU patch 2.7
  6. OpenNews: Выпуск GNU Diffutils 3.4 с поддержкой цветного вывода
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/62982-patch
Ключевые слова: patch
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (40) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Krtek (?), 09:26, 30/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    >запрещено использование символа перевода строки в именах файлов

    Как теперь и файлы называть.

     
     
  • 2.10, Аноним (-), 11:34, 30/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Насколько я знаю, это связано с безопасностью. Поправьте меня если я не прав. Стандарт Позикс просто так ограничения не налагает.
     
     
  • 3.22, Аноним (22), 16:29, 30/03/2025 [^] [^^] [^^^] [ответить]  
  • –4 +/
    Многострочные названия файлов вообще удобная фича, жаль что теперь считается, что это чем-то плохо.
     
     
  • 4.24, Не либерал не патриот (?), 17:16, 30/03/2025 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Пожалуйста, подобный подход никогда не используйте нигде в публичном месте.
     
     
  • 5.38, Аноним (38), 17:56, 31/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    А почему нет, кстати? Почему пробелы и переводы строк (и многое другое тоже, да хоть та же кириллица) считается дурным тоном?
     
     
  • 6.44, Анониссимус (?), 22:47, 31/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Потому что этим дедам противно всё, что как-то противоречит их любимой чёрной консоли с bourne shell с набором ascii.
     
  • 2.25, Ivan7 (ok), 18:00, 30/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Никогда такого нигде не видел, не использовал и даже в голову не приходило это использовать, тем более в названиях файлов с кодом, где даже пробелы использовать - дурной тон, а не то что переводы строк.
     
     
  • 3.32, Аноним (32), 08:42, 31/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Самое главное чтобы смайлы можно было писать 😀
    Иначе как девочки будут называть файлы? Английскими словами, Camel Case ? 🤣🤣🤣
     
     
  • 4.34, 1 (??), 10:35, 31/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Эмодзи же !

    Уже есть ЯП где их можно в качестве имён переменных использовать, почему бы и файлы так не называть ?

     
  • 4.36, Аноним (-), 16:14, 31/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Так не далай. Во-первых, их нельзя с клавитуры ввести. Во-вторых, для отображения смайлов нужно иметь шрифты смайлов на своём компьютере. В-третьих, есть много похожих смайлов, но с разной кодовой позицией, отличить такие сможет лишь "специалист по смайлам".
     
     
  • 5.39, Аноним (38), 17:57, 31/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > нельзя с клавитуры ввести

    Зачем вводить с клавиатуры имена _существующих_ файлов? Почему нельзя, например, скопировать и вставить?

     
  • 5.41, Ещё один никто (?), 18:54, 31/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    🤦 (угадай как я это с клавиатуры ввёл 🤣)
     
  • 2.27, Джек (?), 19:40, 30/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Может пользоваться тем что даёт фс, то есть иерархией каталогов, а не свою фигню изобретать в именах ФФ файлов?
     
     
  • 3.30, Krtek (?), 22:22, 30/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Я всегда именую файлы в три строки: сначала название, потом описание и пометки на полях.
     
  • 3.37, Аноним (37), 17:50, 31/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    А может не давать советов незнакомым людям, находящимся в совершенно незнакомой ситуации?
    Да ну, бред какой-то.
     
     
  • 4.42, Аноним (-), 19:29, 31/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Эти незнакомые люди, почему-то троллят в адрес серъёзных людей.
     

  • 1.2, Аноним (2), 09:29, 30/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    > Повышены требования к компилятору, который теперь должен поддерживать стандарт C99 (ранее требовался C89.

    Ой! Вей! Полегче!

    Только успел к C89 привыкнуть. Ж:)

     
  • 1.3, Аноним (3), 10:05, 30/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –5 +/
    > новых версий GCC, Autoconf и Gnulib

    В случае с автокрапом, любая версия будет заведомо старой, даже выпущенная секунду назад. "Новая версия автокрапа" -- это оксюморон.

     
     
  • 2.5, Аноним (2), 10:37, 30/03/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Твой "неавтокрап" соберётся на системе 25-тилетней давности?
     
     
  • 3.7, Аноним (3), 11:21, 30/03/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    У тебя есть система 25-летней давности? Сдай в музей Поле Чудес.
     
     
  • 4.16, Аноним (16), 12:41, 30/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    А на чём эта система должна работать в музее?
     
  • 4.18, Аноним (2), 13:17, 30/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Кроме промышленного оборудования, которое никто не собирается менять есть еще программы - которые некому переписывать, работающие в виртуалках. А для взаимодейсвтия с этими программами и под эти системы пишут.
     
     
  • 5.29, Аноним (3), 20:28, 30/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > промышленного оборудования, которое никто не собирается менять

    В таких оборудованиях и софт-то никто не меняет. Думаешь, промышленные дядьки такие -- "опа! вышел новый автокрап! пойду срочно обновлю промышленные сервера!" ?

     
     
  • 6.43, Аноним (-), 19:30, 31/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    А почему бы и нет. Боязно только тем, кто не ориентируется в своей рабочей инфраструктуре.
     
  • 3.8, Аноним (8), 11:26, 30/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    А твой автокрап соберётся на абаке? Отожбо
     
     
  • 4.19, Аноним (2), 13:18, 30/03/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > А твой автокрап соберётся на абаке? Отожбо

    Если облако предназначено для сбора программ - то соберется.

     

  • 1.6, Аноним (6), 11:02, 30/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Вот чёрт, только 2.7 закончил собирать...
     
     
  • 2.28, Аноним (28), 19:44, 30/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    На i4004 ?
     
     
  • 3.31, Нуину (?), 02:39, 31/03/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    На бумаге
     

  • 1.9, Аноним (-), 11:27, 30/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    >Утилита позволяет применить к файлам патчи, включающие списки изменений, созданные программой diff.

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

    >Код написан на языке Си и распространяется под лицензией GPLv3+.

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

     
  • 1.12, Аноним (-), 11:46, 30/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    >Удалён старый код "Plan B", созданный для систем с 16-разрядными указателями.

    Сама операционка тоже застыла, последний релиз в 2015 году. Ни много ни мало, детище Лаборатории Белла.

     
  • 1.13, n00by (ok), 12:37, 30/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Любопытно, как бы шло развитие, если бы такой программы не было (закопали вовремя)? Программистам она не нужна: и так встроена в системы контроля версий. Остальных подчас делает друзьями Даннинга и Крюгера.
     
     
  • 2.21, Аноним (21), 15:34, 30/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Любопытно, как бы шло развитие, если бы такой программы не было

    Отвечаю. В таком случае, она не была бы "встроена в системы контроля версий" и программисты сравнивали бы код чисто глазами.

     
     
  • 3.33, n00by (ok), 10:20, 31/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > программисты сравнивали бы код чисто глазами.

    "Сравнивает код" diff, а не patch.

    >> Любопытно, как бы шло развитие, если бы такой программы не было
    > Отвечаю. В таком случае, она не была бы "встроена в системы контроля
    > версий" и

    Прежде чем выдавать удивительные гипотезы, стоило бы дочитать до "(закопали вовремя)", а не выдёргивать из контекста.

    Но спасибо за пример - наглядно видно, к чему привели разгул пользователей patch и майнтайнерства пакетиков.

     
     
  • 4.35, Аноним (35), 12:04, 31/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Но спасибо за пример - наглядно видно, к чему привели разгул пользователей
    > patch и майнтайнерства пакетиков.

    Кто о чём, а вшивый о бане.

     

  • 1.14, Аноним (16), 12:40, 30/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Lfs теперь весь рассыпется.
     
  • 1.20, Аноним (20), 14:19, 30/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    > Повышены требования к компилятору, который теперь должен поддерживать стандарт C99 (ранее требовался C89.

    Но в POSIX 2024 прописан c17, а не c99.

     
  • 1.23, Аноним (38), 16:56, 30/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –4 +/
    > В соответствие с требованиями стандарта POSIX.1-2024 запрещено использование символа перевода строки в именах файлов.
    > Запрещено использование нулевых байтов ('\0') в строках с директивами diff.

    Блеск и нищета POSIX и Си. Ну зато пару байтов на PDP-7 можно сэкономить!

     
     
  • 2.26, Аноним (26), 18:47, 30/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    В процитированных тобою строках нет речи про экономию байтов. Даже если так, умение оперировать оперативной памятью на уровне байта, это нормальный функционал для языка системного программирования.
     
     
  • 3.40, Аноним (38), 18:03, 31/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Ты даже не понял, о чём идёт речь. В процитированных мной строках — квинтэссенция родовых болей и страданий Денниса Ритчи. В них суть того, почему современные компьютерные системы такое костыльное убожество. Но чтобы это понять, надо хотя бы иногда снимать шоры и смотреть на мир непредвзято.
     

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



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

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