Commit Graph

2116 Commits

Author SHA1 Message Date
Oleh Prypin
5db6a78082 Deprecate defaults.get_schema 2023-07-01 15:43:06 +02:00
Oleh Prypin
bf7c4300ce Refactor to eliminate wrapper Markdown extension classes 2023-07-01 15:42:40 +02:00
Oleh Prypin
efe5bfbc47 Merge pull request #3258 from mkdocs/dirtag
Add YAML placeholder tags that resolve to current paths
2023-07-01 15:42:29 +02:00
Oleh Prypin
25f4ea1533 Docs: small fixes 2023-06-30 00:34:22 +02:00
Oleh Prypin
99a9a90553 Document the !relative tag 2023-06-25 23:11:55 +02:00
Oleh Prypin
7d8483904a Add YAML placeholder tags that resolve to current paths
- !relative  # Obtains the directory of the currently rendered Markdown file
    - !relative $docs_dir    # Obtains the docs_dir
    - !relative $config_dir  # Obtains the directory of mkdocs.yml
2023-06-23 18:32:01 +02:00
Oleh Prypin
a59e280d80 Make config_file_path default to empty string 2023-06-23 18:30:30 +02:00
Oleh Prypin
7b1bc92926 Refactor around dict key access 2023-06-23 16:36:28 +02:00
Oleh Prypin
b162c5e824 Docs: automatically generate the list of locales (#3272) 2023-06-23 09:35:26 +02:00
Oleh Prypin
f784374856 get-deps: suggest 'mkdocs[i18n]' if theme.locale is used (#3271) 2023-06-23 09:34:35 +02:00
Philip Couling
66f8df97d2 Pass config file path through SubConfig to Config (#3265)
This ensures FilesystemObject fields in Config are correctly evaluated relative to file.

Co-authored-by: Oleh Prypin <oleh@pryp.in>
2023-06-22 21:53:41 +02:00
Oleh Prypin
ae4a639f6e Fix types after merge 2023-06-19 22:33:30 +02:00
Oleh Prypin
ce826e94cc Merge pull request #3268 from mkdocs/conft
More precise types; support stdin as the `--config-file`
2023-06-19 22:22:10 +02:00
Oleh Prypin
0440ddd247 Merge pull request #3237 from mkdocs/mjs
Support `<script type="module">` and other attributes
2023-06-19 07:58:46 +02:00
Oleh Prypin
9810dd485a Rename enum members to uppercase 2023-06-18 23:00:23 +02:00
Oleh Prypin
9394d4b168 Merge remote-tracking branch 'origin/master' into mjs 2023-06-18 19:18:22 +02:00
Oleh Prypin
8b0971c4fe Use type-safe wrappers around run_event 2023-06-18 19:09:59 +02:00
Oleh Prypin
01be507e30 Define a base class for all navigation item classes 2023-06-18 18:03:03 +02:00
Oleh Prypin
c459cd24fc Stricter type annotations for MkDocsConfig
No functional change, but users of modern MkDocs that also care about type annotations should be passing correct types by now.
2023-06-18 17:55:41 +02:00
Oleh Prypin
d5bb15fa10 Properly support config_file_path being None
* Prevent error when the config file is a stream, to support `-` as the config.
* Fix type annotations and edge cases when `config_file_path` is None
* Properly prevent users setting `config_file_path` in mkdocs.yml - this was not intended.
2023-06-18 17:55:41 +02:00
Oleh Prypin
285461a3e7 Merge pull request #3249 from mkdocs/userc
Deprecate Theme-related fields that were accidentally available
2023-06-18 17:53:01 +02:00
Oleh Prypin
afb66c1bea Add mkdocs build --no-strict that overrides strict: true (#3254) 2023-06-12 13:45:11 +02:00
Oleh Prypin
b6ff158d9a Don't abort mkdocs serve for build errors during rebuilds (#3255) 2023-06-12 12:02:18 +02:00
Oleh Prypin
82aa8637b9 Merge pull request #3224 from mkdocs/ignore
New `exclude_docs` config: gitignore-like patterns of files to exclude
2023-06-11 20:40:05 +02:00
Oleh Prypin
ff68d77617 Deprecate Theme._vars but add custom_dir and other attributes 2023-06-09 21:46:21 +02:00
Oleh Prypin
96920d347f Deprecate user_configs 2023-06-09 21:46:20 +02:00
Oleh Prypin
9d56fa21d9 Merge remote-tracking branch 'origin/master' into ignore 2023-06-09 20:18:54 +02:00
Oleh Prypin
f2d14c52a7 Merge pull request #3205 from mkdocs/getdeps
New `get-deps` command: infer PyPI dependencies from mkdocs.yml
2023-06-09 20:05:07 +02:00
Oleh Prypin
4f98a94f14 Fix typo in extra_javascript doc 2023-06-08 10:33:48 +02:00
Timothée Mazzucotelli
fdd30c0c34 Add DictOfItems type for configuration options (#3242) 2023-06-07 01:22:59 +02:00
Timothée Mazzucotelli
18c01d2e74 Add plugin logger utility (#3245) 2023-06-07 01:22:00 +02:00
Oleh Prypin
619f7cf898 Add tests for get_deps command + bugfix for namespacing 2023-06-07 01:06:59 +02:00
Oleh Prypin
5de1273259 Avoid effects of YAML tags in get_deps 2023-06-07 01:06:24 +02:00
Oleh Prypin
e175070243 Let plugins declare their own optional dependencies
This is inferred from particular config keys

The current known plugin in need of this is mkdocstrings (handlers)
2023-06-07 01:06:21 +02:00
Timothée Mazzucotelli
45c8b9669b Add note about formatting code (#3244) 2023-06-07 00:43:45 +02:00
Oleh Prypin
3363c615de Update docs - "best-of-mkdocs" became "catalog" 2023-06-07 00:39:01 +02:00
Oleh Prypin
395daa05fb Merge remote-tracking branch 'origin/master' into getdeps 2023-06-04 23:24:58 +02:00
Timothée Mazzucotelli
73c640f73e Hide instance-attribute labels in docs (#3238) 2023-06-04 18:43:18 +02:00
Oleh Prypin
32d8c3a986 Expand config.extra_javascript to support type, async, defer
The top-level template object `extra_javascript` gets soft-deprecated because it still reports only a list of plain strings.

Themes need to take action and pick up the new config keys from `config.extra_javascript` instead.
2023-06-04 00:37:41 +02:00
Oleh Prypin
cc63a4bedf Include *.mjs files into javascript_files() 2023-06-04 00:37:41 +02:00
Oleh Prypin
0f793b9984 Make TemplateContext typed, move utils.filters to utils.templates 2023-06-04 00:37:41 +02:00
Oleh Prypin
73e503990e Make it possible to create a subclass of SubConfig[T]
`SubConfig[SomeType]()` is now the preferred way to express `SubConfig(SomeType)`
but more importantly, it is now possible to subclass `SubConfig[SomeType]` for post-processing of the value.
2023-06-04 00:37:41 +02:00
Oleh Prypin
8315da2248 More concise error message in SubConfig 2023-06-04 00:37:41 +02:00
Oleh Prypin
1db8e884fa Strip trailing _ from config members, to bypass Python reserved words
Example of adding an `async` boolean option that can be read through `config['async']` or `config.async_`:

    class ExampleConfig(Config):
        async_ = Type(bool, default=False)
2023-06-04 00:37:41 +02:00
Oleh Prypin
fce89f71a9 Fix propagating warnings from sub-items of ListOfItems 2023-06-04 00:37:41 +02:00
Oleh Prypin
c4db02b586 Stop using defer for most scripts, move them to the end of body 2023-06-04 00:37:35 +02:00
Oleh Prypin
e254d4b1bc Consistently use tojson for pasting strings to JavaScript 2023-06-03 21:12:11 +02:00
Oleh Prypin
b4c02e53ac Update highlight.js to version 11.8.0 2023-06-03 15:52:22 +02:00
Oleh Prypin
41c6ee2de7 Enforce that imports are under if TYPE_CHECKING if possible (#3236) 2023-06-03 15:51:18 +02:00
Oleh Prypin
1363c7c390 Upgrade PyPy in CI 2023-06-03 15:36:39 +02:00