HTML Diff
0 added 0 removed
Original 2026-01-01
Modified 2026-02-26
1 <p>Команда Poetry 12 декабря сообщила о выходе Poetry 1.0.0. Разработчики благодарят сообщество и подчёркивают вклад активных контрибьюторов в проект. Этот релиз - важный этап развития проекта. В нём представлены новые функции, которые делают работу с проектами Python ещё удобнее.</p>
1 <p>Команда Poetry 12 декабря сообщила о выходе Poetry 1.0.0. Разработчики благодарят сообщество и подчёркивают вклад активных контрибьюторов в проект. Этот релиз - важный этап развития проекта. В нём представлены новые функции, которые делают работу с проектами Python ещё удобнее.</p>
2 <h2>Содержание</h2>
2 <h2>Содержание</h2>
3 <ul><li><a>Новый способ управления окружением Python</a></li>
3 <ul><li><a>Новый способ управления окружением Python</a></li>
4 <li><a>Улучшена поддержка частных индексов</a></li>
4 <li><a>Улучшена поддержка частных индексов</a></li>
5 <li><a>Улучшено управление конфигурациями</a></li>
5 <li><a>Улучшено управление конфигурациями</a></li>
6 <li><a>Улучшена команда add</a></li>
6 <li><a>Улучшена команда add</a></li>
7 <li><a>Улучшенные возможности для публикаций</a></li>
7 <li><a>Улучшенные возможности для публикаций</a></li>
8 <li><a>Что дальше</a></li>
8 <li><a>Что дальше</a></li>
9 </ul><h2>Новый способ управления окружением Python</h2>
9 </ul><h2>Новый способ управления окружением Python</h2>
10 <p>Дефолтное поведение не изменилось: Poetry старается использовать текущую версию Python, чтобы создать для проекта виртуальное окружение. Однако если она несовместима с определёнными в настоящее время требованиями python к файлу pyproject.toml, Poetry попытается найти совместимую версию.</p>
10 <p>Дефолтное поведение не изменилось: Poetry старается использовать текущую версию Python, чтобы создать для проекта виртуальное окружение. Однако если она несовместима с определёнными в настоящее время требованиями python к файлу pyproject.toml, Poetry попытается найти совместимую версию.</p>
11 <p>Более того, теперь есть возможность легко переключаться между версиями Python с помощью команды env use.</p>
11 <p>Более того, теперь есть возможность легко переключаться между версиями Python с помощью команды env use.</p>
12 <p>Версию можно указать так:</p>
12 <p>Версию можно указать так:</p>
13 <p>Или даже так:</p>
13 <p>Или даже так:</p>
14 <p>Чтобы отключить активированную virtualenv, можно воспользоваться системной версией Python для получения поведения по умолчанию.</p>
14 <p>Чтобы отключить активированную virtualenv, можно воспользоваться системной версией Python для получения поведения по умолчанию.</p>
15 <p>Команда poetry env info позволяет получить сведения об активированной virtualenv. В выводе вы увидите примерно такую картину:</p>
15 <p>Команда poetry env info позволяет получить сведения об активированной virtualenv. В выводе вы увидите примерно такую картину:</p>
16 <p>Узнать путь к virtualenv можно с помощью команды poetry env info --path. Команда poetry env list формирует список virtualenv:</p>
16 <p>Узнать путь к virtualenv можно с помощью команды poetry env info --path. Команда poetry env list формирует список virtualenv:</p>
17 <p>Наконец, удалить virtualenv можно с помощью команды env remove.</p>
17 <p>Наконец, удалить virtualenv можно с помощью команды env remove.</p>
18 <h2>Улучшена поддержка частных индексов</h2>
18 <h2>Улучшена поддержка частных индексов</h2>
19 <p>Хотя предыдущие версии Poetry поддерживали частные индексы, до выхода версии 1.0.0 не было удобного способа их контролировать. Теперь можно объявлять источник зависимостей:</p>
19 <p>Хотя предыдущие версии Poetry поддерживали частные индексы, до выхода версии 1.0.0 не было удобного способа их контролировать. Теперь можно объявлять источник зависимостей:</p>
20 <p>Для удобства вы можете объявлять частный индекс вторичным. В этом случае он будет всегда использоваться последним, а PyPl останется предпочтительным.</p>
20 <p>Для удобства вы можете объявлять частный индекс вторичным. В этом случае он будет всегда использоваться последним, а PyPl останется предпочтительным.</p>
21 <p>Также можно отключить PyPl, если объявить частный индекс дефолтным:</p>
21 <p>Также можно отключить PyPl, если объявить частный индекс дефолтным:</p>
22 <h2>Улучшено управление конфигурациями</h2>
22 <h2>Улучшено управление конфигурациями</h2>
23 <h3>Использование переменных окружения</h3>
23 <h3>Использование переменных окружения</h3>
24 <p>Иногда, например, при использовании Poetry с инструментами CI, проще использовать переменные окружения, что позволяет не выполнять команды конфигурации. При объявлении переменных окружения необходимо использовать префикс POETRY_, а имя параметров указывать в верхнем регистре. Точки и тире при этом заменяются андерскорами.</p>
24 <p>Иногда, например, при использовании Poetry с инструментами CI, проще использовать переменные окружения, что позволяет не выполнять команды конфигурации. При объявлении переменных окружения необходимо использовать префикс POETRY_, а имя параметров указывать в верхнем регистре. Точки и тире при этом заменяются андерскорами.</p>
25 <p>Это можно использовать при работе с учётными данными:</p>
25 <p>Это можно использовать при работе с учётными данными:</p>
26 <h3>Локальная конфигурация</h3>
26 <h3>Локальная конфигурация</h3>
27 <p>Poetry 1.0.0 позволяет указывать специфические для проекта настройки с помощью флага --local в команде config.</p>
27 <p>Poetry 1.0.0 позволяет указывать специфические для проекта настройки с помощью флага --local в команде config.</p>
28 <p>Локальные настройки хранятся в файле poetry.toml.</p>
28 <p>Локальные настройки хранятся в файле poetry.toml.</p>
29 <h3>Префикс settings. можно не использовать</h3>
29 <h3>Префикс settings. можно не использовать</h3>
30 <p>Настройки теперь хранятся отдельно, необходимости использовать префикс settings. нет. Если вы уже указали настройки, придётся их изменить.</p>
30 <p>Настройки теперь хранятся отдельно, необходимости использовать префикс settings. нет. Если вы уже указали настройки, придётся их изменить.</p>
31 <h2>Улучшена команда add</h2>
31 <h2>Улучшена команда add</h2>
32 <p>С помощью команды add стало проще добавлять зависимости. Поддерживаются такие форматы:</p>
32 <p>С помощью команды add стало проще добавлять зависимости. Поддерживаются такие форматы:</p>
33 <ul><li>имя: pendulum;</li>
33 <ul><li>имя: pendulum;</li>
34 <li>имя и ограничения: requests@^2.23.0;</li>
34 <li>имя и ограничения: requests@^2.23.0;</li>
35 <li>Git URL: git+<a>https://github.com/sdispater/poetry.git</a>.</li>
35 <li>Git URL: git+<a>https://github.com/sdispater/poetry.git</a>.</li>
36 <li>Git URL с уточнением: git+<a>https://github.com/sdispater/poetry.git#develop</a>;</li>
36 <li>Git URL с уточнением: git+<a>https://github.com/sdispater/poetry.git#develop</a>;</li>
37 <li>путь к файлу: ../my-package/my-package.whl;</li>
37 <li>путь к файлу: ../my-package/my-package.whl;</li>
38 <li>путь к директории: ../my-package/;</li>
38 <li>путь к директории: ../my-package/;</li>
39 <li>URL: https://example.com/packages/my-package-0.1.0.tar.gz.</li>
39 <li>URL: https://example.com/packages/my-package-0.1.0.tar.gz.</li>
40 </ul><p>В ограничениях также можно указывать расширения.</p>
40 </ul><p>В ограничениях также можно указывать расширения.</p>
41 <p>Как следствие, параметры --git и --path были удалены. Если нужно обновить существующие зависимости, можно использовать ограничение latest.</p>
41 <p>Как следствие, параметры --git и --path были удалены. Если нужно обновить существующие зависимости, можно использовать ограничение latest.</p>
42 <h2>Улучшенные возможности для публикаций</h2>
42 <h2>Улучшенные возможности для публикаций</h2>
43 <h3>Поддержка токенов PyPl API</h3>
43 <h3>Поддержка токенов PyPl API</h3>
44 <p>При публикации в PyPl можно использовать<a>токены API</a>вместо учётных данных. Настроить токены можно командой config.</p>
44 <p>При публикации в PyPl можно использовать<a>токены API</a>вместо учётных данных. Настроить токены можно командой config.</p>
45 <h3>Поддержка пользовательских сертификатов и взаимной аутентификации TLS</h3>
45 <h3>Поддержка пользовательских сертификатов и взаимной аутентификации TLS</h3>
46 <p>Poetry 1.0.0 работает с репозиториями, которые защищены пользовательскими сертификатами или требуют аутентификации клиента с помощью сертификата. Ниже примеры настроек репозитория foo для проверки с помощью хранилища сертификата и использования сертификата клиента. Обратите внимание, переменные конфигурации устанавливать не надо.</p>
46 <p>Poetry 1.0.0 работает с репозиториями, которые защищены пользовательскими сертификатами или требуют аутентификации клиента с помощью сертификата. Ниже примеры настроек репозитория foo для проверки с помощью хранилища сертификата и использования сертификата клиента. Обратите внимание, переменные конфигурации устанавливать не надо.</p>
47 <h3>Поддержка произвольных маркеров для условных зависимостей</h3>
47 <h3>Поддержка произвольных маркеров для условных зависимостей</h3>
48 <p>Poetry 1.0.0 поддерживает маркеры окружения через свойство markers.</p>
48 <p>Poetry 1.0.0 поддерживает маркеры окружения через свойство markers.</p>
49 <h2>Что дальше</h2>
49 <h2>Что дальше</h2>
50 <p>Команда Poetry<a>сделала очень много</a>, но планов дальнейшего развития ещё больше. В ближайшее время планируется сделать Poetry расширяемой с помощью плагинов. Это станет шагом к созданию экосистемы вокруг Poetry и к появлению новых важных функций.</p>
50 <p>Команда Poetry<a>сделала очень много</a>, но планов дальнейшего развития ещё больше. В ближайшее время планируется сделать Poetry расширяемой с помощью плагинов. Это станет шагом к созданию экосистемы вокруг Poetry и к появлению новых важных функций.</p>