git: 1c35520c47 - main - website: ports freeze news translated to Russian

Vladlen Popolitov <[email protected]> Sat, 25 Jul 2026 17:42:41 +0000
Newsgroups gmane.os.freebsd.devel.cvs.doc
Message-ID <[email protected]>
The branch main has been updated by vladlen:

URL: https://cgit.FreeBSD.org/doc/commit/?id=1c35520c470a66c18fc3993d6bc506caa80df74d

commit 1c35520c470a66c18fc3993d6bc506caa80df74d
Author:     Vladlen Popolitov <[email protected]>
AuthorDate: 2026-07-25 17:42:33 +0000
Commit:     Vladlen Popolitov <[email protected]>
CommitDate: 2026-07-25 17:42:33 +0000

    website: ports freeze news translated to Russian
    
    Reviewed by: maxim
    Differential Revision: https://reviews.freebsd.org/D58446
---
 .../content/ru/news/2026-ports-freeze/_index.adoc  | 101 ++++++++++++++++++++-
 website/data/ru/news/news.toml                     |   7 +-
 2 files changed, 104 insertions(+), 4 deletions(-)

diff --git a/website/content/ru/news/2026-ports-freeze/_index.adoc b/website/content/ru/news/2026-ports-freeze/_index.adoc
index d60764f4ae..9e438bd9e6 100644
--- a/website/content/ru/news/2026-ports-freeze/_index.adoc
+++ b/website/content/ru/news/2026-ports-freeze/_index.adoc
@@ -4,12 +4,18 @@ sidenav: about
 loadNews: false
 ---
 
+:doctype: book
+:toc: macro
+:toclevels: 2
+
 include::shared/ru/urls.adoc[]
 
+toc::[]
+
 = Заморозка репозитория портов 21 июля 2026 года
 
-Репозиторий портов был заморожен начиная с вторника, 21 июля 2026 года. +
-Нет никаких оснований полагать, что дерево было скомпрометировано. +
+Репозиторий портов был заморожен начиная со вторника, 21 июля 2026 года. +
+Нет никаких оснований полагать, что дерево портов было скомпрометировано. +
 Эта страница будет документировать данную заморозку. +
 
 :toc:
@@ -21,9 +27,12 @@ include::shared/ru/urls.adoc[]
 
 https://lists.freebsd.org/archives/freebsd-announce/2026-July/000294.html
 
+_**From:**_ Kyle Evans <kevans_at_FreeBSD.org> +
+_**Date:**_ Wed, 22 Jul 2026 20:58:21 UTC
+
 Вы, возможно, заметили, что репозиторий портов заморожен уже почти 24 часа на момент написания этого сообщения. Наше заявление о ситуации и дальнейших действиях приведено ниже.
 
-В дерево портов недавно был зафиксирован бинарный файл размером 150 МБ, и в результате этого core@ принял решение о временной заморозке дерева портов для проведения очистки. Указанный коммит нарушил зеркалирование нашего дерева портов на github.com из-за жёсткого ограничения на размер файлов в 100 МБ, а также внёс в историю репозитория объект с сомнительной лицензионной чистотой.
+В дерево портов недавно был сделан коммит бинарного файла размером 150 МБ, и в результате этого core@ принял решение о временной заморозке дерева портов для проведения очистки. Указанный коммит нарушил зеркалирование нашего дерева портов на github.com из-за жёсткого ограничения на размер файлов в 100 МБ, а также внёс в историю репозитория объект с сомнительной лицензионной чистотой.
 
 Учитывая важность зеркалирования на github.com для нашего сообщества, мы активно предпринимаем шаги по удалению проблемных коммитов и восстановлению зеркалирования на внешние сервисы. Нет никаких оснований полагать, что дерево портов было скомпрометировано. Заморозка была полностью направлена на ограничение количества коммитов, которые потребуется переписать для приведения репозитория к корректному состоянию.
 
@@ -38,3 +47,89 @@ https://lists.freebsd.org/archives/freebsd-announce/2026-July/000294.html
 С уважением,
 
 Кайл Эванс (от имени core@)
+
+[[announce-action]]
+== Объявление: 24 июля 2026 года
+
+Второе объявление было опубликовано в https://lists.freebsd.org/archives/freebsd-announce/[списке рассылки announce@].
+
+https://lists.freebsd.org/archives/freebsd-announce/2026-July/000295.html
+
+_**From:**_ Kyle Evans <kevans_at_FreeBSD.org> +
+_**Date:**_ Fri, 24 Jul 2026 17:48:16 UTC
+
+=== ПРЕДЫСТОРИЯ
+
+20 июля 2026 года в дерево портов был сделан коммит бинарного файла размером 150 МБ, что привело к сбою зеркалирования на GitHub и, возможно, на другие Git-форжи из-за жёсткого ограничения на размер файлов в 100 МБ.
+Кроме того, остаётся неясным, позволяет ли лицензия бинарного файла его распространение таким образом.
+
+21 июля 2026 года core@ узнал о нарушении зеркалирования и запросил приостановку отправки изменений (push) в репозиторий портов на время оценки ситуации. 
+В ходе обсуждений в последующие часы между участниками групп gitadm@, clusteradm@, portmgr@ и core@ был выработан предварительный план по переписыванию истории репозитория для удаления проблемного файла.
+При этом было согласовано ограничение, согласно которому результирующее состояние должно быть воспроизводимо третьими сторонами и не должно создавать избыточной нагрузки на конечных потребителей дерева портов.
+
+Решение о том, что результирующее состояние должно быть воспроизводимо третьими сторонами, было принято исходя из общего мнения, что мы не должны требовать слепого доверия и что мы должны предоставить нашим пользователям и потребителям возможность следовать тем же принципам.
+Хотя `git rebase` может легко удалить проблемные коммиты, это налагает бо́льшую нагрузку на аудит со стороны сообщества, поскольку переписываются имена коммиттеров и временные метки.
+Это также затрагивает сообщества, имеющие форки дерева портов.
+Предоставление механизма для повторения этой операции имеет потенциальное влияние, выходящее далеко за пределы нашего собственного сообщества, и мы благодарим вас за понимание и терпение, пока мы работали над правильным решением.
+
+
+=== ТРЕБУЕМЫЕ ДЕЙСТВИЯ
+
+Хеши коммитов в ветке `main` для коммитов после a70c5c3fd44b были изменены, что может повлиять на использование вами дерева портов.
+Для всех потребителей дерева портов ожидается, что скрипт воспроизведения, ссылка на который приведена ниже, приведёт состояние вашего репозитория в соответствие с новым состоянием авторитетного репозитория, но это не единственный вариант.
+
+Для коммиттеров и контрибьюторов: ожидающие пул-реквесты и локальные ветки необходимо перебазировать поверх новой истории.
+Например:
+
+[source,shell]
+----
+git rebase --onto f9c90a4f96f0700 0a717e9c118aa6
+----
+
+Где "0a717e9c118aa6" следует заменить на _старый_ хеш коммита вышестоящего репозитория (upstream), на котором основана ваша ветка.
+
+Патч-файлы не должны быть затронуты, поскольку переписывание было ограничено портом misc/github-copilot-cli.
+
+Для потребителей (downstreams): рекомендуется запустить приведённый ниже скрипт воспроизведения, особенно если у вас есть локальные изменения в вашем дереве.
+Скрипт удалит все криптографические подписи существующих коммитов после коммита с бинарным файлом для достижения воспроизводимости.
+Обратите внимание, что в скрипт встроены два хеша коммитов, которые необходимо изменить, если ваша ветка содержит локальные изменения, которые могут сделать их недействительными. Инструкции по замене включены в комментарии.
+
+
+=== ПРОЗРАЧНОСТЬ
+
+Скрипт, использованный для переписывания истории коммитов, доступен для независимой проверки и воспроизведения результирующего состояния:
+
+https://www.freebsd.org/news/2026-ports-freeze/ports-reset.sh +
+SHA256 (ports-reset.sh) = 9f954e7e229a1f3f0c452a98c433d70a0dbd265fc528bca6d082068d154536e8
+
+Этот скрипт следует запускать внутри рабочей копии дерева портов. Обратите внимание, что он не пытается полностью удалить предыдущую версию вашей ветки.
+Восстановление возможно путём получения предыдущего хеша коммита из `git reflog`, если локальная версия вашей ветки не имеет удалённого репозитория для восстановления.
+Сборка мусора Git со временем очистит старую ветку в вашем репозитории.
+
+=== ДАЛЬНЕЙШИЕ ШАГИ
+
+Примечания к коммитам будут добавлены как к переписанным коммитам в ветке `main`, так и к коммитам в этом диапазоне, которые были перенесены (backported) в 2026Q3, с указанием старых и новых хешей коммитов наименее инвазивным способом.
+Мы считаем, что планка для переписывания ветки с обновлениями безопасности значительно выше, и мы решили принять тот факт, что пять коммитов будут иметь некорректные сообщения, ссылающиеся на недействительные хеши коммитов при cherry-pick.
+
+Серверные хуки внедряются во всех трёх репозиториях для предотвращения будущих инцидентов подобного рода.
+Точная конфигурация ещё не полностью доработана, но предполагается, что будет установлен жёсткий верхний предел размера файлов, а также некоторые более низкие «мягкие» ограничения, для превышения которых потребуется `--push-option` или одобрение portmgr/srcmgr/doceng.
+Будут рассмотрены отдельные хуки для проверки лицензирования бинарных артефактов, вносимых в репозиторий.
+
+=== ЗАКЛЮЧЕНИЕ
+
+Огромная благодарность всем участникам реагирования на инцидент за время, потраченное на то, чтобы обеспечить выполнение этой операции способом,
+поддающимся аудиту, воспроизводимым и с учётом огромного влияния как заморозки репозитория, так и предстоящего переписывания.
+Переписывание истории коммитов не было решением, принятым легкомысленно, но было признано, что затраченное время на правильное выполнение было наименее плохим вариантом как для проекта, так и для внешних деревьев портов, которые могут иметь свои собственные изменения, следующие за проблемными коммитами.
+
+Особая благодарность clusteradm@ за согласие с планом переписывания истории, глядя на длинный список инфраструктуры кластера, которую необходимо будет исправить в результате.
+
+Дерево портов будет разморожено для обычных операций в ближайшие часы, но восстановление инфраструктуры будет проводиться в течение следующей недели.
+Кластерные сборки пакетов не будут перезапущены немедленно, но возобновятся не позднее 26 июля 2026 года.
+
+С уважением,
+
+Рене Ладан (от имени portmgr@)
+Кайл Эванс (от имени core@)
+
+Копия этого сообщения доступна отдельно для проверки по адресу:
+https://people.freebsd.org/~kevans/core/ports-freeze-final.txt.asc
diff --git a/website/data/ru/news/news.toml b/website/data/ru/news/news.toml
index 5decf3daba..ddefae8d81 100644
--- a/website/data/ru/news/news.toml
+++ b/website/data/ru/news/news.toml
@@ -1,9 +1,14 @@
 # Новости сортируются по году, месяцу и дню
 
+[[news]]
+date = "2026-07-24"
+title = "Требуемые действия с репозиторием Ports"
+description = "Опубликован подробный отчёт о заморозке репозитория портов, включающий инструкции по восстановлению рабочей копии и скрипт для воспроизведения изменений истории. Дополнительная информация о заморозке и дополнительных действиях доступна на странице <a href=\"https://www.FreeBSD.org/ru/news/2026-ports-freeze/#announce-action\">Заморозка портов 2026</a>."
+
 [[news]]
 date = "2026-07-23"
 title = "Доступ в репозиторий Ports временно приостановлен"
-description = "Репозиторий портов заморожен для отката очень крупного коммита. Нет никаких оснований полагать, что дерево было скомпрометировано. Дополнительная информация о заморозке доступна на странице <a href=\"https://www.FreeBSD.org/ru/news/2026-ports-freeze/\">Заморозка портов 2026</a>."
+description = "Репозиторий портов заморожен для отката очень крупного коммита. Нет никаких оснований полагать, что дерево портов было скомпрометировано. Дополнительная информация о заморозке доступна на странице <a href=\"https://www.FreeBSD.org/ru/news/2026-ports-freeze/\">Заморозка портов 2026</a>."
 
 [[news]]
 date = "2026-06-30"