Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python-mkdocstrings for 
openSUSE:Factory checked in at 2026-07-21 23:08:58
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-mkdocstrings (Old)
 and      /work/SRC/openSUSE:Factory/.python-mkdocstrings.new.24530 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-mkdocstrings"

Tue Jul 21 23:08:58 2026 rev:2 rq:1366800 version:1.0.6

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-mkdocstrings/python-mkdocstrings.changes  
2026-04-17 20:54:18.689194443 +0200
+++ 
/work/SRC/openSUSE:Factory/.python-mkdocstrings.new.24530/python-mkdocstrings.changes
       2026-07-21 23:09:08.251706843 +0200
@@ -1,0 +2,12 @@
+Mon Jul 20 15:24:34 UTC 2026 - Dirk Müller <[email protected]>
+
+- update to 1.0.6:
+  * Stop propagating Zensical's `zrelpath` treeprocessor and its
+    `preview` extension (4732798 by Timothée Mazzucotelli).
+    Issue-zensical-818
+  * Parse inventory project and version (acc0da3 by Timothée
+    Mazzucotelli).
+  * <small>Compare with 1.0.3</small>
+  * Add timeout when downloading inventories (10 seconds)
+
+-------------------------------------------------------------------

Old:
----
  mkdocstrings-1.0.3.tar.gz

New:
----
  mkdocstrings-1.0.6.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ python-mkdocstrings.spec ++++++
--- /var/tmp/diff_new_pack.ghhJG8/_old  2026-07-21 23:09:09.635754162 +0200
+++ /var/tmp/diff_new_pack.ghhJG8/_new  2026-07-21 23:09:09.635754162 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package python-mkdocstrings
 #
-# Copyright (c) 2023 SUSE LLC
+# Copyright (c) 2026 SUSE LLC and contributors
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -15,17 +15,18 @@
 # Please submit bugfixes or comments via https://bugs.opensuse.org/
 #
 
+
 %{?sle15_python_module_pythons}
 Name:           python-mkdocstrings
-Version:        1.0.3
+Version:        1.0.6
 Release:        0
 Summary:        Automatic documentation from sources, for MkDocs
 License:        ISC
 URL:            https://github.com/mkdocstrings/mkdocstrings 
 Source:         
https://files.pythonhosted.org/packages/source/m/mkdocstrings/mkdocstrings-%{version}.tar.gz
-BuildRequires:  python-rpm-macros
 BuildRequires:  %{python_module pdm-backend}
 BuildRequires:  %{python_module pip}
+BuildRequires:  python-rpm-macros
 # SECTION test requirements
 BuildRequires:  %{python_module Jinja2 >= 2.11.1}
 BuildRequires:  %{python_module Markdown >= 3.3}

++++++ mkdocstrings-1.0.3.tar.gz -> mkdocstrings-1.0.6.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/mkdocstrings-1.0.3/CHANGELOG.md 
new/mkdocstrings-1.0.6/CHANGELOG.md
--- old/mkdocstrings-1.0.3/CHANGELOG.md 2026-02-07 15:31:16.076285800 +0100
+++ new/mkdocstrings-1.0.6/CHANGELOG.md 2026-07-11 21:37:39.800620800 +0200
@@ -6,6 +6,30 @@
 and this project adheres to [Semantic 
Versioning](http://semver.org/spec/v2.0.0.html).
 
 <!-- insertion marker -->
+## [1.0.6](https://github.com/mkdocstrings/mkdocstrings/releases/tag/1.0.6) - 
2026-07-11
+
+<small>[Compare with 
1.0.5](https://github.com/mkdocstrings/mkdocstrings/compare/1.0.5...1.0.6)</small>
+
+### Bug Fixes
+
+- Stop propagating Zensical's `zrelpath` treeprocessor and its `preview` 
extension 
([4732798](https://github.com/mkdocstrings/mkdocstrings/commit/473279816aff4cc8ee3215fdf8b2d186517fc63d)
 by Timothée Mazzucotelli). 
[Issue-zensical-818](https://github.com/zensical/zensical/issues/818)
+
+## [1.0.5](https://github.com/mkdocstrings/mkdocstrings/releases/tag/1.0.5) - 
2026-07-10
+
+<small>[Compare with 
1.0.4](https://github.com/mkdocstrings/mkdocstrings/compare/1.0.4...1.0.5)</small>
+
+### Bug Fixes
+
+- Parse inventory project and version 
([acc0da3](https://github.com/mkdocstrings/mkdocstrings/commit/acc0da32d11428ea9c60f8e50f90df329f2e6460)
 by Timothée Mazzucotelli).
+
+## [1.0.4](https://github.com/mkdocstrings/mkdocstrings/releases/tag/1.0.4) - 
2026-04-15
+
+<small>[Compare with 
1.0.3](https://github.com/mkdocstrings/mkdocstrings/compare/1.0.3...1.0.4)</small>
+
+### Bug Fixes
+
+- Add timeout when downloading inventories (10 seconds) 
([3d1969a](https://github.com/mkdocstrings/mkdocstrings/commit/3d1969a279ea396792c682810d029503e48d8fcd)
 by Simon Lloyd). 
[Issue-819](https://github.com/mkdocstrings/mkdocstrings/issues/819)
+
 ## [1.0.3](https://github.com/mkdocstrings/mkdocstrings/releases/tag/1.0.3) - 
2026-02-07
 
 <small>[Compare with 
1.0.2](https://github.com/mkdocstrings/mkdocstrings/compare/1.0.2...1.0.3)</small>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/mkdocstrings-1.0.3/CONTRIBUTING.md 
new/mkdocstrings-1.0.6/CONTRIBUTING.md
--- old/mkdocstrings-1.0.3/CONTRIBUTING.md      2026-02-05 18:35:00.602334300 
+0100
+++ new/mkdocstrings-1.0.6/CONTRIBUTING.md      2026-04-15 10:54:06.436562000 
+0200
@@ -2,6 +2,8 @@
 
 Contributions are welcome, and they are greatly appreciated! Every little bit 
helps, and credit will always be given.
 
+**Please always create an issue before working on a new feature or a bug fix, 
so that we can discuss the implementation and make sure that your work will be 
merged.**
+
 ## Environment setup
 
 Nothing easier!
@@ -38,8 +40,7 @@
 
 ## Tasks
 
-The entry-point to run commands and tasks is the `make` Python script, located 
in the `scripts` directory. Try running `make` to show the available commands 
and tasks. The *commands* do not need the Python dependencies to be installed,
-while the *tasks* do. The cross-platform tasks are written in Python, thanks 
to [duty](https://github.com/pawamoy/duty).
+The entry-point to run commands and tasks is the `make` Python script, located 
in the `scripts` directory. Try running `make` to show the available commands 
and tasks. The *commands* do not need the Python dependencies to be installed, 
while the *tasks* do. The cross-platform tasks are written in Python, thanks to 
[duty](https://github.com/pawamoy/duty).
 
 If you work in VSCode, we provide [an action to configure 
VSCode](https://pawamoy.github.io/copier-uv/work/#vscode-setup) for the project.
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/mkdocstrings-1.0.3/LICENSE 
new/mkdocstrings-1.0.6/LICENSE
--- old/mkdocstrings-1.0.3/LICENSE      2025-07-23 01:58:10.935877800 +0200
+++ new/mkdocstrings-1.0.6/LICENSE      2026-04-15 10:54:04.327815000 +0200
@@ -1,6 +1,6 @@
 ISC License
 
-Copyright (c) 2019, Timothée Mazzucotelli
+Copyright (c) 2019, Timothée Mazzucotelli and contributors
 
 Permission to use, copy, modify, and/or distribute this software for any
 purpose with or without fee is hereby granted, provided that the above
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/mkdocstrings-1.0.3/PKG-INFO 
new/mkdocstrings-1.0.6/PKG-INFO
--- old/mkdocstrings-1.0.3/PKG-INFO     1970-01-01 01:00:00.000000000 +0100
+++ new/mkdocstrings-1.0.6/PKG-INFO     1970-01-01 01:00:00.000000000 +0100
@@ -1,6 +1,6 @@
 Metadata-Version: 2.4
 Name: mkdocstrings
-Version: 1.0.3
+Version: 1.0.6
 Summary: Automatic documentation from sources, for MkDocs.
 Keywords: mkdocs,mkdocs-plugin,docstrings,autodoc,documentation
 Author-Email: =?utf-8?q?Timoth=C3=A9e_Mazzucotelli?= <[email protected]>
@@ -47,7 +47,7 @@
 # mkdocstrings
 
 
[![ci](https://github.com/mkdocstrings/mkdocstrings/workflows/ci/badge.svg)](https://github.com/mkdocstrings/mkdocstrings/actions?query=workflow%3Aci)
-[![documentation](https://img.shields.io/badge/docs-mkdocs-708FCC.svg?style=flat)](https://mkdocstrings.github.io/)
+[![documentation](https://img.shields.io/badge/docs-zensical-FF9100.svg?style=flat)](https://mkdocstrings.github.io/mkdocstrings/)
 [![pypi 
version](https://img.shields.io/pypi/v/mkdocstrings.svg)](https://pypi.org/project/mkdocstrings/)
 [![conda 
version](https://img.shields.io/conda/vn/conda-forge/mkdocstrings)](https://anaconda.org/conda-forge/mkdocstrings)
 
[![gitter](https://img.shields.io/badge/matrix-chat-4DB798.svg?style=flat)](https://app.gitter.im/#/room/#mkdocstrings:gitter.im)
@@ -66,7 +66,7 @@
 - [**Language-agnostic:**](https://mkdocstrings.github.io/handlers/overview/)
   just like *MkDocs*, *mkdocstrings* is written in Python but is 
language-agnostic.
   It means you can use it with any programming language, as long as there is a
-  [**handler**](https://mkdocstrings.github.io/reference/handlers/base/) for 
it.
+  
[**handler**](https://mkdocstrings.github.io/reference/api/#mkdocstrings.BaseHandler)
 for it.
   We currently have 
[handlers](https://mkdocstrings.github.io/handlers/overview/) for the
   [C](https://mkdocstrings.github.io/c/),
   [Crystal](https://mkdocstrings.github.io/crystal/),
@@ -188,7 +188,6 @@
 
 <div id="silver-sponsors"><b>Silver sponsors</b><p>
 <a href="https://fastapi.tiangolo.com/";><img alt="FastAPI" 
src="https://raw.githubusercontent.com/tiangolo/fastapi/master/docs/en/docs/img/logo-margin/logo-teal.png";
 style="height: 200px; "></a><br>
-<a href="https://docs.pydantic.dev/latest/";><img alt="Pydantic" 
src="https://pydantic.dev/assets/for-external/pydantic_logfire_logo_endorsed_lithium_rgb.svg";
 style="height: 180px; "></a><br>
 </p></div>
 
 <div id="bronze-sponsors"><b>Bronze sponsors</b><p>
@@ -211,7 +210,7 @@
 <a href="https://github.com/BenHammersley";><img alt="BenHammersley" 
src="https://avatars.githubusercontent.com/u/99436?u=4499a7b507541045222ee28ae122dbe3c8d08ab5&v=4";
 style="height: 32px; border-radius: 100%;"></a>
 <a href="https://github.com/trevorWieland";><img alt="trevorWieland" 
src="https://avatars.githubusercontent.com/u/28811461?u=74cc0e3756c1d4e3d66b5c396e1d131ea8a10472&v=4";
 style="height: 32px; border-radius: 100%;"></a>
 <a href="https://github.com/MarcoGorelli";><img alt="MarcoGorelli" 
src="https://avatars.githubusercontent.com/u/33491632?u=7de3a749cac76a60baca9777baf71d043a4f884d&v=4";
 style="height: 32px; border-radius: 100%;"></a>
-<a href="https://github.com/analog-cbarber";><img alt="analog-cbarber" 
src="https://avatars.githubusercontent.com/u/7408243?u=642fc2bdcc9904089c62fe5aec4e03ace32da67d&v=4";
 style="height: 32px; border-radius: 100%;"></a>
+<a href="https://github.com/analog-cbarber";><img alt="analog-cbarber" 
src="https://avatars.githubusercontent.com/u/7408243?u=fe0e7bf2882d1c9c901a341c2502e1518466527a&v=4";
 style="height: 32px; border-radius: 100%;"></a>
 <a href="https://github.com/OdinManiac";><img alt="OdinManiac" 
src="https://avatars.githubusercontent.com/u/22727172?u=36ab20970f7f52ae8e7eb67b7fcf491fee01ac22&v=4";
 style="height: 32px; border-radius: 100%;"></a>
 <a href="https://github.com/rstudio-sponsorship";><img 
alt="rstudio-sponsorship" 
src="https://avatars.githubusercontent.com/u/58949051?u=0c471515dd18111be30dfb7669ed5e778970959b&v=4";
 style="height: 32px; border-radius: 100%;"></a>
 <a href="https://github.com/schlich";><img alt="schlich" 
src="https://avatars.githubusercontent.com/u/21191435?u=6f1240adb68f21614d809ae52d66509f46b1e877&v=4";
 style="height: 32px; border-radius: 100%;"></a>
@@ -223,17 +222,15 @@
 <a href="https://github.com/activeloopai";><img alt="activeloopai" 
src="https://avatars.githubusercontent.com/u/34816118?v=4"; style="height: 32px; 
border-radius: 100%;"></a>
 <a href="https://github.com/roboflow";><img alt="roboflow" 
src="https://avatars.githubusercontent.com/u/53104118?v=4"; style="height: 32px; 
border-radius: 100%;"></a>
 <a href="https://github.com/cmclaughlin";><img alt="cmclaughlin" 
src="https://avatars.githubusercontent.com/u/1061109?u=ddf6eec0edd2d11c980f8c3aa96e3d044d4e0468&v=4";
 style="height: 32px; border-radius: 100%;"></a>
-<a href="https://github.com/blaisep";><img alt="blaisep" 
src="https://avatars.githubusercontent.com/u/254456?u=97d584b7c0a6faf583aa59975df4f993f671d121&v=4";
 style="height: 32px; border-radius: 100%;"></a>
 <a href="https://github.com/RapidataAI";><img alt="RapidataAI" 
src="https://avatars.githubusercontent.com/u/104209891?v=4"; style="height: 
32px; border-radius: 100%;"></a>
 <a href="https://github.com/rodolphebarbanneau";><img alt="rodolphebarbanneau" 
src="https://avatars.githubusercontent.com/u/46493454?u=6c405452a40c231cdf0b68e97544e07ee956a733&v=4";
 style="height: 32px; border-radius: 100%;"></a>
 <a href="https://github.com/theSymbolSyndicate";><img alt="theSymbolSyndicate" 
src="https://avatars.githubusercontent.com/u/111542255?v=4"; style="height: 
32px; border-radius: 100%;"></a>
 <a href="https://github.com/blakeNaccarato";><img alt="blakeNaccarato" 
src="https://avatars.githubusercontent.com/u/20692450?u=bb919218be30cfa994514f4cf39bb2f7cf952df4&v=4";
 style="height: 32px; border-radius: 100%;"></a>
 <a href="https://github.com/ChargeStorm";><img alt="ChargeStorm" 
src="https://avatars.githubusercontent.com/u/26000165?v=4"; style="height: 32px; 
border-radius: 100%;"></a>
-<a href="https://github.com/Alphadelta14";><img alt="Alphadelta14" 
src="https://avatars.githubusercontent.com/u/480845?v=4"; style="height: 32px; 
border-radius: 100%;"></a>
 <a href="https://github.com/Cusp-AI";><img alt="Cusp-AI" 
src="https://avatars.githubusercontent.com/u/178170649?v=4"; style="height: 
32px; border-radius: 100%;"></a>
 </p></div>
 
 
-*And 7 more private sponsor(s).*
+*And 4 more private sponsor(s).*
 
 <!-- sponsors-end -->
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/mkdocstrings-1.0.3/README.md 
new/mkdocstrings-1.0.6/README.md
--- old/mkdocstrings-1.0.3/README.md    2026-02-05 18:35:00.602334300 +0100
+++ new/mkdocstrings-1.0.6/README.md    2026-07-10 12:48:02.433773500 +0200
@@ -1,7 +1,7 @@
 # mkdocstrings
 
 
[![ci](https://github.com/mkdocstrings/mkdocstrings/workflows/ci/badge.svg)](https://github.com/mkdocstrings/mkdocstrings/actions?query=workflow%3Aci)
-[![documentation](https://img.shields.io/badge/docs-mkdocs-708FCC.svg?style=flat)](https://mkdocstrings.github.io/)
+[![documentation](https://img.shields.io/badge/docs-zensical-FF9100.svg?style=flat)](https://mkdocstrings.github.io/mkdocstrings/)
 [![pypi 
version](https://img.shields.io/pypi/v/mkdocstrings.svg)](https://pypi.org/project/mkdocstrings/)
 [![conda 
version](https://img.shields.io/conda/vn/conda-forge/mkdocstrings)](https://anaconda.org/conda-forge/mkdocstrings)
 
[![gitter](https://img.shields.io/badge/matrix-chat-4DB798.svg?style=flat)](https://app.gitter.im/#/room/#mkdocstrings:gitter.im)
@@ -20,7 +20,7 @@
 - [**Language-agnostic:**](https://mkdocstrings.github.io/handlers/overview/)
   just like *MkDocs*, *mkdocstrings* is written in Python but is 
language-agnostic.
   It means you can use it with any programming language, as long as there is a
-  [**handler**](https://mkdocstrings.github.io/reference/handlers/base/) for 
it.
+  
[**handler**](https://mkdocstrings.github.io/reference/api/#mkdocstrings.BaseHandler)
 for it.
   We currently have 
[handlers](https://mkdocstrings.github.io/handlers/overview/) for the
   [C](https://mkdocstrings.github.io/c/),
   [Crystal](https://mkdocstrings.github.io/crystal/),
@@ -142,7 +142,6 @@
 
 <div id="silver-sponsors"><b>Silver sponsors</b><p>
 <a href="https://fastapi.tiangolo.com/";><img alt="FastAPI" 
src="https://raw.githubusercontent.com/tiangolo/fastapi/master/docs/en/docs/img/logo-margin/logo-teal.png";
 style="height: 200px; "></a><br>
-<a href="https://docs.pydantic.dev/latest/";><img alt="Pydantic" 
src="https://pydantic.dev/assets/for-external/pydantic_logfire_logo_endorsed_lithium_rgb.svg";
 style="height: 180px; "></a><br>
 </p></div>
 
 <div id="bronze-sponsors"><b>Bronze sponsors</b><p>
@@ -165,7 +164,7 @@
 <a href="https://github.com/BenHammersley";><img alt="BenHammersley" 
src="https://avatars.githubusercontent.com/u/99436?u=4499a7b507541045222ee28ae122dbe3c8d08ab5&v=4";
 style="height: 32px; border-radius: 100%;"></a>
 <a href="https://github.com/trevorWieland";><img alt="trevorWieland" 
src="https://avatars.githubusercontent.com/u/28811461?u=74cc0e3756c1d4e3d66b5c396e1d131ea8a10472&v=4";
 style="height: 32px; border-radius: 100%;"></a>
 <a href="https://github.com/MarcoGorelli";><img alt="MarcoGorelli" 
src="https://avatars.githubusercontent.com/u/33491632?u=7de3a749cac76a60baca9777baf71d043a4f884d&v=4";
 style="height: 32px; border-radius: 100%;"></a>
-<a href="https://github.com/analog-cbarber";><img alt="analog-cbarber" 
src="https://avatars.githubusercontent.com/u/7408243?u=642fc2bdcc9904089c62fe5aec4e03ace32da67d&v=4";
 style="height: 32px; border-radius: 100%;"></a>
+<a href="https://github.com/analog-cbarber";><img alt="analog-cbarber" 
src="https://avatars.githubusercontent.com/u/7408243?u=fe0e7bf2882d1c9c901a341c2502e1518466527a&v=4";
 style="height: 32px; border-radius: 100%;"></a>
 <a href="https://github.com/OdinManiac";><img alt="OdinManiac" 
src="https://avatars.githubusercontent.com/u/22727172?u=36ab20970f7f52ae8e7eb67b7fcf491fee01ac22&v=4";
 style="height: 32px; border-radius: 100%;"></a>
 <a href="https://github.com/rstudio-sponsorship";><img 
alt="rstudio-sponsorship" 
src="https://avatars.githubusercontent.com/u/58949051?u=0c471515dd18111be30dfb7669ed5e778970959b&v=4";
 style="height: 32px; border-radius: 100%;"></a>
 <a href="https://github.com/schlich";><img alt="schlich" 
src="https://avatars.githubusercontent.com/u/21191435?u=6f1240adb68f21614d809ae52d66509f46b1e877&v=4";
 style="height: 32px; border-radius: 100%;"></a>
@@ -177,17 +176,15 @@
 <a href="https://github.com/activeloopai";><img alt="activeloopai" 
src="https://avatars.githubusercontent.com/u/34816118?v=4"; style="height: 32px; 
border-radius: 100%;"></a>
 <a href="https://github.com/roboflow";><img alt="roboflow" 
src="https://avatars.githubusercontent.com/u/53104118?v=4"; style="height: 32px; 
border-radius: 100%;"></a>
 <a href="https://github.com/cmclaughlin";><img alt="cmclaughlin" 
src="https://avatars.githubusercontent.com/u/1061109?u=ddf6eec0edd2d11c980f8c3aa96e3d044d4e0468&v=4";
 style="height: 32px; border-radius: 100%;"></a>
-<a href="https://github.com/blaisep";><img alt="blaisep" 
src="https://avatars.githubusercontent.com/u/254456?u=97d584b7c0a6faf583aa59975df4f993f671d121&v=4";
 style="height: 32px; border-radius: 100%;"></a>
 <a href="https://github.com/RapidataAI";><img alt="RapidataAI" 
src="https://avatars.githubusercontent.com/u/104209891?v=4"; style="height: 
32px; border-radius: 100%;"></a>
 <a href="https://github.com/rodolphebarbanneau";><img alt="rodolphebarbanneau" 
src="https://avatars.githubusercontent.com/u/46493454?u=6c405452a40c231cdf0b68e97544e07ee956a733&v=4";
 style="height: 32px; border-radius: 100%;"></a>
 <a href="https://github.com/theSymbolSyndicate";><img alt="theSymbolSyndicate" 
src="https://avatars.githubusercontent.com/u/111542255?v=4"; style="height: 
32px; border-radius: 100%;"></a>
 <a href="https://github.com/blakeNaccarato";><img alt="blakeNaccarato" 
src="https://avatars.githubusercontent.com/u/20692450?u=bb919218be30cfa994514f4cf39bb2f7cf952df4&v=4";
 style="height: 32px; border-radius: 100%;"></a>
 <a href="https://github.com/ChargeStorm";><img alt="ChargeStorm" 
src="https://avatars.githubusercontent.com/u/26000165?v=4"; style="height: 32px; 
border-radius: 100%;"></a>
-<a href="https://github.com/Alphadelta14";><img alt="Alphadelta14" 
src="https://avatars.githubusercontent.com/u/480845?v=4"; style="height: 32px; 
border-radius: 100%;"></a>
 <a href="https://github.com/Cusp-AI";><img alt="Cusp-AI" 
src="https://avatars.githubusercontent.com/u/178170649?v=4"; style="height: 
32px; border-radius: 100%;"></a>
 </p></div>
 
 
-*And 7 more private sponsor(s).*
+*And 4 more private sponsor(s).*
 
 <!-- sponsors-end -->
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/mkdocstrings-1.0.3/config/.ruff_cache/.gitignore 
new/mkdocstrings-1.0.6/config/.ruff_cache/.gitignore
--- old/mkdocstrings-1.0.3/config/.ruff_cache/.gitignore        1970-01-01 
01:00:00.000000000 +0100
+++ new/mkdocstrings-1.0.6/config/.ruff_cache/.gitignore        2026-05-05 
10:16:20.226924200 +0200
@@ -0,0 +1,2 @@
+# Automatically created by ruff.
+*
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/mkdocstrings-1.0.3/config/.ruff_cache/CACHEDIR.TAG 
new/mkdocstrings-1.0.6/config/.ruff_cache/CACHEDIR.TAG
--- old/mkdocstrings-1.0.3/config/.ruff_cache/CACHEDIR.TAG      1970-01-01 
01:00:00.000000000 +0100
+++ new/mkdocstrings-1.0.6/config/.ruff_cache/CACHEDIR.TAG      2026-05-05 
10:16:20.226924200 +0200
@@ -0,0 +1 @@
+Signature: 8a477f597d28d172789f06886806bc55
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/mkdocstrings-1.0.3/config/ruff.toml 
new/mkdocstrings-1.0.6/config/ruff.toml
--- old/mkdocstrings-1.0.3/config/ruff.toml     2026-02-05 18:43:20.968256700 
+0100
+++ new/mkdocstrings-1.0.6/config/ruff.toml     2026-04-15 10:57:42.373919000 
+0200
@@ -1,5 +1,6 @@
-target-version = "py39"
+target-version = "py310"
 line-length = 120
+output-format = "concise"
 
 [lint]
 exclude = [
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/mkdocstrings-1.0.3/config/ty.toml 
new/mkdocstrings-1.0.6/config/ty.toml
--- old/mkdocstrings-1.0.3/config/ty.toml       2026-02-05 18:55:22.336795000 
+0100
+++ new/mkdocstrings-1.0.6/config/ty.toml       2026-04-15 10:57:51.004196400 
+0200
@@ -1,2 +1,6 @@
 [src]
 exclude = ["tests/fixtures"]
+
+[terminal]
+error-on-warning = true
+output-format = "concise"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/mkdocstrings-1.0.3/config/vscode/launch.json 
new/mkdocstrings-1.0.6/config/vscode/launch.json
--- old/mkdocstrings-1.0.3/config/vscode/launch.json    2025-07-23 
01:58:10.936070200 +0200
+++ new/mkdocstrings-1.0.6/config/vscode/launch.json    2026-04-15 
10:54:04.276192700 +0200
@@ -23,11 +23,10 @@
             "name": "docs",
             "type": "debugpy",
             "request": "launch",
-            "module": "mkdocs",
+            "module": "zensical",
             "justMyCode": false,
             "args": [
                 "serve",
-                "-v"
             ]
         },
         {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/mkdocstrings-1.0.3/config/vscode/settings.json 
new/mkdocstrings-1.0.6/config/vscode/settings.json
--- old/mkdocstrings-1.0.3/config/vscode/settings.json  2026-02-05 
18:34:51.527169700 +0100
+++ new/mkdocstrings-1.0.6/config/vscode/settings.json  2026-04-15 
10:54:04.273369800 +0200
@@ -16,6 +16,7 @@
     "ruff.lint.args": [
         "--config=config/ruff.toml"
     ],
+    "ty.configurationFile": "config/ty.toml",
     "yaml.schemas": {
         "https://squidfunk.github.io/mkdocs-material/schema.json": "mkdocs.yml"
     },
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/mkdocstrings-1.0.3/docs/.overrides/partials/comments.html 
new/mkdocstrings-1.0.6/docs/.overrides/partials/comments.html
--- old/mkdocstrings-1.0.3/docs/.overrides/partials/comments.html       
2025-07-23 01:58:10.936601200 +0200
+++ new/mkdocstrings-1.0.6/docs/.overrides/partials/comments.html       
2026-04-15 10:54:06.436759500 +0200
@@ -1,5 +1,5 @@
 <!-- Giscus -->
-<!-- 
https://squidfunk.github.io/mkdocs-material/setup/adding-a-comment-system/#giscus-integration
 -->
+<!-- https://zensical.org/docs/setup/comment-system/#giscus-integration -->
 <div id="feedback" style="display: none;">
     <h2 id="__comments">Feedback</h2>
     <script src="https://giscus.app/client.js";
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/mkdocstrings-1.0.3/docs/.overrides/partials/path-item.html 
new/mkdocstrings-1.0.6/docs/.overrides/partials/path-item.html
--- old/mkdocstrings-1.0.3/docs/.overrides/partials/path-item.html      
2025-07-23 01:58:10.936661700 +0200
+++ new/mkdocstrings-1.0.6/docs/.overrides/partials/path-item.html      
1970-01-01 01:00:00.000000000 +0100
@@ -1,22 +0,0 @@
-{# Fix breadcrumbs for when mkdocs-section-index is used. #}
-{# See https://github.com/squidfunk/mkdocs-material/issues/7614. #}
-
-<!-- Render navigation link content -->
-{% macro render_content(nav_item) %}
-  <span class="md-ellipsis">
-    {{ nav_item.title }}
-  </span>
-{% endmacro %}
-
-<!-- Render navigation item -->
-{% macro render(nav_item, ref=nav_item) %}
-  {% if nav_item.is_page %}
-    <li class="md-path__item">
-      <a href="{{ nav_item.url | url }}" class="md-path__link">
-        {{ render_content(ref) }}
-      </a>
-    </li>
-  {% elif nav_item.children %}
-    {{ render(nav_item.children | first, ref) }}
-  {% endif %}
-{% endmacro %}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/mkdocstrings-1.0.3/docs/css/apidocs.css 
new/mkdocstrings-1.0.6/docs/css/apidocs.css
--- old/mkdocstrings-1.0.3/docs/css/apidocs.css 1970-01-01 01:00:00.000000000 
+0100
+++ new/mkdocstrings-1.0.6/docs/css/apidocs.css 2026-04-15 10:54:04.248158700 
+0200
@@ -0,0 +1,21 @@
+/* Mark external links as such. */
+a.external::after,
+a.autorefs-external::after {
+  /* https://primer.style/octicons/arrow-up-right-24 */
+  mask-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg"; 
viewBox="0 0 24 24"><path d="M18.25 15.5a.75.75 0 00.75-.75v-9a.75.75 0 
00-.75-.75h-9a.75.75 0 000 1.5h7.19L6.22 16.72a.75.75 0 101.06 1.06L17.5 
7.56v7.19c0 .414.336.75.75.75z"></path></svg>');
+  -webkit-mask-image: url('data:image/svg+xml,<svg 
xmlns="http://www.w3.org/2000/svg"; viewBox="0 0 24 24"><path d="M18.25 
15.5a.75.75 0 00.75-.75v-9a.75.75 0 00-.75-.75h-9a.75.75 0 000 1.5h7.19L6.22 
16.72a.75.75 0 101.06 1.06L17.5 7.56v7.19c0 .414.336.75.75.75z"></path></svg>');
+  content: ' ';
+
+  display: inline-block;
+  vertical-align: middle;
+  position: relative;
+
+  height: 1em;
+  width: 1em;
+  background-color: currentColor;
+}
+
+a.external:hover::after,
+a.autorefs-external:hover::after {
+  background-color: var(--md-accent-fg-color);
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/mkdocstrings-1.0.3/docs/css/material.css 
new/mkdocstrings-1.0.6/docs/css/material.css
--- old/mkdocstrings-1.0.3/docs/css/material.css        2025-07-23 
01:58:10.937153600 +0200
+++ new/mkdocstrings-1.0.6/docs/css/material.css        1970-01-01 
01:00:00.000000000 +0100
@@ -1,4 +0,0 @@
-/* More space at the bottom of the page. */
-.md-main__inner {
-  margin-bottom: 1.5rem;
-}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/mkdocstrings-1.0.3/docs/css/mkdocstrings.css 
new/mkdocstrings-1.0.6/docs/css/mkdocstrings.css
--- old/mkdocstrings-1.0.3/docs/css/mkdocstrings.css    2026-02-05 
18:35:00.603050000 +0100
+++ new/mkdocstrings-1.0.6/docs/css/mkdocstrings.css    1970-01-01 
01:00:00.000000000 +0100
@@ -1,82 +0,0 @@
-/* Indentation. */
-div.doc-contents:not(.first) {
-  padding-left: 25px;
-  border-left: .05rem solid var(--md-typeset-table-color);
-}
-
-/* Mark external links as such. */
-a.external::after,
-a.autorefs-external::after {
-  /* https://primer.style/octicons/arrow-up-right-24 */
-  mask-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg"; 
viewBox="0 0 24 24"><path d="M18.25 15.5a.75.75 0 00.75-.75v-9a.75.75 0 
00-.75-.75h-9a.75.75 0 000 1.5h7.19L6.22 16.72a.75.75 0 101.06 1.06L17.5 
7.56v7.19c0 .414.336.75.75.75z"></path></svg>');
-  -webkit-mask-image: url('data:image/svg+xml,<svg 
xmlns="http://www.w3.org/2000/svg"; viewBox="0 0 24 24"><path d="M18.25 
15.5a.75.75 0 00.75-.75v-9a.75.75 0 00-.75-.75h-9a.75.75 0 000 1.5h7.19L6.22 
16.72a.75.75 0 101.06 1.06L17.5 7.56v7.19c0 .414.336.75.75.75z"></path></svg>');
-  content: ' ';
-
-  display: inline-block;
-  vertical-align: middle;
-  position: relative;
-
-  height: 1em;
-  width: 1em;
-  background-color: currentColor;
-}
-
-a.external:hover::after,
-a.autorefs-external:hover::after {
-  background-color: var(--md-accent-fg-color);
-}
-
-/* Avoid breaking parameters name, etc. in table cells. */
-td code {
-  word-break: normal !important;
-}
-
-/* Hide parameters in ToC. */
-li.md-nav__item:has(> a[href*="("]) {
-  display: none;
-}
-
-/* Tree-like output for backlinks. */
-.doc-backlink-list {
-  --tree-clr: var(--md-default-fg-color);
-  --tree-font-size: 1rem;
-  --tree-item-height: 1;
-  --tree-offset: 1rem;
-  --tree-thickness: 1px;
-  --tree-style: solid;
-  display: grid;
-  list-style: none !important;
-}
-
-.doc-backlink-list li > span:first-child {
-  text-indent: .3rem;
-}
-.doc-backlink-list li {
-  padding-inline-start: var(--tree-offset);
-  border-left: var(--tree-thickness) var(--tree-style) var(--tree-clr);
-  position: relative;
-  margin-left: 0 !important;
-
-  &:last-child {
-    border-color: transparent;
-  }
-  &::before{
-    content: '';
-    position: absolute;
-    top: calc(var(--tree-item-height) / 2 * -1 * var(--tree-font-size) + 
var(--tree-thickness));
-    left: calc(var(--tree-thickness) * -1);
-    width: calc(var(--tree-offset) + var(--tree-thickness) * 2);
-    height: calc(var(--tree-item-height)  * var(--tree-font-size));
-    border-left: var(--tree-thickness) var(--tree-style) var(--tree-clr);
-    border-bottom: var(--tree-thickness) var(--tree-style) var(--tree-clr);
-  }
-  &::after{
-    content: '';
-    position: absolute;
-    border-radius: 50%;
-    background-color: var(--tree-clr);
-    top: calc(var(--tree-item-height) / 2 * 1rem);
-    left: var(--tree-offset) ;
-    translate: calc(var(--tree-thickness) * -1) calc(var(--tree-thickness) * 
-1);
-  }
-}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/mkdocstrings-1.0.3/duties.py 
new/mkdocstrings-1.0.6/duties.py
--- old/mkdocstrings-1.0.3/duties.py    2026-02-05 18:49:06.144284500 +0100
+++ new/mkdocstrings-1.0.6/duties.py    2026-07-10 12:43:44.786940600 +0200
@@ -35,7 +35,7 @@
 def _get_changelog_version() -> str:
     changelog_version_re = re.compile(r"^## \[(\d+\.\d+\.\d+)\].*$")
     with Path(__file__).parent.joinpath("CHANGELOG.md").open("r", 
encoding="utf8") as file:
-        return next(filter(bool, map(changelog_version_re.match, 
file))).group(1)  # ty: ignore[invalid-argument-type]
+        return next(filter(bool, map(changelog_version_re.match, 
file))).group(1)  # ty: ignore[unresolved-attribute]
 
 
 @duty
@@ -58,7 +58,7 @@
 def check_quality(ctx: Context) -> None:
     """Check the code quality."""
     ctx.run(
-        tools.ruff.check(*PY_SRC_LIST, config="config/ruff.toml"),
+        tools.ruff.check(*PY_SRC_LIST, config="config/ruff.toml", color=True),
         title=pyprefix("Checking code quality"),
     )
 
@@ -66,10 +66,8 @@
 @duty(nofail=PY_VERSION == PY_DEV)
 def check_docs(ctx: Context) -> None:
     """Check if the documentation builds correctly."""
-    Path("htmlcov").mkdir(parents=True, exist_ok=True)
-    Path("htmlcov/index.html").touch(exist_ok=True)
     ctx.run(
-        tools.mkdocs.build(strict=True, verbose=True),
+        tools.zensical.build(strict=True),
         title=pyprefix("Building documentation"),
     )
 
@@ -109,7 +107,7 @@
         port: The port to serve the docs on.
     """
     ctx.run(
-        tools.mkdocs.serve(dev_addr=f"{host}:{port}").add_args(*cli_args),
+        tools.zensical.serve(dev_addr=f"{host}:{port}").add_args(*cli_args),
         title="Serving documentation",
         capture=False,
     )
@@ -118,8 +116,22 @@
 @duty
 def docs_deploy(ctx: Context) -> None:
     """Deploy the documentation to GitHub pages."""
-    os.environ["DEPLOY"] = "true"
-    ctx.run(tools.mkdocs.gh_deploy(remote_name="org-pages", force=True), 
title="Deploying documentation")
+    from ghp_import import ghp_import  # noqa: PLC0415
+
+    ctx.run(tools.zensical.build(), title="Building documentation site")
+    ctx.run(
+        ghp_import,
+        kwargs={
+            "srcdir": "site",
+            "mesg": "chore: Update documentation",
+            "push": True,
+            "force": True,
+            "remote": "org-pages",
+        },
+        title="Deploying site to GitHub Pages",
+        command="ghp-import site -r org-pages -fpm 'chore: Update 
documentation'",
+        pty=PTY,
+    )
 
 
 @duty
@@ -136,8 +148,8 @@
 def build(ctx: Context) -> None:
     """Build source and wheel distributions."""
     ctx.run(
-        tools.build(),
-        title="Building source and wheel distributions",
+        ["uv", "build"],
+        title="Building distributions",
         pty=PTY,
     )
 
@@ -147,10 +159,10 @@
     """Publish source and wheel distributions to PyPI."""
     if not Path("dist").exists():
         ctx.run("false", title="No distribution files found")
-    dists = [str(dist) for dist in Path("dist").iterdir()]
+    dists = [str(dist) for dist in Path("dist").iterdir() if dist.suffix in 
(".gz", ".whl")]
     ctx.run(
         tools.twine.upload(*dists, skip_existing=True),
-        title="Publishing source and wheel distributions to PyPI",
+        title="Publishing distributions to PyPI",
         pty=PTY,
     )
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/mkdocstrings-1.0.3/mkdocs.yml 
new/mkdocstrings-1.0.6/mkdocs.yml
--- old/mkdocstrings-1.0.3/mkdocs.yml   2026-02-05 18:35:00.603156000 +0100
+++ new/mkdocstrings-1.0.6/mkdocs.yml   1970-01-01 01:00:00.000000000 +0100
@@ -1,209 +0,0 @@
-site_name: "mkdocstrings"
-site_description: "Automatic documentation from sources, for MkDocs."
-site_url: "https://mkdocstrings.github.io/";
-repo_url: "https://github.com/mkdocstrings/mkdocstrings";
-repo_name: "mkdocstrings/mkdocstrings"
-site_dir: "site"
-watch: [mkdocs.yml, README.md, CONTRIBUTING.md, CHANGELOG.md, src/mkdocstrings]
-copyright: Copyright &copy; 2019 Timothée Mazzucotelli
-edit_uri: edit/main/docs/
-
-validation:
-  omitted_files: warn
-  absolute_links: warn
-  unrecognized_links: warn
-
-nav:
-- Home:
-  - Overview: index.md
-  - Changelog: changelog.md
-  - Credits: credits.md
-  - License: license.md
-- Usage:
-  - usage/index.md
-  - Theming: usage/theming.md
-  - Handlers: usage/handlers.md
-  - All handlers:
-    - C: https://mkdocstrings.github.io/c/
-    - Crystal: https://mkdocstrings.github.io/crystal/
-    - GitHub Actions: https://watermarkhu.nl/mkdocstrings-github/
-    - Python: https://mkdocstrings.github.io/python/
-    - Python (Legacy): https://mkdocstrings.github.io/python-legacy/
-    - MATLAB: https://watermarkhu.nl/mkdocstrings-matlab/
-    - Shell: https://mkdocstrings.github.io/shell/
-    - TypeScript: https://mkdocstrings.github.io/typescript/
-    - VBA: https://pypi.org/project/mkdocstrings-vba
-  - Guides:
-    - Recipes: recipes.md
-    - Troubleshooting: troubleshooting.md
-- API reference: reference/api.md
-- Development:
-  - Contributing: contributing.md
-  - Code of Conduct: code_of_conduct.md
-  - Coverage report: coverage.md
-- Author's website: https://pawamoy.github.io/
-
-theme:
-  name: material
-  logo: logo.svg
-  custom_dir: docs/.overrides
-  features:
-  - announce.dismiss
-  - content.action.edit
-  - content.action.view
-  - content.code.annotate
-  - content.code.copy
-  - content.tooltips
-  - navigation.footer
-  - navigation.instant.preview
-  - navigation.path
-  - navigation.sections
-  - navigation.tabs
-  - navigation.tabs.sticky
-  - navigation.top
-  - search.highlight
-  - search.suggest
-  - toc.follow
-  palette:
-  - media: "(prefers-color-scheme)"
-    toggle:
-      icon: material/brightness-auto
-      name: Switch to light mode
-  - media: "(prefers-color-scheme: light)"
-    scheme: default
-    primary: teal
-    accent: purple
-    toggle:
-      icon: material/weather-sunny
-      name: Switch to dark mode
-  - media: "(prefers-color-scheme: dark)"
-    scheme: slate
-    primary: black
-    accent: lime
-    toggle:
-      icon: material/weather-night
-      name: Switch to system preference
-
-extra_css:
-- css/style.css
-- css/material.css
-- css/mkdocstrings.css
-
-extra_javascript:
-- js/feedback.js
-
-markdown_extensions:
-- attr_list
-- admonition
-- callouts:
-    strip_period: false
-- footnotes
-- pymdownx.details
-- pymdownx.emoji:
-    emoji_index: !!python/name:material.extensions.emoji.twemoji
-    emoji_generator: !!python/name:material.extensions.emoji.to_svg
-- pymdownx.highlight:
-    pygments_lang_class: true
-- pymdownx.magiclink
-- pymdownx.snippets:
-    base_path: [!relative $config_dir]
-    check_paths: true
-- pymdownx.superfences
-- pymdownx.tabbed:
-    alternate_style: true
-    slugify: !!python/object/apply:pymdownx.slugs.slugify
-      kwds:
-        case: lower
-- pymdownx.tasklist:
-    custom_checkbox: true
-- pymdownx.tilde
-- toc:
-    permalink: "¤"
-
-plugins:
-- search
-- autorefs
-- markdown-exec
-- section-index
-- coverage
-- mkdocstrings:
-    handlers:
-      python:
-        inventories:
-        - https://docs.python.org/3/objects.inv
-        - https://installer.readthedocs.io/en/stable/objects.inv  # 
demonstration purpose in the docs
-        - https://mkdocstrings.github.io/autorefs/objects.inv
-        - https://www.mkdocs.org/objects.inv
-        - https://python-markdown.github.io/objects.inv
-        - https://jinja.palletsprojects.com/en/stable/objects.inv
-        - https://markupsafe.palletsprojects.com/en/stable/objects.inv
-        paths: [src]
-        options:
-          backlinks: tree
-          docstring_options:
-            ignore_init_summary: true
-          docstring_section_style: list
-          filters: ["!^_"]
-          heading_level: 1
-          inherited_members: true
-          merge_init_into_class: true
-          parameter_headings: true
-          separate_signature: true
-          show_root_heading: true
-          show_root_full_path: false
-          show_signature_annotations: true
-          show_source: true
-          show_symbol_type_heading: true
-          show_symbol_type_toc: true
-          signature_crossrefs: true
-          summary: true
-- llmstxt:
-    full_output: llms-full.txt
-    sections:
-      Usage:
-      - index.md
-      - usage/index.md
-      - usage/handlers.md
-      - usage/theming.md
-      - recipes.md
-      - troubleshooting.md
-      API:
-      - reference/api.md
-- git-revision-date-localized:
-    enabled: !ENV [DEPLOY, false]
-    enable_creation_date: true
-    type: timeago
-- redirects:
-    redirect_maps:
-      theming.md: usage/theming.md
-      handlers/overview.md: usage/handlers.md
-      reference/mkdocstrings.md: reference/api.md
-      reference/index.md: reference/api.md#mkdocstrings
-- minify:
-    minify_html: !ENV [DEPLOY, false]
-- typeset
-
-extra:
-  social:
-  - icon: fontawesome/brands/github
-    link: https://github.com/pawamoy
-  - icon: fontawesome/brands/mastodon
-    link: https://fosstodon.org/@pawamoy
-  - icon: fontawesome/brands/twitter
-    link: https://twitter.com/pawamoy
-  - icon: fontawesome/brands/gitter
-    link: https://gitter.im/mkdocstrings/community
-  - icon: fontawesome/brands/python
-    link: https://pypi.org/project/mkdocstrings/
-  analytics:
-    feedback:
-      title: Was this page helpful?
-      ratings:
-        - icon: material/emoticon-happy-outline
-          name: This page was helpful
-          data: 1
-          note: Thanks for your feedback!
-        - icon: material/emoticon-sad-outline
-          name: This page could be improved
-          data: 0
-          note: Let us know how we can improve this page.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/mkdocstrings-1.0.3/pyproject.toml 
new/mkdocstrings-1.0.6/pyproject.toml
--- old/mkdocstrings-1.0.3/pyproject.toml       2026-02-07 15:31:35.132069300 
+0100
+++ new/mkdocstrings-1.0.6/pyproject.toml       2026-07-11 21:37:57.548427600 
+0200
@@ -49,7 +49,7 @@
     "mkdocs-autorefs>=1.4",
     "pymdown-extensions>=6.3",
 ]
-version = "1.0.3"
+version = "1.0.6"
 
 [project.optional-dependencies]
 crystal = [
@@ -90,7 +90,7 @@
     "share",
     "tests",
     "duties.py",
-    "mkdocs.yml",
+    "zensical.toml",
     "*.md",
     "LICENSE",
 ]
@@ -109,7 +109,6 @@
 
 [dependency-groups]
 maintain = [
-    "build>=1.2",
     "git-changelog>=2.5",
     "twine>=5.1",
     "yore>=0.3.3",
@@ -117,26 +116,21 @@
 ci = [
     "dirty-equals>=0.9",
     "duty>=1.6",
-    "ruff>=0.4",
+    "griffe>=2.0",
     "pytest>=8.2",
     "pytest-cov>=5.0",
     "pytest-randomly>=3.15",
     "pytest-xdist>=3.6",
+    "ruff>=0.4",
     "ty>=0.0.14",
     "types-markdown>=3.6",
     "types-pyyaml>=6.0",
 ]
 docs = [
+    "ghp-import>=2.1",
     "markdown-callouts>=0.4",
     "markdown-exec>=1.8",
-    "mkdocs>=1.6",
-    "mkdocs-coverage>=1.0",
-    "mkdocs-git-revision-date-localized-plugin>=1.2",
-    "mkdocs-llmstxt>=0.2",
-    "mkdocs-material>=9.5",
-    "mkdocs-minify-plugin>=0.8",
-    "mkdocs-redirects>=1.2.1",
-    "mkdocs-section-index>=0.3",
-    "mkdocstrings-python>=2.0",
+    "mkdocstrings[python]>=0.29",
     "tomli>=2.0; python_version < '3.11'",
+    "zensical>=0.0.21",
 ]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/mkdocstrings-1.0.3/scripts/gen_credits.py 
new/mkdocstrings-1.0.6/scripts/gen_credits.py
--- old/mkdocstrings-1.0.3/scripts/gen_credits.py       2026-02-05 
18:34:51.345126200 +0100
+++ new/mkdocstrings-1.0.6/scripts/gen_credits.py       2026-05-21 
15:02:57.180529800 +0200
@@ -2,7 +2,6 @@
 
 from __future__ import annotations
 
-import os
 import sys
 from collections import defaultdict
 from collections.abc import Iterable
@@ -10,7 +9,6 @@
 from itertools import chain
 from pathlib import Path
 from textwrap import dedent
-from typing import Union
 
 from jinja2 import StrictUndefined
 from jinja2.sandbox import SandboxedEnvironment
@@ -22,14 +20,14 @@
 else:
     import tomli as tomllib
 
-project_dir = Path(os.getenv("MKDOCS_CONFIG_DIR", "."))
+project_dir = Path.cwd()
 with project_dir.joinpath("pyproject.toml").open("rb") as pyproject_file:
     pyproject = tomllib.load(pyproject_file)
 project = pyproject["project"]
 project_name = project["name"]
 devdeps = [dep for group in pyproject["dependency-groups"].values() for dep in 
group if not dep.startswith("-e")]
 
-PackageMetadata = dict[str, Union[str, Iterable[str]]]
+PackageMetadata = dict[str, str | Iterable[str]]
 Metadata = dict[str, PackageMetadata]
 
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/mkdocstrings-1.0.3/scripts/get_version.py 
new/mkdocstrings-1.0.6/scripts/get_version.py
--- old/mkdocstrings-1.0.3/scripts/get_version.py       2026-02-05 
18:34:51.321406000 +0100
+++ new/mkdocstrings-1.0.6/scripts/get_version.py       2026-07-10 
12:43:53.692831000 +0200
@@ -22,7 +22,7 @@
     if scm_version.version <= Version("0.1"):  # Missing Git tags?
         with suppress(OSError, StopIteration):  # noqa: SIM117
             with _changelog.open("r", encoding="utf8") as file:
-                match = next(filter(None, map(_changelog_version_re.match, 
file)))  # ty: ignore[invalid-argument-type]
+                match = next(filter(None, map(_changelog_version_re.match, 
file)))
                 scm_version = 
scm_version._replace(version=Version(match.group(1)))
     return default_version_formatter(scm_version)
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/mkdocstrings-1.0.3/src/mkdocstrings/_internal/download.py 
new/mkdocstrings-1.0.6/src/mkdocstrings/_internal/download.py
--- old/mkdocstrings-1.0.3/src/mkdocstrings/_internal/download.py       
2026-02-05 18:54:29.505668400 +0100
+++ new/mkdocstrings-1.0.6/src/mkdocstrings/_internal/download.py       
2026-05-21 15:02:57.180529800 +0200
@@ -19,6 +19,9 @@
 # Regex pattern for an environment variable in the form ${ENV_VAR}.
 _ENV_VAR_PATTERN = re.compile(r"\$\{([A-Za-z_][A-Za-z0-9_]*)\}")
 
+# Timeout in seconds for downloading.
+_TIMEOUT = 10
+
 
 def _download_url_with_gz(url: str) -> bytes:
     url, auth_header = _extract_auth_from_url(url)
@@ -27,7 +30,7 @@
         url,
         headers={"Accept-Encoding": "gzip", "User-Agent": 
"mkdocstrings/0.15.0", **auth_header},
     )
-    with urllib.request.urlopen(req) as resp:  # noqa: S310
+    with urllib.request.urlopen(req, timeout=_TIMEOUT) as resp:  # noqa: S310
         content: BinaryIO = resp
         if "gzip" in resp.headers.get("content-encoding", ""):
             content = gzip.GzipFile(fileobj=resp)  # ty: 
ignore[invalid-assignment]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/mkdocstrings-1.0.3/src/mkdocstrings/_internal/extension.py 
new/mkdocstrings-1.0.6/src/mkdocstrings/_internal/extension.py
--- old/mkdocstrings-1.0.3/src/mkdocstrings/_internal/extension.py      
2026-02-07 13:23:42.653612900 +0100
+++ new/mkdocstrings-1.0.6/src/mkdocstrings/_internal/extension.py      
2026-05-21 15:02:57.180529800 +0200
@@ -432,7 +432,7 @@
     global _AUTOREFS  # noqa: PLW0603
     if _AUTOREFS is None:
         _AUTOREFS = AutorefsPlugin()
-        _AUTOREFS.config = AutorefsConfig()
+        _AUTOREFS.config = AutorefsConfig()  # ty:ignore[invalid-assignment]
         _AUTOREFS.config.resolve_closest = True
         _AUTOREFS.config.link_titles = "auto"
         _AUTOREFS.config.strip_title_tags = "auto"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/mkdocstrings-1.0.3/src/mkdocstrings/_internal/handlers/base.py 
new/mkdocstrings-1.0.6/src/mkdocstrings/_internal/handlers/base.py
--- old/mkdocstrings-1.0.3/src/mkdocstrings/_internal/handlers/base.py  
2026-02-05 18:53:46.840261700 +0100
+++ new/mkdocstrings-1.0.6/src/mkdocstrings/_internal/handlers/base.py  
2026-07-11 21:31:44.583777000 +0200
@@ -178,7 +178,7 @@
         self.env.filters["convert_markdown"] = self.do_convert_markdown
         self.env.filters["heading"] = self.do_heading
         self.env.filters["any"] = do_any
-        self.env.globals["log"] = get_template_logger(self.name)
+        self.env.globals["log"] = get_template_logger(self.name)  # 
ty:ignore[invalid-assignment]
 
     @property
     def md(self) -> Markdown:
@@ -376,7 +376,7 @@
             if BacklinksTreeProcessor.name in treeprocessors:
                 treeprocessors[BacklinksTreeProcessor.name].initial_id = None
             if AutorefsInlineProcessor.name in self.md.inlinePatterns:
-                self.md.inlinePatterns[AutorefsInlineProcessor.name].hook = 
None
+                self.md.inlinePatterns[AutorefsInlineProcessor.name].hook = 
None  # ty: ignore[unresolved-attribute]
             self.md.reset()
             _markdown_conversion_layer -= 1
 
@@ -466,7 +466,17 @@
 
     def _update_env(self, md: Markdown, *, config: Any | None = None) -> None:
         """Update our handler to point to our configured Markdown instance, 
grabbing some of the config from `md`."""
-        extensions: list[str | Extension] = [*self.mdx, 
MkdocstringsInnerExtension(self._headings)]
+        # Remove extensions that are not useful in the inner conversion layer.
+        # Zensical's `preview` is especially problematic because it expects to 
find
+        # the `zrelpath` treeprocessor while this treeprocessor is registered 
"manually"
+        # by Zensical, meaning that mkdocstrings cannot propagate it naturally.
+        # Previously we did propagate it ourselves, but Zensical recently 
started
+        # applying its logic onto HTML stashes, meaning the logic was applied 
twice:
+        # once by mkdocstrings-propagated `zrelpath` treeprocessor, and a 
second time
+        # by Zensical's `zrelpath` postprocessor. See zensical/zensical#818.
+        remove_names = ("zensical.extensions.preview",)
+        mdx = [ext for ext in self.mdx if ext not in remove_names]
+        extensions: list[str | Extension] = [*mdx, 
MkdocstringsInnerExtension(self._headings)]
 
         new_md = Markdown(extensions=extensions, 
extension_configs=self.mdx_config)
 
@@ -475,10 +485,6 @@
             relpath = md.treeprocessors["relpath"]
             new_relpath = type(relpath)(relpath.file, relpath.files, 
relpath.config)
             new_md.treeprocessors.register(new_relpath, "relpath", priority=0)
-        elif "zrelpath" in md.treeprocessors:
-            zrelpath = md.treeprocessors["zrelpath"]
-            new_zrelpath = type(zrelpath)(new_md, zrelpath.path, 
zrelpath.use_directory_urls)
-            new_md.treeprocessors.register(new_zrelpath, "zrelpath", 
priority=0)
 
         self._md = new_md
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/mkdocstrings-1.0.3/src/mkdocstrings/_internal/inventory.py 
new/mkdocstrings-1.0.6/src/mkdocstrings/_internal/inventory.py
--- old/mkdocstrings-1.0.3/src/mkdocstrings/_internal/inventory.py      
2025-07-23 01:58:11.016069200 +0200
+++ new/mkdocstrings-1.0.6/src/mkdocstrings/_internal/inventory.py      
2026-07-10 12:45:31.627627400 +0200
@@ -174,12 +174,15 @@
         Returns:
             An inventory containing the collected items.
         """
-        for _ in range(4):
-            in_file.readline()
+        in_file.readline()  # "Sphinx inventory version X"
+        project = in_file.readline().removeprefix(b"# Project: 
").decode("utf8").rstrip()
+        version = in_file.readline().removeprefix(b"# Version: 
").decode("utf8").rstrip()
+        in_file.readline()  # "The remainder of this file is compressed using 
zlib"
+
         lines = zlib.decompress(in_file.read()).splitlines()
         items: list[InventoryItem] = [
             item for line in lines if (item := 
InventoryItem.parse_sphinx(line.decode("utf8"), return_none=True))
         ]
         if domain_filter:
             items = [item for item in items if item.domain in domain_filter]
-        return cls(items)
+        return cls(items, project=project, version=version)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/mkdocstrings-1.0.3/src/mkdocstrings/_internal/loggers.py 
new/mkdocstrings-1.0.6/src/mkdocstrings/_internal/loggers.py
--- old/mkdocstrings-1.0.3/src/mkdocstrings/_internal/loggers.py        
2026-02-05 18:52:08.417687200 +0100
+++ new/mkdocstrings-1.0.6/src/mkdocstrings/_internal/loggers.py        
2026-05-21 15:02:57.195529500 +0200
@@ -5,12 +5,12 @@
 import logging
 from contextlib import suppress
 from pathlib import Path
-from typing import TYPE_CHECKING, Any, Callable
+from typing import TYPE_CHECKING, Any
 
 from jinja2 import pass_context
 
 if TYPE_CHECKING:
-    from collections.abc import MutableMapping, Sequence
+    from collections.abc import Callable, MutableMapping, Sequence
 
     from jinja2.runtime import Context
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/mkdocstrings-1.0.3/src/mkdocstrings/_internal/plugin.py 
new/mkdocstrings-1.0.6/src/mkdocstrings/_internal/plugin.py
--- old/mkdocstrings-1.0.3/src/mkdocstrings/_internal/plugin.py 2026-02-05 
18:52:42.960477000 +0100
+++ new/mkdocstrings-1.0.6/src/mkdocstrings/_internal/plugin.py 2026-05-21 
15:02:57.195529500 +0200
@@ -161,7 +161,7 @@
         except KeyError:
             # Otherwise, add a limited instance of it that acts only on what's 
added through `register_anchor`.
             autorefs = AutorefsPlugin()
-            autorefs.config = AutorefsConfig()
+            autorefs.config = AutorefsConfig()  # ty:ignore[invalid-assignment]
             autorefs.scan_toc = False
             config.plugins["autorefs"] = autorefs
             _logger.debug("Added a subdued autorefs instance %r", autorefs)
@@ -199,7 +199,7 @@
     @event_priority(50)  # Early, before autorefs' starts applying cross-refs 
and collecting backlinks.
     def _on_env_load_inventories(self, env: Environment, config: MkDocsConfig, 
*args: Any, **kwargs: Any) -> None:  # noqa: ARG002
         if self.plugin_enabled and self._handlers:
-            register = config.plugins["autorefs"].register_url  # ty: 
ignore[possibly-missing-attribute]
+            register = config.plugins["autorefs"].register_url  # ty: 
ignore[unresolved-attribute]
             for identifier, url in self._handlers._yield_inventory_items():
                 register(identifier, url)
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/mkdocstrings-1.0.3/tests/conftest.py 
new/mkdocstrings-1.0.6/tests/conftest.py
--- old/mkdocstrings-1.0.3/tests/conftest.py    2026-02-05 18:49:45.048784700 
+0100
+++ new/mkdocstrings-1.0.6/tests/conftest.py    2026-05-21 15:02:57.195529500 
+0200
@@ -33,7 +33,7 @@
         **getattr(request, "param", {}),
     }
     # Re-create it manually as a workaround for 
https://github.com/mkdocs/mkdocs/issues/2289
-    mdx_configs: dict[str, Any] = 
dict(ChainMap(*conf_dict.get("markdown_extensions", [])))  # ty: 
ignore[invalid-argument-type]
+    mdx_configs: dict[str, Any] = 
dict(ChainMap(*conf_dict.get("markdown_extensions", [])))  # ty: 
ignore[invalid-argument-type,invalid-assignment]
 
     conf.load_dict(conf_dict)
     assert conf.validate() == ([], [])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/mkdocstrings-1.0.3/tests/test_api.py 
new/mkdocstrings-1.0.6/tests/test_api.py
--- old/mkdocstrings-1.0.3/tests/test_api.py    2026-02-05 18:35:00.603239800 
+0100
+++ new/mkdocstrings-1.0.6/tests/test_api.py    2026-05-21 15:02:57.196529600 
+0200
@@ -141,7 +141,7 @@
         for obj in public_objects
         if obj.name not in ignore_names and obj.path not in inventory
     ]
-    msg = "Objects not in the inventory (try running `make run mkdocs 
build`):\n{paths}"
+    msg = "Objects not in the inventory (try running `make run zensical build 
--clean`):\n{paths}"
     assert not not_in_inventory, 
msg.format(paths="\n".join(sorted(not_in_inventory)))
 
 
@@ -164,7 +164,7 @@
 
             if obj.path not in public_api_paths and not any(path in 
public_api_paths for path in obj.aliases):
                 not_in_api.append(item.name)
-    msg = "Inventory objects not in public API (try running `make run mkdocs 
build`):\n{paths}"
+    msg = "Inventory objects not in public API (try running `make run zensical 
build --clean`):\n{paths}"
     assert not not_in_api, msg.format(paths="\n".join(sorted(not_in_api)))
 
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/mkdocstrings-1.0.3/tests/test_extension.py 
new/mkdocstrings-1.0.6/tests/test_extension.py
--- old/mkdocstrings-1.0.3/tests/test_extension.py      2026-02-05 
18:51:26.194103500 +0100
+++ new/mkdocstrings-1.0.6/tests/test_extension.py      2026-05-21 
15:02:57.197529600 +0200
@@ -154,7 +154,7 @@
 
 def test_register_every_identifier_alias(plugin: MkdocstringsPlugin, 
ext_markdown: Markdown) -> None:
     """Assert that we don't preemptively register all identifiers of a 
rendered object."""
-    handler = plugin._handlers.get_handler("python")  # ty: 
ignore[possibly-missing-attribute]
+    handler = plugin._handlers.get_handler("python")  # ty: 
ignore[unresolved-attribute]
     ids = ("id1", "id2", "id3")
     handler.get_aliases = lambda _: ids  # ty: ignore[invalid-assignment]
     autorefs = ext_markdown.parser.blockprocessors["mkdocstrings"]._autorefs
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/mkdocstrings-1.0.3/tests/test_handlers.py 
new/mkdocstrings-1.0.6/tests/test_handlers.py
--- old/mkdocstrings-1.0.3/tests/test_handlers.py       2026-02-05 
18:51:02.048111700 +0100
+++ new/mkdocstrings-1.0.6/tests/test_handlers.py       2026-05-21 
15:02:57.197529600 +0200
@@ -62,7 +62,7 @@
         tmp_path: Temporary folder.
         plugin: Instance of our plugin.
     """
-    handler = plugin._handlers.get_handler("python")  # ty: 
ignore[possibly-missing-attribute]
+    handler = plugin._handlers.get_handler("python")  # ty: 
ignore[unresolved-attribute]
 
     # monkeypatch Jinja env search path
     search_paths = [
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/mkdocstrings-1.0.3/tests/test_inventory.py 
new/mkdocstrings-1.0.6/tests/test_inventory.py
--- old/mkdocstrings-1.0.3/tests/test_inventory.py      2026-02-05 
18:39:17.173590200 +0100
+++ new/mkdocstrings-1.0.6/tests/test_inventory.py      2026-07-10 
12:41:46.544393500 +0200
@@ -83,3 +83,11 @@
         assert round_tripped_item.uri == value.uri
         assert round_tripped_item.priority == value.priority
         assert round_tripped_item.dispname == value.dispname.splitlines()[0]
+
+
+def test_parse_inventory_project_and_version() -> None:
+    """Parse project and version in inventory header."""
+    base_inv = Inventory(project="hello", version="1000")
+    parsed_inv = Inventory.parse_sphinx(BytesIO(base_inv.format_sphinx()))
+    assert base_inv.project == parsed_inv.project
+    assert base_inv.version == parsed_inv.version
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/mkdocstrings-1.0.3/zensical.toml 
new/mkdocstrings-1.0.6/zensical.toml
--- old/mkdocstrings-1.0.3/zensical.toml        1970-01-01 01:00:00.000000000 
+0100
+++ new/mkdocstrings-1.0.6/zensical.toml        2026-04-15 11:03:31.633040200 
+0200
@@ -0,0 +1,214 @@
+[project]
+site_name = "mkdocstrings"
+site_description = "Automatic documentation from sources, for MkDocs."
+site_author = "Timothée Mazzucotelli"
+site_url = "https://mkdocstrings.github.io/mkdocstrings";
+repo_url = "https://github.com/mkdocstrings/mkdocstrings";
+repo_name = "mkdocstrings/mkdocstrings"
+copyright = "Copyright &copy; 2019 Timothée Mazzucotelli"
+extra_css = ["css/apidocs.css"]
+extra_javascript = ["js/feedback.js"]
+nav = [
+  { "Home" = [
+    { "Overview" = "index.md" },
+    { "Changelog" = "changelog.md" },
+    { "Credits" = "credits.md" },
+    { "License" = "license.md" },
+  ] },
+  { "Usage" = [
+    "usage/index.md",
+    { "Theming" = "usage/theming.md" },
+    { "Handlers" = "usage/handlers.md" },
+    { "All handlers" = [
+      { "C" = "https://mkdocstrings.github.io/c/"; },
+      { "Crystal" = "https://mkdocstrings.github.io/crystal/"; },
+      { "GitHub Actions" = "https://watermarkhu.nl/mkdocstrings-github/"; },
+      { "Python" = "https://mkdocstrings.github.io/python/"; },
+      { "Python (Legacy)" = "https://mkdocstrings.github.io/python-legacy/"; },
+      { "MATLAB" = "https://watermarkhu.nl/mkdocstrings-matlab/"; },
+      { "Shell" = "https://mkdocstrings.github.io/shell/"; },
+      { "TypeScript" = "https://mkdocstrings.github.io/typescript/"; },
+      { "VBA" = "https://pypi.org/project/mkdocstrings-vba"; },
+    ] },
+    { "Guides" = [
+      { "Recipes" = "recipes.md" },
+      { "Troubleshooting" = "troubleshooting.md" },
+    ] },
+  ] },
+  { "API reference" = "reference/api.md" },
+  { "Development" = [
+    { "Contributing" = "contributing.md" },
+    { "Code of Conduct" = "code_of_conduct.md" },
+  ] },
+  { "Author's website" = "https://pawamoy.github.io"; },
+]
+
+# ----------------------------------------------------------------------------
+# Theme configuration
+# ----------------------------------------------------------------------------
+[project.theme]
+logo = "logo.svg"
+custom_dir = "docs/.overrides"
+language = "en"
+features = [
+    "announce.dismiss",
+    "content.action.edit",
+    "content.action.view",
+    "content.code.annotate",
+    "content.code.copy",
+    "content.code.select",
+    "content.footnote.tooltips",
+    "content.tabs.link",
+    "content.tooltips",
+    "navigation.footer",
+    "navigation.indexes",
+    "navigation.instant",
+    "navigation.instant.prefetch",
+    "navigation.path",
+    "navigation.sections",
+    "navigation.tabs",
+    "navigation.tabs.sticky",
+    "navigation.top",
+    "search.highlight",
+    "toc.follow",
+]
+
+[[project.theme.palette]]
+media = "(prefers-color-scheme)"
+toggle.icon = "material/brightness-auto"
+toggle.name = "Switch to light mode"
+
+[[project.theme.palette]]
+media = "(prefers-color-scheme: light)"
+scheme = "default"
+primary = "teal"
+accent = "purple"
+toggle.icon = "material/weather-sunny"
+toggle.name = "Switch to dark mode"
+
+[[project.theme.palette]]
+media = "(prefers-color-scheme: dark)"
+scheme = "slate"
+primary = "black"
+accent = "lime"
+toggle.icon = "material/weather-night"
+toggle.name = "Switch to system preference"
+
+[project.theme.icon]
+logo = "material/currency-sign"
+
+# ----------------------------------------------------------------------------
+# Social configuration
+# ----------------------------------------------------------------------------
+[[project.extra.social]]
+icon = "fontawesome/brands/github"
+link = "https://github.com/pawamoy";
+
+[[project.extra.social]]
+icon = "fontawesome/brands/mastodon"
+link = "https://fosstodon.org/@pawamoy";
+
+[[project.extra.social]]
+icon = "fontawesome/brands/twitter"
+link = "https://twitter.com/pawamoy";
+
+[[project.extra.social]]
+icon = "fontawesome/brands/gitter"
+link = "https://gitter.im/mkdocstrings/community";
+
+[[project.extra.social]]
+icon = "fontawesome/brands/python"
+link = "https://pypi.org/project/mkdocstrings/";
+
+[project.extra.analytics.feedback]
+title = "Was this page helpful?"
+
+[[project.extra.analytics.feedback.ratings]]
+icon = "material/emoticon-happy-outline"
+name = "This page was helpful"
+data = 1
+note = "Thank you for your feedback!"
+
+[[project.extra.analytics.feedback.ratings]]
+icon = "material/emoticon-sad-outline"
+name = "This page could be improved"
+data = 0
+note = "Let us know how we can improve this page."
+
+# ----------------------------------------------------------------------------
+# Markdown extensions configuration
+# ----------------------------------------------------------------------------
+[project.markdown_extensions.abbr]
+[project.markdown_extensions.admonition]
+[project.markdown_extensions.attr_list]
+[project.markdown_extensions.callouts]
+[project.markdown_extensions.def_list]
+[project.markdown_extensions.footnotes]
+[project.markdown_extensions.md_in_html]
+[project.markdown_extensions.toc]
+permalink = "¤"
+[project.markdown_extensions.pymdownx.arithmatex]
+generic = true
+[project.markdown_extensions.pymdownx.betterem]
+smart_enable = "all"
+[project.markdown_extensions.pymdownx.caret]
+[project.markdown_extensions.pymdownx.details]
+[project.markdown_extensions.pymdownx.emoji]
+emoji_generator = "zensical.extensions.emoji.to_svg"
+emoji_index = "zensical.extensions.emoji.twemoji"
+[project.markdown_extensions.pymdownx.highlight]
+[project.markdown_extensions.pymdownx.inlinehilite]
+[project.markdown_extensions.pymdownx.keys]
+[project.markdown_extensions.pymdownx.magiclink]
+[project.markdown_extensions.pymdownx.mark]
+[project.markdown_extensions.pymdownx.smartsymbols]
+[project.markdown_extensions.pymdownx.snippets]
+check_paths = true
+[project.markdown_extensions.pymdownx.superfences]
+[[project.markdown_extensions.pymdownx.superfences.custom_fences]]
+name = "python"
+class = "python"
+validator = "markdown_exec.validator"
+format = "markdown_exec.formatter"
+[project.markdown_extensions.pymdownx.tabbed]
+alternate_style = true
+[project.markdown_extensions.pymdownx.tasklist]
+custom_checkbox = true
+[project.markdown_extensions.pymdownx.tilde]
+[project.markdown_extensions.zensical.extensions.preview]
+configurations = [{targets.include = ["reference/api.md"]}]
+
+# ----------------------------------------------------------------------------
+# Plugins configuration
+# ----------------------------------------------------------------------------
+[project.plugins.mkdocstrings.handlers.python]
+paths = ["src"]
+inventories = [
+  "https://docs.python.org/3/objects.inv";,
+  "https://installer.readthedocs.io/en/stable/objects.inv";,  # demonstration 
purpose in the docs
+  "https://mkdocstrings.github.io/autorefs/objects.inv";,
+  "https://www.mkdocs.org/objects.inv";,
+  "https://python-markdown.github.io/objects.inv";,
+  "https://jinja.palletsprojects.com/en/stable/objects.inv";,
+  "https://markupsafe.palletsprojects.com/en/stable/objects.inv";,
+]
+
+[project.plugins.mkdocstrings.handlers.python.options]
+backlinks = "tree"
+docstring_options = { "ignore_init_summary" = true }
+docstring_section_style = "list"
+filters = "public"
+heading_level = 1
+inherited_members = true
+merge_init_into_class = true
+parameter_headings = true
+separate_signature = true
+show_root_heading = true
+show_root_full_path = false
+show_signature_annotations = true
+show_source = true
+show_symbol_type_heading = true
+show_symbol_type_toc = true
+signature_crossrefs = true
+summary = true
+unwrap_annotated = true

Reply via email to