Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Dependency of extra packages is not installed #4912

Closed
3 tasks done
perkfly opened this issue Dec 19, 2021 · 3 comments
Closed
3 tasks done

Dependency of extra packages is not installed #4912

perkfly opened this issue Dec 19, 2021 · 3 comments
Labels
kind/bug Something isn't working as expected

Comments

@perkfly
Copy link

perkfly commented Dec 19, 2021

  • I am on the latest Poetry version.
  • I have searched the issues of this repo and believe that this is not a duplicate.
  • If an exception occurs when executing a command, I executed it again in debug mode (-vvv option).
  • OS version and name: macOS 12
  • Poetry version: poetry is already at latest version 1.1.12
  • Link of a Gist with the contents of your pyproject.toml file: No needed

Issue

Poetry does not install the dependency of an optional dependency. For example:

╰─>$ poetry add pelican[markdown] -vvv
Using virtualenv: /Users/yifei/repos/poetry-test/.venv
PyPI: 56 packages found for pelican *
Using version ^4.7.1 for pelican

Updating dependencies
Resolving dependencies...
   1: fact: poetry-test is 0.1.0
   1: derived: poetry-test
   1: fact: poetry-test depends on pelican (^4.7.1)
   1: selecting poetry-test (0.1.0)
   1: derived: pelican[markdown] (>=4.7.1,<5.0.0)
PyPI: 1 packages found for pelican >=4.7.1,<5.0.0
   1: fact: pelican (4.7.1) depends on pelican (4.7.1)
   1: fact: pelican (4.7.1) depends on blinker (>=1.4)
   1: fact: pelican (4.7.1) depends on docutils (>=0.16)
   1: fact: pelican (4.7.1) depends on feedgenerator (>=1.9)
   1: fact: pelican (4.7.1) depends on jinja2 (>=2.7)
   1: fact: pelican (4.7.1) depends on pygments (>=2.6)
   1: fact: pelican (4.7.1) depends on python-dateutil (>=2.8)
   1: fact: pelican (4.7.1) depends on pytz (>=2020.1)
   1: fact: pelican (4.7.1) depends on rich (>=10.1)
   1: fact: pelican (4.7.1) depends on unidecode (>=1.1)
   1: fact: pelican (4.7.1) depends on markdown (>=3.1)
   1: selecting pelican[markdown] (4.7.1)
   1: derived: markdown (>=3.1)
   1: derived: unidecode (>=1.1)
   1: derived: rich (>=10.1)
   1: derived: pytz (>=2020.1)
   1: derived: python-dateutil (>=2.8)
   1: derived: pygments (>=2.6)
   1: derived: jinja2 (>=2.7)
   1: derived: feedgenerator (>=1.9)
   1: derived: docutils (>=0.16)
   1: derived: blinker (>=1.4)
   1: derived: pelican (==4.7.1)
PyPI: 12 packages found for markdown >=3.1
PyPI: 7 packages found for unidecode >=1.1
PyPI: 21 packages found for rich >=10.1
PyPI: 5 packages found for pytz >=2020.1
PyPI: No release information found for python-dateutil-0.1, skipping
PyPI: No release information found for python-dateutil-0.3, skipping
PyPI: No release information found for python-dateutil-0.4, skipping
PyPI: No release information found for python-dateutil-0.5, skipping
PyPI: No release information found for python-dateutil-1.0, skipping
PyPI: No release information found for python-dateutil-1.1, skipping
PyPI: No release information found for python-dateutil-1.2, skipping
PyPI: No release information found for python-dateutil-2.0, skipping
PyPI: 3 packages found for python-dateutil >=2.8
PyPI: 11 packages found for pygments >=2.6
PyPI: 25 packages found for jinja2 >=2.7
PyPI: 4 packages found for feedgenerator >=1.9
PyPI: 5 packages found for docutils >=0.16
PyPI: 1 packages found for blinker >=1.4
   1: selecting blinker (1.4)
   1: fact: python-dateutil (2.8.2) depends on six (>=1.5)
   1: selecting python-dateutil (2.8.2)
   1: derived: six (>=1.5)
PyPI: 18 packages found for six >=1.5
   1: fact: feedgenerator (2.0.0) depends on pytz (>=0a)
   1: selecting feedgenerator (2.0.0)
   1: selecting pytz (2021.3)
   1: selecting docutils (0.18.1)
   1: selecting unidecode (1.3.2)
   1: selecting pygments (2.10.0)
   1: selecting six (1.16.0)
   1: fact: rich (10.16.1) depends on pygments (>=2.6.0,<3.0.0)
   1: fact: rich (10.16.1) depends on commonmark (>=0.9.0,<0.10.0)
   1: fact: rich (10.16.1) depends on colorama (>=0.4.0,<0.5.0)
   1: selecting rich (10.16.1)
   1: derived: colorama (>=0.4.0,<0.5.0)
   1: derived: commonmark (>=0.9.0,<0.10.0)
PyPI: 5 packages found for colorama >=0.4.0,<0.5.0
PyPI: 2 packages found for commonmark >=0.9.0,<0.10.0
   1: selecting commonmark (0.9.1)
   1: selecting colorama (0.4.4)
   1: fact: jinja2 (3.0.3) depends on MarkupSafe (>=2.0)
   1: selecting jinja2 (3.0.3)
   1: derived: MarkupSafe (>=2.0)
PyPI: 2 packages found for markupsafe >=2.0
   1: selecting markupsafe (2.0.1)
PyPI: 1 packages found for pelican 4.7.1
   1: fact: pelican (4.7.1) depends on blinker (>=1.4)
   1: fact: pelican (4.7.1) depends on docutils (>=0.16)
   1: fact: pelican (4.7.1) depends on feedgenerator (>=1.9)
   1: fact: pelican (4.7.1) depends on jinja2 (>=2.7)
   1: fact: pelican (4.7.1) depends on pygments (>=2.6)
   1: fact: pelican (4.7.1) depends on python-dateutil (>=2.8)
   1: fact: pelican (4.7.1) depends on pytz (>=2020.1)
   1: fact: pelican (4.7.1) depends on rich (>=10.1)
   1: fact: pelican (4.7.1) depends on unidecode (>=1.1)
   1: selecting pelican (4.7.1)
   1: selecting markdown (3.3.6)
   1: Version solving took 12.693 seconds.
   1: Tried 1 solutions.

Writing lock file

Finding the necessary packages for the current system

Package operations: 15 installs, 0 updates, 0 removals

  • Installing colorama (0.4.4): Pending...
  • Installing colorama (0.4.4): Installing...
  • Installing colorama (0.4.4)
  • Installing commonmark (0.9.1): Pending...
  • Installing commonmark (0.9.1): Installing...
  • Installing commonmark (0.9.1)
  • Installing markupsafe (2.0.1): Pending...
  • Installing markupsafe (2.0.1): Installing...
  • Installing markupsafe (2.0.1)
  • Installing pygments (2.10.0): Pending...
  • Installing pygments (2.10.0): Installing...
  • Installing pygments (2.10.0)
  • Installing pytz (2021.3): Pending...
  • Installing pytz (2021.3): Installing...
  • Installing pytz (2021.3)
  • Installing six (1.16.0): Pending...
  • Installing six (1.16.0): Installing...
  • Installing six (1.16.0)
  • Installing blinker (1.4): Pending...
  • Installing blinker (1.4): Installing...
  • Installing blinker (1.4)
  • Installing docutils (0.18.1): Pending...
  • Installing docutils (0.18.1): Installing...
  • Installing docutils (0.18.1)
  • Installing feedgenerator (2.0.0): Pending...
  • Installing feedgenerator (2.0.0): Installing...
  • Installing feedgenerator (2.0.0)
  • Installing jinja2 (3.0.3): Pending...
  • Installing jinja2 (3.0.3): Installing...
  • Installing jinja2 (3.0.3)
  • Installing markdown (3.3.6): Pending...
  • Installing markdown (3.3.6): Installing...
  • Installing markdown (3.3.6)
  • Installing python-dateutil (2.8.2): Pending...
  • Installing python-dateutil (2.8.2): Installing...
  • Installing python-dateutil (2.8.2)
  • Installing rich (10.16.1): Pending...
  • Installing rich (10.16.1): Installing...
  • Installing rich (10.16.1)
  • Installing unidecode (1.3.2): Pending...
  • Installing unidecode (1.3.2): Installing...
  • Installing unidecode (1.3.2)
  • Installing pelican (4.7.1): Pending...
  • Installing pelican (4.7.1): Installing...
  • Installing pelican (4.7.1)

The dependency(importlib-metadata (>=4.4)) of the optional package markdown is not installed. This can be verified by:

╰─>$ poetry export --without-hashes | cut -d';' -f1
blinker==1.4
colorama==0.4.4
commonmark==0.9.1
docutils==0.18.1
feedgenerator==2.0.0
jinja2==3.0.3
markdown==3.3.6
markupsafe==2.0.1
pelican==4.7.1
pygments==2.10.0
python-dateutil==2.8.2
pytz==2021.3
rich==10.16.1
six==1.16.0
unidecode==1.3.2
╰─>$ python
Python 3.9.9 (main, Nov 21 2021, 03:16:13)
[Clang 13.0.0 (clang-1300.0.29.3)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import markdown
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/yifei/repos/poetry-test/.venv/lib/python3.9/site-packages/markdown/__init__.py", line 29, in <module>
    from .core import Markdown, markdown, markdownFromFile  # noqa: E402
  File "/Users/yifei/repos/poetry-test/.venv/lib/python3.9/site-packages/markdown/core.py", line 26, in <module>
    from . import util
  File "/Users/yifei/repos/poetry-test/.venv/lib/python3.9/site-packages/markdown/util.py", line 36, in <module>
    import importlib_metadata as metadata
ModuleNotFoundError: No module named 'importlib_metadata'

Using pip install pelican[markdown], the behavior is correct.

╰─>$ pip install pelican[markdown]
Looking in indexes: https://pypi.python.org/simple, https://pypi.apple.com/simple
Requirement already satisfied: pelican[markdown] in /Users/yifei/repos/notes/.venv/lib/python3.9/site-packages (4.7.1)
Requirement already satisfied: rich>=10.1 in /Users/yifei/repos/notes/.venv/lib/python3.9/site-packages (from pelican[markdown]) (10.16.1)
Requirement already satisfied: unidecode>=1.1 in /Users/yifei/repos/notes/.venv/lib/python3.9/site-packages (from pelican[markdown]) (1.3.2)
Requirement already satisfied: pytz>=2020.1 in /Users/yifei/repos/notes/.venv/lib/python3.9/site-packages (from pelican[markdown]) (2021.3)
Requirement already satisfied: blinker>=1.4 in /Users/yifei/repos/notes/.venv/lib/python3.9/site-packages (from pelican[markdown]) (1.4)
Requirement already satisfied: docutils>=0.16 in /Users/yifei/repos/notes/.venv/lib/python3.9/site-packages (from pelican[markdown]) (0.18.1)
Requirement already satisfied: jinja2>=2.7 in /Users/yifei/repos/notes/.venv/lib/python3.9/site-packages (from pelican[markdown]) (3.0.3)
Requirement already satisfied: python-dateutil>=2.8 in /Users/yifei/repos/notes/.venv/lib/python3.9/site-packages (from pelican[markdown]) (2.8.2)
Requirement already satisfied: feedgenerator>=1.9 in /Users/yifei/repos/notes/.venv/lib/python3.9/site-packages (from pelican[markdown]) (2.0.0)
Requirement already satisfied: pygments>=2.6 in /Users/yifei/repos/notes/.venv/lib/python3.9/site-packages (from pelican[markdown]) (2.10.0)
Requirement already satisfied: markdown>=3.1 in /Users/yifei/repos/notes/.venv/lib/python3.9/site-packages (from pelican[markdown]) (3.3.6)
Requirement already satisfied: MarkupSafe>=2.0 in /Users/yifei/repos/notes/.venv/lib/python3.9/site-packages (from jinja2>=2.7->pelican[markdown]) (2.0.1)
Collecting importlib-metadata>=4.4
  Downloading https://pypi.apple.com/packages/packages/62/ca/650dc5eb21dea34368ca88847ceed1c1af442341cc0884d7b574df4cb20b/importlib_metadata-4.9.0-py3-none-any.whl (17kB)
@perkfly perkfly added kind/bug Something isn't working as expected status/triage This issue needs to be triaged labels Dec 19, 2021
@clintonroy
Copy link
Contributor

I can't reproduce this, not sure what the underlying difference is, log may help:
`Using virtualenv: /home/clintonr/.cache/pypoetry/virtualenvs/poetryplay-kJlnfSVP-py3.9
PyPI: 56 packages found for pelican *
Using version ^4.7.1 for pelican

Updating dependencies
Resolving dependencies...
1: fact: poetryplay is 0.1.0
1: derived: poetryplay
1: fact: poetryplay depends on pelican (^4.7.1)
1: selecting poetryplay (0.1.0)
1: derived: pelican[markdown] (>=4.7.1,<5.0.0)
PyPI: 1 packages found for pelican >=4.7.1,<5.0.0
1: fact: pelican (4.7.1) depends on pelican (4.7.1)
1: fact: pelican (4.7.1) depends on blinker (>=1.4)
1: fact: pelican (4.7.1) depends on docutils (>=0.16)
1: fact: pelican (4.7.1) depends on feedgenerator (>=1.9)
1: fact: pelican (4.7.1) depends on jinja2 (>=2.7)
1: fact: pelican (4.7.1) depends on pygments (>=2.6)
1: fact: pelican (4.7.1) depends on python-dateutil (>=2.8)
1: fact: pelican (4.7.1) depends on pytz (>=2020.1)
1: fact: pelican (4.7.1) depends on rich (>=10.1)
1: fact: pelican (4.7.1) depends on unidecode (>=1.1)
1: fact: pelican (4.7.1) depends on markdown (>=3.1)
1: selecting pelican[markdown] (4.7.1)
1: derived: markdown (>=3.1)
1: derived: unidecode (>=1.1)
1: derived: rich (>=10.1)
1: derived: pytz (>=2020.1)
1: derived: python-dateutil (>=2.8)
1: derived: pygments (>=2.6)
1: derived: jinja2 (>=2.7)
1: derived: feedgenerator (>=1.9)
1: derived: docutils (>=0.16)
1: derived: blinker (>=1.4)
1: derived: pelican (==4.7.1)
PyPI: 12 packages found for markdown >=3.1
PyPI: 7 packages found for unidecode >=1.1
PyPI: 21 packages found for rich >=10.1
PyPI: 5 packages found for pytz >=2020.1
PyPI: No release information found for python-dateutil-0.1, skipping
PyPI: No release information found for python-dateutil-0.3, skipping
PyPI: No release information found for python-dateutil-0.4, skipping
PyPI: No release information found for python-dateutil-0.5, skipping
PyPI: No release information found for python-dateutil-1.0, skipping
PyPI: No release information found for python-dateutil-1.1, skipping
PyPI: No release information found for python-dateutil-1.2, skipping
PyPI: No release information found for python-dateutil-2.0, skipping
PyPI: 3 packages found for python-dateutil >=2.8
PyPI: 11 packages found for pygments >=2.6
PyPI: 25 packages found for jinja2 >=2.7
PyPI: 4 packages found for feedgenerator >=1.9
PyPI: 5 packages found for docutils >=0.16
PyPI: 1 packages found for blinker >=1.4
1: selecting blinker (1.4)
1: fact: python-dateutil (2.8.2) depends on six (>=1.5)
1: selecting python-dateutil (2.8.2)
1: derived: six (>=1.5)
PyPI: 18 packages found for six >=1.5
1: fact: feedgenerator (2.0.0) depends on pytz (>=0a)
1: selecting feedgenerator (2.0.0)
1: selecting pytz (2021.3)
1: selecting docutils (0.18.1)
1: selecting unidecode (1.3.2)
1: selecting pygments (2.10.0)
1: selecting six (1.16.0)
1: fact: rich (10.16.1) depends on pygments (>=2.6.0,<3.0.0)
1: fact: rich (10.16.1) depends on commonmark (>=0.9.0,<0.10.0)
1: fact: rich (10.16.1) depends on colorama (>=0.4.0,<0.5.0)
1: selecting rich (10.16.1)
1: derived: colorama (>=0.4.0,<0.5.0)
1: derived: commonmark (>=0.9.0,<0.10.0)
PyPI: 5 packages found for colorama >=0.4.0,<0.5.0
PyPI: 2 packages found for commonmark >=0.9.0,<0.10.0
1: selecting commonmark (0.9.1)
1: selecting colorama (0.4.4)
1: fact: jinja2 (3.0.3) depends on MarkupSafe (>=2.0)
1: selecting jinja2 (3.0.3)
1: derived: MarkupSafe (>=2.0)
PyPI: 2 packages found for markupsafe >=2.0
1: selecting markupsafe (2.0.1)
PyPI: 1 packages found for pelican 4.7.1
1: fact: pelican (4.7.1) depends on blinker (>=1.4)
1: fact: pelican (4.7.1) depends on docutils (>=0.16)
1: fact: pelican (4.7.1) depends on feedgenerator (>=1.9)
1: fact: pelican (4.7.1) depends on jinja2 (>=2.7)
1: fact: pelican (4.7.1) depends on pygments (>=2.6)
1: fact: pelican (4.7.1) depends on python-dateutil (>=2.8)
1: fact: pelican (4.7.1) depends on pytz (>=2020.1)
1: fact: pelican (4.7.1) depends on rich (>=10.1)
1: fact: pelican (4.7.1) depends on unidecode (>=1.1)
1: selecting pelican (4.7.1)
1: fact: markdown (3.3.6) depends on importlib-metadata (>=4.4)
1: selecting markdown (3.3.6)
1: derived: importlib-metadata (>=4.4)
PyPI: 14 packages found for importlib-metadata >=4.4
1: fact: importlib-metadata (4.9.0) depends on zipp (>=0.5)
1: selecting importlib-metadata (4.9.0)
1: derived: zipp (>=0.5)
PyPI: 25 packages found for zipp >=0.5
1: selecting zipp (3.6.0)
1: Version solving took 0.130 seconds.
1: Tried 1 solutions.

Writing lock file

Finding the necessary packages for the current system

Package operations: 17 installs, 0 updates, 0 removals

• Installing zipp (3.6.0)
• Installing colorama (0.4.4)
• Installing commonmark (0.9.1)
• Installing importlib-metadata (4.9.0)
• Installing markupsafe (2.0.1)
• Installing pygments (2.10.0)
• Installing pytz (2021.3)
• Installing six (1.16.0)
• Installing blinker (1.4)
• Installing docutils (0.18.1)
• Installing feedgenerator (2.0.0)
• Installing jinja2 (3.0.3)
• Installing markdown (3.3.6)
• Installing rich (10.16.1)
• Installing python-dateutil (2.8.2)
• Installing unidecode (1.3.2)
• Installing pelican (4.7.1)
`

@abn
Copy link
Member

abn commented May 24, 2022

Looks like this is a non issue on master.

$ poetry add pelican[markdown]
...
$ poetry export --without-hashes | grep importlib
importlib-metadata==4.11.4 ; python_version >= "3.9" and python_version < "3.10"

@abn abn closed this as completed May 24, 2022
@abn abn removed the status/triage This issue needs to be triaged label May 24, 2022
Copy link

github-actions bot commented Mar 2, 2024

This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Mar 2, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
kind/bug Something isn't working as expected
Projects
None yet
Development

No branches or pull requests

3 participants