From 0f558761aa2dee1017b4751e4017205e015a9560 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Wed, 29 Jun 2022 12:04:12 +0100 Subject: gentoo resync : 29.12.2022 --- .../2022-06-13-python3-10.ru.txt | 120 +++++++++++++++++++++ 1 file changed, 120 insertions(+) create mode 100644 metadata/news/2022-06-13-python3-10/2022-06-13-python3-10.ru.txt (limited to 'metadata/news/2022-06-13-python3-10/2022-06-13-python3-10.ru.txt') diff --git a/metadata/news/2022-06-13-python3-10/2022-06-13-python3-10.ru.txt b/metadata/news/2022-06-13-python3-10/2022-06-13-python3-10.ru.txt new file mode 100644 index 000000000000..cc92b9212389 --- /dev/null +++ b/metadata/news/2022-06-13-python3-10/2022-06-13-python3-10.ru.txt @@ -0,0 +1,120 @@ +Title: Python 3.10 станет базовым с 2022-07-01 +Author: Michał Górny +Translator: Alexey Sokolov +Posted: 2022-06-13 +Revision: 1 +News-Item-Format: 2.0 +Display-If-Installed: dev-lang/python:3.8 +Display-If-Installed: dev-lang/python:3.9 + +1 июля 2022 года мы собираемся переключить Python target, используемый +по умолчанию на системах Gentoo, с версии 3.9 на версию 3.10. +Если вы не меняли значения переменных PYTHON_TARGETS или +PYTHON_SINGLE_TARGET, то упомянутое изменение затронет систему сразу, +и пакетный менеджер попытается переключиться на новый Python target +автоматически при следующем обновлении системы. + +Если вы изменили значения этих переменных, предпочитаете более +безопасный подход или при обновлении возникли проблемы, то +продолжайте читать далее. + +Пожалуйста, обратите внимание, что метод обновления по умолчанию +переключает пакеты на новую версию Python при их пересборки. +Это означает, что все зависящие друг от друга пакеты должны поддерживать +новую версию Python для продолжения обновления и некоторые программы +временно могут не находить свои зависимости во время обновления +(однако, запущенные программы, вероятно, не будут подвержены проблеме). + +Если переменные PYTHON_TARGETS или PYTHON_SINGLE_TARGET объявлены +в вашем файле make.conf, пожалуйста, удалите их, так как они будут +конфликтовать с представленными ниже примерами конфигурации package.use. +Мы не рекомендуем использовать файл make.conf для задания значений +переменных Python target, так как это препятствует применению +значений по умолчанию для пакетов, когда это необходимо. В этой новости +мы предполагаем, что вы используете файл /etc/portage/package.use +или ваш эквивалент этого файла конфигурации пакетного менеджера. + +С этого момента у вас есть выбор из следующих вариантов настройки: + +1. Если вы хотите, чтобы Python обновлялся автоматически, вы можете + удалить объявленные переменные PYTHON_TARGETS и PYTHON_SINGLE_TARGET. + Когда их значения по умолчанию изменятся, пакетный менеджер должен + самостоятельно всё обновить. Но если возникнут проблемы, вам всё ещё + может понадобиться запустить команды обновления. + +2. Если вы хотите пока отложить обновление, вы можете явно указать + старые значения в файле package.use. + +3. Если вы хотите обновиться раньше, вы можете явно задать новые + значения и запустить команды обновления. + +4. Если вы хотите использовать более безопасный подход (т.е. с меньшей + вероятностью временной поломки пакетов во время обновления), + вы можете выполнить последовательное обновление, описанное ниже. + +5. Наконец, вы можете произвольным образом комбинировать значения + переменных PYTHON_TARGETS и PYTHON_SINGLE_TARGET. + + +Откладывание обновления +======================= +Чтобы отложить обновление, явно укажите старые значения: + + */* PYTHON_TARGETS: -* python3_9 + */* PYTHON_SINGLE_TARGET: -* python3_9 + +Это заставит систему использовать Python 3.9 и предотвратит последующие +обновления. Однако, учтите, что такое решение временное, +и в конце концов вам всё-таки придётся провести обновление. + + +Принудительное обновление +========================= +Чтобы обновиться до Python 3.10 раньше, явно укажите новые значения: + + */* PYTHON_TARGETS: -* python3_10 + */* PYTHON_SINGLE_TARGET: -* python3_10 + +При этом важно не забыть удалить эти строки после изменения значений +по умолчанию, иначе они помешают последующим автоматическим обновлениям +на следующие версии Python. + + +Процедура безопасного обновления +================================ +Более безопасный подход такой: сначала добавляется в систему поддержка +Python 3.10, а затем удаляется поддержка Python 3.9. Однако, учтите, +что все затронутые пакеты будут пересобраны дважды, что заметно дольше. + +Сначала включите Python 3.9 и Python 3.10 и запустите команды обновления: + + */* PYTHON_TARGETS: -* python3_9 python3_10 + */* PYTHON_SINGLE_TARGET: -* python3_9 + +Затем замените PYTHON_SINGLE_TARGET и ещё раз запустите обновление: + + */* PYTHON_TARGETS: -* python3_9 python3_10 + */* PYTHON_SINGLE_TARGET: -* python3_10 + +Наконец, переключитесь на окончательную версию и запустите обновление: + + */* PYTHON_TARGETS: -* python3_10 + */* PYTHON_SINGLE_TARGET: -* python3_10 + +После смены значений по умолчанию вы можете удалить эти настройки. +Или же вы можете оставить их, предотвращая автоматическое обновление +до Python 3.11, и позже обновиться вручную. + + +Команды обновления +================== +Для очистки системы от Python 3.9 требуется удалить его сразу из +всего дерева зависимостей. Если какие-то установленные пакеты, +использующие старую версию Python, не помечены для обновления, +пакетный менеджер покажет ошибки зависимостей. Поэтому важно проводить +обновление с использованием опций --deep --changed-use @world, +а также перед этим удалить все более не требуемые пакеты: + + emerge --depclean + emerge -1vUD @world + emerge --depclean -- cgit v1.2.3