rumdl 0.0.163__tar.gz → 0.0.165__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.

Potentially problematic release.


This version of rumdl might be problematic. Click here for more details.

Files changed (466) hide show
  1. {rumdl-0.0.163 → rumdl-0.0.165}/.mise.toml +1 -0
  2. {rumdl-0.0.163 → rumdl-0.0.165}/.pre-commit-config.yaml +14 -4
  3. {rumdl-0.0.163 → rumdl-0.0.165}/CHANGELOG.md +100 -0
  4. rumdl-0.0.165/CONTRIBUTING.md +350 -0
  5. {rumdl-0.0.163 → rumdl-0.0.165}/Cargo.lock +33 -1
  6. {rumdl-0.0.163 → rumdl-0.0.165}/Cargo.toml +2 -1
  7. {rumdl-0.0.163 → rumdl-0.0.165}/Makefile +33 -3
  8. {rumdl-0.0.163 → rumdl-0.0.165}/PKG-INFO +1 -1
  9. rumdl-0.0.165/cliff.toml +115 -0
  10. rumdl-0.0.165/src/cache.rs +394 -0
  11. {rumdl-0.0.163 → rumdl-0.0.165}/src/file_processor.rs +79 -50
  12. {rumdl-0.0.163 → rumdl-0.0.165}/src/fix_coordinator.rs +57 -20
  13. {rumdl-0.0.163 → rumdl-0.0.165}/src/formatter.rs +1 -1
  14. {rumdl-0.0.163 → rumdl-0.0.165}/src/lib.rs +2 -2
  15. {rumdl-0.0.163 → rumdl-0.0.165}/src/lsp/server.rs +1 -1
  16. {rumdl-0.0.163 → rumdl-0.0.165}/src/lsp/types.rs +8 -8
  17. {rumdl-0.0.163 → rumdl-0.0.165}/src/main.rs +36 -1
  18. {rumdl-0.0.163 → rumdl-0.0.165}/src/output/formatters/azure.rs +13 -13
  19. {rumdl-0.0.163 → rumdl-0.0.165}/src/output/formatters/concise.rs +12 -12
  20. {rumdl-0.0.163 → rumdl-0.0.165}/src/output/formatters/github.rs +16 -16
  21. {rumdl-0.0.163 → rumdl-0.0.165}/src/output/formatters/gitlab.rs +17 -17
  22. {rumdl-0.0.163 → rumdl-0.0.165}/src/output/formatters/grouped.rs +19 -19
  23. {rumdl-0.0.163 → rumdl-0.0.165}/src/output/formatters/json.rs +13 -13
  24. {rumdl-0.0.163 → rumdl-0.0.165}/src/output/formatters/json_lines.rs +15 -15
  25. {rumdl-0.0.163 → rumdl-0.0.165}/src/output/formatters/junit.rs +14 -14
  26. {rumdl-0.0.163 → rumdl-0.0.165}/src/output/formatters/pylint.rs +12 -12
  27. {rumdl-0.0.163 → rumdl-0.0.165}/src/output/formatters/sarif.rs +16 -16
  28. {rumdl-0.0.163 → rumdl-0.0.165}/src/output/formatters/text.rs +10 -10
  29. {rumdl-0.0.163 → rumdl-0.0.165}/src/output/mod.rs +4 -4
  30. {rumdl-0.0.163 → rumdl-0.0.165}/src/rule.rs +7 -7
  31. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md001_heading_increment.rs +1 -1
  32. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md002_first_heading_h1.rs +1 -1
  33. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md003_heading_style.rs +1 -1
  34. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md004_unordered_list_style.rs +3 -3
  35. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md005_list_indent.rs +1 -1
  36. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md006_start_bullets.rs +1 -1
  37. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md007_ul_indent.rs +1 -1
  38. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md009_trailing_spaces.rs +2 -2
  39. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md010_no_hard_tabs.rs +1 -1
  40. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md011_no_reversed_links.rs +1 -1
  41. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md012_no_multiple_blanks.rs +5 -5
  42. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md013_line_length.rs +4 -4
  43. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md014_commands_show_output.rs +1 -1
  44. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md018_no_missing_space_atx.rs +2 -2
  45. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md019_no_multiple_space_atx.rs +1 -1
  46. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md020_no_missing_space_closed_atx.rs +1 -1
  47. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md021_no_multiple_space_closed_atx.rs +1 -1
  48. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md022_blanks_around_headings.rs +1 -1
  49. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md023_heading_start_left.rs +3 -3
  50. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md024_no_duplicate_heading.rs +3 -3
  51. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md025_single_title.rs +1 -1
  52. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md026_no_trailing_punctuation.rs +1 -1
  53. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md027_multiple_spaces_blockquote.rs +2 -2
  54. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md028_no_blanks_blockquote.rs +1 -1
  55. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md029_ordered_list_prefix.rs +3 -3
  56. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md030_list_marker_space.rs +1 -1
  57. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md031_blanks_around_fences.rs +4 -4
  58. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md032_blanks_around_lists.rs +3 -3
  59. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md033_no_inline_html.rs +2 -2
  60. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md034_no_bare_urls.rs +2 -2
  61. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md035_hr_style.rs +1 -1
  62. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md036_no_emphasis_only_first.rs +1 -1
  63. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md037_spaces_around_emphasis.rs +1 -1
  64. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md038_no_space_in_code.rs +1 -1
  65. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md039_no_space_in_links.rs +2 -2
  66. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md040_fenced_code_language.rs +66 -66
  67. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md041_first_line_heading.rs +1 -1
  68. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md042_no_empty_links.rs +1 -1
  69. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md043_required_headings.rs +3 -3
  70. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md044_proper_names.rs +1 -1
  71. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md045_no_alt_text.rs +1 -1
  72. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md046_code_block_style.rs +4 -4
  73. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md047_single_trailing_newline.rs +1 -1
  74. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md048_code_fence_style.rs +4 -4
  75. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md049_emphasis_style.rs +2 -2
  76. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md050_strong_style.rs +1 -1
  77. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md051_link_fragments.rs +1 -1
  78. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md052_reference_links_images.rs +1 -1
  79. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md053_link_image_reference_definitions.rs +3 -3
  80. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md054_link_image_style.rs +1 -1
  81. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md055_table_pipe_style.rs +1 -1
  82. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md056_table_column_count.rs +1 -1
  83. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md057_existing_relative_links.rs +1 -1
  84. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md058_blanks_around_tables.rs +2 -2
  85. {rumdl-0.0.163 → rumdl-0.0.165}/src/utils/fix_utils.rs +19 -19
  86. {rumdl-0.0.163 → rumdl-0.0.165}/src/watch.rs +20 -18
  87. {rumdl-0.0.163 → rumdl-0.0.165}/tests/character_ranges/mod.rs +2 -2
  88. {rumdl-0.0.163 → rumdl-0.0.165}/tests/config_application_tests.rs +45 -12
  89. {rumdl-0.0.163 → rumdl-0.0.165}/tests/config_tests.rs +6 -3
  90. {rumdl-0.0.163 → rumdl-0.0.165}/tests/lsp_tests.rs +5 -5
  91. {rumdl-0.0.163 → rumdl-0.0.165}/tests/per_file_ignores_integration_test.rs +2 -2
  92. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md029_nested_list_continuation_test.rs +4 -1
  93. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md029_test.rs +12 -3
  94. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md034_test.rs +1 -1
  95. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md040_test.rs +1 -1
  96. {rumdl-0.0.163 → rumdl-0.0.165}/.config/nextest.toml +0 -0
  97. {rumdl-0.0.163 → rumdl-0.0.165}/.rumdl.toml +0 -0
  98. {rumdl-0.0.163 → rumdl-0.0.165}/.rustfmt.toml +0 -0
  99. {rumdl-0.0.163 → rumdl-0.0.165}/LICENSE +0 -0
  100. {rumdl-0.0.163 → rumdl-0.0.165}/MANIFEST.in +0 -0
  101. {rumdl-0.0.163 → rumdl-0.0.165}/README.md +0 -0
  102. {rumdl-0.0.163 → rumdl-0.0.165}/assets/logo.png +0 -0
  103. {rumdl-0.0.163 → rumdl-0.0.165}/benches/fix_performance.rs +0 -0
  104. {rumdl-0.0.163 → rumdl-0.0.165}/benches/range_performance.rs +0 -0
  105. {rumdl-0.0.163 → rumdl-0.0.165}/benches/range_utils_benchmark.rs +0 -0
  106. {rumdl-0.0.163 → rumdl-0.0.165}/benches/rule_performance.rs +0 -0
  107. {rumdl-0.0.163 → rumdl-0.0.165}/benches/simple_fix_bench.rs +0 -0
  108. {rumdl-0.0.163 → rumdl-0.0.165}/benchmark/bin/bench_lint_context.rs +0 -0
  109. {rumdl-0.0.163 → rumdl-0.0.165}/benchmark/bin/benchmark.rs +0 -0
  110. {rumdl-0.0.163 → rumdl-0.0.165}/benchmark/bin/benchmark_rule.rs +0 -0
  111. {rumdl-0.0.163 → rumdl-0.0.165}/benchmark/bin/file_parallel_benchmark.rs +0 -0
  112. {rumdl-0.0.163 → rumdl-0.0.165}/benchmark/bin/measure_code_span_performance.rs +0 -0
  113. {rumdl-0.0.163 → rumdl-0.0.165}/docs/RULES.md +0 -0
  114. {rumdl-0.0.163 → rumdl-0.0.165}/docs/global-settings.md +0 -0
  115. {rumdl-0.0.163 → rumdl-0.0.165}/docs/inline-configuration.md +0 -0
  116. {rumdl-0.0.163 → rumdl-0.0.165}/docs/md001.md +0 -0
  117. {rumdl-0.0.163 → rumdl-0.0.165}/docs/md002.md +0 -0
  118. {rumdl-0.0.163 → rumdl-0.0.165}/docs/md003.md +0 -0
  119. {rumdl-0.0.163 → rumdl-0.0.165}/docs/md004.md +0 -0
  120. {rumdl-0.0.163 → rumdl-0.0.165}/docs/md005.md +0 -0
  121. {rumdl-0.0.163 → rumdl-0.0.165}/docs/md006.md +0 -0
  122. {rumdl-0.0.163 → rumdl-0.0.165}/docs/md007.md +0 -0
  123. {rumdl-0.0.163 → rumdl-0.0.165}/docs/md009.md +0 -0
  124. {rumdl-0.0.163 → rumdl-0.0.165}/docs/md010.md +0 -0
  125. {rumdl-0.0.163 → rumdl-0.0.165}/docs/md011.md +0 -0
  126. {rumdl-0.0.163 → rumdl-0.0.165}/docs/md012.md +0 -0
  127. {rumdl-0.0.163 → rumdl-0.0.165}/docs/md013.md +0 -0
  128. {rumdl-0.0.163 → rumdl-0.0.165}/docs/md014.md +0 -0
  129. {rumdl-0.0.163 → rumdl-0.0.165}/docs/md018.md +0 -0
  130. {rumdl-0.0.163 → rumdl-0.0.165}/docs/md019.md +0 -0
  131. {rumdl-0.0.163 → rumdl-0.0.165}/docs/md020.md +0 -0
  132. {rumdl-0.0.163 → rumdl-0.0.165}/docs/md021.md +0 -0
  133. {rumdl-0.0.163 → rumdl-0.0.165}/docs/md022.md +0 -0
  134. {rumdl-0.0.163 → rumdl-0.0.165}/docs/md023.md +0 -0
  135. {rumdl-0.0.163 → rumdl-0.0.165}/docs/md024.md +0 -0
  136. {rumdl-0.0.163 → rumdl-0.0.165}/docs/md025.md +0 -0
  137. {rumdl-0.0.163 → rumdl-0.0.165}/docs/md026.md +0 -0
  138. {rumdl-0.0.163 → rumdl-0.0.165}/docs/md027.md +0 -0
  139. {rumdl-0.0.163 → rumdl-0.0.165}/docs/md028.md +0 -0
  140. {rumdl-0.0.163 → rumdl-0.0.165}/docs/md029.md +0 -0
  141. {rumdl-0.0.163 → rumdl-0.0.165}/docs/md030.md +0 -0
  142. {rumdl-0.0.163 → rumdl-0.0.165}/docs/md031.md +0 -0
  143. {rumdl-0.0.163 → rumdl-0.0.165}/docs/md032.md +0 -0
  144. {rumdl-0.0.163 → rumdl-0.0.165}/docs/md033.md +0 -0
  145. {rumdl-0.0.163 → rumdl-0.0.165}/docs/md034.md +0 -0
  146. {rumdl-0.0.163 → rumdl-0.0.165}/docs/md035.md +0 -0
  147. {rumdl-0.0.163 → rumdl-0.0.165}/docs/md036.md +0 -0
  148. {rumdl-0.0.163 → rumdl-0.0.165}/docs/md037.md +0 -0
  149. {rumdl-0.0.163 → rumdl-0.0.165}/docs/md038.md +0 -0
  150. {rumdl-0.0.163 → rumdl-0.0.165}/docs/md039.md +0 -0
  151. {rumdl-0.0.163 → rumdl-0.0.165}/docs/md040.md +0 -0
  152. {rumdl-0.0.163 → rumdl-0.0.165}/docs/md041.md +0 -0
  153. {rumdl-0.0.163 → rumdl-0.0.165}/docs/md042.md +0 -0
  154. {rumdl-0.0.163 → rumdl-0.0.165}/docs/md043.md +0 -0
  155. {rumdl-0.0.163 → rumdl-0.0.165}/docs/md044.md +0 -0
  156. {rumdl-0.0.163 → rumdl-0.0.165}/docs/md045.md +0 -0
  157. {rumdl-0.0.163 → rumdl-0.0.165}/docs/md046.md +0 -0
  158. {rumdl-0.0.163 → rumdl-0.0.165}/docs/md047.md +0 -0
  159. {rumdl-0.0.163 → rumdl-0.0.165}/docs/md048.md +0 -0
  160. {rumdl-0.0.163 → rumdl-0.0.165}/docs/md049.md +0 -0
  161. {rumdl-0.0.163 → rumdl-0.0.165}/docs/md050.md +0 -0
  162. {rumdl-0.0.163 → rumdl-0.0.165}/docs/md051.md +0 -0
  163. {rumdl-0.0.163 → rumdl-0.0.165}/docs/md052.md +0 -0
  164. {rumdl-0.0.163 → rumdl-0.0.165}/docs/md053.md +0 -0
  165. {rumdl-0.0.163 → rumdl-0.0.165}/docs/md054.md +0 -0
  166. {rumdl-0.0.163 → rumdl-0.0.165}/docs/md055.md +0 -0
  167. {rumdl-0.0.163 → rumdl-0.0.165}/docs/md056.md +0 -0
  168. {rumdl-0.0.163 → rumdl-0.0.165}/docs/md057.md +0 -0
  169. {rumdl-0.0.163 → rumdl-0.0.165}/docs/md058.md +0 -0
  170. {rumdl-0.0.163 → rumdl-0.0.165}/docs/vscode-extension.md +0 -0
  171. {rumdl-0.0.163 → rumdl-0.0.165}/pyproject.toml +0 -0
  172. {rumdl-0.0.163 → rumdl-0.0.165}/rumdl/__init__.py +0 -0
  173. {rumdl-0.0.163 → rumdl-0.0.165}/rumdl/__main__.py +0 -0
  174. {rumdl-0.0.163 → rumdl-0.0.165}/rumdl/py.typed +0 -0
  175. {rumdl-0.0.163 → rumdl-0.0.165}/rumdl.schema.json +0 -0
  176. {rumdl-0.0.163 → rumdl-0.0.165}/rumdl.toml.example +0 -0
  177. {rumdl-0.0.163 → rumdl-0.0.165}/rust-toolchain.toml +0 -0
  178. {rumdl-0.0.163 → rumdl-0.0.165}/scripts/extract-changelog.sh +0 -0
  179. {rumdl-0.0.163 → rumdl-0.0.165}/scripts/generate-downloads-table.sh +0 -0
  180. {rumdl-0.0.163 → rumdl-0.0.165}/scripts/pre-release.sh +0 -0
  181. {rumdl-0.0.163 → rumdl-0.0.165}/scripts/prepare-release.sh +0 -0
  182. {rumdl-0.0.163 → rumdl-0.0.165}/scripts/setup-pre-commit.sh +0 -0
  183. {rumdl-0.0.163 → rumdl-0.0.165}/scripts/update-pre-commit-docs.sh +0 -0
  184. {rumdl-0.0.163 → rumdl-0.0.165}/src/config.rs +0 -0
  185. {rumdl-0.0.163 → rumdl-0.0.165}/src/exit_codes.rs +0 -0
  186. {rumdl-0.0.163 → rumdl-0.0.165}/src/filtered_lines.rs +0 -0
  187. {rumdl-0.0.163 → rumdl-0.0.165}/src/inline_config.rs +0 -0
  188. {rumdl-0.0.163 → rumdl-0.0.165}/src/lint_context.rs +0 -0
  189. {rumdl-0.0.163 → rumdl-0.0.165}/src/lsp/mod.rs +0 -0
  190. {rumdl-0.0.163 → rumdl-0.0.165}/src/markdownlint_config.rs +0 -0
  191. {rumdl-0.0.163 → rumdl-0.0.165}/src/output/formatters/mod.rs +0 -0
  192. {rumdl-0.0.163 → rumdl-0.0.165}/src/parallel.rs +0 -0
  193. {rumdl-0.0.163 → rumdl-0.0.165}/src/performance.rs +0 -0
  194. {rumdl-0.0.163 → rumdl-0.0.165}/src/profiling.rs +0 -0
  195. {rumdl-0.0.163 → rumdl-0.0.165}/src/rule_config.rs +0 -0
  196. {rumdl-0.0.163 → rumdl-0.0.165}/src/rule_config_serde.rs +0 -0
  197. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/blockquote_utils.rs +0 -0
  198. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/code_block_utils.rs +0 -0
  199. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/code_fence_utils.rs +0 -0
  200. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/emphasis_style.rs +0 -0
  201. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/front_matter_utils.rs +0 -0
  202. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/heading_utils.rs +0 -0
  203. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/list_utils.rs +0 -0
  204. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md002_first_heading_h1/md002_config.rs +0 -0
  205. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md003_heading_style/md003_config.rs +0 -0
  206. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md004_unordered_list_style/md004_config.rs +0 -0
  207. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md007_ul_indent/md007_config.rs +0 -0
  208. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md009_trailing_spaces/md009_config.rs +0 -0
  209. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md010_no_hard_tabs/md010_config.rs +0 -0
  210. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md012_no_multiple_blanks/md012_config.rs +0 -0
  211. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md013_line_length/md013_config.rs +0 -0
  212. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md014_commands_show_output/md014_config.rs +0 -0
  213. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md022_blanks_around_headings/md022_config.rs +0 -0
  214. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md024_no_duplicate_heading/md024_config.rs +0 -0
  215. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md025_single_title/md025_config.rs +0 -0
  216. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md026_no_trailing_punctuation/md026_config.rs +0 -0
  217. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md029_ordered_list_prefix/md029_config.rs +0 -0
  218. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md030_list_marker_space/md030_config.rs +0 -0
  219. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md033_no_inline_html/md033_config.rs +0 -0
  220. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md035_hr_style/md035_config.rs +0 -0
  221. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md036_no_emphasis_only_first/md036_config.rs +0 -0
  222. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md044_proper_names/md044_config.rs +0 -0
  223. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md045_no_alt_text/md045_config.rs +0 -0
  224. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md046_code_block_style/md046_config.rs +0 -0
  225. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md048_code_fence_style/md048_config.rs +0 -0
  226. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md049_emphasis_style/md049_config.rs +0 -0
  227. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md050_strong_style/md050_config.rs +0 -0
  228. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md054_link_image_style/md054_config.rs +0 -0
  229. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md055_table_pipe_style/md055_config.rs +0 -0
  230. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/md057_existing_relative_links/md057_config.rs +0 -0
  231. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/mod.rs +0 -0
  232. {rumdl-0.0.163 → rumdl-0.0.165}/src/rules/strong_style.rs +0 -0
  233. {rumdl-0.0.163 → rumdl-0.0.165}/src/stdin_processor.rs +0 -0
  234. {rumdl-0.0.163 → rumdl-0.0.165}/src/utils/anchor_styles/github.rs +0 -0
  235. {rumdl-0.0.163 → rumdl-0.0.165}/src/utils/anchor_styles/jekyll.rs +0 -0
  236. {rumdl-0.0.163 → rumdl-0.0.165}/src/utils/anchor_styles/kramdown.rs +0 -0
  237. {rumdl-0.0.163 → rumdl-0.0.165}/src/utils/anchor_styles/kramdown_gfm.rs +0 -0
  238. {rumdl-0.0.163 → rumdl-0.0.165}/src/utils/anchor_styles/mod.rs +0 -0
  239. {rumdl-0.0.163 → rumdl-0.0.165}/src/utils/ast_utils.rs +0 -0
  240. {rumdl-0.0.163 → rumdl-0.0.165}/src/utils/code_block_utils.rs +0 -0
  241. {rumdl-0.0.163 → rumdl-0.0.165}/src/utils/document_structure.rs +0 -0
  242. {rumdl-0.0.163 → rumdl-0.0.165}/src/utils/early_returns.rs +0 -0
  243. {rumdl-0.0.163 → rumdl-0.0.165}/src/utils/element_cache.rs +0 -0
  244. {rumdl-0.0.163 → rumdl-0.0.165}/src/utils/emphasis_utils.rs +0 -0
  245. {rumdl-0.0.163 → rumdl-0.0.165}/src/utils/header_id_utils.rs +0 -0
  246. {rumdl-0.0.163 → rumdl-0.0.165}/src/utils/jinja_utils.rs +0 -0
  247. {rumdl-0.0.163 → rumdl-0.0.165}/src/utils/kramdown_utils.rs +0 -0
  248. {rumdl-0.0.163 → rumdl-0.0.165}/src/utils/line_ending.rs +0 -0
  249. {rumdl-0.0.163 → rumdl-0.0.165}/src/utils/markdown_elements.rs +0 -0
  250. {rumdl-0.0.163 → rumdl-0.0.165}/src/utils/mkdocs_admonitions.rs +0 -0
  251. {rumdl-0.0.163 → rumdl-0.0.165}/src/utils/mkdocs_common.rs +0 -0
  252. {rumdl-0.0.163 → rumdl-0.0.165}/src/utils/mkdocs_critic.rs +0 -0
  253. {rumdl-0.0.163 → rumdl-0.0.165}/src/utils/mkdocs_footnotes.rs +0 -0
  254. {rumdl-0.0.163 → rumdl-0.0.165}/src/utils/mkdocs_patterns.rs +0 -0
  255. {rumdl-0.0.163 → rumdl-0.0.165}/src/utils/mkdocs_snippets.rs +0 -0
  256. {rumdl-0.0.163 → rumdl-0.0.165}/src/utils/mkdocs_tabs.rs +0 -0
  257. {rumdl-0.0.163 → rumdl-0.0.165}/src/utils/mkdocs_test_utils.rs +0 -0
  258. {rumdl-0.0.163 → rumdl-0.0.165}/src/utils/mkdocstrings_refs.rs +0 -0
  259. {rumdl-0.0.163 → rumdl-0.0.165}/src/utils/mod.rs +0 -0
  260. {rumdl-0.0.163 → rumdl-0.0.165}/src/utils/range_utils.rs +0 -0
  261. {rumdl-0.0.163 → rumdl-0.0.165}/src/utils/regex_cache.rs +0 -0
  262. {rumdl-0.0.163 → rumdl-0.0.165}/src/utils/skip_context.rs +0 -0
  263. {rumdl-0.0.163 → rumdl-0.0.165}/src/utils/string_interner.rs +0 -0
  264. {rumdl-0.0.163 → rumdl-0.0.165}/src/utils/table_utils.rs +0 -0
  265. {rumdl-0.0.163 → rumdl-0.0.165}/src/utils/text_reflow.rs +0 -0
  266. {rumdl-0.0.163 → rumdl-0.0.165}/src/vscode.rs +0 -0
  267. {rumdl-0.0.163 → rumdl-0.0.165}/tests/advanced_integration_tests.rs +0 -0
  268. {rumdl-0.0.163 → rumdl-0.0.165}/tests/character_ranges/additional_tests.rs +0 -0
  269. {rumdl-0.0.163 → rumdl-0.0.165}/tests/character_ranges/basic_tests.rs +0 -0
  270. {rumdl-0.0.163 → rumdl-0.0.165}/tests/character_ranges/comprehensive_tests.rs +0 -0
  271. {rumdl-0.0.163 → rumdl-0.0.165}/tests/character_ranges/extended_tests.rs +0 -0
  272. {rumdl-0.0.163 → rumdl-0.0.165}/tests/character_ranges/unicode_utils.rs +0 -0
  273. {rumdl-0.0.163 → rumdl-0.0.165}/tests/cli_duplication_test.rs +0 -0
  274. {rumdl-0.0.163 → rumdl-0.0.165}/tests/cli_explain_test.rs +0 -0
  275. {rumdl-0.0.163 → rumdl-0.0.165}/tests/cli_flag_precedence_test.rs +0 -0
  276. {rumdl-0.0.163 → rumdl-0.0.165}/tests/cli_integration_tests.rs +0 -0
  277. {rumdl-0.0.163 → rumdl-0.0.165}/tests/cli_lsp_fix_consistency.rs +0 -0
  278. {rumdl-0.0.163 → rumdl-0.0.165}/tests/cli_statistics_test.rs +0 -0
  279. {rumdl-0.0.163 → rumdl-0.0.165}/tests/code_block_blockquote_edge_cases.rs +0 -0
  280. {rumdl-0.0.163 → rumdl-0.0.165}/tests/common/cli_test_utils.rs +0 -0
  281. {rumdl-0.0.163 → rumdl-0.0.165}/tests/common/fixtures.rs +0 -0
  282. {rumdl-0.0.163 → rumdl-0.0.165}/tests/common/mod.rs +0 -0
  283. {rumdl-0.0.163 → rumdl-0.0.165}/tests/common/test_utils.rs +0 -0
  284. {rumdl-0.0.163 → rumdl-0.0.165}/tests/commonmark_compliance_tests.rs +0 -0
  285. {rumdl-0.0.163 → rumdl-0.0.165}/tests/comprehensive_integration_tests.rs +0 -0
  286. {rumdl-0.0.163 → rumdl-0.0.165}/tests/comprehensive_output_format_tests.rs +0 -0
  287. {rumdl-0.0.163 → rumdl-0.0.165}/tests/config_file_command_test.rs +0 -0
  288. {rumdl-0.0.163 → rumdl-0.0.165}/tests/config_upward_traversal_test.rs +0 -0
  289. {rumdl-0.0.163 → rumdl-0.0.165}/tests/configuration_inheritance_tests.rs +0 -0
  290. {rumdl-0.0.163 → rumdl-0.0.165}/tests/consistency_regression_tests.rs +0 -0
  291. {rumdl-0.0.163 → rumdl-0.0.165}/tests/crlf_line_endings_test.rs +0 -0
  292. {rumdl-0.0.163 → rumdl-0.0.165}/tests/cross_platform_compatibility_tests.rs +0 -0
  293. {rumdl-0.0.163 → rumdl-0.0.165}/tests/deeply_nested_lists_performance_test.rs +0 -0
  294. {rumdl-0.0.163 → rumdl-0.0.165}/tests/escaped_brackets_test.rs +0 -0
  295. {rumdl-0.0.163 → rumdl-0.0.165}/tests/exclude_with_explicit_paths_test.rs +0 -0
  296. {rumdl-0.0.163 → rumdl-0.0.165}/tests/final_confidence_assessment.rs +0 -0
  297. {rumdl-0.0.163 → rumdl-0.0.165}/tests/fix_counting_test.rs +0 -0
  298. {rumdl-0.0.163 → rumdl-0.0.165}/tests/fix_performance_baseline_test.rs +0 -0
  299. {rumdl-0.0.163 → rumdl-0.0.165}/tests/fixable_unfixable_config_test.rs +0 -0
  300. {rumdl-0.0.163 → rumdl-0.0.165}/tests/html_comments_test.rs +0 -0
  301. {rumdl-0.0.163 → rumdl-0.0.165}/tests/init_command_test.rs +0 -0
  302. {rumdl-0.0.163 → rumdl-0.0.165}/tests/init_tests.rs +0 -0
  303. {rumdl-0.0.163 → rumdl-0.0.165}/tests/inline_config_blocks_test.rs +0 -0
  304. {rumdl-0.0.163 → rumdl-0.0.165}/tests/inline_config_test.rs +0 -0
  305. {rumdl-0.0.163 → rumdl-0.0.165}/tests/integration_tests.rs +0 -0
  306. {rumdl-0.0.163 → rumdl-0.0.165}/tests/json_output_test.rs +0 -0
  307. {rumdl-0.0.163 → rumdl-0.0.165}/tests/kramdown_integration_test.rs +0 -0
  308. {rumdl-0.0.163 → rumdl-0.0.165}/tests/lib.rs +0 -0
  309. {rumdl-0.0.163 → rumdl-0.0.165}/tests/lsp_editor_integration_tests.rs +0 -0
  310. {rumdl-0.0.163 → rumdl-0.0.165}/tests/lsp_formatting_tests.rs +0 -0
  311. {rumdl-0.0.163 → rumdl-0.0.165}/tests/lsp_initialization_options_test.rs +0 -0
  312. {rumdl-0.0.163 → rumdl-0.0.165}/tests/lsp_integration_tests.rs +0 -0
  313. {rumdl-0.0.163 → rumdl-0.0.165}/tests/lsp_memory_leak_tests.rs +0 -0
  314. {rumdl-0.0.163 → rumdl-0.0.165}/tests/lsp_mkdocs_flavor_test.rs +0 -0
  315. {rumdl-0.0.163 → rumdl-0.0.165}/tests/lsp_unopened_document_test.rs +0 -0
  316. {rumdl-0.0.163 → rumdl-0.0.165}/tests/malformed_markdown_stress_tests.rs +0 -0
  317. {rumdl-0.0.163 → rumdl-0.0.165}/tests/markdownlint_cli_integration.rs +0 -0
  318. {rumdl-0.0.163 → rumdl-0.0.165}/tests/markdownlint_config_test.rs +0 -0
  319. {rumdl-0.0.163 → rumdl-0.0.165}/tests/markdownlintignore_test.rs +0 -0
  320. {rumdl-0.0.163 → rumdl-0.0.165}/tests/md009_md013_integration_test.rs +0 -0
  321. {rumdl-0.0.163 → rumdl-0.0.165}/tests/md009_md013_order_test.rs +0 -0
  322. {rumdl-0.0.163 → rumdl-0.0.165}/tests/md013_hard_breaks_test.rs +0 -0
  323. {rumdl-0.0.163 → rumdl-0.0.165}/tests/md013_reflow_integration_test.rs +0 -0
  324. {rumdl-0.0.163 → rumdl-0.0.165}/tests/md013_reflow_nested_lists_test.rs +0 -0
  325. {rumdl-0.0.163 → rumdl-0.0.165}/tests/md032_edge_cases_test.rs +0 -0
  326. {rumdl-0.0.163 → rumdl-0.0.165}/tests/md032_ordered_list_bug_test.rs +0 -0
  327. {rumdl-0.0.163 → rumdl-0.0.165}/tests/md033_edge_cases_test.rs +0 -0
  328. {rumdl-0.0.163 → rumdl-0.0.165}/tests/md037_xxxx_regression_test.rs +0 -0
  329. {rumdl-0.0.163 → rumdl-0.0.165}/tests/md038_false_positive_test.rs +0 -0
  330. {rumdl-0.0.163 → rumdl-0.0.165}/tests/md051_issue_39_regression_test.rs +0 -0
  331. {rumdl-0.0.163 → rumdl-0.0.165}/tests/md051_readme_bug_test.rs +0 -0
  332. {rumdl-0.0.163 → rumdl-0.0.165}/tests/md051_toc_bug_test.rs +0 -0
  333. {rumdl-0.0.163 → rumdl-0.0.165}/tests/md052_literal_brackets_test.rs +0 -0
  334. {rumdl-0.0.163 → rumdl-0.0.165}/tests/md054_code_span_test.rs +0 -0
  335. {rumdl-0.0.163 → rumdl-0.0.165}/tests/mkdocs_anchor_edge_cases_test.rs +0 -0
  336. {rumdl-0.0.163 → rumdl-0.0.165}/tests/mkdocs_anchor_test.rs +0 -0
  337. {rumdl-0.0.163 → rumdl-0.0.165}/tests/nested_code_block_test.rs +0 -0
  338. {rumdl-0.0.163 → rumdl-0.0.165}/tests/output_format_integration_tests.rs +0 -0
  339. {rumdl-0.0.163 → rumdl-0.0.165}/tests/output_format_tests.rs +0 -0
  340. {rumdl-0.0.163 → rumdl-0.0.165}/tests/perf_check.rs +0 -0
  341. {rumdl-0.0.163 → rumdl-0.0.165}/tests/performance_validation_tests.rs +0 -0
  342. {rumdl-0.0.163 → rumdl-0.0.165}/tests/pyproject_config_tests.rs +0 -0
  343. {rumdl-0.0.163 → rumdl-0.0.165}/tests/real_world_repository_tests.rs +0 -0
  344. {rumdl-0.0.163 → rumdl-0.0.165}/tests/regression_prevention_tests.rs +0 -0
  345. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/emphasis_edge_cases_test.rs +0 -0
  346. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/heading_edge_cases_test.rs +0 -0
  347. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/inline_content_edge_cases_test.rs +0 -0
  348. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/link_edge_cases_test.rs +0 -0
  349. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/list_rules_integration_test.rs +0 -0
  350. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md001_test.rs +0 -0
  351. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md001_unicode_test.rs +0 -0
  352. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md002_test.rs +0 -0
  353. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md003_test.rs +0 -0
  354. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md004_test.rs +0 -0
  355. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md005_dynamic_indent_test.rs +0 -0
  356. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md005_test.rs +0 -0
  357. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md005_unicode_test.rs +0 -0
  358. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md006_test.rs +0 -0
  359. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md006_unicode_test.rs +0 -0
  360. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md007_test.rs +0 -0
  361. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md009_test.rs +0 -0
  362. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md010_test.rs +0 -0
  363. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md011_test.rs +0 -0
  364. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md012_test.rs +0 -0
  365. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md013_test.rs +0 -0
  366. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md014_test.rs +0 -0
  367. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md018_test.rs +0 -0
  368. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md019_test.rs +0 -0
  369. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md020_test.rs +0 -0
  370. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md021_test.rs +0 -0
  371. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md022_test.rs +0 -0
  372. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md023_extended_test.rs +0 -0
  373. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md023_test.rs +0 -0
  374. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md024_test.rs +0 -0
  375. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md025_test.rs +0 -0
  376. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md026_kramdown_test.rs +0 -0
  377. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md026_test.rs +0 -0
  378. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md027_test.rs +0 -0
  379. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md028_md009_interaction_test.rs +0 -0
  380. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md028_test.rs +0 -0
  381. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md029_code_block_separation_test.rs +0 -0
  382. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md029_fix_test.rs +0 -0
  383. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md029_issue42_test.rs +0 -0
  384. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md029_markdownlint_parity_test.rs +0 -0
  385. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md029_pathological_edge_cases_test.rs +0 -0
  386. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md029_unicode_test.rs +0 -0
  387. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md030_test.rs +0 -0
  388. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md031_kramdown_test.rs +0 -0
  389. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md031_test.rs +0 -0
  390. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md032_test.rs +0 -0
  391. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md033_blockquote_test.rs +0 -0
  392. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md033_extended_test.rs +0 -0
  393. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md033_kramdown_test.rs +0 -0
  394. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md033_test.rs +0 -0
  395. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md034_ipv6_test.rs +0 -0
  396. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md035_test.rs +0 -0
  397. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md036_test.rs +0 -0
  398. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md037_kramdown_test.rs +0 -0
  399. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md037_test.rs +0 -0
  400. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md038_nested_backticks_test.rs +0 -0
  401. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md038_test.rs +0 -0
  402. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md039_test.rs +0 -0
  403. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md041_test.rs +0 -0
  404. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md042_test.rs +0 -0
  405. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md043_test.rs +0 -0
  406. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md044_test.rs +0 -0
  407. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md045_test.rs +0 -0
  408. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md046_test.rs +0 -0
  409. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md047_test.rs +0 -0
  410. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md048_test.rs +0 -0
  411. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md049_test.rs +0 -0
  412. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md050_test.rs +0 -0
  413. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md051_comprehensive_test.rs +0 -0
  414. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md051_critical_edge_cases_test.rs +0 -0
  415. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md051_edge_cases_test.rs +0 -0
  416. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md051_issue_39_regression_test.rs +0 -0
  417. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md051_performance_edge_cases_test.rs +0 -0
  418. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md051_property_based_test.rs +0 -0
  419. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md051_regression_prevention_test.rs +0 -0
  420. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md051_test.rs +0 -0
  421. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md051_unicode_security_test.rs +0 -0
  422. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md052_test.rs +0 -0
  423. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md053_additional_test.rs +0 -0
  424. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md053_proptest.rs +0 -0
  425. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md053_test.rs +0 -0
  426. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md054_test.rs +0 -0
  427. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md054_unicode_test.rs +0 -0
  428. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md055_test.rs +0 -0
  429. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md056_test.rs +0 -0
  430. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md057_test.rs +0 -0
  431. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md058_kramdown_test.rs +0 -0
  432. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/md058_test.rs +0 -0
  433. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/mkdocs_admonitions_test.rs +0 -0
  434. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/mkdocs_edge_cases_test.rs +0 -0
  435. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/mkdocs_extensions_test.rs +0 -0
  436. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/mkdocs_snippets_test.rs +0 -0
  437. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/mod.rs +0 -0
  438. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules/rule_interaction_test.rs +0 -0
  439. {rumdl-0.0.163 → rumdl-0.0.165}/tests/rules_mod_test.rs +0 -0
  440. {rumdl-0.0.163 → rumdl-0.0.165}/tests/schema_validation_test.rs +0 -0
  441. {rumdl-0.0.163 → rumdl-0.0.165}/tests/sentence_per_line_test.rs +0 -0
  442. {rumdl-0.0.163 → rumdl-0.0.165}/tests/skip_context_tests.rs +0 -0
  443. {rumdl-0.0.163 → rumdl-0.0.165}/tests/test_ast_code_block_issue.rs +0 -0
  444. {rumdl-0.0.163 → rumdl-0.0.165}/tests/test_gfm_vs_default_parsing.rs +0 -0
  445. {rumdl-0.0.163 → rumdl-0.0.165}/tests/test_lint_context_flow.rs +0 -0
  446. {rumdl-0.0.163 → rumdl-0.0.165}/tests/test_list_ast_structure.rs +0 -0
  447. {rumdl-0.0.163 → rumdl-0.0.165}/tests/test_multiline_ast.rs +0 -0
  448. {rumdl-0.0.163 → rumdl-0.0.165}/tests/test_underscore_edge_cases.rs +0 -0
  449. {rumdl-0.0.163 → rumdl-0.0.165}/tests/thread_safety_tests.rs +0 -0
  450. {rumdl-0.0.163 → rumdl-0.0.165}/tests/unfixable_rules_test.rs +0 -0
  451. {rumdl-0.0.163 → rumdl-0.0.165}/tests/unicode_edge_case_tests.rs +0 -0
  452. {rumdl-0.0.163 → rumdl-0.0.165}/tests/utf8_boundary_tests.rs +0 -0
  453. {rumdl-0.0.163 → rumdl-0.0.165}/tests/utils/blockquote_utils_test.rs +0 -0
  454. {rumdl-0.0.163 → rumdl-0.0.165}/tests/utils/code_block_utils_extended_test.rs +0 -0
  455. {rumdl-0.0.163 → rumdl-0.0.165}/tests/utils/code_block_utils_test.rs +0 -0
  456. {rumdl-0.0.163 → rumdl-0.0.165}/tests/utils/core_utils_test.rs +0 -0
  457. {rumdl-0.0.163 → rumdl-0.0.165}/tests/utils/front_matter_utils_test.rs +0 -0
  458. {rumdl-0.0.163 → rumdl-0.0.165}/tests/utils/line_index_test.rs +0 -0
  459. {rumdl-0.0.163 → rumdl-0.0.165}/tests/utils/mod.rs +0 -0
  460. {rumdl-0.0.163 → rumdl-0.0.165}/tests/utils_markdown_edge_cases.rs +0 -0
  461. {rumdl-0.0.163 → rumdl-0.0.165}/tests/utils_tests.rs +0 -0
  462. {rumdl-0.0.163 → rumdl-0.0.165}/tests/vscode_extension_fixes.rs +0 -0
  463. {rumdl-0.0.163 → rumdl-0.0.165}/tests/vscode_test.rs +0 -0
  464. {rumdl-0.0.163 → rumdl-0.0.165}/tests/vscode_tests.rs +0 -0
  465. {rumdl-0.0.163 → rumdl-0.0.165}/tests/vscode_windows_comprehensive_test.rs +0 -0
  466. {rumdl-0.0.163 → rumdl-0.0.165}/tests/vscode_windows_test.rs +0 -0
@@ -21,6 +21,7 @@ uv = "latest"
21
21
  "cargo:maturin" = "latest"
22
22
  "cargo:cargo-binstall" = "latest"
23
23
  "cargo:cargo-zigbuild" = "latest" # For building static Linux binaries
24
+ "cargo:git-cliff" = "latest" # Changelog generator from conventional commits
24
25
 
25
26
  # Zig for cross-compilation (used by maturin)
26
27
  zig = "0.13"
@@ -1,12 +1,22 @@
1
1
  # Pre-commit hooks for rumdl
2
2
  # Install with:
3
- # pre-commit install # Install commit hooks
4
- # pre-commit install --hook-type pre-push # Install push hooks
3
+ # pre-commit install # Install commit hooks
4
+ # pre-commit install --hook-type commit-msg # Install commit-msg hooks
5
+ # pre-commit install --hook-type pre-push # Install push hooks
5
6
  # Run manually:
6
- # pre-commit run --all-files # Run commit hooks
7
- # pre-commit run --hook-stage push --all-files # Run push hooks
7
+ # pre-commit run --all-files # Run commit hooks
8
+ # pre-commit run --hook-stage push --all-files # Run push hooks
9
+ # pre-commit run --hook-stage commit-msg --commit-msg-filename .git/COMMIT_EDITMSG
8
10
 
9
11
  repos:
12
+ # Conventional Commits validation
13
+ - repo: https://github.com/compilerla/conventional-pre-commit
14
+ rev: v3.6.0
15
+ hooks:
16
+ - id: conventional-pre-commit
17
+ stages: [commit-msg]
18
+ args: [] # Optional: add --strict for stricter validation
19
+
10
20
  # Rust formatting and linting
11
21
  - repo: local
12
22
  hooks:
@@ -7,6 +7,106 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [0.0.165] - 2025-10-21
11
+
12
+ ### Fixed
13
+
14
+ - **MD040: Always preserve indentation when adding language tags** (fixes #122)
15
+ - The MD040 rule was incorrectly removing indentation from code blocks when adding language tags
16
+ - This broke list structure when code blocks were part of list items
17
+ - Root cause: The fix logic had conditional behavior that would remove indentation for "standalone" code blocks
18
+ - Now always preserves original indentation regardless of context
19
+ - Removed 50+ lines of unnecessary `is_in_nested_context()` helper logic
20
+ - Added comprehensive tests for various indentation scenarios (0, 2, 4, 6 spaces)
21
+
22
+ ### Added
23
+
24
+ - **Conventional Commits validation hook**: Git commit-msg hook validates commit message format
25
+ - Enforces Conventional Commits specification for all commits
26
+ - Provides helpful error messages for invalid formats
27
+ - Ensures consistent commit history for changelog generation
28
+
29
+ - **Automated changelog generation with git-cliff**:
30
+ - Added `make changelog-draft` for previewing CHANGELOG updates
31
+ - Semi-automated workflow: generate draft, enhance with details, commit
32
+ - Conventional Commits integration for automatic categorization
33
+
34
+ ### Changed
35
+
36
+ - **Pre-push hook optimization**: Use dev profile instead of full suite for faster testing
37
+ - Prevents pre-push hook from hanging on slower machines
38
+ - Maintains adequate test coverage while improving developer experience
39
+
40
+ ## [0.0.164] - 2025-10-21
41
+
42
+ ### Added
43
+
44
+ - **File-Level Caching (Ruff-inspired)**: Dramatic performance improvements for repeat runs
45
+ - Blake3-based content hashing for fast cache lookups
46
+ - Automatic cache invalidation on content, config, or version changes
47
+ - Cache stored in `.rumdl-cache/{version}/{hash}.json`
48
+ - CLI flags: `--no-cache` to disable, `--cache-dir` to customize location
49
+ - Enabled by default for instant subsequent runs
50
+
51
+ - **Thread-Safe Parallel Caching**: Best of both worlds - parallelization AND caching
52
+ - Implemented Arc<Mutex<LintCache>> for safe cache sharing across threads
53
+ - Mutex locked ONLY for brief cache get/set operations
54
+ - Full parallelization during expensive linting operations
55
+ - Matches Ruff's architecture for optimal performance
56
+
57
+ - **Convergence Detection**: Added hash-based detection to identify when fixes have stabilized
58
+ - Stops iteration when content hash remains unchanged
59
+ - More efficient than counting rule applications
60
+ - Returns convergence status in fix results
61
+
62
+ - **Convergence Failure Warnings**: Report when auto-fix doesn't converge (Ruff-style)
63
+ - Warns if 100 iteration limit reached without convergence
64
+ - Shows rule codes involved in potential infinite loop
65
+ - Encourages bug reports for convergence failures
66
+ - Available via `RUMDL_DEBUG_FIX_PERF` environment variable
67
+
68
+ ### Changed
69
+
70
+ - **Auto-fix Iteration**: Automatic iteration until convergence (fixes #88)
71
+ - `--fix` now automatically iterates up to 100 passes until content stabilizes (same as Ruff)
72
+ - No need to manually re-run `rumdl check --fix` multiple times
73
+ - Hash-based convergence detection prevents unnecessary iterations
74
+ - Significantly improves user experience for multi-pass fix scenarios
75
+
76
+ - **Unified Linting Architecture**: Removed ~60 lines of duplicate linting logic
77
+ - Refactored `process_file_collect_warnings` to use `process_file_inner`
78
+ - Single code path for all file processing
79
+ - Cache works for ALL output formats (text, JSON, GitLab, SARIF, JUnit)
80
+
81
+ - **Parallel File Processing for Fix Mode**: 4.8x speedup on multi-file fixes
82
+ - Previously fix mode was always sequential
83
+ - Now uses parallel processing when safe (multiple independent files)
84
+ - Each file processes all its fix iterations independently
85
+
86
+ ### Fixed
87
+
88
+ - **Multi-pass Fixes**: No longer require manual re-runs to apply all possible fixes
89
+ - Previously users had to run `rumdl check --fix` multiple times
90
+ - Now automatically handles dependent rule fixes in single command
91
+ - Examples: MD010 (tabs) before MD007 (list indent), MD013 (line length) before MD009 (trailing spaces)
92
+
93
+ - **Cache Correctness**: Include enabled rules in cache key (Ruff-style)
94
+ - Cache now respects `--enable`/`--disable` CLI flags
95
+ - Different rule configurations create separate cache entries
96
+ - Prevents incorrect cached results when switching rule sets
97
+ - Changed `LintWarning.rule_name` from `Option<&'static str>` to `Option<String>` for proper serialization
98
+
99
+ - **Cache Parallelization**: Cache now works correctly with parallel processing
100
+ - No mutex contention during parallel file processing
101
+ - All output formats benefit from caching (previously only JSON/GitLab/SARIF/JUnit)
102
+
103
+ ### Performance
104
+
105
+ - **Single file with cache**: 943ms → 7ms (135x faster)
106
+ - **Multi-file (21 files) cold cache**: 14.4s → 4s (parallel processing)
107
+ - **Multi-file (21 files) warm cache**: 14.4s → 0.019s (757x faster!)
108
+ - **JSON format (17 files) with cache**: 13.9s → 60ms (231x faster)
109
+
10
110
  ## [0.0.163] - 2025-10-20
11
111
 
12
112
  ### Changed
@@ -0,0 +1,350 @@
1
+ # Contributing to rumdl
2
+
3
+ Thank you for your interest in contributing to rumdl! This document provides guidelines and instructions for contributing.
4
+
5
+ ## Table of Contents
6
+
7
+ - [Development Setup](#development-setup)
8
+ - [Commit Message Convention](#commit-message-convention)
9
+ - [Changelog Workflow](#changelog-workflow)
10
+ - [Testing](#testing)
11
+ - [Code Style](#code-style)
12
+ - [Pull Request Process](#pull-request-process)
13
+
14
+ ## Development Setup
15
+
16
+ ### Prerequisites
17
+
18
+ - [Rust](https://rustup.rs/) 1.89.0 or later
19
+ - [mise](https://mise.jdx.dev/) for development tool management (recommended)
20
+
21
+ ### Quick Start
22
+
23
+ 1. **Clone the repository**:
24
+
25
+ ```bash
26
+ git clone https://github.com/rvben/rumdl.git
27
+ cd rumdl
28
+ ```
29
+
30
+ 2. **Install development tools** (using mise - recommended):
31
+
32
+ ```bash
33
+ make dev-setup
34
+ ```
35
+
36
+ Or manually:
37
+
38
+ ```bash
39
+ cargo install cargo-nextest cargo-watch maturin
40
+ ```
41
+
42
+ 3. **Install pre-commit hooks**:
43
+
44
+ ```bash
45
+ pre-commit install # Code quality hooks
46
+ pre-commit install --hook-type commit-msg # Conventional commits validation
47
+ pre-commit install --hook-type pre-push # Comprehensive validation
48
+ ```
49
+
50
+ 4. **Verify installation**:
51
+
52
+ ```bash
53
+ make dev-verify
54
+ ```
55
+
56
+ 5. **Run tests**:
57
+
58
+ ```bash
59
+ make test-dev # Recommended: ~20s, skips slowest tests
60
+ make test-quick # Faster: ~15s, skips slow/stress tests
61
+ make test # Full suite with dev profile
62
+ ```
63
+
64
+ ## Commit Message Convention
65
+
66
+ rumdl uses [Conventional Commits](https://www.conventionalcommits.org/) for automated changelog generation and semantic versioning.
67
+
68
+ ### Format
69
+
70
+ ```text
71
+ <type>(<scope>): <description>
72
+
73
+ [optional body]
74
+
75
+ [optional footer(s)]
76
+ ```
77
+
78
+ ### Types
79
+
80
+ | Type | Section | Description | Example |
81
+ |------|---------|-------------|---------|
82
+ | `feat` | **Added** | New features | `feat(cache): add file-level caching` |
83
+ | `fix` | **Fixed** | Bug fixes | `fix(MD013): enforce line length in sentence mode` |
84
+ | `perf` | **Performance** | Performance improvements | `perf(fix): enable parallel file processing` |
85
+ | `refactor` | **Changed** | Code refactoring | `refactor(cache): simplify cache key generation` |
86
+ | `docs` | **Changed** | Documentation only | `docs(readme): update installation steps` |
87
+ | `chore` | *(skipped)* | Maintenance tasks | `chore(deps): update dependencies` |
88
+ | `test` | *(skipped)* | Adding/updating tests | `test(cache): add cache invalidation tests` |
89
+ | `ci` | *(skipped)* | CI configuration | `ci: update GitHub Actions workflow` |
90
+ | `style` | *(skipped)* | Code formatting | `style: run cargo fmt` |
91
+
92
+ ### Examples
93
+
94
+ **Good commit messages**:
95
+
96
+ ```bash
97
+ feat(cache): implement Ruff-style parallel caching with Arc<Mutex<>>
98
+ fix(pre-push): use dev profile for test-push to avoid hanging
99
+ perf(fix): enable parallel file processing for fix mode (4.8x speedup)
100
+ docs(changelog): update v0.0.163 with HTML comments fix
101
+ ```
102
+
103
+ **Breaking changes**:
104
+
105
+ ```bash
106
+ feat(api)!: change linting API to return Result
107
+
108
+ BREAKING CHANGE: The linting API now returns Result<Vec<Warning>, Error>
109
+ instead of Vec<Warning>. Update your code to handle the new error type.
110
+ ```
111
+
112
+ ### Scope
113
+
114
+ The scope should be a noun describing the section of the codebase:
115
+
116
+ - `cache` - Caching infrastructure
117
+ - `fix` - Fix mode/auto-fix functionality
118
+ - `cli` - Command-line interface
119
+ - `lsp` - Language Server Protocol
120
+ - `rules` - Linting rules (or specific rule like `MD013`)
121
+ - `ci` - Continuous integration
122
+ - `docs` - Documentation
123
+
124
+ ## Changelog Workflow
125
+
126
+ rumdl uses [git-cliff](https://git-cliff.org/) to automatically generate changelog drafts from conventional commits.
127
+
128
+ ### Generating Changelog Drafts
129
+
130
+ ```bash
131
+ # Preview unreleased changes
132
+ make changelog-draft
133
+
134
+ # View latest release changelog
135
+ make changelog-latest
136
+
137
+ # Generate full changelog
138
+ make changelog-all
139
+
140
+ # Show available changelog commands
141
+ make changelog-help
142
+ ```
143
+
144
+ ### Updating CHANGELOG.md
145
+
146
+ **The changelog generation is semi-automated:**
147
+
148
+ 1. **Generate draft** from conventional commits:
149
+
150
+ ```bash
151
+ make changelog-draft > /tmp/draft.md
152
+ ```
153
+
154
+ 2. **Review and enhance** the generated content:
155
+ - Add detailed explanations
156
+ - Include sub-bullets for complex changes
157
+ - Add performance metrics if applicable
158
+ - Provide migration guidance for breaking changes
159
+
160
+ 3. **Update CHANGELOG.md** manually with enhanced content
161
+
162
+ 4. **Commit** the updated changelog:
163
+
164
+ ```bash
165
+ git add CHANGELOG.md
166
+ git commit -m "chore(changelog): update for v0.0.165"
167
+ ```
168
+
169
+ ### Best Practices
170
+
171
+ - ✅ **Do write detailed commit messages** - they become changelog entries
172
+ - ✅ **Do use scopes** - helps organize changelog sections
173
+ - ✅ **Do enhance generated content** - add context and details
174
+ - ❌ **Don't rely solely on generated text** - manual refinement is expected
175
+ - ❌ **Don't skip commits** - unconventional commits won't appear in changelog
176
+
177
+ ### Example Workflow
178
+
179
+ ```bash
180
+ # Make changes
181
+ git add src/cache.rs
182
+
183
+ # Commit with conventional format
184
+ git commit -m "feat(cache): add Blake3-based content hashing"
185
+
186
+ # Later, when preparing release
187
+ make changelog-draft
188
+
189
+ # Copy relevant section to CHANGELOG.md
190
+ # Enhance with details:
191
+ #
192
+ # - **File-Level Caching**: Blake3-based content hashing for fast lookups
193
+ # - Automatic cache invalidation on content/config changes
194
+ # - Cache stored in `.rumdl-cache/{version}/{hash}.json`
195
+ # - Enabled by default for instant subsequent runs
196
+ ```
197
+
198
+ ## Testing
199
+
200
+ ### Test Profiles
201
+
202
+ rumdl uses [cargo-nextest](https://nexte.st/) with optimized test profiles:
203
+
204
+ | Command | Duration | Use Case |
205
+ |---------|----------|----------|
206
+ | `make test-pre-commit` | ~6s | Pre-commit hook (lib tests only) |
207
+ | `make test-quick` | ~15s | Quick feedback (skips slow tests) |
208
+ | `make test-dev` | ~20s | Development default (skips slowest) |
209
+ | `make test` | ~30s | Full suite with dev profile |
210
+ | `make test-ci` | varies | CI environment |
211
+
212
+ **⚠️ Never use `cargo test` directly** - it's 30-100x slower!
213
+
214
+ ### Writing Tests
215
+
216
+ ```rust
217
+ #[test]
218
+ fn test_cache_invalidation() {
219
+ // Test implementation
220
+ }
221
+
222
+ // For slow tests, use ignore + filter
223
+ #[test]
224
+ #[ignore = "slow"]
225
+ fn test_large_file_processing() {
226
+ // Slow test implementation
227
+ }
228
+ ```
229
+
230
+ ### Running Specific Tests
231
+
232
+ ```bash
233
+ # Run specific test
234
+ cargo nextest run test_cache_invalidation
235
+
236
+ # Run all cache tests
237
+ cargo nextest run cache
238
+
239
+ # Run with specific profile
240
+ cargo nextest run --profile quick
241
+ ```
242
+
243
+ ## Code Style
244
+
245
+ ### Formatting
246
+
247
+ ```bash
248
+ # Format code and run clippy fixes
249
+ make fmt
250
+
251
+ # Check without modifying
252
+ make lint
253
+ ```
254
+
255
+ ### Guidelines
256
+
257
+ - **No dead code** - Remove unused code instead of `#[allow(dead_code)]`
258
+ - **Tests test excellence** - Write tests for correct behavior, not current broken behavior
259
+ - **Prefer explicit over implicit** - Clear code over clever code
260
+ - **Use inline format args** - `format!("{foo}")` instead of `format!("{}", foo)`
261
+
262
+ ## Pull Request Process
263
+
264
+ ### Before Submitting
265
+
266
+ 1. **Run tests**:
267
+
268
+ ```bash
269
+ make test-dev
270
+ ```
271
+
272
+ 2. **Format code**:
273
+
274
+ ```bash
275
+ make fmt
276
+ ```
277
+
278
+ 3. **Lint code**:
279
+
280
+ ```bash
281
+ make lint
282
+ ```
283
+
284
+ 4. **Update changelog** (if applicable):
285
+ - Generate draft: `make changelog-draft`
286
+ - Enhance and add to CHANGELOG.md
287
+
288
+ ### PR Guidelines
289
+
290
+ - ✅ Use conventional commit format for all commits
291
+ - ✅ Include tests for new features
292
+ - ✅ Update documentation if needed
293
+ - ✅ Keep PRs focused - one feature/fix per PR
294
+ - ✅ Reference issues: `Closes #123` or `Fixes #456`
295
+ - ❌ Don't include unrelated changes
296
+ - ❌ Don't commit `CLAUDE.md` or temporary files
297
+
298
+ ### PR Template
299
+
300
+ ```markdown
301
+ ## Description
302
+ Brief description of changes
303
+
304
+ ## Type of Change
305
+ - [ ] Bug fix (non-breaking change fixing an issue)
306
+ - [ ] New feature (non-breaking change adding functionality)
307
+ - [ ] Breaking change (fix or feature causing existing functionality to change)
308
+ - [ ] Documentation update
309
+
310
+ ## Testing
311
+ - [ ] Tests added/updated
312
+ - [ ] All tests passing (`make test-dev`)
313
+ - [ ] Manual testing performed
314
+
315
+ ## Checklist
316
+ - [ ] Code follows project style (`make fmt` && `make lint`)
317
+ - [ ] Conventional commit messages used
318
+ - [ ] Documentation updated (if needed)
319
+ - [ ] CHANGELOG.md updated (if user-facing)
320
+ ```
321
+
322
+ ## Release Process
323
+
324
+ The release process is automated and documented in `CLAUDE.md`. Key points:
325
+
326
+ 1. **Update version** in `Cargo.toml`
327
+ 2. **Update CHANGELOG.md** with release notes
328
+ 3. **Commit and tag**: Make targets handle this automatically
329
+ 4. **Push tag**: Triggers CI/CD to build and publish
330
+
331
+ ```bash
332
+ # Create patch release (0.0.164 → 0.0.165)
333
+ make version-patch
334
+
335
+ # Push to trigger release
336
+ make version-push
337
+
338
+ # Or combined
339
+ make release-patch
340
+ ```
341
+
342
+ ## Questions?
343
+
344
+ - 📖 [Documentation](https://github.com/rvben/rumdl)
345
+ - 🐛 [Issue Tracker](https://github.com/rvben/rumdl/issues)
346
+ - 💬 [Discussions](https://github.com/rvben/rumdl/discussions)
347
+
348
+ ## License
349
+
350
+ By contributing to rumdl, you agree that your contributions will be licensed under the [MIT License](LICENSE).
@@ -111,6 +111,18 @@ version = "1.0.100"
111
111
  source = "registry+https://github.com/rust-lang/crates.io-index"
112
112
  checksum = "a23eb6b1614318a8071c9b2521f36b424b2c83db5eb3a0fead4a6c0809af6e61"
113
113
 
114
+ [[package]]
115
+ name = "arrayref"
116
+ version = "0.3.9"
117
+ source = "registry+https://github.com/rust-lang/crates.io-index"
118
+ checksum = "76a2e8124351fda1ef8aaaa3bbd7ebbcb486bbcd4225aca0aa0d84bb2db8fecb"
119
+
120
+ [[package]]
121
+ name = "arrayvec"
122
+ version = "0.7.6"
123
+ source = "registry+https://github.com/rust-lang/crates.io-index"
124
+ checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50"
125
+
114
126
  [[package]]
115
127
  name = "assert_cmd"
116
128
  version = "2.0.17"
@@ -224,6 +236,19 @@ version = "2.9.4"
224
236
  source = "registry+https://github.com/rust-lang/crates.io-index"
225
237
  checksum = "2261d10cca569e4643e526d8dc2e62e433cc8aba21ab764233731f8d369bf394"
226
238
 
239
+ [[package]]
240
+ name = "blake3"
241
+ version = "1.8.2"
242
+ source = "registry+https://github.com/rust-lang/crates.io-index"
243
+ checksum = "3888aaa89e4b2a40fca9848e400f6a658a5a3978de7be858e209cafa8be9a4a0"
244
+ dependencies = [
245
+ "arrayref",
246
+ "arrayvec",
247
+ "cc",
248
+ "cfg-if",
249
+ "constant_time_eq",
250
+ ]
251
+
227
252
  [[package]]
228
253
  name = "borrow-or-share"
229
254
  version = "0.2.2"
@@ -377,6 +402,12 @@ dependencies = [
377
402
  "windows-sys 0.59.0",
378
403
  ]
379
404
 
405
+ [[package]]
406
+ name = "constant_time_eq"
407
+ version = "0.3.1"
408
+ source = "registry+https://github.com/rust-lang/crates.io-index"
409
+ checksum = "7c74b8349d32d297c9134b8c88677813a227df8f779daa29bfc29c183fe3dca6"
410
+
380
411
  [[package]]
381
412
  name = "core-foundation-sys"
382
413
  version = "0.8.7"
@@ -1952,10 +1983,11 @@ dependencies = [
1952
1983
 
1953
1984
  [[package]]
1954
1985
  name = "rumdl"
1955
- version = "0.0.163"
1986
+ version = "0.0.165"
1956
1987
  dependencies = [
1957
1988
  "anyhow",
1958
1989
  "assert_cmd",
1990
+ "blake3",
1959
1991
  "chrono",
1960
1992
  "clap",
1961
1993
  "colored",
@@ -1,6 +1,6 @@
1
1
  [package]
2
2
  name = "rumdl"
3
- version = "0.0.163"
3
+ version = "0.0.165"
4
4
  edition = "2024"
5
5
  rust-version = "1.89.0"
6
6
  description = "A fast Markdown linter written in Rust (Ru(st) MarkDown Linter)"
@@ -87,6 +87,7 @@ num_cpus = "1.16"
87
87
  chrono = { version = "0.4", features = ["serde"] }
88
88
  notify = "6.1"
89
89
  etcetera = "0.8"
90
+ blake3 = "1.5"
90
91
 
91
92
  [features]
92
93
  default = ["parallel"]
@@ -1,4 +1,4 @@
1
- .PHONY: build test clean fmt check doc version-major version-minor version-patch build-python build-wheel dev-install setup-mise dev-setup dev-verify update-dependencies update-rust-version pre-release build-static-linux-x64 build-static-linux-arm64 build-static-all schema check-schema
1
+ .PHONY: build test clean fmt check doc version-major version-minor version-patch build-python build-wheel dev-install setup-mise dev-setup dev-verify update-dependencies update-rust-version pre-release build-static-linux-x64 build-static-linux-arm64 build-static-all schema check-schema changelog-draft changelog-latest changelog-all changelog-help
2
2
 
3
3
  # Development environment setup
4
4
  setup-mise:
@@ -95,8 +95,8 @@ test-pre-commit:
95
95
  cargo nextest run --profile pre-commit
96
96
 
97
97
  test-push:
98
- @echo "Running full test suite (this may take a few minutes)..."
99
- cargo nextest run
98
+ @echo "Running comprehensive test suite (~30s, excludes slow/performance tests)..."
99
+ cargo nextest run --profile dev
100
100
 
101
101
  test-ci:
102
102
  cargo nextest run --profile ci
@@ -187,6 +187,36 @@ update-changelog:
187
187
  echo "Warning: CHANGELOG.md not found"; \
188
188
  fi
189
189
 
190
+ # Changelog generation with git-cliff (from conventional commits)
191
+ changelog-draft:
192
+ @echo "Generating changelog draft for unreleased commits..."
193
+ @mise exec -- git-cliff --unreleased
194
+
195
+ changelog-latest:
196
+ @echo "Generating changelog for latest release..."
197
+ @mise exec -- git-cliff --latest
198
+
199
+ changelog-all:
200
+ @echo "Generating full changelog..."
201
+ @mise exec -- git-cliff
202
+
203
+ changelog-help:
204
+ @echo "Changelog generation targets:"
205
+ @echo " make changelog-draft - Preview unreleased changes (does not modify files)"
206
+ @echo " make changelog-latest - Show latest release changelog"
207
+ @echo " make changelog-all - Show full changelog"
208
+ @echo ""
209
+ @echo "Note: These targets generate drafts from conventional commits."
210
+ @echo " Review and enhance with details before committing to CHANGELOG.md"
211
+ @echo ""
212
+ @echo "Conventional commit format:"
213
+ @echo " feat(scope): description -> Added section"
214
+ @echo " fix(scope): description -> Fixed section"
215
+ @echo " perf(scope): description -> Performance section"
216
+ @echo " refactor(scope): description -> Changed section"
217
+ @echo ""
218
+ @echo "Configuration: cliff.toml"
219
+
190
220
  version-major:
191
221
  @echo "Creating new major version tag..."
192
222
  $(eval CURRENT := $(shell git describe --tags --abbrev=0 2>/dev/null || echo v0.0.0))
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: rumdl
3
- Version: 0.0.163
3
+ Version: 0.0.165
4
4
  Classifier: Development Status :: 4 - Beta
5
5
  Classifier: Environment :: Console
6
6
  Classifier: Intended Audience :: Developers