modal-labs / pytest-markdown-docs

Run pytest on markdown code fence blocks
MIT License
57 stars 7 forks source link

Loosen version requirement #15

Closed ekzhang closed 1 year ago

ekzhang commented 1 year ago

Right now this is giving an error on installation:

ERROR: pytest-markdown-docs 0.4.1 has requirement markdown-it-py<1.2.0,>=1.1.0, but you'll have markdown-it-py 3.0.0 which is incompatible.
freider commented 1 year ago

Strange, I don't think we have any transitive 3.0.0 dependencies. 2.2.0 should satisfy all of our dependencies as far as I can tell, but maybe some of our dependencies changed their sub-deps, and pip does work in weird ways sometimes... I haven't tested it with 3.0.0, but if it seems to work then I think we can bump. But perhaps with an upper bound to make sure it doesn't randomly break in the future?

Relatedly - we should bump the main repo pytest-markdown-docs dependency to 0.4.3

ekzhang commented 1 year ago

Strange, I don't think we have any transitive 3.0.0 dependencies. 2.2.0 should satisfy all of our dependencies as far as I can tell

The problem is that ~=2.2.0 actually means >=2.2.0, <2.3.0. This is different from ~=2.2, which means >=2.2, <3.0. I learned about this just a few weeks ago. :')

I'll upper bound it by 4.0 perhaps

erikbern commented 1 year ago

Wait what's the difference between >=2.2.0, <2.3.0 and >=2.2, <2.3 ?

ekzhang commented 1 year ago

Sorry, let me fix my comment! Typo. I realize I just made it even more confusing.

ekzhang commented 1 year ago

Hey, I'm still getting this error on modal-labs installation for requirements.txt.

ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts.
pytest-markdown-docs 0.4.1 requires markdown-it-py<1.2.0,>=1.1.0, but you have markdown-it-py 3.0.0 which is incompatible.

I'm going to go ahead and merge it if it's okay. The PR doesn't break anything, and I can still run markdown docs fine with my version 3.0 of markdown-it-py.