Noted in #1690 but it's a separate issue: when I do pipenv install mkdocs-material, it fails.
Run:
mkdir mkdocs-pipenv
cd mkdocs-pipenv
pipenv install mkdocs-material
Observe this error:
ERROR: ERROR: Could not find a version that matches mkdocs-material-extensions>=1.0b1
Skipped pre-versions: 1.0b1, 1.0b1, 1.0b2, 1.0b2
There are incompatible versions in the resolved dependencies.

Adding --pre seems to work:
pipenv install mkdocs-material --pre
However, it installs (logically) pre-release dependencies which also doesn't seem quite right, see e.g. https://github.com/squidfunk/mkdocs-material/issues/1690#issuecomment-628228611.
I'm not a Python developer so maybe I'm missing something simple, but pip / pipenv installation is mentioned as the first one in the Getting Started guide. Commonly, I'm a happy user of the official Docker container which works nicely.
Duplicate of #1674
No, wrong. Not a duplicate but a problem with the fact that the extensions package is still a beta.
Doesn't look like a duplicate to me β I don't get any cyclic dependencies error.
What's the right way to install using pipenv then? Shouldn't pipenv install mkdocs-material just work?
No, youβre right. I corrected my initial comment. I was too quick π
Looks like you may need to use the --pre option. The mentioned extension is a prerelease :shrug:.
@facelessuser any plans to release the final version? Otherwise, with more users falling into this trap we might need to remove it from the requirements.txt at some point, which would be very sad.
Yeah, there are plans. I think at this point, it is as solid as it's going to be. The only issues I've received is user errors, so I think it is good to go.
Don't want to push you. Just asking how your plans are. Current errors are only with pipenv and pipdeptree. Don't know how widespread those tools are.
π€·ββοΈ Generally, my response is it will be ready when it is ready. Based on what I've seen and tested, I think it is solid at this point. If we are going to continue to require it, we need at least one stable version out. I've got a couple things that are a little higher on my priority list, but I should be able to get a stable version out soon.
Isn't there a way to lock dependencies more explicitly? The following is a screenshot where:
docker run --rm -it -v ${PWD}:/docs --entrypoint pip squidfunk/mkdocs-material freezepip freeze and removing packages that are not related to mkdocs-material (I just ran pip install mkdocs-material a few moments ago).
There are some "scary" differences like MarkupSafe being a 1.0 locally vs. 1.1.1 in the Docker image. Generally, _any_ difference is risky (JS/npm thought us that π) and there's a ton of differences here.
I don't know. I've used pip-compile: https://github.com/facelessuser/label-bot/blob/master/requirements.txt
I don't know what the best way is though π€·ββοΈ .
It is released as an official stable release.
Thanks @facelessuser! I'll update the requirements as soon as I get my hands on a computer π
The good news is that even if you don't update requirements, people should start getting it anyways.
Great, resolved, closing!