mkdocs2confluence 0.7.33__tar.gz → 0.7.35__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.33 → mkdocs2confluence-0.7.35}/PKG-INFO +1 -1
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/pyproject.toml +1 -1
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs2confluence.egg-info/PKG-INFO +1 -1
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/publisher/client.py +3 -3
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/tests/test_publish_client.py +5 -3
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/tests/test_publish_pipeline.py +24 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/LICENSE +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/README.md +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/setup.cfg +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs2confluence.egg-info/SOURCES.txt +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs2confluence.egg-info/dependency_links.txt +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs2confluence.egg-info/entry_points.txt +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs2confluence.egg-info/requires.txt +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs2confluence.egg-info/top_level.txt +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/__init__.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/cli.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/emitter/__init__.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/emitter/xhtml.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/ir/__init__.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/ir/document.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/ir/nodes.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/ir/treeutil.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/loader/__init__.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/loader/config.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/loader/extra_css.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/loader/nav.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/loader/page.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/parser/__init__.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/parser/markdown.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/pdf/__init__.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/pdf/generator.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/pdf/render.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/preprocess/__init__.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/preprocess/abbrevs.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/preprocess/fence.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/preprocess/frontmatter.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/preprocess/icons.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/preprocess/includes.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/preprocess/linkdefs.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/preview/__init__.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/preview/render.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/preview/server.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/publisher/__init__.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/publisher/pipeline.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/transforms/__init__.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/transforms/abbrevs.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/transforms/assets.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/transforms/editlink.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/transforms/images.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/transforms/internallinks.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/transforms/mermaid.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/tests/test_abbrevs.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/tests/test_cli.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/tests/test_editlink.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/tests/test_emitter.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/tests/test_extra_css.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/tests/test_frontmatter.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/tests/test_icons.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/tests/test_images.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/tests/test_internallinks.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/tests/test_ir.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/tests/test_linkdefs.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/tests/test_loader.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/tests/test_mermaid.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/tests/test_page_loader.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/tests/test_parser.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/tests/test_pdf.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/tests/test_preprocess.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/tests/test_preview.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/tests/test_publish_config.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/tests/test_server.py +0 -0
- {mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/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.35"
|
|
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.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/publisher/client.py
RENAMED
|
@@ -392,7 +392,6 @@ class ConfluenceClient:
|
|
|
392
392
|
"id": matched["id"],
|
|
393
393
|
"name": matched["name"],
|
|
394
394
|
"color": matched["color"],
|
|
395
|
-
"status": "current",
|
|
396
395
|
}
|
|
397
396
|
else:
|
|
398
397
|
# Fall back: name + color (required together when no id)
|
|
@@ -404,10 +403,11 @@ class ConfluenceClient:
|
|
|
404
403
|
"in review": "#ffc400",
|
|
405
404
|
"outdated": "#ff7452",
|
|
406
405
|
}
|
|
407
|
-
body = {"name": name, "color": _default_colors.get(_normalize(name), "#2684ff")
|
|
406
|
+
body = {"name": name, "color": _default_colors.get(_normalize(name), "#2684ff")}
|
|
408
407
|
|
|
408
|
+
# `status` query param tells the API which page version to target (current vs draft).
|
|
409
409
|
url = self._v1(f"/content/{page_id}/state")
|
|
410
|
-
resp = self._http.put(url, json=body)
|
|
410
|
+
resp = self._http.put(url, json=body, params={"status": "current"})
|
|
411
411
|
if not resp.is_success:
|
|
412
412
|
print(f" [warn] set status body: {resp.text[:300]}")
|
|
413
413
|
self._raise_for_status(resp, f"set_page_status({page_id!r}, {status_key!r})")
|
|
@@ -192,7 +192,7 @@ def test_set_page_status_sends_put() -> None:
|
|
|
192
192
|
|
|
193
193
|
|
|
194
194
|
def test_set_page_status_uses_space_state_when_matched() -> None:
|
|
195
|
-
"""set_page_status sends {id, name, color}
|
|
195
|
+
"""set_page_status sends {id, name, color} and ?status=current query param."""
|
|
196
196
|
space_states = [{"id": 1, "name": "In Progress", "color": "#2684ff"}]
|
|
197
197
|
available_resp = httpx.Response(200, json={"spaceContentStates": space_states, "customContentStates": []})
|
|
198
198
|
put_resp = httpx.Response(200, json={})
|
|
@@ -202,8 +202,10 @@ def test_set_page_status_uses_space_state_when_matched() -> None:
|
|
|
202
202
|
client._client = httpx.Client(transport=transport) # type: ignore[assignment]
|
|
203
203
|
client.set_page_status("42", "in-progress")
|
|
204
204
|
import json
|
|
205
|
-
|
|
206
|
-
|
|
205
|
+
put_req = transport.requests[1]
|
|
206
|
+
body = json.loads(put_req.content)
|
|
207
|
+
assert body == {"id": 1, "name": "In Progress", "color": "#2684ff"}
|
|
208
|
+
assert "status=current" in str(put_req.url)
|
|
207
209
|
|
|
208
210
|
|
|
209
211
|
def test_set_page_status_caches_space_states() -> None:
|
|
@@ -1964,6 +1964,30 @@ def test_compile_page_returns_confluence_status(tmp_path: Path) -> None:
|
|
|
1964
1964
|
assert confluence_status == "in-progress"
|
|
1965
1965
|
|
|
1966
1966
|
|
|
1967
|
+
def test_compile_page_returns_confluence_status_with_repo_url(tmp_path: Path) -> None:
|
|
1968
|
+
"""confluence_status must survive attach_source_url when repo_url is set (regression).
|
|
1969
|
+
|
|
1970
|
+
When repo_url is configured, attach_source_url reconstructs the FrontMatter node.
|
|
1971
|
+
This test ensures confluence_status is not silently dropped in that path.
|
|
1972
|
+
"""
|
|
1973
|
+
docs = tmp_path / "docs"
|
|
1974
|
+
docs.mkdir()
|
|
1975
|
+
md = docs / "page.md"
|
|
1976
|
+
md.write_text("---\nstatus: in-progress\n---\n\n# My Page\n\nContent.\n", encoding="utf-8")
|
|
1977
|
+
|
|
1978
|
+
node = _page_node("My Page", md)
|
|
1979
|
+
config = MkDocsConfig(
|
|
1980
|
+
site_name="Test",
|
|
1981
|
+
docs_dir=docs,
|
|
1982
|
+
repo_url="https://github.com/org/repo",
|
|
1983
|
+
edit_uri="edit/main/docs/",
|
|
1984
|
+
nav=None,
|
|
1985
|
+
)
|
|
1986
|
+
_, _, _, confluence_status = compile_page(node, config)
|
|
1987
|
+
|
|
1988
|
+
assert confluence_status == "in-progress"
|
|
1989
|
+
|
|
1990
|
+
|
|
1967
1991
|
def test_plan_publish_sets_confluence_status_on_create(tmp_path: Path) -> None:
|
|
1968
1992
|
"""plan_publish must carry confluence_status into a create PageAction."""
|
|
1969
1993
|
docs = tmp_path / "docs"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs2confluence.egg-info/SOURCES.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs2confluence.egg-info/requires.txt
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs2confluence.egg-info/top_level.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/emitter/__init__.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/emitter/xhtml.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/ir/__init__.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/ir/document.py
RENAMED
|
File without changes
|
|
File without changes
|
{mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/ir/treeutil.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/loader/__init__.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/loader/config.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/loader/extra_css.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/loader/nav.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/loader/page.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/parser/__init__.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/parser/markdown.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/pdf/__init__.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/pdf/generator.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/pdf/render.py
RENAMED
|
File without changes
|
|
File without changes
|
{mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/preprocess/abbrevs.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/preprocess/fence.py
RENAMED
|
File without changes
|
|
File without changes
|
{mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/preprocess/icons.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/preview/__init__.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/preview/render.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/preview/server.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/publisher/__init__.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/publisher/pipeline.py
RENAMED
|
File without changes
|
|
File without changes
|
{mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/transforms/abbrevs.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/transforms/assets.py
RENAMED
|
File without changes
|
|
File without changes
|
{mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/src/mkdocs_to_confluence/transforms/images.py
RENAMED
|
File without changes
|
|
File without changes
|
{mkdocs2confluence-0.7.33 → mkdocs2confluence-0.7.35}/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
|