mkdocs2confluence 0.7.24__tar.gz → 0.7.26__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/PKG-INFO +1 -1
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/pyproject.toml +1 -1
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs2confluence.egg-info/PKG-INFO +1 -1
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/publisher/client.py +10 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/publisher/pipeline.py +11 -5
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/LICENSE +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/README.md +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/setup.cfg +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs2confluence.egg-info/SOURCES.txt +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs2confluence.egg-info/dependency_links.txt +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs2confluence.egg-info/entry_points.txt +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs2confluence.egg-info/requires.txt +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs2confluence.egg-info/top_level.txt +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/__init__.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/cli.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/emitter/__init__.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/emitter/xhtml.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/ir/__init__.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/ir/document.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/ir/nodes.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/ir/treeutil.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/loader/__init__.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/loader/config.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/loader/extra_css.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/loader/nav.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/loader/page.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/parser/__init__.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/parser/markdown.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/pdf/__init__.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/pdf/generator.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/pdf/render.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/preprocess/__init__.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/preprocess/abbrevs.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/preprocess/fence.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/preprocess/frontmatter.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/preprocess/icons.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/preprocess/includes.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/preprocess/linkdefs.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/preview/__init__.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/preview/render.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/preview/server.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/publisher/__init__.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/transforms/__init__.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/transforms/abbrevs.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/transforms/assets.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/transforms/editlink.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/transforms/images.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/transforms/internallinks.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/transforms/mermaid.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/tests/test_abbrevs.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/tests/test_cli.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/tests/test_editlink.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/tests/test_emitter.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/tests/test_extra_css.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/tests/test_frontmatter.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/tests/test_icons.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/tests/test_images.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/tests/test_internallinks.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/tests/test_ir.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/tests/test_linkdefs.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/tests/test_loader.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/tests/test_mermaid.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/tests/test_page_loader.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/tests/test_parser.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/tests/test_pdf.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/tests/test_preprocess.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/tests/test_preview.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/tests/test_publish_client.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/tests/test_publish_config.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/tests/test_publish_pipeline.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/tests/test_server.py +0 -0
- {mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/tests/test_treeutil.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "mkdocs2confluence"
|
|
3
|
-
version = "0.7.
|
|
3
|
+
version = "0.7.26"
|
|
4
4
|
description = "Publish MkDocs Material pages to Confluence Cloud — admonitions, Mermaid diagrams, tabs, page properties and more"
|
|
5
5
|
readme = "README.md"
|
|
6
6
|
license = { text = "GPL-3.0-or-later" }
|
{mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/publisher/client.py
RENAMED
|
@@ -371,6 +371,7 @@ class ConfluenceClient:
|
|
|
371
371
|
Sends ``{id, name, color}`` when a matching space state is found, otherwise
|
|
372
372
|
falls back to ``{name, color}`` with a sensible default colour.
|
|
373
373
|
"""
|
|
374
|
+
import sys as _sys
|
|
374
375
|
def _normalize(s: str) -> str:
|
|
375
376
|
return s.lower().replace("-", " ").strip()
|
|
376
377
|
|
|
@@ -380,6 +381,10 @@ class ConfluenceClient:
|
|
|
380
381
|
# Fetch space states once per run (keyed by space so one run = one API call)
|
|
381
382
|
if cache_key not in self._space_states:
|
|
382
383
|
self._space_states[cache_key] = self._fetch_available_states(page_id)
|
|
384
|
+
print(
|
|
385
|
+
f" [status] space states fetched: {[s.get('name') for s in self._space_states[cache_key]]}",
|
|
386
|
+
file=_sys.stderr,
|
|
387
|
+
)
|
|
383
388
|
|
|
384
389
|
matched: dict[str, Any] | None = None
|
|
385
390
|
for state in self._space_states.get(cache_key, []):
|
|
@@ -393,6 +398,7 @@ class ConfluenceClient:
|
|
|
393
398
|
"name": matched["name"],
|
|
394
399
|
"color": matched["color"],
|
|
395
400
|
}
|
|
401
|
+
print(f" [status] matched space state: {body}", file=_sys.stderr)
|
|
396
402
|
else:
|
|
397
403
|
# Fall back: name + color (required together when no id)
|
|
398
404
|
_default_colors = {
|
|
@@ -404,9 +410,13 @@ class ConfluenceClient:
|
|
|
404
410
|
"outdated": "#ff7452",
|
|
405
411
|
}
|
|
406
412
|
body = {"name": name, "color": _default_colors.get(_normalize(name), "#2684ff")}
|
|
413
|
+
print(f" [status] no space state match — using fallback: {body}", file=_sys.stderr)
|
|
407
414
|
|
|
408
415
|
url = self._v1(f"/content/{page_id}/state")
|
|
409
416
|
resp = self._http.put(url, json=body)
|
|
417
|
+
print(f" [status] PUT {url} → HTTP {resp.status_code}", file=_sys.stderr)
|
|
418
|
+
if not resp.is_success:
|
|
419
|
+
print(f" [status] response body: {resp.text[:300]}", file=_sys.stderr)
|
|
410
420
|
self._raise_for_status(resp, f"set_page_status({page_id!r}, {status_key!r})")
|
|
411
421
|
|
|
412
422
|
def _fetch_available_states(self, page_id: str) -> list[dict[str, Any]]:
|
{mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/publisher/pipeline.py
RENAMED
|
@@ -664,7 +664,9 @@ def _post_process_action(
|
|
|
664
664
|
# Set Confluence page status (rough-draft / in-progress / etc.) — non-fatal.
|
|
665
665
|
if action.page_id and action.confluence_status and not action.is_folder:
|
|
666
666
|
try:
|
|
667
|
+
print(f" [status] setting '{action.confluence_status}' on page {action.page_id!r}...", file=sys.stderr)
|
|
667
668
|
client.set_page_status(action.page_id, action.confluence_status, space_key=space_key)
|
|
669
|
+
print(" [status] ok", file=sys.stderr)
|
|
668
670
|
except Exception as exc:
|
|
669
671
|
# Always print status errors — user configured status explicitly
|
|
670
672
|
print(f" [warn] could not set page status '{action.confluence_status}': {exc}", file=sys.stderr)
|
|
@@ -730,13 +732,17 @@ def execute_publish(
|
|
|
730
732
|
# Still apply status even for unchanged pages.
|
|
731
733
|
if action.page_id and action.confluence_status and not action.is_folder:
|
|
732
734
|
try:
|
|
735
|
+
print(
|
|
736
|
+
f" [status] setting '{action.confluence_status}' on page {action.page_id!r}...",
|
|
737
|
+
file=sys.stderr,
|
|
738
|
+
)
|
|
733
739
|
client.set_page_status(action.page_id, action.confluence_status, space_key=space_key)
|
|
740
|
+
print(" [status] ok", file=sys.stderr)
|
|
734
741
|
except Exception as exc:
|
|
735
|
-
|
|
736
|
-
|
|
737
|
-
|
|
738
|
-
|
|
739
|
-
)
|
|
742
|
+
print(
|
|
743
|
+
f" [warn] could not set page status '{action.confluence_status}': {exc}",
|
|
744
|
+
file=sys.stderr,
|
|
745
|
+
)
|
|
740
746
|
continue
|
|
741
747
|
|
|
742
748
|
counter += 1
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs2confluence.egg-info/SOURCES.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs2confluence.egg-info/requires.txt
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs2confluence.egg-info/top_level.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/emitter/__init__.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/emitter/xhtml.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/ir/__init__.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/ir/document.py
RENAMED
|
File without changes
|
|
File without changes
|
{mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/ir/treeutil.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/loader/__init__.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/loader/config.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/loader/extra_css.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/loader/nav.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/loader/page.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/parser/__init__.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/parser/markdown.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/pdf/__init__.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/pdf/generator.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/pdf/render.py
RENAMED
|
File without changes
|
|
File without changes
|
{mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/preprocess/abbrevs.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/preprocess/fence.py
RENAMED
|
File without changes
|
|
File without changes
|
{mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/preprocess/icons.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/preview/__init__.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/preview/render.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/preview/server.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/publisher/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/transforms/abbrevs.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/transforms/assets.py
RENAMED
|
File without changes
|
|
File without changes
|
{mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/transforms/images.py
RENAMED
|
File without changes
|
|
File without changes
|
{mkdocs2confluence-0.7.24 → mkdocs2confluence-0.7.26}/src/mkdocs_to_confluence/transforms/mermaid.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|