panache-cli 3.7.0__tar.gz → 3.9.0__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 (339) hide show
  1. {panache_cli-3.7.0 → panache_cli-3.9.0}/Cargo.lock +48 -48
  2. {panache_cli-3.7.0 → panache_cli-3.9.0}/Cargo.toml +3 -3
  3. {panache_cli-3.7.0 → panache_cli-3.9.0}/PKG-INFO +1 -1
  4. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-formatter/CHANGELOG.md +21 -0
  5. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-formatter/Cargo.toml +2 -2
  6. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-formatter/src/config.rs +1 -0
  7. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-formatter/src/formatter/inline.rs +4 -3
  8. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-formatter/src/formatter/math/STYLE.md +19 -10
  9. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-formatter/src/formatter/math/ir.rs +8 -1
  10. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-formatter/src/formatter/math/lower.rs +6 -1
  11. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-formatter/src/formatter/math/printer.rs +55 -11
  12. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-formatter/src/formatter/math/render.rs +8 -21
  13. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-formatter/src/formatter/math.rs +49 -4
  14. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/CHANGELOG.md +13 -0
  15. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/Cargo.toml +1 -1
  16. panache_cli-3.9.0/crates/panache-parser/README.md +47 -0
  17. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/lib.rs +7 -1
  18. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/options.rs +18 -0
  19. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/pandoc_ast.rs +7 -33
  20. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/inlines/core.rs +12 -12
  21. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/inlines/inline_ir.rs +8 -20
  22. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/inlines/links.rs +332 -90
  23. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/yaml/validator.rs +59 -14
  24. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser.rs +29 -1
  25. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/syntax/alerts.rs +24 -0
  26. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/syntax/attributes.rs +152 -0
  27. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/syntax/code_blocks.rs +344 -1
  28. panache_cli-3.9.0/crates/panache-parser/src/syntax/consumer.rs +638 -0
  29. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/syntax/fenced_divs.rs +56 -1
  30. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/syntax/kind.rs +7 -0
  31. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/syntax/links.rs +146 -6
  32. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/syntax/lists.rs +8 -0
  33. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/syntax/math.rs +63 -27
  34. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/syntax/tables.rs +83 -3
  35. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/syntax/yaml.rs +32 -0
  36. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/syntax/yaml_ast.rs +16 -0
  37. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/syntax.rs +3 -0
  38. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/config/types.rs +1 -0
  39. panache_cli-3.9.0/src/linter/rules/blank_line_in_display_math.rs +169 -0
  40. panache_cli-3.9.0/src/linter/rules/inline_math_line_break.rs +111 -0
  41. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/rules/math_content.rs +15 -0
  42. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/rules.rs +5 -0
  43. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter.rs +2 -0
  44. panache_cli-3.7.0/crates/panache-parser/README.md +0 -23
  45. {panache_cli-3.7.0 → panache_cli-3.9.0}/LICENSE +0 -0
  46. {panache_cli-3.7.0 → panache_cli-3.9.0}/README.md +0 -0
  47. {panache_cli-3.7.0 → panache_cli-3.9.0}/assets/quarto-schema/schema.json +0 -0
  48. {panache_cli-3.7.0 → panache_cli-3.9.0}/build.rs +0 -0
  49. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-formatter/README.md +0 -0
  50. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-formatter/src/directives.rs +0 -0
  51. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-formatter/src/formatter/blockquotes.rs +0 -0
  52. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-formatter/src/formatter/blocks.rs +0 -0
  53. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-formatter/src/formatter/code_blocks.rs +0 -0
  54. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-formatter/src/formatter/containers.rs +0 -0
  55. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-formatter/src/formatter/core.rs +0 -0
  56. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-formatter/src/formatter/document.rs +0 -0
  57. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-formatter/src/formatter/fenced_divs.rs +0 -0
  58. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-formatter/src/formatter/hashpipe.rs +0 -0
  59. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-formatter/src/formatter/headings.rs +0 -0
  60. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-formatter/src/formatter/indent_utils.rs +0 -0
  61. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-formatter/src/formatter/inline_layout.rs +0 -0
  62. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-formatter/src/formatter/lists.rs +0 -0
  63. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-formatter/src/formatter/metadata.rs +0 -0
  64. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-formatter/src/formatter/paragraphs.rs +0 -0
  65. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-formatter/src/formatter/preserve.rs +0 -0
  66. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-formatter/src/formatter/raw.rs +0 -0
  67. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-formatter/src/formatter/sentence_wrap.rs +0 -0
  68. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-formatter/src/formatter/shortcodes.rs +0 -0
  69. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-formatter/src/formatter/smart.rs +0 -0
  70. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-formatter/src/formatter/tables.rs +0 -0
  71. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-formatter/src/formatter/utils.rs +0 -0
  72. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-formatter/src/formatter/yaml/STYLE.md +0 -0
  73. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-formatter/src/formatter/yaml/block_map.rs +0 -0
  74. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-formatter/src/formatter/yaml/block_sequence.rs +0 -0
  75. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-formatter/src/formatter/yaml/document.rs +0 -0
  76. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-formatter/src/formatter/yaml/flow.rs +0 -0
  77. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-formatter/src/formatter/yaml/options.rs +0 -0
  78. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-formatter/src/formatter/yaml/scalar.rs +0 -0
  79. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-formatter/src/formatter/yaml.rs +0 -0
  80. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-formatter/src/formatter.rs +0 -0
  81. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-formatter/src/lib.rs +0 -0
  82. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-formatter/src/parser.rs +0 -0
  83. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-formatter/src/syntax.rs +0 -0
  84. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-formatter/src/utils.rs +0 -0
  85. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-formatter/src/yaml_engine.rs +0 -0
  86. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/build.rs +0 -0
  87. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/data/math_symbols.json +0 -0
  88. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/data/unicode-math.LICENSE +0 -0
  89. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/data/unicode-math.NOTICE +0 -0
  90. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/grid_layout.rs +0 -0
  91. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/block_dispatcher.rs +0 -0
  92. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/blocks/admonitions.rs +0 -0
  93. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/blocks/blockquotes.rs +0 -0
  94. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/blocks/code_blocks.rs +0 -0
  95. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/blocks/container_prefix.rs +0 -0
  96. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/blocks/definition_lists.rs +0 -0
  97. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/blocks/fenced_divs.rs +0 -0
  98. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/blocks/figures.rs +0 -0
  99. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/blocks/headings.rs +0 -0
  100. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/blocks/horizontal_rules.rs +0 -0
  101. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/blocks/html_blocks.rs +0 -0
  102. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/blocks/indented_code.rs +0 -0
  103. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/blocks/latex_envs.rs +0 -0
  104. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/blocks/line_blocks.rs +0 -0
  105. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/blocks/lists.rs +0 -0
  106. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/blocks/metadata.rs +0 -0
  107. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/blocks/myst_directives.rs +0 -0
  108. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/blocks/myst_targets.rs +0 -0
  109. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/blocks/paragraphs.rs +0 -0
  110. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/blocks/raw_blocks.rs +0 -0
  111. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/blocks/reference_links.rs +0 -0
  112. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/blocks/tables.rs +0 -0
  113. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/blocks/tests/blanklines.rs +0 -0
  114. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/blocks/tests/blockquotes.rs +0 -0
  115. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/blocks/tests/code_blocks.rs +0 -0
  116. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/blocks/tests/content_containers.rs +0 -0
  117. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/blocks/tests/definition_lists.rs +0 -0
  118. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/blocks/tests/figures.rs +0 -0
  119. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/blocks/tests/footnote_marker_line.rs +0 -0
  120. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/blocks/tests/fragment_context.rs +0 -0
  121. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/blocks/tests/frame_pinning.rs +0 -0
  122. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/blocks/tests/headings.rs +0 -0
  123. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/blocks/tests/helpers.rs +0 -0
  124. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/blocks/tests/lists.rs +0 -0
  125. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/blocks/tests/losslessness.rs +0 -0
  126. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/blocks/tests/metadata_guards.rs +0 -0
  127. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/blocks/tests/tables.rs +0 -0
  128. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/blocks.rs +0 -0
  129. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/core/blockquotes.rs +0 -0
  130. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/core/definition_lists.rs +0 -0
  131. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/core/html_interruptions.rs +0 -0
  132. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/core/list_items.rs +0 -0
  133. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/core.rs +0 -0
  134. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/diagnostics.rs +0 -0
  135. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/inlines/bookdown.rs +0 -0
  136. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/inlines/bracketed_spans.rs +0 -0
  137. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/inlines/citations.rs +0 -0
  138. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/inlines/code_spans.rs +0 -0
  139. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/inlines/emoji.rs +0 -0
  140. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/inlines/escapes.rs +0 -0
  141. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/inlines/hard_breaks.rs +0 -0
  142. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/inlines/inline_executable.rs +0 -0
  143. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/inlines/inline_footnotes.rs +0 -0
  144. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/inlines/inline_html.rs +0 -0
  145. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/inlines/latex.rs +0 -0
  146. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/inlines/mark.rs +0 -0
  147. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/inlines/math.rs +0 -0
  148. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/inlines/myst_roles.rs +0 -0
  149. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/inlines/myst_substitutions.rs +0 -0
  150. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/inlines/native_spans.rs +0 -0
  151. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/inlines/raw_inline.rs +0 -0
  152. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/inlines/refdef_map.rs +0 -0
  153. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/inlines/shortcodes.rs +0 -0
  154. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/inlines/sink.rs +0 -0
  155. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/inlines/strikeout.rs +0 -0
  156. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/inlines/subscript.rs +0 -0
  157. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/inlines/superscript.rs +0 -0
  158. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/inlines/svelte.rs +0 -0
  159. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/inlines/tests.rs +0 -0
  160. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/inlines/uri-schemes.csv +0 -0
  161. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/inlines/wikilinks.rs +0 -0
  162. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/inlines.rs +0 -0
  163. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/math.rs +0 -0
  164. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/reparse.rs +0 -0
  165. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/utils/attributes.rs +0 -0
  166. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/utils/chunk_options.rs +0 -0
  167. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/utils/container_stack.rs +0 -0
  168. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/utils/continuation.rs +0 -0
  169. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/utils/helpers.rs +0 -0
  170. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/utils/inline_emission.rs +0 -0
  171. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/utils/list_item_buffer.rs +0 -0
  172. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/utils/marker_utils.rs +0 -0
  173. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/utils/text_buffer.rs +0 -0
  174. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/utils/tree_copy.rs +0 -0
  175. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/utils/yaml_regions.rs +0 -0
  176. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/utils.rs +0 -0
  177. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/verify.rs +0 -0
  178. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/yaml/cooking.rs +0 -0
  179. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/yaml/events.rs +0 -0
  180. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/yaml/model.rs +0 -0
  181. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/yaml/parser.rs +0 -0
  182. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/yaml/profile.rs +0 -0
  183. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/yaml/scanner.rs +0 -0
  184. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/parser/yaml.rs +0 -0
  185. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/range_utils.rs +0 -0
  186. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/semantic/math.rs +0 -0
  187. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/semantic.rs +0 -0
  188. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/syntax/ast.rs +0 -0
  189. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/syntax/block_quotes.rs +0 -0
  190. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/syntax/blocks.rs +0 -0
  191. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/syntax/chunk_options.rs +0 -0
  192. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/syntax/citations.rs +0 -0
  193. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/syntax/code_span.rs +0 -0
  194. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/syntax/crossrefs.rs +0 -0
  195. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/syntax/definitions.rs +0 -0
  196. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/syntax/headings.rs +0 -0
  197. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/syntax/inlines.rs +0 -0
  198. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/syntax/myst.rs +0 -0
  199. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/syntax/raw_tex.rs +0 -0
  200. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/syntax/references.rs +0 -0
  201. {panache_cli-3.7.0 → panache_cli-3.9.0}/crates/panache-parser/src/syntax/shortcodes.rs +0 -0
  202. {panache_cli-3.7.0 → panache_cli-3.9.0}/pyproject.toml +0 -0
  203. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/bib/bibtex.rs +0 -0
  204. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/bib/csl_json.rs +0 -0
  205. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/bib/csl_yaml.rs +0 -0
  206. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/bib/index.rs +0 -0
  207. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/bib/preview.rs +0 -0
  208. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/bib/ris.rs +0 -0
  209. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/bib.rs +0 -0
  210. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/bin/distill_quarto_schema.rs +0 -0
  211. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/cache.rs +0 -0
  212. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/cli.rs +0 -0
  213. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/config/formatter_presets.rs +0 -0
  214. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/config/types/schema_helpers.rs +0 -0
  215. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/config.rs +0 -0
  216. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/diagnostic_renderer.rs +0 -0
  217. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/directives.rs +0 -0
  218. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/external_formatters_common.rs +0 -0
  219. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/external_formatters_sync.rs +0 -0
  220. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/external_tools_common.rs +0 -0
  221. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/formatter.rs +0 -0
  222. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/includes.rs +0 -0
  223. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/incremental.rs +0 -0
  224. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/io_context.rs +0 -0
  225. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/lib.rs +0 -0
  226. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/code_block_collector.rs +0 -0
  227. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/diagnostics.rs +0 -0
  228. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/external_linters/clippy.rs +0 -0
  229. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/external_linters/eslint.rs +0 -0
  230. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/external_linters/jarl.rs +0 -0
  231. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/external_linters/jolars.rs +0 -0
  232. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/external_linters/ruff.rs +0 -0
  233. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/external_linters/shellcheck.rs +0 -0
  234. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/external_linters/staticcheck.rs +0 -0
  235. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/external_linters.rs +0 -0
  236. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/external_linters_sync.rs +0 -0
  237. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/fuzzy.rs +0 -0
  238. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/index.rs +0 -0
  239. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/metadata_diagnostics.rs +0 -0
  240. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/offsets.rs +0 -0
  241. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/project_index.rs +0 -0
  242. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/quarto_schema/distill.rs +0 -0
  243. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/quarto_schema/interp.rs +0 -0
  244. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/quarto_schema/model.rs +0 -0
  245. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/quarto_schema/report.rs +0 -0
  246. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/quarto_schema/value.rs +0 -0
  247. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/quarto_schema.rs +0 -0
  248. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/rules/adjacent_footnote_refs.rs +0 -0
  249. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/rules/blank_line_in_inline_footnote.rs +0 -0
  250. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/rules/chunk_label_spaces.rs +0 -0
  251. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/rules/citation_keys.rs +0 -0
  252. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/rules/citation_nonbreaking_space.rs +0 -0
  253. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/rules/consumer_divergence.rs +0 -0
  254. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/rules/crossref_as_link_target.rs +0 -0
  255. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/rules/duplicate_references.rs +0 -0
  256. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/rules/duplicate_yaml_anchor.rs +0 -0
  257. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/rules/emoji_aliases.rs +0 -0
  258. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/rules/empty_list_item.rs +0 -0
  259. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/rules/empty_values.rs +0 -0
  260. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/rules/figure_crossref_captions.rs +0 -0
  261. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/rules/footnote_after_image.rs +0 -0
  262. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/rules/footnote_ref_in_footnote_def.rs +0 -0
  263. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/rules/footnote_swallowed_by_bracket.rs +0 -0
  264. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/rules/heading_eaten_attrs.rs +0 -0
  265. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/rules/heading_hierarchy.rs +0 -0
  266. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/rules/heading_strip_comments_residue.rs +0 -0
  267. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/rules/html_entities.rs +0 -0
  268. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/rules/link_text_is_url.rs +0 -0
  269. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/rules/missing_chunk_labels.rs +0 -0
  270. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/rules/quarto_schema.rs +0 -0
  271. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/rules/reversed_footnote_marker.rs +0 -0
  272. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/rules/stray_fenced_div_markers.rs +0 -0
  273. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/rules/swallowed_list_marker.rs +0 -0
  274. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/rules/table_column_count.rs +0 -0
  275. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/rules/undefined_anchor.rs +0 -0
  276. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/rules/undefined_references.rs +0 -0
  277. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/rules/unspaced_citation.rs +0 -0
  278. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/rules/unsupported_metadata_key.rs +0 -0
  279. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/rules/unused_definitions.rs +0 -0
  280. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/rules/unused_yaml_anchor.rs +0 -0
  281. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/runner.rs +0 -0
  282. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/yaml_anchors.rs +0 -0
  283. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/linter/yaml_resolve.rs +0 -0
  284. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/lsp/config.rs +0 -0
  285. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/lsp/context.rs +0 -0
  286. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/lsp/conversions.rs +0 -0
  287. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/lsp/dispatch.rs +0 -0
  288. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/lsp/documents.rs +0 -0
  289. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/lsp/global_state.rs +0 -0
  290. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/lsp/handlers/code_actions.rs +0 -0
  291. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/lsp/handlers/completion.rs +0 -0
  292. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/lsp/handlers/configuration.rs +0 -0
  293. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/lsp/handlers/diagnostics.rs +0 -0
  294. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/lsp/handlers/document_highlight.rs +0 -0
  295. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/lsp/handlers/document_links.rs +0 -0
  296. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/lsp/handlers/document_symbols.rs +0 -0
  297. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/lsp/handlers/file_operations.rs +0 -0
  298. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/lsp/handlers/file_rename.rs +0 -0
  299. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/lsp/handlers/file_watcher.rs +0 -0
  300. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/lsp/handlers/folding_ranges.rs +0 -0
  301. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/lsp/handlers/footnote_conversion.rs +0 -0
  302. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/lsp/handlers/formatting.rs +0 -0
  303. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/lsp/handlers/goto_definition.rs +0 -0
  304. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/lsp/handlers/heading_link_conversion.rs +0 -0
  305. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/lsp/handlers/hover.rs +0 -0
  306. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/lsp/handlers/link_conversion.rs +0 -0
  307. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/lsp/handlers/linked_editing_range.rs +0 -0
  308. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/lsp/handlers/list_conversion.rs +0 -0
  309. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/lsp/handlers/prepare_rename.rs +0 -0
  310. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/lsp/handlers/references.rs +0 -0
  311. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/lsp/handlers/rename.rs +0 -0
  312. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/lsp/handlers/semantic_tokens.rs +0 -0
  313. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/lsp/handlers/shortcode_args.rs +0 -0
  314. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/lsp/handlers/workspace_folders.rs +0 -0
  315. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/lsp/handlers/workspace_symbols.rs +0 -0
  316. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/lsp/handlers.rs +0 -0
  317. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/lsp/helpers.rs +0 -0
  318. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/lsp/line_index.rs +0 -0
  319. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/lsp/navigation.rs +0 -0
  320. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/lsp/symbols.rs +0 -0
  321. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/lsp/task_pool.rs +0 -0
  322. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/lsp/testing.rs +0 -0
  323. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/lsp/uri_ext.rs +0 -0
  324. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/lsp.rs +0 -0
  325. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/main.rs +0 -0
  326. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/metadata/bibliography.rs +0 -0
  327. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/metadata/citations.rs +0 -0
  328. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/metadata/project.rs +0 -0
  329. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/metadata/references.rs +0 -0
  330. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/metadata/yaml.rs +0 -0
  331. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/metadata.rs +0 -0
  332. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/parser.rs +0 -0
  333. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/range_utils.rs +0 -0
  334. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/salsa.rs +0 -0
  335. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/syntax.rs +0 -0
  336. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/utils.rs +0 -0
  337. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/vfs.rs +0 -0
  338. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/yaml_engine.rs +0 -0
  339. {panache_cli-3.7.0 → panache_cli-3.9.0}/src/yaml_regions.rs +0 -0
@@ -273,7 +273,7 @@ dependencies = [
273
273
  "heck",
274
274
  "proc-macro2",
275
275
  "quote",
276
- "syn 3.0.4",
276
+ "syn 3.0.5",
277
277
  ]
278
278
 
279
279
  [[package]]
@@ -335,18 +335,18 @@ dependencies = [
335
335
 
336
336
  [[package]]
337
337
  name = "crossbeam-channel"
338
- version = "0.5.16"
338
+ version = "0.5.17"
339
339
  source = "registry+https://github.com/rust-lang/crates.io-index"
340
- checksum = "d85363c37faeca707aef026efa9f3b34d077bce547e48f770770625c6013679e"
340
+ checksum = "98b0cc327b5bc766e7fda9c9260cc0fa81b43a8e240440422dff70788e3f9ef1"
341
341
  dependencies = [
342
342
  "crossbeam-utils",
343
343
  ]
344
344
 
345
345
  [[package]]
346
346
  name = "crossbeam-deque"
347
- version = "0.8.7"
347
+ version = "0.8.8"
348
348
  source = "registry+https://github.com/rust-lang/crates.io-index"
349
- checksum = "5181e0de7b61eb03a81e347d6dd8797bae9da5146707b51077e2d71a54ec0ceb"
349
+ checksum = "622f3fc73690be383c7214310406f28a90e6edeadc3cea882f9d71e495b9711a"
350
350
  dependencies = [
351
351
  "crossbeam-epoch",
352
352
  "crossbeam-utils",
@@ -354,27 +354,27 @@ dependencies = [
354
354
 
355
355
  [[package]]
356
356
  name = "crossbeam-epoch"
357
- version = "0.9.20"
357
+ version = "0.9.21"
358
358
  source = "registry+https://github.com/rust-lang/crates.io-index"
359
- checksum = "2d6914041f254d6e9176c01941b21115dcfb7089e55135a35411081bd106ef3f"
359
+ checksum = "dc74980687109a3b14c72fd458107bf0baa1da1a1a805e178d15501ba9b86d9d"
360
360
  dependencies = [
361
361
  "crossbeam-utils",
362
362
  ]
363
363
 
364
364
  [[package]]
365
365
  name = "crossbeam-queue"
366
- version = "0.3.13"
366
+ version = "0.3.14"
367
367
  source = "registry+https://github.com/rust-lang/crates.io-index"
368
- checksum = "803d13fb3b09d88be9f4dbc29062c66b19bf7170867ceb746d2a8689bf6c7a26"
368
+ checksum = "03e8bd762f7479489c70ed6c768ddca99d7296857de437a68dcb2a94365b3fae"
369
369
  dependencies = [
370
370
  "crossbeam-utils",
371
371
  ]
372
372
 
373
373
  [[package]]
374
374
  name = "crossbeam-utils"
375
- version = "0.8.22"
375
+ version = "0.8.23"
376
376
  source = "registry+https://github.com/rust-lang/crates.io-index"
377
- checksum = "61803da095bee82a81bb1a452ecc25d3b2f1416d1897eb86430c6159ef717c17"
377
+ checksum = "a31eee39dddec8330830986fcd7625edb5a24ec90ea038215273bbc3adb08ac6"
378
378
 
379
379
  [[package]]
380
380
  name = "darling"
@@ -482,7 +482,7 @@ checksum = "c6232dd377dcc64799954cbd3a9bb882e9cdc1308ccd87b1c098f1fb2eaf82a8"
482
482
  dependencies = [
483
483
  "proc-macro2",
484
484
  "quote",
485
- "syn 3.0.4",
485
+ "syn 3.0.5",
486
486
  ]
487
487
 
488
488
  [[package]]
@@ -746,9 +746,9 @@ checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea"
746
746
 
747
747
  [[package]]
748
748
  name = "hermit-abi"
749
- version = "0.5.2"
749
+ version = "0.5.3"
750
750
  source = "registry+https://github.com/rust-lang/crates.io-index"
751
- checksum = "fc0fef456e4baa96da950455cd02c081ca953b141298e41db3fc7e36b1da849c"
751
+ checksum = "e17592d60ebacc7d5e169f4663c5f84f9161cc90328abcfe8456f41e4dfcb284"
752
752
 
753
753
  [[package]]
754
754
  name = "icu_collections"
@@ -878,9 +878,9 @@ dependencies = [
878
878
 
879
879
  [[package]]
880
880
  name = "indexmap"
881
- version = "2.14.0"
881
+ version = "2.14.2"
882
882
  source = "registry+https://github.com/rust-lang/crates.io-index"
883
- checksum = "d466e9454f08e4a911e14806c24e16fba1b4c121d1ea474396f396069cf949d9"
883
+ checksum = "cc4e190f5d26ca7051642629da2c52fc03bde85a03197c99408dcd291734c855"
884
884
  dependencies = [
885
885
  "equivalent",
886
886
  "hashbrown 0.17.1",
@@ -964,9 +964,9 @@ dependencies = [
964
964
 
965
965
  [[package]]
966
966
  name = "js-sys"
967
- version = "0.3.104"
967
+ version = "0.3.105"
968
968
  source = "registry+https://github.com/rust-lang/crates.io-index"
969
- checksum = "0e0c1080212aad755ea003d18543e8768dd432c48819efd73a7bf1e39b7a5a3a"
969
+ checksum = "ce57d20d1ea864ce2ac172ab472d409214f4fd359f0b2a2775abdf522e2af99e"
970
970
  dependencies = [
971
971
  "cfg-if",
972
972
  "futures-util",
@@ -1039,9 +1039,9 @@ checksum = "3eaf3ede3fee6db1a4c2ee091bf8a8b4dccdc6d17f656fb07896ee72867612f2"
1039
1039
 
1040
1040
  [[package]]
1041
1041
  name = "libredox"
1042
- version = "0.1.21"
1042
+ version = "0.1.23"
1043
1043
  source = "registry+https://github.com/rust-lang/crates.io-index"
1044
- checksum = "d7955dfc218a8afb29dfeffd540e3a6e96baeb94fe7138228dd7cc6937fbbf96"
1044
+ checksum = "8d8f1ea3f21fd3405dcaf6c9b5c1630af9afc422d9073ea39c5f6d6c772e08ed"
1045
1045
  dependencies = [
1046
1046
  "libc",
1047
1047
  ]
@@ -1250,7 +1250,7 @@ checksum = "1a80800c0488c3a21695ea981a54918fbb37abf04f4d0720c453632255e2ff0e"
1250
1250
 
1251
1251
  [[package]]
1252
1252
  name = "panache"
1253
- version = "3.7.0"
1253
+ version = "3.9.0"
1254
1254
  dependencies = [
1255
1255
  "annotate-snippets",
1256
1256
  "assert_cmd",
@@ -1295,7 +1295,7 @@ dependencies = [
1295
1295
 
1296
1296
  [[package]]
1297
1297
  name = "panache-formatter"
1298
- version = "0.22.0"
1298
+ version = "0.24.0"
1299
1299
  dependencies = [
1300
1300
  "badness-formatter",
1301
1301
  "insta",
@@ -1315,7 +1315,7 @@ dependencies = [
1315
1315
 
1316
1316
  [[package]]
1317
1317
  name = "panache-parser"
1318
- version = "0.28.0"
1318
+ version = "0.29.0"
1319
1319
  dependencies = [
1320
1320
  "badness-parser",
1321
1321
  "entities",
@@ -1448,9 +1448,9 @@ checksum = "05c8b63e8d9609db387f0324918f81d68fe27748f084ef092fb35954d0539a85"
1448
1448
 
1449
1449
  [[package]]
1450
1450
  name = "portable-atomic-util"
1451
- version = "0.2.7"
1451
+ version = "0.2.8"
1452
1452
  source = "registry+https://github.com/rust-lang/crates.io-index"
1453
- checksum = "c2a106d1259c23fac8e543272398ae0e3c0b8d33c88ed73d0cc71b0f1d902618"
1453
+ checksum = "10ab3eb7f3becc3a1cbc4f2c6f20267996cfc1a6467a873763411b136a122715"
1454
1454
  dependencies = [
1455
1455
  "portable-atomic",
1456
1456
  ]
@@ -1601,7 +1601,7 @@ checksum = "92ecd8964f8453721699a1ed72037b0db49ce2f5a5138486ee89bed6f67cdf3a"
1601
1601
  dependencies = [
1602
1602
  "proc-macro2",
1603
1603
  "quote",
1604
- "syn 3.0.4",
1604
+ "syn 3.0.5",
1605
1605
  ]
1606
1606
 
1607
1607
  [[package]]
@@ -1752,7 +1752,7 @@ checksum = "445be2bfbb2f67cb663225ecd7bc5a25370c0250fca30f9d8cbad9a913650370"
1752
1752
  dependencies = [
1753
1753
  "proc-macro2",
1754
1754
  "quote",
1755
- "syn 3.0.4",
1755
+ "syn 3.0.5",
1756
1756
  ]
1757
1757
 
1758
1758
  [[package]]
@@ -1786,7 +1786,7 @@ dependencies = [
1786
1786
  "proc-macro2",
1787
1787
  "quote",
1788
1788
  "serde_derive_internals",
1789
- "syn 3.0.4",
1789
+ "syn 3.0.5",
1790
1790
  ]
1791
1791
 
1792
1792
  [[package]]
@@ -1822,7 +1822,7 @@ checksum = "e7a5d71263a5a7d47b41f6b3f06ba276f10cc18b0931f1799f710578e2309348"
1822
1822
  dependencies = [
1823
1823
  "proc-macro2",
1824
1824
  "quote",
1825
- "syn 3.0.4",
1825
+ "syn 3.0.5",
1826
1826
  ]
1827
1827
 
1828
1828
  [[package]]
@@ -1833,7 +1833,7 @@ checksum = "f852137cce035d6a4df67ccce505ff6b3e9fd3a10e3e52b24dc71e650bb1a9bd"
1833
1833
  dependencies = [
1834
1834
  "proc-macro2",
1835
1835
  "quote",
1836
- "syn 3.0.4",
1836
+ "syn 3.0.5",
1837
1837
  ]
1838
1838
 
1839
1839
  [[package]]
@@ -1857,7 +1857,7 @@ checksum = "8d3b1629de253c70a0508c3899572da79ca359fdab27c7920ff00406df418906"
1857
1857
  dependencies = [
1858
1858
  "proc-macro2",
1859
1859
  "quote",
1860
- "syn 3.0.4",
1860
+ "syn 3.0.5",
1861
1861
  ]
1862
1862
 
1863
1863
  [[package]]
@@ -1915,9 +1915,9 @@ checksum = "0c790de23124f9ab44544d7ac05d60440adc586479ce501c1d6d7da3cd8c9cf5"
1915
1915
 
1916
1916
  [[package]]
1917
1917
  name = "smallvec"
1918
- version = "1.15.2"
1918
+ version = "1.16.0"
1919
1919
  source = "registry+https://github.com/rust-lang/crates.io-index"
1920
- checksum = "8ed6a63f02c8539c91a8685a86f4099661ba3da017932f6ebbea6de3f0fa7c90"
1920
+ checksum = "b9be42f50aa861c555654aa3a37f52f4b1074bacf4e48fe0ef7fa584e80f1f0f"
1921
1921
 
1922
1922
  [[package]]
1923
1923
  name = "smol_str"
@@ -1975,9 +1975,9 @@ dependencies = [
1975
1975
 
1976
1976
  [[package]]
1977
1977
  name = "syn"
1978
- version = "3.0.4"
1978
+ version = "3.0.5"
1979
1979
  source = "registry+https://github.com/rust-lang/crates.io-index"
1980
- checksum = "e6275cddf4610d1775e6d1fe9469b2e77d0f39fd98fb7450901b821e0c53649f"
1980
+ checksum = "12df2e0110f65b775f769bb17ef989067a1d931b2eb822bd4346631eeada89f9"
1981
1981
  dependencies = [
1982
1982
  "proc-macro2",
1983
1983
  "quote",
@@ -2043,7 +2043,7 @@ checksum = "bc04cd3e1236dd4a98afca4569f2deb3f120e5422a4023be2cb683f8486292af"
2043
2043
  dependencies = [
2044
2044
  "proc-macro2",
2045
2045
  "quote",
2046
- "syn 3.0.4",
2046
+ "syn 3.0.5",
2047
2047
  ]
2048
2048
 
2049
2049
  [[package]]
@@ -2064,9 +2064,9 @@ dependencies = [
2064
2064
 
2065
2065
  [[package]]
2066
2066
  name = "toml"
2067
- version = "1.1.4+spec-1.1.0"
2067
+ version = "1.1.5+spec-1.1.0"
2068
2068
  source = "registry+https://github.com/rust-lang/crates.io-index"
2069
- checksum = "3aace63f4bbcdfc2c965b059de67119c89c4017a70d633be6c104910f67056f5"
2069
+ checksum = "12c0ba9680044b4ce98d391a62094047eada0d64860b80166c39f4a6b5640785"
2070
2070
  dependencies = [
2071
2071
  "indexmap",
2072
2072
  "serde_core",
@@ -2231,9 +2231,9 @@ dependencies = [
2231
2231
 
2232
2232
  [[package]]
2233
2233
  name = "wasm-bindgen"
2234
- version = "0.2.127"
2234
+ version = "0.2.128"
2235
2235
  source = "registry+https://github.com/rust-lang/crates.io-index"
2236
- checksum = "1b70935747edd64d89de3efa29d73789b806c15798f8e7dca4d8ac356b50ce70"
2236
+ checksum = "aecb87a33d3b0c5e3b7aa46336eaf486cffafbd281b195e4c8b80d50df2351bf"
2237
2237
  dependencies = [
2238
2238
  "cfg-if",
2239
2239
  "once_cell",
@@ -2244,9 +2244,9 @@ dependencies = [
2244
2244
 
2245
2245
  [[package]]
2246
2246
  name = "wasm-bindgen-macro"
2247
- version = "0.2.127"
2247
+ version = "0.2.128"
2248
2248
  source = "registry+https://github.com/rust-lang/crates.io-index"
2249
- checksum = "77775f8f3f7217702089053b94958f8f54061a3f663417df76e19cbdcca29bc1"
2249
+ checksum = "a690d511e3c1a8b3a55e33511e3c2c00c78415cd23650f32b808627f5696b9ed"
2250
2250
  dependencies = [
2251
2251
  "quote",
2252
2252
  "wasm-bindgen-macro-support",
@@ -2254,22 +2254,22 @@ dependencies = [
2254
2254
 
2255
2255
  [[package]]
2256
2256
  name = "wasm-bindgen-macro-support"
2257
- version = "0.2.127"
2257
+ version = "0.2.128"
2258
2258
  source = "registry+https://github.com/rust-lang/crates.io-index"
2259
- checksum = "e11d33f857dc2fb11b8bc75aee111aa9cbeb12cd9f25efd3d4c2a3dd4e235284"
2259
+ checksum = "411e4887f0071ef2d2164a9d5fdf2d20efbef78fccd3a78b0c10a1dc5295e48a"
2260
2260
  dependencies = [
2261
2261
  "bumpalo",
2262
2262
  "proc-macro2",
2263
2263
  "quote",
2264
- "syn 2.0.119",
2264
+ "syn 3.0.5",
2265
2265
  "wasm-bindgen-shared",
2266
2266
  ]
2267
2267
 
2268
2268
  [[package]]
2269
2269
  name = "wasm-bindgen-shared"
2270
- version = "0.2.127"
2270
+ version = "0.2.128"
2271
2271
  source = "registry+https://github.com/rust-lang/crates.io-index"
2272
- checksum = "7ef64dbcc55df09c7e5a46182d181c2cfa3e925f3da937ea764728b4bbb9dcbf"
2272
+ checksum = "81941cd78d0c92026c33e5e01312845a4cb1e9af3407f9134b100dd03144103e"
2273
2273
  dependencies = [
2274
2274
  "unicode-ident",
2275
2275
  ]
@@ -2463,7 +2463,7 @@ checksum = "34df6fc39dbd26ddc9c10e6a2984476e13acce22e64e4487636ef494369225da"
2463
2463
  dependencies = [
2464
2464
  "proc-macro2",
2465
2465
  "quote",
2466
- "syn 3.0.4",
2466
+ "syn 3.0.5",
2467
2467
  ]
2468
2468
 
2469
2469
  [[package]]
@@ -9,7 +9,7 @@ authors = ["Johan Larsson <johan@jolars.co>"]
9
9
 
10
10
  [package]
11
11
  name = "panache"
12
- version = "3.7.0"
12
+ version = "3.9.0"
13
13
  edition.workspace = true
14
14
  rust-version.workspace = true
15
15
  # `distill_quarto_schema` is a dev-only vendoring bin (src/bin/); keep bare
@@ -51,11 +51,11 @@ path = "src/main.rs"
51
51
  required-features = ["cli"]
52
52
 
53
53
  [dependencies]
54
- panache-formatter = { path = "crates/panache-formatter", version = "0.22.0", features = [
54
+ panache-formatter = { path = "crates/panache-formatter", version = "0.24.0", features = [
55
55
  "serde",
56
56
  "schema",
57
57
  ] }
58
- panache-parser = { path = "crates/panache-parser", version = "0.28.0", features = [
58
+ panache-parser = { path = "crates/panache-parser", version = "0.29.0", features = [
59
59
  "serde",
60
60
  "schema",
61
61
  ] }
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: panache-cli
3
- Version: 3.7.0
3
+ Version: 3.9.0
4
4
  Classifier: Development Status :: 5 - Production/Stable
5
5
  Classifier: Environment :: Console
6
6
  Classifier: Intended Audience :: Developers
@@ -1,5 +1,26 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.24.0](https://github.com/jolars/panache/compare/panache-formatter-v0.23.0...panache-formatter-v0.24.0) (2026-09-06)
4
+
5
+ ### Features
6
+ - **parser:** add consumer document API ([`23904a5`](https://github.com/jolars/panache/commit/23904a5b46d11029a096b72396165197c483867f))
7
+
8
+ ### Dependencies
9
+ - updated crates/panache-parser to v0.29.0
10
+
11
+ ## [0.23.0](https://github.com/jolars/panache/compare/panache-formatter-v0.22.0...panache-formatter-v0.23.0) (2026-08-31)
12
+
13
+ ### Features
14
+ - **math:** indent top-level environments ([`f222d44`](https://github.com/jolars/panache/commit/f222d448d74a53eb0d939108e244d560c9fc0e2e))
15
+
16
+ ### Bug Fixes
17
+ - **formatter:** preserve math control spaces at line ends ([`b449e66`](https://github.com/jolars/panache/commit/b449e662644835ae8b62db99afa000e47be281ec))
18
+ - **formatter:** preserve math control spaces ([`85dd96f`](https://github.com/jolars/panache/commit/85dd96f72ae3d924b2efde5c46baa8c70f7a2f60)), fixes [#522](https://github.com/jolars/panache/issues/522)
19
+ - **formatter:** preserve control spaces in math rows ([`2c2e24f`](https://github.com/jolars/panache/commit/2c2e24fc087a6697f4f985d70c5e4478975cddb2)), fixes [#521](https://github.com/jolars/panache/issues/521)
20
+
21
+ ### Dependencies
22
+ - updated crates/panache-parser to v0.28.1
23
+
3
24
  ## [0.22.0](https://github.com/jolars/panache/compare/panache-formatter-v0.21.3...panache-formatter-v0.22.0) (2026-08-28)
4
25
 
5
26
  ### Features
@@ -1,6 +1,6 @@
1
1
  [package]
2
2
  name = "panache-formatter"
3
- version = "0.22.0"
3
+ version = "0.24.0"
4
4
  edition.workspace = true
5
5
  rust-version.workspace = true
6
6
  include = [
@@ -19,7 +19,7 @@ keywords = ["quarto", "pandoc", "markdown", "formatter"]
19
19
  categories = ["text-processing"]
20
20
 
21
21
  [dependencies]
22
- panache-parser = { path = "../panache-parser", version = "0.28.0" }
22
+ panache-parser = { path = "../panache-parser", version = "0.29.0" }
23
23
  log = { version = "0.4.31", features = ["release_max_level_debug"] }
24
24
  rowan = "0.17.0"
25
25
  serde = { version = "1.0.228", features = ["derive"], optional = true }
@@ -310,6 +310,7 @@ impl Config {
310
310
  dialect: self.dialect(),
311
311
  extensions: self.parser_extensions.clone(),
312
312
  pandoc_compat: self.parser,
313
+ preserve_unresolved_references: false,
313
314
  crossref_prefixes: Vec::new(),
314
315
  refdef_labels: None,
315
316
  }
@@ -456,7 +456,7 @@ pub(super) fn format_inline_node(node: &SyntaxNode, config: &Config) -> String {
456
456
  None => format!(
457
457
  "{}\n{}\n{}",
458
458
  open,
459
- math::trim_trailing_whitespace_per_line(content.trim()),
459
+ math::trim_preserved_math_body(&content),
460
460
  close,
461
461
  ),
462
462
  }
@@ -533,7 +533,8 @@ pub(super) fn format_inline_node(node: &SyntaxNode, config: &Config) -> String {
533
533
  math::push_body_with_trailing_newline(&mut result, &body);
534
534
  }
535
535
  None => {
536
- let mut trimmed_content = content.trim_end();
536
+ let cleaned_content = math::trim_trailing_whitespace_per_line(&content);
537
+ let mut trimmed_content = cleaned_content.trim_end_matches(['\r', '\n']);
537
538
  while let Some((first, rest)) = trimmed_content.split_once('\n') {
538
539
  if first.trim().is_empty() {
539
540
  trimmed_content = rest;
@@ -558,7 +559,7 @@ pub(super) fn format_inline_node(node: &SyntaxNode, config: &Config) -> String {
558
559
  };
559
560
  if !stripped.is_empty() {
560
561
  result.push_str(&pad);
561
- result.push_str(stripped.trim_end_matches([' ', '\t']));
562
+ result.push_str(stripped);
562
563
  }
563
564
  result.push('\n');
564
565
  }
@@ -48,14 +48,12 @@ Text-domain, unknown, unmatched, over-attached, and document-redefined command
48
48
  arguments are opaque preservation islands when the surrounding expression can
49
49
  still be lowered safely; they do not automatically preserve the whole span. The
50
50
  host's preserved-body path removes ASCII spaces and tabs immediately before a
51
- line ending. This line hygiene does not otherwise normalize or reflow the
52
- preserved content.
51
+ line ending, except for the semantic ASCII space in the TeX control symbol `\ `.
52
+ This line hygiene does not otherwise normalize or reflow the preserved content.
53
53
 
54
54
  ## Intentional Badness differences
55
55
 
56
56
  - Markdown inline hosts join layout lines unless a TeX comment pins the break.
57
- - Standalone display environments own their indentation; `math_indent` is not
58
- applied around their markers.
59
57
  - A soft newline before a signature-proven argument collapses as insignificant
60
58
  whitespace.
61
59
  - Panache applies both sides of the TeXbook Bin-to-Ord rule: it tightens
@@ -67,6 +65,9 @@ preserved content.
67
65
  - Panache preserves scripted composite relations such as `<=_i`, `>=_i`, and
68
66
  `==_i`; the pinned formatter incorrectly separates the relation head from its
69
67
  CST-separated script.
68
+ - Panache retains an authored environment-row boundary after a standalone TeX
69
+ control space. The pinned formatter moves the control space onto the next row;
70
+ Panache keeps the semantic space at the physical line end.
70
71
 
71
72
  ## Rules
72
73
 
@@ -97,9 +98,11 @@ preserved content.
97
98
 
98
99
  3. **Environment layout.** A standalone `\begin{name}` and `\end{name}` each go
99
100
  on their own line at the environment's indent. The body is indented **one
100
- level (2 spaces) deeper**, accumulating for nested environments.
101
- `math_indent` does **not** apply inside standalone environments; their
102
- two-space body indent is a fixed part of the stable style.
101
+ level (2 spaces) deeper**, accumulating for nested environments. An
102
+ environment inside a Markdown display-math host inherits `math_indent` around
103
+ its markers, then adds the fixed two-space body indent. A raw standalone TeX
104
+ environment has no Markdown host indent; its body still uses the same fixed
105
+ two-space step.
103
106
 
104
107
  Signature-declared environment arguments remain attached to the opening
105
108
  marker. In particular, `array`'s optional position and required column
@@ -191,9 +194,11 @@ preserved content.
191
194
  **source character counts**, so alignment is cosmetic source-tidiness, not
192
195
  rendered-glyph alignment (`\alpha` counts as 6).
193
196
 
194
- Every math-body line ends without trailing ASCII spaces or tabs. The printer
195
- and preserved-body host paths enforce this invariant; alignment padding may
196
- appear before a `\\` marker, but never at the physical line end.
197
+ Every math-body line ends without layout-generated ASCII spaces or tabs. The
198
+ printer and preserved-body host paths enforce this invariant; alignment
199
+ padding may appear before a `\\` marker, but never at the physical line end.
200
+ The semantic ASCII space in the TeX control symbol `\ ` is the sole exception
201
+ and survives even when that token ends a physical line.
197
202
 
198
203
  A grid cell containing one comment-bearing group, signature-proven argument,
199
204
  braced script, or `\left`/`\right` body uses the typed comment layout from
@@ -339,6 +344,10 @@ preserved content.
339
344
  `+`/`-` is `Ord` and never a break site. Typed lowering keeps the semantic
340
345
  atom stream intact across continuation segments, so a leading binary
341
346
  operator stays binary instead of coercing to a sign.
347
+ - **Semantic control spaces survive breaks.** The math IR represents `\ `
348
+ separately from layout padding. An authored or selected line ending after
349
+ that token retains its ASCII space, while any formatter-generated padding
350
+ after it is removed.
342
351
  - **A logical row is one equation.** Free rows split into logical rows only
343
352
  on a top-level hard `\\`; a soft newline is insignificant whitespace and
344
353
  does **not** start a new row, so a multi-line authored equation (and the
@@ -15,6 +15,8 @@ use std::rc::Rc;
15
15
  pub(super) enum Ir {
16
16
  /// Literal single-line text.
17
17
  Text(Rc<str>),
18
+ /// The TeX control symbol `\ `, whose ASCII space is semantic.
19
+ ControlSpace,
18
20
  /// Documents printed back-to-back.
19
21
  Concat(Rc<[Ir]>),
20
22
  /// A space when flat, or a newline when broken.
@@ -59,6 +61,10 @@ impl Ir {
59
61
  }
60
62
  }
61
63
 
64
+ pub(super) fn control_space() -> Self {
65
+ Self::ControlSpace
66
+ }
67
+
62
68
  pub(super) fn concat(documents: impl IntoIterator<Item = Ir>) -> Self {
63
69
  let documents: Vec<_> = documents
64
70
  .into_iter()
@@ -117,7 +123,7 @@ impl Ir {
117
123
  inner.contains_forced_break()
118
124
  }
119
125
  Self::BoundedAlign { aligned, .. } => aligned.contains_forced_break(),
120
- Self::Text(_) | Self::Line | Self::SoftLine | Self::Nil => false,
126
+ Self::Text(_) | Self::ControlSpace | Self::Line | Self::SoftLine | Self::Nil => false,
121
127
  }
122
128
  }
123
129
 
@@ -126,6 +132,7 @@ impl Ir {
126
132
  pub(super) fn flat_width(&self) -> Option<usize> {
127
133
  match self {
128
134
  Self::Text(text) => Some(text.chars().count()),
135
+ Self::ControlSpace => Some(2),
129
136
  Self::Verbatim(text) => (!text.contains('\n')).then(|| text.chars().count()),
130
137
  Self::Concat(documents) => documents.iter().try_fold(0usize, |width, document| {
131
138
  width.checked_add(document.flat_width()?)
@@ -2275,7 +2275,12 @@ fn atom_document(
2275
2275
  {
2276
2276
  let text = token_slice(range, token)?;
2277
2277
  let slash = text == "/";
2278
- (Ir::verbatim(text), slash)
2278
+ let document = if text == r"\ " {
2279
+ Ir::control_space()
2280
+ } else {
2281
+ Ir::verbatim(text)
2282
+ };
2283
+ (document, slash)
2279
2284
  }
2280
2285
  SyntaxElement::Node(node) => {
2281
2286
  if let Some(group) = MathGroup::cast(node.clone()) {