executablebooks / markdown-it-py

Markdown parser, done right. 100% CommonMark support, extensions, syntax plugins & high speed. Now in Python!
https://markdown-it-py.readthedocs.io
MIT License
734 stars 70 forks source link

WARNING: markdown-it-py 0.1.0 does not provide the extra 'plugins' #226

Open stromal opened 2 years ago

stromal commented 2 years ago

Describe the bug

expectation

I expected not to give an error and I can smothly install my python libraries.

bug

Command:

python3 -m pip install -r requirements.txt

Infinitly loops the final part:

MANY ALRADY SATIFIED INSTALLS
...
Requirement already satisfied: sniffio in ./airv/lib/python3.8/site-packages (from httpx->apache-airflow==2.3.3->-r requirements.txt (line 1)) (1.3.0)
Collecting markdown-it-py[linkify,plugins]
  Using cached markdown_it_py-2.0.1-py3-none-any.whl (84 kB)
  Using cached markdown_it_py-2.0.0-py3-none-any.whl (83 kB)
  Using cached markdown_it_py-1.1.0-py3-none-any.whl (83 kB)
  Using cached markdown_it_py-1.0.0-py3-none-any.whl (83 kB)
  Using cached markdown_it_py-0.6.2-py3-none-any.whl (81 kB)
WARNING: markdown-it-py 0.6.2 does not provide the extra 'plugins'
  Using cached markdown_it_py-0.6.1-py3-none-any.whl (81 kB)
WARNING: markdown-it-py 0.6.1 does not provide the extra 'plugins'
  Using cached markdown_it_py-0.6.0-py3-none-any.whl (80 kB)
WARNING: markdown-it-py 0.6.0 does not provide the extra 'plugins'
  Using cached markdown_it_py-0.5.8-py3-none-any.whl (110 kB)
WARNING: markdown-it-py 0.5.8 does not provide the extra 'plugins'
  Using cached markdown_it_py-0.5.7-py3-none-any.whl (108 kB)
WARNING: markdown-it-py 0.5.7 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.5.7 does not provide the extra 'plugins'
  Using cached markdown_it_py-0.5.6-py3-none-any.whl (115 kB)
WARNING: markdown-it-py 0.5.6 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.5.6 does not provide the extra 'plugins'
  Using cached markdown_it_py-0.5.5-py3-none-any.whl (114 kB)
WARNING: markdown-it-py 0.5.5 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.5.5 does not provide the extra 'plugins'
  Using cached markdown_it_py-0.5.4-py3-none-any.whl (113 kB)
WARNING: markdown-it-py 0.5.4 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.5.4 does not provide the extra 'plugins'
  Using cached markdown_it_py-0.5.3-py3-none-any.whl (111 kB)
WARNING: markdown-it-py 0.5.3 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.5.3 does not provide the extra 'plugins'
  Using cached markdown_it_py-0.5.2-py3-none-any.whl (110 kB)
WARNING: markdown-it-py 0.5.2 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.5.2 does not provide the extra 'plugins'
  Using cached markdown_it_py-0.5.1-py3-none-any.whl (110 kB)
WARNING: markdown-it-py 0.5.1 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.5.1 does not provide the extra 'plugins'
  Using cached markdown_it_py-0.5.0-py3-none-any.whl (110 kB)
WARNING: markdown-it-py 0.5.0 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.5.0 does not provide the extra 'plugins'
  Using cached markdown_it_py-0.4.9-py3-none-any.whl (96 kB)
WARNING: markdown-it-py 0.4.9 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.4.9 does not provide the extra 'plugins'
  Using cached markdown_it_py-0.4.8-py3-none-any.whl (96 kB)
WARNING: markdown-it-py 0.4.8 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.4.8 does not provide the extra 'plugins'
  Using cached markdown_it_py-0.4.7-py3-none-any.whl (96 kB)
WARNING: markdown-it-py 0.4.7 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.4.7 does not provide the extra 'plugins'
  Using cached markdown-it-py-0.4.6.tar.gz (116 kB)
  Preparing metadata (setup.py) ... done
WARNING: markdown-it-py 0.4.6 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.4.6 does not provide the extra 'plugins'
  Using cached markdown-it-py-0.4.5.tar.gz (117 kB)
  Preparing metadata (setup.py) ... done
WARNING: markdown-it-py 0.4.5 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.4.5 does not provide the extra 'plugins'
  Using cached markdown-it-py-0.4.4.tar.gz (117 kB)
  Preparing metadata (setup.py) ... done
WARNING: markdown-it-py 0.4.4 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.4.4 does not provide the extra 'plugins'
  Using cached markdown-it-py-0.4.3.tar.gz (117 kB)
  Preparing metadata (setup.py) ... done
WARNING: markdown-it-py 0.4.3 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.4.3 does not provide the extra 'plugins'
  Using cached markdown-it-py-0.4.2.tar.gz (117 kB)
  Preparing metadata (setup.py) ... done
WARNING: markdown-it-py 0.4.2 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.4.2 does not provide the extra 'plugins'
  Using cached markdown-it-py-0.4.1.tar.gz (117 kB)
  Preparing metadata (setup.py) ... done
WARNING: markdown-it-py 0.4.1 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.4.1 does not provide the extra 'plugins'
  Using cached markdown-it-py-0.4.0.tar.gz (117 kB)
  Preparing metadata (setup.py) ... done
WARNING: markdown-it-py 0.4.0 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.4.0 does not provide the extra 'plugins'
  Using cached markdown-it-py-0.3.3.tar.gz (117 kB)
  Preparing metadata (setup.py) ... done
WARNING: markdown-it-py 0.3.3 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.3.3 does not provide the extra 'plugins'
....
WARNING: markdown-it-py 0.4.9 does not provide the extra 'plugins'
WARNING: markdown-it-py 0.4.8 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.4.8 does not provide the extra 'plugins'
WARNING: markdown-it-py 0.4.7 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.4.7 does not provide the extra 'plugins'
WARNING: markdown-it-py 0.4.6 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.4.6 does not provide the extra 'plugins'
WARNING: markdown-it-py 0.4.5 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.4.5 does not provide the extra 'plugins'
WARNING: markdown-it-py 0.4.4 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.4.4 does not provide the extra 'plugins'
WARNING: markdown-it-py 0.4.3 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.4.3 does not provide the extra 'plugins'
WARNING: markdown-it-py 0.4.2 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.4.2 does not provide the extra 'plugins'
WARNING: markdown-it-py 0.4.1 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.4.1 does not provide the extra 'plugins'
WARNING: markdown-it-py 0.4.0 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.4.0 does not provide the extra 'plugins'
WARNING: markdown-it-py 0.3.3 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.3.3 does not provide the extra 'plugins'
WARNING: markdown-it-py 0.3.2 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.3.2 does not provide the extra 'plugins'
WARNING: markdown-it-py 0.3.1 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.3.1 does not provide the extra 'plugins'
WARNING: markdown-it-py 0.3.0 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.3.0 does not provide the extra 'plugins'
WARNING: markdown-it-py 0.2.3 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.2.3 does not provide the extra 'plugins'
WARNING: markdown-it-py 0.2.2 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.2.2 does not provide the extra 'plugins'
WARNING: markdown-it-py 0.2.1 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.2.1 does not provide the extra 'plugins'
WARNING: markdown-it-py 0.2.0 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.2.0 does not provide the extra 'plugins'
WARNING: markdown-it-py 0.1.1 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.1.1 does not provide the extra 'plugins'
WARNING: markdown-it-py 0.1.0 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.1.0 does not provide the extra 'plugins'
WARNING: markdown-it-py 0.6.2 does not provide the extra 'plugins'
WARNING: markdown-it-py 0.6.1 does not provide the extra 'plugins'
WARNING: markdown-it-py 0.6.0 does not provide the extra 'plugins'
WARNING: markdown-it-py 0.5.8 does not provide the extra 'plugins'
WARNING: markdown-it-py 0.5.7 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.5.7 does not provide the extra 'plugins'
WARNING: markdown-it-py 0.5.6 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.5.6 does not provide the extra 'plugins'
WARNING: markdown-it-py 0.5.5 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.5.5 does not provide the extra 'plugins'
WARNING: markdown-it-py 0.5.4 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.5.4 does not provide the extra 'plugins'
WARNING: markdown-it-py 0.5.3 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.5.3 does not provide the extra 'plugins'
WARNING: markdown-it-py 0.5.2 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.5.2 does not provide the extra 'plugins'
WARNING: markdown-it-py 0.5.1 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.5.1 does not provide the extra 'plugins'
WARNING: markdown-it-py 0.5.0 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.5.0 does not provide the extra 'plugins'
WARNING: markdown-it-py 0.4.9 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.4.9 does not provide the extra 'plugins'
WARNING: markdown-it-py 0.4.8 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.4.8 does not provide the extra 'plugins'
WARNING: markdown-it-py 0.4.7 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.4.7 does not provide the extra 'plugins'
WARNING: markdown-it-py 0.4.6 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.4.6 does not provide the extra 'plugins'
WARNING: markdown-it-py 0.4.5 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.4.5 does not provide the extra 'plugins'
WARNING: markdown-it-py 0.4.4 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.4.4 does not provide the extra 'plugins'
WARNING: markdown-it-py 0.4.3 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.4.3 does not provide the extra 'plugins'
WARNING: markdown-it-py 0.4.2 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.4.2 does not provide the extra 'plugins'
WARNING: markdown-it-py 0.4.1 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.4.1 does not provide the extra 'plugins'
WARNING: markdown-it-py 0.4.0 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.4.0 does not provide the extra 'plugins'
WARNING: markdown-it-py 0.3.3 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.3.3 does not provide the extra 'plugins'
WARNING: markdown-it-py 0.3.2 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.3.2 does not provide the extra 'plugins'
WARNING: markdown-it-py 0.3.1 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.3.1 does not provide the extra 'plugins'
WARNING: markdown-it-py 0.3.0 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.3.0 does not provide the extra 'plugins'
WARNING: markdown-it-py 0.2.3 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.2.3 does not provide the extra 'plugins'
WARNING: markdown-it-py 0.2.2 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.2.2 does not provide the extra 'plugins'
WARNING: markdown-it-py 0.2.1 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.2.1 does not provide the extra 'plugins'
WARNING: markdown-it-py 0.2.0 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.2.0 does not provide the extra 'plugins'
WARNING: markdown-it-py 0.1.1 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.1.1 does not provide the extra 'plugins'
WARNING: markdown-it-py 0.1.0 does not provide the extra 'linkify'
WARNING: markdown-it-py 0.1.0 does not provide the extra 'plugins'

problem

This is a problem for people doing becasue I m not sur if the main libraries has this a sub dependncy library and tehy may fail. Becasue I ahev verything installed and way more packages tahn the original requirements list.

Installed packages


Package                             Version
----------------------------------- -----------
aiohttp                             3.8.3
aiosignal                           1.2.0
alembic                             1.8.1
analytics-python                    1.4.0
anyio                               3.6.1
apache-airflow                      2.3.3
apache-airflow-providers-common-sql 1.2.0
apache-airflow-providers-ftp        3.1.0
apache-airflow-providers-http       4.0.0
apache-airflow-providers-imap       3.0.0
apache-airflow-providers-sqlite     3.2.1
apispec                             3.3.2
argcomplete                         2.0.0
async-timeout                       4.0.2
attrs                               20.3.0
Babel                               2.10.3
backoff                             1.10.0
bcrypt                              4.0.0
beautifulsoup4                      4.11.1
bingads                             13.0.13
blinker                             1.5
boto                                2.49.0
boto3                               1.15.16
botocore                            1.18.18
bs4                                 0.0.1
cached-property                     1.5.2
cachelib                            0.9.0
cachetools                          4.2.4
cattrs                              1.10.0
certifi                             2022.9.24
cffi                                1.15.1
charset-normalizer                  2.0.12
click                               8.1.3
clickclick                          20.10.2
cloudpickle                         2.2.0
colorama                            0.4.5
colorlog                            4.8.0
commonmark                          0.9.1
connexion                           2.14.1
contourpy                           1.0.5
cron-descriptor                     1.2.31
croniter                            1.3.7
cryptography                        38.0.1
cycler                              0.11.0
dask                                2021.9.1
deepdiff                            5.7.0
Deprecated                          1.2.13
dill                                0.3.5.1
dnspython                           2.2.1
docopt                              0.4.0
docutils                            0.19
email-validator                     1.3.0
et-xmlfile                          1.1.0
fastapi                             0.85.0
ffmpy                               0.3.0
Flask                               2.2.2
Flask-AppBuilder                    4.1.2
Flask-Babel                         2.0.0
Flask-Caching                       2.0.1
Flask-JWT-Extended                  4.4.4
Flask-Login                         0.6.2
Flask-Session                       0.4.0
Flask-SQLAlchemy                    2.5.1
Flask-WTF                           1.0.1
fonttools                           4.37.3
frozenlist                          1.3.1
fsspec                              2022.8.2
furl                                2.1.3
future                              0.18.2
google-auth                         1.35.0
google-auth-oauthlib                0.5.3
googleads                           26.0.0
gradio                              3.0.26
graphviz                            0.20.1
greenlet                            1.1.3
gspread                             5.4.0
gunicorn                            20.1.0
h11                                 0.12.0
hashids                             1.3.1
httpagentparser                     1.9.0
httpcore                            0.15.0
httplib2                            0.20.4
httpx                               0.23.0
idna                                3.4
importlib-metadata                  4.12.0
importlib-resources                 5.9.0
inflection                          0.5.1
isodate                             0.6.1
itsdangerous                        2.1.2
Jinja2                              3.1.2
jmespath                            0.10.0
joblib                              1.2.0
jsonschema                          4.16.0
kiwisolver                          1.4.4
lazy-object-proxy                   1.7.1
linkify-it-py                       2.0.0
locket                              1.0.0
lockfile                            0.12.2
lxml                                4.6.1
mailsnake                           1.6.4
Mako                                1.2.3
mandrill                            1.0.59
Markdown                            3.4.1
markdown-it-py                      2.1.0
MarkupSafe                          2.1.1
marshmallow                         3.18.0
marshmallow-enum                    1.5.1
marshmallow-oneofschema             3.0.1
marshmallow-sqlalchemy              0.26.1
matplotlib                          3.6.0
mdit-py-plugins                     0.3.1
mdurl                               0.1.2
monotonic                           1.6
multidict                           6.0.2
nltk                                3.5
numpy                               1.23.3
oauth2client                        4.1.3
oauthlib                            3.2.1
openpyxl                            3.0.7
ordered-set                         4.0.2
orderedmultidict                    1.0.1
orjson                              3.8.0
packaging                           21.3
pandas                              1.1.3
paramiko                            2.11.0
partd                               1.3.0
pathspec                            0.9.0
pendulum                            2.1.2
Pillow                              9.2.0
pip                                 22.2.2
pkg_resources                       0.0.0
pkgutil_resolve_name                1.3.10
platformdirs                        2.5.2
pluggy                              1.0.0
prison                              0.2.1
psutil                              5.9.2
pyasn1                              0.4.8
pyasn1-modules                      0.2.8
pycparser                           2.21
pycryptodome                        3.15.0
pydantic                            1.10.2
pydub                               0.25.1
Pygments                            2.13.0
PyJWT                               2.5.0
pymongo                             3.11.0
PyNaCl                              1.5.0
pyparsing                           3.0.9
pyrsistent                          0.18.1
pysftp                              0.2.9
python-daemon                       2.3.1
python-dateutil                     2.8.2
python-multipart                    0.0.5
python-nvd3                         0.15.0
python-slugify                      6.1.2
pytz                                2020.1
pytzdata                            2020.1
PyYAML                              6.0
redis                               3.5.3
regex                               2022.9.13
requests                            2.27.1
requests-file                       1.5.1
requests-oauthlib                   1.3.1
requests-toolbelt                   0.9.1
rfc3986                             1.5.0
rich                                12.5.1
rsa                                 4.9
s3transfer                          0.3.7
scikit-learn                        1.1.2
scipy                               1.9.1
selenium                            3.141.0
setproctitle                        1.3.2
setuptools                          44.0.0
six                                 1.16.0
sklearn                             0.0
sniffio                             1.3.0
soupsieve                           2.3.2.post1
SQLAlchemy                          1.4.41
SQLAlchemy-JSONField                1.0.0
SQLAlchemy-Utils                    0.38.3
sqlparse                            0.4.3
starlette                           0.20.4
suds-community                      1.1.2
swagger-ui-bundle                   0.0.9
tabulate                            0.8.10
tenacity                            8.1.0
termcolor                           2.0.1
text-unidecode                      1.3
threadpoolctl                       3.1.0
toolz                               0.12.0
tqdm                                4.64.1
tweepy                              3.9.0
typing_extensions                   4.3.0
uc-micro-py                         1.0.1
unicodecsv                          0.14.1
untangle                            1.1.1
urllib3                             1.26.12
uvicorn                             0.18.3
Werkzeug                            2.2.2
wrapt                               1.14.1
WTForms                             2.3.3
xmltodict                           0.12.0
yarl                                1.8.1
zeep                                4.1.0
zipp                                3.8.1

Reproduce the bug

context

requirements.txt

apache-airflow==2.3.3
pendulum==2.1.2
bingads==13.0.13
boto==2.49.0
boto3==1.15.16
beautifulsoup4==4.11.1
dask==2021.9.1
deepdiff==5.7.0
furl==2.1.3
googleads==26.0.0
gradio==3.0.26
gspread==5.4.0
hashids==1.3.1
httpagentparser==1.9.0
lxml==4.6.1
mailsnake==1.6.4
mandrill==1.0.59
nltk==3.5
numpy==1.23.3
oauth2client==4.1.3
openpyxl==3.0.7
pandas==1.1.3
pymongo==3.11.0
pysftp==0.2.9
pytz==2020.1
redis==3.5.3
requests==2.27.1
selenium==3.141.0
sklearn==0.0
tweepy==3.9.0
untangle==1.1.1
xmltodict==0.12.0
welcome[bot] commented 2 years ago

Thanks for opening your first issue here! Engagement like this is essential for open source projects! :hugs:
If you haven't done so already, check out EBP's Code of Conduct. Also, please try to follow the issue template as it helps other community members to contribute more effectively.
If your issue is a feature request, others may react to it, to raise its prominence (see Feature Voting).
Welcome to the EBP community! :tada:

agoose77 commented 1 year ago

I don't have the time to dig into the exact cause of this, but the warning that you observe occurs because only recent versions of markdown-it-py provide the extras that you request.

I suspect what's happening is that you have some old dependencies in there that are not supported by newer versions of the libraries such as markdown-it-py and friends. Therefore, pip is backsolving to find a version of these libraries that doesn't specify this lower bound, and in turn visiting all the versions of markdown-it-py. That's just a guess, though.