diff options
author | V3n3RiX <venerix@koprulu.sector> | 2022-07-24 20:54:05 +0100 |
---|---|---|
committer | V3n3RiX <venerix@koprulu.sector> | 2022-07-24 20:54:05 +0100 |
commit | fc879856a16ea66528a11a00cf6ee19891f3d186 (patch) | |
tree | 01ac0b4134970567587e7176ffc531a404898186 /metadata/news/2021-05-05-python3-9 | |
parent | f73bef95b39f4fbc8f0278c26ad1534e5eec322f (diff) |
gentoo auto-resync : 24:07:2022 - 20:54:05
Diffstat (limited to 'metadata/news/2021-05-05-python3-9')
-rw-r--r-- | metadata/news/2021-05-05-python3-9/2021-05-05-python3-9.en.txt | 119 | ||||
-rw-r--r-- | metadata/news/2021-05-05-python3-9/2021-05-05-python3-9.ru.txt | 121 |
2 files changed, 0 insertions, 240 deletions
diff --git a/metadata/news/2021-05-05-python3-9/2021-05-05-python3-9.en.txt b/metadata/news/2021-05-05-python3-9/2021-05-05-python3-9.en.txt deleted file mode 100644 index f42ec914b09e..000000000000 --- a/metadata/news/2021-05-05-python3-9/2021-05-05-python3-9.en.txt +++ /dev/null @@ -1,119 +0,0 @@ -Title: Python 3.9 to become the default on 2021-06-01 -Author: Michał Górny <mgorny@gentoo.org> -Posted: 2021-05-05 -Revision: 1 -News-Item-Format: 2.0 -Display-If-Installed: dev-lang/python:3.7 -Display-If-Installed: dev-lang/python:3.8 - -We are planning to switch the default Python target of Gentoo systems -on 2021-06-01, from Python 3.8 to Python 3.9. If you have not changed -the values of PYTHON_TARGETS or PYTHON_SINGLE_TARGET, the change will -have immediate effect on your system and the package manager will try -to switch automatically on the next upgrade following the change. - -If you did change the values, prefer a safer approach or have problems -with the update, read on. - -Please note that the default upgrade method switches packages to the new -Python versions as they are rebuilt. This means that all interdependent -packages have to support the new version for the upgrade to proceed, -and that some programs may temporarily fail to find their dependencies -throughout the upgrade (although programs that are already started -are unlikely to be affected). - - -If you have PYTHON_TARGETS or PYTHON_SINGLE_TARGET declared -in make.conf, please remove these declarations as they will interfere -with the package.use samples provided below. Using make.conf for Python -targets is discouraged as it prevents package defaults from applying -when necessary. This news item assumes using /etc/portage/package.use -or your package manager's equivalent file for configuration. - - -At this point, you have a few configuration options to choose from: - -1. If you wish Python upgrades to apply automatically, you can remove - PYTHON_TARGETS and PYTHON_SINGLE_TARGET declarations. When - the defaults change, your package manager should handle the upgrade - automatically. However, you may still need to run the update - commands if any problems arise. - -2. If you wish to defer the upgrade for the time being, you can - explicitly set the old values in package.use. - -3. If you wish to force the upgrade earlier, you can explicitly set - the new values and run the upgrade commands. - -4. If you wish to use a safer approach (i.e. less likely to temporarily - break packages during the upgrade), you can perform a multi-step - upgrade as outlined below. - -5. Finally, you can use an arbitrary combination of PYTHON_TARGETS - and PYTHON_SINGLE_TARGET. - - -Deferring the upgrade -===================== -To defer the upgrade, explicitly set the old targets: - - */* PYTHON_TARGETS: -* python3_8 - */* PYTHON_SINGLE_TARGET: -* python3_8 - -This will enforce Python 3.8 and block any future updates. However, -please note that this solution will only be suitable for a few more -months and you will eventually need to perform the migration. - - -Forcing the upgrade -=================== -To force the upgrade earlier, explicitly set Python 3.9 targets: - - */* PYTHON_TARGETS: -* python3_9 - */* PYTHON_SINGLE_TARGET: -* python3_9 - -However, it is important to remember to remove this after the defaults -change, as it will interfere with the automatic switch to the next -Python version in the future. - - -Safer upgrade procedure -======================= -A safer approach is to add Python 3.9 support to your system first, -and only then remove Python 3.8. However, note that involves two -rebuilds of all the affected packages, so it will take noticeably -longer. - -First, enable both Python 3.8 and Python 3.9, and then run the upgrade -commands: - - */* PYTHON_TARGETS: -* python3_8 python3_9 - */* PYTHON_SINGLE_TARGET: -* python3_8 - -Then switch PYTHON_SINGLE_TARGET and run a second batch of upgrades: - - */* PYTHON_TARGETS: -* python3_8 python3_9 - */* PYTHON_SINGLE_TARGET: -* python3_9 - -Finally, switch to the final version and upgrade: - - */* PYTHON_TARGETS: -* python3_9 - */* PYTHON_SINGLE_TARGET: -* python3_9 - -You may wish to remove the target overrides after the defaults switch. -Alternatively, you can keep them to block the next automatic upgrade -to Python 3.10, and upgrade manually then. - - -Upgrade commands -================ -The Python 3.8 cleanup requires that Python 3.8 is removed from complete -dependency trees in batch. If some of the installed packages using -an older Python version are not triaged for the upgrade, the package -manager will throw dependency conflicts. This makes it important that -the upgrade is carried via a --deep --changed-use @world upgrade, -as well as that any stray packages are removed prior to it, e.g.: - - emerge --depclean - emerge -1vUD @world - emerge --depclean diff --git a/metadata/news/2021-05-05-python3-9/2021-05-05-python3-9.ru.txt b/metadata/news/2021-05-05-python3-9/2021-05-05-python3-9.ru.txt deleted file mode 100644 index 035c6e237ac8..000000000000 --- a/metadata/news/2021-05-05-python3-9/2021-05-05-python3-9.ru.txt +++ /dev/null @@ -1,121 +0,0 @@ -Title: Python 3.9 станет базовым с 2021-06-01 -Author: Michał Górny <mgorny@gentoo.org> -Translator: Alexey Sokolov <alexey+gentoo@asokolov.org> -Posted: 2021-05-05 -Revision: 1 -News-Item-Format: 2.0 -Display-If-Installed: dev-lang/python:3.7 -Display-If-Installed: dev-lang/python:3.8 - -1 июня 2021 года мы собираемся переключить Python target, используемый -по умолчанию на системах Gentoo, с версии 3.8 на версию 3.9. -Если вы не меняли значения переменных 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_8 - */* PYTHON_SINGLE_TARGET: -* python3_8 - -Это заставит систему использовать Python 3.8 и предотвратит последующие -обновления. Однако, учтите, что такое решение применимо только -в течение несколько месяцев и в конце концов вам всё-таки придётся -провести обновление. - - -Принудительное обновление -========================= -Чтобы обновиться до Python 3.9 раньше, явно укажите новые значения: - - */* PYTHON_TARGETS: -* python3_9 - */* PYTHON_SINGLE_TARGET: -* python3_9 - -При этом важно не забыть удалить эти строки после изменения значений -по умолчанию, иначе они помешают последующим автоматическим обновлениям -на следующие версии Python. - - -Процедура безопасного обновления -================================ -Более безопасный подход такой: сначала добавляется в систему поддержка -Python 3.9, а затем удаляется поддержка Python 3.8. Однако, учтите, -что все затронутые пакеты будут пересобраны дважды, что заметно дольше. - -Сначала включите Python 3.8 и Python 3.9 и запустите команды обновления: - - */* PYTHON_TARGETS: -* python3_8 python3_9 - */* PYTHON_SINGLE_TARGET: -* python3_8 - -Затем замените PYTHON_SINGLE_TARGET и ещё раз запустите обновление: - - */* PYTHON_TARGETS: -* python3_8 python3_9 - */* PYTHON_SINGLE_TARGET: -* python3_9 - -Наконец, переключитесь на окончательную версию и запустите обновление: - - */* PYTHON_TARGETS: -* python3_9 - */* PYTHON_SINGLE_TARGET: -* python3_9 - -После смены значений по умолчанию вы можете удалить эти настройки. -Или же вы можете оставить их, предотвращая автоматическое обновление -до Python 3.10, и позже обновиться вручную. - - -Команды обновления -================== -Для очистки системы от Python 3.8 требуется удалить его сразу из -всего дерева зависимостей. Если какие-то установленные пакеты, -использующие старую версию Python, не помечены для обновления, -пакетный менеджер покажет ошибки зависимостей. Поэтому важно проводить -обновление с использованием опций --deep --changed-use @world, -а также перед этим удалить все более не требуемые пакеты: - - emerge --depclean - emerge -1vUD @world - emerge --depclean |