Repository: mkdocs/mkdocs

Issue:
Support latest realise of Markdown library
I believe there has been some update to the `Markdown` library and how it internally records its version that is breaking things.

With a brand new environment and a fresh install of `mkdocs`, a `mkdocs build --strict --verbose` fails my project with this error:

```bash
DEBUG    -  Loading configuration file: /Users/sh/Projects/dataportalapiclient/mkdocs.yml
ERROR    -  Config value: 'markdown_extensions'. Error: module 'markdown' has no attribute 'version_info'
```
At this point, mkdocs has a dependency on `Markdown==3.4.1`, which was released [three days ago](https://github.com/Python-Markdown/markdown/tags). 

After running a `pip install Markdown==3.3.7` to downgrade the version, rerunning the build is successful:

```bash
DEBUG    -  Loading configuration file: /Users/sh/Projects/dataportalapiclient/mkdocs.yml
...
DEBUG    -  mkdocstrings: Tearing handlers down
INFO     -  Documentation built in 3.45 seconds
```

I notice in [this commit from May 27th on the Markdown repository](https://github.com/Python-Markdown/markdown/commit/a767b2daaad78ba32d45a4f1dabb7c5e218f030a), the deprecated `version_info` info object was removed, and replaced with the `__version_info__` object, as per this table:

| Deprecated Object                      | Replacement Object                  |
|----------------------------------------|-------------------------------------|
| `markdown.version`                     | `markdown.__version__`              |
| `markdown.version_info`                | `markdown.__version_info__`         |
| `markdown.util.etree`                  | `xml.etree.ElementTree`             |
| `markdown.util.string_type`            | `str`                               |
| `markdown.util.text_type`              | `str`                               |
| `markdown.util.int2str`                | `chr`                               |
| `markdown.util.iterrange`              | `range`                             |
| `markdown.util.isBlockLevel`           | `markdown.Markdown.is_block_level`  |
| `markdown.util.Processor().markdown`   | `markdown.util.Processor().md`      |
| `markdown.util.Registry().__setitem__` | `markdown.util.Registry().register` |
| `markdown.util.Registry().__delitem__` |`markdown.util.Registry().deregister`|
| `markdown.util.Registry().add`         | `markdown.util.Registry().register` |

Hopefully the fix is a simple change to this dunder object! Whether this repository is the right place for the packaged markdown extension or not, I'm unsure, I couldn't quite see where that config gets run either here or in the [Python Markdown library](https://github.com/Python-Markdown/markdown/).

 If this isn't the place, I'd appreciate if you can please point me towards the right repo.



Discussion:
I'm also facing errors with this update, when I try to run `mkdocs build` I get the next error:

```
ERROR    -  Config value: 'markdown_extensions'. Error: extendMarkdown() missing 1 required positional
            argument: 'md_globals'
```

Rolling back works as expected

Resolving patch:
diff --git a/setup.py b/setup.py
--- a/setup.py
+++ b/setup.py
@@ -64,7 +64,7 @@ def get_packages(package):
     install_requires=[
         'click>=3.3',
         'Jinja2>=2.10.2',
-        'Markdown>=3.2.1',
+        'Markdown>=3.2.1,<3.4',
         'PyYAML>=3.10',
         'watchdog>=2.0',
         'ghp-import>=1.0',


Test patch: