mkdocs2confluence 0.7.31__tar.gz → 0.7.32__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.
Files changed (72) hide show
  1. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/PKG-INFO +1 -1
  2. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/pyproject.toml +1 -1
  3. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/src/mkdocs2confluence.egg-info/PKG-INFO +1 -1
  4. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/src/mkdocs_to_confluence/preprocess/frontmatter.py +0 -5
  5. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/src/mkdocs_to_confluence/publisher/pipeline.py +0 -5
  6. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/src/mkdocs_to_confluence/transforms/editlink.py +1 -0
  7. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/tests/test_editlink.py +14 -0
  8. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/LICENSE +0 -0
  9. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/README.md +0 -0
  10. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/setup.cfg +0 -0
  11. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/src/mkdocs2confluence.egg-info/SOURCES.txt +0 -0
  12. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/src/mkdocs2confluence.egg-info/dependency_links.txt +0 -0
  13. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/src/mkdocs2confluence.egg-info/entry_points.txt +0 -0
  14. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/src/mkdocs2confluence.egg-info/requires.txt +0 -0
  15. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/src/mkdocs2confluence.egg-info/top_level.txt +0 -0
  16. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/src/mkdocs_to_confluence/__init__.py +0 -0
  17. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/src/mkdocs_to_confluence/cli.py +0 -0
  18. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/src/mkdocs_to_confluence/emitter/__init__.py +0 -0
  19. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/src/mkdocs_to_confluence/emitter/xhtml.py +0 -0
  20. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/src/mkdocs_to_confluence/ir/__init__.py +0 -0
  21. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/src/mkdocs_to_confluence/ir/document.py +0 -0
  22. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/src/mkdocs_to_confluence/ir/nodes.py +0 -0
  23. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/src/mkdocs_to_confluence/ir/treeutil.py +0 -0
  24. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/src/mkdocs_to_confluence/loader/__init__.py +0 -0
  25. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/src/mkdocs_to_confluence/loader/config.py +0 -0
  26. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/src/mkdocs_to_confluence/loader/extra_css.py +0 -0
  27. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/src/mkdocs_to_confluence/loader/nav.py +0 -0
  28. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/src/mkdocs_to_confluence/loader/page.py +0 -0
  29. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/src/mkdocs_to_confluence/parser/__init__.py +0 -0
  30. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/src/mkdocs_to_confluence/parser/markdown.py +0 -0
  31. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/src/mkdocs_to_confluence/pdf/__init__.py +0 -0
  32. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/src/mkdocs_to_confluence/pdf/generator.py +0 -0
  33. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/src/mkdocs_to_confluence/pdf/render.py +0 -0
  34. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/src/mkdocs_to_confluence/preprocess/__init__.py +0 -0
  35. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/src/mkdocs_to_confluence/preprocess/abbrevs.py +0 -0
  36. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/src/mkdocs_to_confluence/preprocess/fence.py +0 -0
  37. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/src/mkdocs_to_confluence/preprocess/icons.py +0 -0
  38. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/src/mkdocs_to_confluence/preprocess/includes.py +0 -0
  39. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/src/mkdocs_to_confluence/preprocess/linkdefs.py +0 -0
  40. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/src/mkdocs_to_confluence/preview/__init__.py +0 -0
  41. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/src/mkdocs_to_confluence/preview/render.py +0 -0
  42. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/src/mkdocs_to_confluence/preview/server.py +0 -0
  43. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/src/mkdocs_to_confluence/publisher/__init__.py +0 -0
  44. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/src/mkdocs_to_confluence/publisher/client.py +0 -0
  45. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/src/mkdocs_to_confluence/transforms/__init__.py +0 -0
  46. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/src/mkdocs_to_confluence/transforms/abbrevs.py +0 -0
  47. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/src/mkdocs_to_confluence/transforms/assets.py +0 -0
  48. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/src/mkdocs_to_confluence/transforms/images.py +0 -0
  49. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/src/mkdocs_to_confluence/transforms/internallinks.py +0 -0
  50. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/src/mkdocs_to_confluence/transforms/mermaid.py +0 -0
  51. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/tests/test_abbrevs.py +0 -0
  52. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/tests/test_cli.py +0 -0
  53. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/tests/test_emitter.py +0 -0
  54. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/tests/test_extra_css.py +0 -0
  55. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/tests/test_frontmatter.py +0 -0
  56. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/tests/test_icons.py +0 -0
  57. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/tests/test_images.py +0 -0
  58. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/tests/test_internallinks.py +0 -0
  59. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/tests/test_ir.py +0 -0
  60. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/tests/test_linkdefs.py +0 -0
  61. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/tests/test_loader.py +0 -0
  62. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/tests/test_mermaid.py +0 -0
  63. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/tests/test_page_loader.py +0 -0
  64. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/tests/test_parser.py +0 -0
  65. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/tests/test_pdf.py +0 -0
  66. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/tests/test_preprocess.py +0 -0
  67. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/tests/test_preview.py +0 -0
  68. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/tests/test_publish_client.py +0 -0
  69. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/tests/test_publish_config.py +0 -0
  70. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/tests/test_publish_pipeline.py +0 -0
  71. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/tests/test_server.py +0 -0
  72. {mkdocs2confluence-0.7.31 → mkdocs2confluence-0.7.32}/tests/test_treeutil.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: mkdocs2confluence
3
- Version: 0.7.31
3
+ Version: 0.7.32
4
4
  Summary: Publish MkDocs Material pages to Confluence Cloud — admonitions, Mermaid diagrams, tabs, page properties and more
5
5
  Author: Anders Hybertz
6
6
  License: GPL-3.0-or-later
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "mkdocs2confluence"
3
- version = "0.7.31"
3
+ version = "0.7.32"
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" }
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: mkdocs2confluence
3
- Version: 0.7.31
3
+ Version: 0.7.32
4
4
  Summary: Publish MkDocs Material pages to Confluence Cloud — admonitions, Mermaid diagrams, tabs, page properties and more
5
5
  Author: Anders Hybertz
6
6
  License: GPL-3.0-or-later
@@ -105,10 +105,6 @@ def extract_front_matter(text: str) -> tuple[FrontMatter | None, str]:
105
105
  if not isinstance(raw, dict):
106
106
  return None, text
107
107
 
108
- if "status" in raw:
109
- print(f" [debug-status] raw YAML block repr: {m.group(1)!r}")
110
- print(f" [debug-status] raw['status'] = {raw['status']!r}")
111
-
112
108
  return _build_node(raw), remaining
113
109
 
114
110
 
@@ -117,7 +113,6 @@ def extract_front_matter(text: str) -> tuple[FrontMatter | None, str]:
117
113
 
118
114
  def _build_node(raw: dict[str, Any]) -> FrontMatter:
119
115
  """Convert a raw front matter dict to a :class:`FrontMatter` IR node."""
120
- print(f" [debug-fm] raw keys: {list(raw.keys())}")
121
116
  title: str | None = _stringify(raw.get("title")) if "title" in raw else None
122
117
  subtitle: str | None = _stringify(raw.get("subtitle")) if "subtitle" in raw else None
123
118
 
@@ -277,8 +277,6 @@ def _plan_nodes(
277
277
  xhtml, attachments, labels, confluence_status = compile_page(
278
278
  index_child, config, link_map, quiet=quiet
279
279
  )
280
- if confluence_status or labels:
281
- print(f" [debug] '{clean_title}' (index): status={confluence_status!r} labels={labels}")
282
280
  existing = client.find_page(space_id, clean_title)
283
281
  xhtml_h = _xhtml_hash(xhtml)
284
282
  if existing is not None and client.get_content_hash(str(existing["id"])) == xhtml_h:
@@ -390,9 +388,6 @@ def _plan_nodes(
390
388
  )
391
389
  continue
392
390
 
393
- if confluence_status or labels:
394
- print(f" [debug] '{clean_title}': status={confluence_status!r} labels={labels}")
395
-
396
391
  existing = client.find_page(space_id, clean_title)
397
392
  xhtml_h = _xhtml_hash(xhtml)
398
393
  if existing is not None and client.get_content_hash(str(existing["id"])) == xhtml_h:
@@ -48,6 +48,7 @@ def attach_source_url(
48
48
  labels=nodes[0].labels,
49
49
  source_url=edit_url,
50
50
  site_url=site_url,
51
+ confluence_status=nodes[0].confluence_status,
51
52
  )
52
53
  return (updated,) + nodes[1:]
53
54
 
@@ -35,6 +35,20 @@ def test_existing_front_matter_fields_preserved():
35
35
  assert updated.source_url == "https://example.com/edit"
36
36
 
37
37
 
38
+ def test_confluence_status_preserved_by_attach_source_url():
39
+ """confluence_status must survive the attach_source_url transform (regression)."""
40
+ fm = FrontMatter(
41
+ title="My Page",
42
+ subtitle=None,
43
+ properties=(),
44
+ labels=("arch",),
45
+ confluence_status="in-progress",
46
+ )
47
+ result = attach_source_url((fm,), "https://example.com/edit")
48
+ updated: FrontMatter = result[0] # type: ignore[assignment]
49
+ assert updated.confluence_status == "in-progress"
50
+
51
+
38
52
  def test_minimal_front_matter_created_when_none_present():
39
53
  """A minimal FrontMatter is prepended when the page has no front matter."""
40
54
  body = (Paragraph(children=(TextNode(text="Content"),)),)