rumdl 0.0.157__tar.gz → 0.0.158__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 (465) hide show
  1. {rumdl-0.0.157 → rumdl-0.0.158}/CHANGELOG.md +50 -1
  2. {rumdl-0.0.157 → rumdl-0.0.158}/Cargo.lock +54 -1
  3. {rumdl-0.0.157 → rumdl-0.0.158}/Cargo.toml +2 -1
  4. {rumdl-0.0.157 → rumdl-0.0.158}/PKG-INFO +1 -1
  5. {rumdl-0.0.157 → rumdl-0.0.158}/src/config.rs +60 -40
  6. rumdl-0.0.158/src/file_processor.rs +794 -0
  7. rumdl-0.0.158/src/formatter.rs +407 -0
  8. {rumdl-0.0.157 → rumdl-0.0.158}/src/lib.rs +8 -8
  9. rumdl-0.0.158/src/main.rs +1394 -0
  10. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/code_block_utils.rs +16 -22
  11. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md009_trailing_spaces.rs +3 -3
  12. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md010_no_hard_tabs.rs +3 -5
  13. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md011_no_reversed_links.rs +12 -14
  14. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md012_no_multiple_blanks.rs +2 -1
  15. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md022_blanks_around_headings.rs +9 -10
  16. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md026_no_trailing_punctuation.rs +12 -17
  17. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md032_blanks_around_lists.rs +6 -5
  18. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md034_no_bare_urls.rs +11 -18
  19. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md037_spaces_around_emphasis.rs +9 -12
  20. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md046_code_block_style.rs +2 -2
  21. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md047_single_trailing_newline.rs +15 -66
  22. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md049_emphasis_style.rs +5 -9
  23. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md050_strong_style.rs +4 -9
  24. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md057_existing_relative_links.rs +6 -17
  25. rumdl-0.0.158/src/stdin_processor.rs +212 -0
  26. {rumdl-0.0.157 → rumdl-0.0.158}/src/vscode.rs +78 -66
  27. rumdl-0.0.158/src/watch.rs +489 -0
  28. {rumdl-0.0.157 → rumdl-0.0.158}/tests/config_tests.rs +15 -32
  29. rumdl-0.0.158/tests/crlf_line_endings_test.rs +350 -0
  30. {rumdl-0.0.157 → rumdl-0.0.158}/tests/vscode_test.rs +2 -24
  31. {rumdl-0.0.157 → rumdl-0.0.158}/tests/vscode_tests.rs +20 -82
  32. rumdl-0.0.157/src/main.rs +0 -3515
  33. {rumdl-0.0.157 → rumdl-0.0.158}/.config/nextest.toml +0 -0
  34. {rumdl-0.0.157 → rumdl-0.0.158}/.mise.toml +0 -0
  35. {rumdl-0.0.157 → rumdl-0.0.158}/.pre-commit-config.yaml +0 -0
  36. {rumdl-0.0.157 → rumdl-0.0.158}/.rumdl.toml +0 -0
  37. {rumdl-0.0.157 → rumdl-0.0.158}/.rustfmt.toml +0 -0
  38. {rumdl-0.0.157 → rumdl-0.0.158}/LICENSE +0 -0
  39. {rumdl-0.0.157 → rumdl-0.0.158}/MANIFEST.in +0 -0
  40. {rumdl-0.0.157 → rumdl-0.0.158}/Makefile +0 -0
  41. {rumdl-0.0.157 → rumdl-0.0.158}/README.md +0 -0
  42. {rumdl-0.0.157 → rumdl-0.0.158}/assets/logo.png +0 -0
  43. {rumdl-0.0.157 → rumdl-0.0.158}/benches/fix_performance.rs +0 -0
  44. {rumdl-0.0.157 → rumdl-0.0.158}/benches/range_performance.rs +0 -0
  45. {rumdl-0.0.157 → rumdl-0.0.158}/benches/range_utils_benchmark.rs +0 -0
  46. {rumdl-0.0.157 → rumdl-0.0.158}/benches/rule_performance.rs +0 -0
  47. {rumdl-0.0.157 → rumdl-0.0.158}/benches/simple_fix_bench.rs +0 -0
  48. {rumdl-0.0.157 → rumdl-0.0.158}/benchmark/bin/bench_lint_context.rs +0 -0
  49. {rumdl-0.0.157 → rumdl-0.0.158}/benchmark/bin/benchmark.rs +0 -0
  50. {rumdl-0.0.157 → rumdl-0.0.158}/benchmark/bin/benchmark_rule.rs +0 -0
  51. {rumdl-0.0.157 → rumdl-0.0.158}/benchmark/bin/file_parallel_benchmark.rs +0 -0
  52. {rumdl-0.0.157 → rumdl-0.0.158}/benchmark/bin/measure_code_span_performance.rs +0 -0
  53. {rumdl-0.0.157 → rumdl-0.0.158}/docs/LINTCONTEXT_OPTIMIZATION_PLAN.md +0 -0
  54. {rumdl-0.0.157 → rumdl-0.0.158}/docs/LINTCONTEXT_OPTIMIZATION_SUMMARY.md +0 -0
  55. {rumdl-0.0.157 → rumdl-0.0.158}/docs/LINTCONTEXT_PERFORMANCE_ANALYSIS.md +0 -0
  56. {rumdl-0.0.157 → rumdl-0.0.158}/docs/PHASE_2_OPTIMIZATION_COMPLETE.md +0 -0
  57. {rumdl-0.0.157 → rumdl-0.0.158}/docs/PHASE_3_OPTIMIZATION_COMPLETE.md +0 -0
  58. {rumdl-0.0.157 → rumdl-0.0.158}/docs/RULES.md +0 -0
  59. {rumdl-0.0.157 → rumdl-0.0.158}/docs/global-settings.md +0 -0
  60. {rumdl-0.0.157 → rumdl-0.0.158}/docs/inline-configuration.md +0 -0
  61. {rumdl-0.0.157 → rumdl-0.0.158}/docs/md001.md +0 -0
  62. {rumdl-0.0.157 → rumdl-0.0.158}/docs/md002.md +0 -0
  63. {rumdl-0.0.157 → rumdl-0.0.158}/docs/md003.md +0 -0
  64. {rumdl-0.0.157 → rumdl-0.0.158}/docs/md004.md +0 -0
  65. {rumdl-0.0.157 → rumdl-0.0.158}/docs/md005.md +0 -0
  66. {rumdl-0.0.157 → rumdl-0.0.158}/docs/md006.md +0 -0
  67. {rumdl-0.0.157 → rumdl-0.0.158}/docs/md007.md +0 -0
  68. {rumdl-0.0.157 → rumdl-0.0.158}/docs/md009.md +0 -0
  69. {rumdl-0.0.157 → rumdl-0.0.158}/docs/md010.md +0 -0
  70. {rumdl-0.0.157 → rumdl-0.0.158}/docs/md011.md +0 -0
  71. {rumdl-0.0.157 → rumdl-0.0.158}/docs/md012.md +0 -0
  72. {rumdl-0.0.157 → rumdl-0.0.158}/docs/md013.md +0 -0
  73. {rumdl-0.0.157 → rumdl-0.0.158}/docs/md014.md +0 -0
  74. {rumdl-0.0.157 → rumdl-0.0.158}/docs/md018.md +0 -0
  75. {rumdl-0.0.157 → rumdl-0.0.158}/docs/md019.md +0 -0
  76. {rumdl-0.0.157 → rumdl-0.0.158}/docs/md020.md +0 -0
  77. {rumdl-0.0.157 → rumdl-0.0.158}/docs/md021.md +0 -0
  78. {rumdl-0.0.157 → rumdl-0.0.158}/docs/md022.md +0 -0
  79. {rumdl-0.0.157 → rumdl-0.0.158}/docs/md023.md +0 -0
  80. {rumdl-0.0.157 → rumdl-0.0.158}/docs/md024.md +0 -0
  81. {rumdl-0.0.157 → rumdl-0.0.158}/docs/md025.md +0 -0
  82. {rumdl-0.0.157 → rumdl-0.0.158}/docs/md026.md +0 -0
  83. {rumdl-0.0.157 → rumdl-0.0.158}/docs/md027.md +0 -0
  84. {rumdl-0.0.157 → rumdl-0.0.158}/docs/md028.md +0 -0
  85. {rumdl-0.0.157 → rumdl-0.0.158}/docs/md029.md +0 -0
  86. {rumdl-0.0.157 → rumdl-0.0.158}/docs/md030.md +0 -0
  87. {rumdl-0.0.157 → rumdl-0.0.158}/docs/md031.md +0 -0
  88. {rumdl-0.0.157 → rumdl-0.0.158}/docs/md032.md +0 -0
  89. {rumdl-0.0.157 → rumdl-0.0.158}/docs/md033.md +0 -0
  90. {rumdl-0.0.157 → rumdl-0.0.158}/docs/md034.md +0 -0
  91. {rumdl-0.0.157 → rumdl-0.0.158}/docs/md035.md +0 -0
  92. {rumdl-0.0.157 → rumdl-0.0.158}/docs/md036.md +0 -0
  93. {rumdl-0.0.157 → rumdl-0.0.158}/docs/md037.md +0 -0
  94. {rumdl-0.0.157 → rumdl-0.0.158}/docs/md038.md +0 -0
  95. {rumdl-0.0.157 → rumdl-0.0.158}/docs/md039.md +0 -0
  96. {rumdl-0.0.157 → rumdl-0.0.158}/docs/md040.md +0 -0
  97. {rumdl-0.0.157 → rumdl-0.0.158}/docs/md041.md +0 -0
  98. {rumdl-0.0.157 → rumdl-0.0.158}/docs/md042.md +0 -0
  99. {rumdl-0.0.157 → rumdl-0.0.158}/docs/md043.md +0 -0
  100. {rumdl-0.0.157 → rumdl-0.0.158}/docs/md044.md +0 -0
  101. {rumdl-0.0.157 → rumdl-0.0.158}/docs/md045.md +0 -0
  102. {rumdl-0.0.157 → rumdl-0.0.158}/docs/md046.md +0 -0
  103. {rumdl-0.0.157 → rumdl-0.0.158}/docs/md047.md +0 -0
  104. {rumdl-0.0.157 → rumdl-0.0.158}/docs/md048.md +0 -0
  105. {rumdl-0.0.157 → rumdl-0.0.158}/docs/md049.md +0 -0
  106. {rumdl-0.0.157 → rumdl-0.0.158}/docs/md050.md +0 -0
  107. {rumdl-0.0.157 → rumdl-0.0.158}/docs/md051.md +0 -0
  108. {rumdl-0.0.157 → rumdl-0.0.158}/docs/md052.md +0 -0
  109. {rumdl-0.0.157 → rumdl-0.0.158}/docs/md053.md +0 -0
  110. {rumdl-0.0.157 → rumdl-0.0.158}/docs/md054.md +0 -0
  111. {rumdl-0.0.157 → rumdl-0.0.158}/docs/md055.md +0 -0
  112. {rumdl-0.0.157 → rumdl-0.0.158}/docs/md056.md +0 -0
  113. {rumdl-0.0.157 → rumdl-0.0.158}/docs/md057.md +0 -0
  114. {rumdl-0.0.157 → rumdl-0.0.158}/docs/md058.md +0 -0
  115. {rumdl-0.0.157 → rumdl-0.0.158}/docs/vscode-extension.md +0 -0
  116. {rumdl-0.0.157 → rumdl-0.0.158}/parity_check.py +0 -0
  117. {rumdl-0.0.157 → rumdl-0.0.158}/pyproject.toml +0 -0
  118. {rumdl-0.0.157 → rumdl-0.0.158}/rumdl/__init__.py +0 -0
  119. {rumdl-0.0.157 → rumdl-0.0.158}/rumdl/__main__.py +0 -0
  120. {rumdl-0.0.157 → rumdl-0.0.158}/rumdl/py.typed +0 -0
  121. {rumdl-0.0.157 → rumdl-0.0.158}/rumdl.schema.json +0 -0
  122. {rumdl-0.0.157 → rumdl-0.0.158}/rumdl.toml.example +0 -0
  123. {rumdl-0.0.157 → rumdl-0.0.158}/rust-toolchain.toml +0 -0
  124. {rumdl-0.0.157 → rumdl-0.0.158}/scripts/extract-changelog.sh +0 -0
  125. {rumdl-0.0.157 → rumdl-0.0.158}/scripts/generate-downloads-table.sh +0 -0
  126. {rumdl-0.0.157 → rumdl-0.0.158}/scripts/pre-release.sh +0 -0
  127. {rumdl-0.0.157 → rumdl-0.0.158}/scripts/prepare-release.sh +0 -0
  128. {rumdl-0.0.157 → rumdl-0.0.158}/scripts/setup-pre-commit.sh +0 -0
  129. {rumdl-0.0.157 → rumdl-0.0.158}/scripts/update-pre-commit-docs.sh +0 -0
  130. {rumdl-0.0.157 → rumdl-0.0.158}/src/exit_codes.rs +0 -0
  131. {rumdl-0.0.157 → rumdl-0.0.158}/src/fix_coordinator.rs +0 -0
  132. {rumdl-0.0.157 → rumdl-0.0.158}/src/inline_config.rs +0 -0
  133. {rumdl-0.0.157 → rumdl-0.0.158}/src/lint_context.rs +0 -0
  134. {rumdl-0.0.157 → rumdl-0.0.158}/src/lsp/mod.rs +0 -0
  135. {rumdl-0.0.157 → rumdl-0.0.158}/src/lsp/server.rs +0 -0
  136. {rumdl-0.0.157 → rumdl-0.0.158}/src/lsp/types.rs +0 -0
  137. {rumdl-0.0.157 → rumdl-0.0.158}/src/markdownlint_config.rs +0 -0
  138. {rumdl-0.0.157 → rumdl-0.0.158}/src/output/formatters/azure.rs +0 -0
  139. {rumdl-0.0.157 → rumdl-0.0.158}/src/output/formatters/concise.rs +0 -0
  140. {rumdl-0.0.157 → rumdl-0.0.158}/src/output/formatters/github.rs +0 -0
  141. {rumdl-0.0.157 → rumdl-0.0.158}/src/output/formatters/gitlab.rs +0 -0
  142. {rumdl-0.0.157 → rumdl-0.0.158}/src/output/formatters/grouped.rs +0 -0
  143. {rumdl-0.0.157 → rumdl-0.0.158}/src/output/formatters/json.rs +0 -0
  144. {rumdl-0.0.157 → rumdl-0.0.158}/src/output/formatters/json_lines.rs +0 -0
  145. {rumdl-0.0.157 → rumdl-0.0.158}/src/output/formatters/junit.rs +0 -0
  146. {rumdl-0.0.157 → rumdl-0.0.158}/src/output/formatters/mod.rs +0 -0
  147. {rumdl-0.0.157 → rumdl-0.0.158}/src/output/formatters/pylint.rs +0 -0
  148. {rumdl-0.0.157 → rumdl-0.0.158}/src/output/formatters/sarif.rs +0 -0
  149. {rumdl-0.0.157 → rumdl-0.0.158}/src/output/formatters/text.rs +0 -0
  150. {rumdl-0.0.157 → rumdl-0.0.158}/src/output/mod.rs +0 -0
  151. {rumdl-0.0.157 → rumdl-0.0.158}/src/parallel.rs +0 -0
  152. {rumdl-0.0.157 → rumdl-0.0.158}/src/performance.rs +0 -0
  153. {rumdl-0.0.157 → rumdl-0.0.158}/src/profiling.rs +0 -0
  154. {rumdl-0.0.157 → rumdl-0.0.158}/src/rule.rs +0 -0
  155. {rumdl-0.0.157 → rumdl-0.0.158}/src/rule_config.rs +0 -0
  156. {rumdl-0.0.157 → rumdl-0.0.158}/src/rule_config_serde.rs +0 -0
  157. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/blockquote_utils.rs +0 -0
  158. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/code_fence_utils.rs +0 -0
  159. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/emphasis_style.rs +0 -0
  160. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/front_matter_utils.rs +0 -0
  161. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/heading_utils.rs +0 -0
  162. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/list_utils.rs +0 -0
  163. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md001_heading_increment.rs +0 -0
  164. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md002_first_heading_h1/md002_config.rs +0 -0
  165. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md002_first_heading_h1.rs +0 -0
  166. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md003_heading_style/md003_config.rs +0 -0
  167. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md003_heading_style.rs +0 -0
  168. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md004_unordered_list_style/md004_config.rs +0 -0
  169. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md004_unordered_list_style.rs +0 -0
  170. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md005_list_indent.rs +0 -0
  171. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md006_start_bullets.rs +0 -0
  172. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md007_ul_indent/md007_config.rs +0 -0
  173. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md007_ul_indent.rs +0 -0
  174. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md009_trailing_spaces/md009_config.rs +0 -0
  175. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md010_no_hard_tabs/md010_config.rs +0 -0
  176. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md012_no_multiple_blanks/md012_config.rs +0 -0
  177. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md013_line_length/md013_config.rs +0 -0
  178. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md013_line_length.rs +0 -0
  179. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md014_commands_show_output/md014_config.rs +0 -0
  180. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md014_commands_show_output.rs +0 -0
  181. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md018_no_missing_space_atx.rs +0 -0
  182. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md019_no_multiple_space_atx.rs +0 -0
  183. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md020_no_missing_space_closed_atx.rs +0 -0
  184. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md021_no_multiple_space_closed_atx.rs +0 -0
  185. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md022_blanks_around_headings/md022_config.rs +0 -0
  186. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md023_heading_start_left.rs +0 -0
  187. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md024_no_duplicate_heading/md024_config.rs +0 -0
  188. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md024_no_duplicate_heading.rs +0 -0
  189. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md025_single_title/md025_config.rs +0 -0
  190. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md025_single_title.rs +0 -0
  191. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md026_no_trailing_punctuation/md026_config.rs +0 -0
  192. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md027_multiple_spaces_blockquote.rs +0 -0
  193. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md028_no_blanks_blockquote.rs +0 -0
  194. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md029_ordered_list_prefix/md029_config.rs +0 -0
  195. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md029_ordered_list_prefix.rs +0 -0
  196. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md030_list_marker_space/md030_config.rs +0 -0
  197. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md030_list_marker_space.rs +0 -0
  198. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md031_blanks_around_fences.rs +0 -0
  199. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md033_no_inline_html/md033_config.rs +0 -0
  200. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md033_no_inline_html.rs +0 -0
  201. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md035_hr_style/md035_config.rs +0 -0
  202. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md035_hr_style.rs +0 -0
  203. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md036_no_emphasis_only_first/md036_config.rs +0 -0
  204. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md036_no_emphasis_only_first.rs +0 -0
  205. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md038_no_space_in_code.rs +0 -0
  206. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md039_no_space_in_links.rs +0 -0
  207. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md040_fenced_code_language.rs +0 -0
  208. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md041_first_line_heading.rs +0 -0
  209. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md042_no_empty_links.rs +0 -0
  210. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md043_required_headings.rs +0 -0
  211. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md044_proper_names/md044_config.rs +0 -0
  212. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md044_proper_names.rs +0 -0
  213. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md045_no_alt_text/md045_config.rs +0 -0
  214. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md045_no_alt_text.rs +0 -0
  215. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md046_code_block_style/md046_config.rs +0 -0
  216. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md048_code_fence_style/md048_config.rs +0 -0
  217. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md048_code_fence_style.rs +0 -0
  218. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md049_emphasis_style/md049_config.rs +0 -0
  219. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md050_strong_style/md050_config.rs +0 -0
  220. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md051_link_fragments.rs +0 -0
  221. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md052_reference_links_images.rs +0 -0
  222. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md053_link_image_reference_definitions.rs +0 -0
  223. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md054_link_image_style/md054_config.rs +0 -0
  224. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md054_link_image_style.rs +0 -0
  225. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md055_table_pipe_style/md055_config.rs +0 -0
  226. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md055_table_pipe_style.rs +0 -0
  227. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md056_table_column_count.rs +0 -0
  228. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md057_existing_relative_links/md057_config.rs +0 -0
  229. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/md058_blanks_around_tables.rs +0 -0
  230. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/mod.rs +0 -0
  231. {rumdl-0.0.157 → rumdl-0.0.158}/src/rules/strong_style.rs +0 -0
  232. {rumdl-0.0.157 → rumdl-0.0.158}/src/utils/anchor_styles/github.rs +0 -0
  233. {rumdl-0.0.157 → rumdl-0.0.158}/src/utils/anchor_styles/jekyll.rs +0 -0
  234. {rumdl-0.0.157 → rumdl-0.0.158}/src/utils/anchor_styles/kramdown.rs +0 -0
  235. {rumdl-0.0.157 → rumdl-0.0.158}/src/utils/anchor_styles/kramdown_gfm.rs +0 -0
  236. {rumdl-0.0.157 → rumdl-0.0.158}/src/utils/anchor_styles/mod.rs +0 -0
  237. {rumdl-0.0.157 → rumdl-0.0.158}/src/utils/ast_utils.rs +0 -0
  238. {rumdl-0.0.157 → rumdl-0.0.158}/src/utils/code_block_utils.rs +0 -0
  239. {rumdl-0.0.157 → rumdl-0.0.158}/src/utils/document_structure.rs +0 -0
  240. {rumdl-0.0.157 → rumdl-0.0.158}/src/utils/early_returns.rs +0 -0
  241. {rumdl-0.0.157 → rumdl-0.0.158}/src/utils/element_cache.rs +0 -0
  242. {rumdl-0.0.157 → rumdl-0.0.158}/src/utils/emphasis_utils.rs +0 -0
  243. {rumdl-0.0.157 → rumdl-0.0.158}/src/utils/fix_utils.rs +0 -0
  244. {rumdl-0.0.157 → rumdl-0.0.158}/src/utils/header_id_utils.rs +0 -0
  245. {rumdl-0.0.157 → rumdl-0.0.158}/src/utils/jinja_utils.rs +0 -0
  246. {rumdl-0.0.157 → rumdl-0.0.158}/src/utils/kramdown_utils.rs +0 -0
  247. {rumdl-0.0.157 → rumdl-0.0.158}/src/utils/line_ending.rs +0 -0
  248. {rumdl-0.0.157 → rumdl-0.0.158}/src/utils/markdown_elements.rs +0 -0
  249. {rumdl-0.0.157 → rumdl-0.0.158}/src/utils/mkdocs_admonitions.rs +0 -0
  250. {rumdl-0.0.157 → rumdl-0.0.158}/src/utils/mkdocs_common.rs +0 -0
  251. {rumdl-0.0.157 → rumdl-0.0.158}/src/utils/mkdocs_critic.rs +0 -0
  252. {rumdl-0.0.157 → rumdl-0.0.158}/src/utils/mkdocs_footnotes.rs +0 -0
  253. {rumdl-0.0.157 → rumdl-0.0.158}/src/utils/mkdocs_patterns.rs +0 -0
  254. {rumdl-0.0.157 → rumdl-0.0.158}/src/utils/mkdocs_snippets.rs +0 -0
  255. {rumdl-0.0.157 → rumdl-0.0.158}/src/utils/mkdocs_tabs.rs +0 -0
  256. {rumdl-0.0.157 → rumdl-0.0.158}/src/utils/mkdocs_test_utils.rs +0 -0
  257. {rumdl-0.0.157 → rumdl-0.0.158}/src/utils/mkdocstrings_refs.rs +0 -0
  258. {rumdl-0.0.157 → rumdl-0.0.158}/src/utils/mod.rs +0 -0
  259. {rumdl-0.0.157 → rumdl-0.0.158}/src/utils/range_utils.rs +0 -0
  260. {rumdl-0.0.157 → rumdl-0.0.158}/src/utils/regex_cache.rs +0 -0
  261. {rumdl-0.0.157 → rumdl-0.0.158}/src/utils/skip_context.rs +0 -0
  262. {rumdl-0.0.157 → rumdl-0.0.158}/src/utils/string_interner.rs +0 -0
  263. {rumdl-0.0.157 → rumdl-0.0.158}/src/utils/table_utils.rs +0 -0
  264. {rumdl-0.0.157 → rumdl-0.0.158}/src/utils/text_reflow.rs +0 -0
  265. {rumdl-0.0.157 → rumdl-0.0.158}/tests/advanced_integration_tests.rs +0 -0
  266. {rumdl-0.0.157 → rumdl-0.0.158}/tests/character_ranges/additional_tests.rs +0 -0
  267. {rumdl-0.0.157 → rumdl-0.0.158}/tests/character_ranges/basic_tests.rs +0 -0
  268. {rumdl-0.0.157 → rumdl-0.0.158}/tests/character_ranges/comprehensive_tests.rs +0 -0
  269. {rumdl-0.0.157 → rumdl-0.0.158}/tests/character_ranges/extended_tests.rs +0 -0
  270. {rumdl-0.0.157 → rumdl-0.0.158}/tests/character_ranges/mod.rs +0 -0
  271. {rumdl-0.0.157 → rumdl-0.0.158}/tests/character_ranges/unicode_utils.rs +0 -0
  272. {rumdl-0.0.157 → rumdl-0.0.158}/tests/cli_duplication_test.rs +0 -0
  273. {rumdl-0.0.157 → rumdl-0.0.158}/tests/cli_explain_test.rs +0 -0
  274. {rumdl-0.0.157 → rumdl-0.0.158}/tests/cli_flag_precedence_test.rs +0 -0
  275. {rumdl-0.0.157 → rumdl-0.0.158}/tests/cli_integration_tests.rs +0 -0
  276. {rumdl-0.0.157 → rumdl-0.0.158}/tests/cli_lsp_fix_consistency.rs +0 -0
  277. {rumdl-0.0.157 → rumdl-0.0.158}/tests/cli_statistics_test.rs +0 -0
  278. {rumdl-0.0.157 → rumdl-0.0.158}/tests/code_block_blockquote_edge_cases.rs +0 -0
  279. {rumdl-0.0.157 → rumdl-0.0.158}/tests/common/cli_test_utils.rs +0 -0
  280. {rumdl-0.0.157 → rumdl-0.0.158}/tests/common/fixtures.rs +0 -0
  281. {rumdl-0.0.157 → rumdl-0.0.158}/tests/common/mod.rs +0 -0
  282. {rumdl-0.0.157 → rumdl-0.0.158}/tests/common/test_utils.rs +0 -0
  283. {rumdl-0.0.157 → rumdl-0.0.158}/tests/commonmark_compliance_tests.rs +0 -0
  284. {rumdl-0.0.157 → rumdl-0.0.158}/tests/comprehensive_integration_tests.rs +0 -0
  285. {rumdl-0.0.157 → rumdl-0.0.158}/tests/comprehensive_output_format_tests.rs +0 -0
  286. {rumdl-0.0.157 → rumdl-0.0.158}/tests/config_application_tests.rs +0 -0
  287. {rumdl-0.0.157 → rumdl-0.0.158}/tests/config_file_command_test.rs +0 -0
  288. {rumdl-0.0.157 → rumdl-0.0.158}/tests/config_upward_traversal_test.rs +0 -0
  289. {rumdl-0.0.157 → rumdl-0.0.158}/tests/configuration_inheritance_tests.rs +0 -0
  290. {rumdl-0.0.157 → rumdl-0.0.158}/tests/consistency_regression_tests.rs +0 -0
  291. {rumdl-0.0.157 → rumdl-0.0.158}/tests/cross_platform_compatibility_tests.rs +0 -0
  292. {rumdl-0.0.157 → rumdl-0.0.158}/tests/deeply_nested_lists_performance_test.rs +0 -0
  293. {rumdl-0.0.157 → rumdl-0.0.158}/tests/escaped_brackets_test.rs +0 -0
  294. {rumdl-0.0.157 → rumdl-0.0.158}/tests/exclude_with_explicit_paths_test.rs +0 -0
  295. {rumdl-0.0.157 → rumdl-0.0.158}/tests/final_confidence_assessment.rs +0 -0
  296. {rumdl-0.0.157 → rumdl-0.0.158}/tests/fix_counting_test.rs +0 -0
  297. {rumdl-0.0.157 → rumdl-0.0.158}/tests/fix_performance_baseline_test.rs +0 -0
  298. {rumdl-0.0.157 → rumdl-0.0.158}/tests/fixable_unfixable_config_test.rs +0 -0
  299. {rumdl-0.0.157 → rumdl-0.0.158}/tests/init_command_test.rs +0 -0
  300. {rumdl-0.0.157 → rumdl-0.0.158}/tests/init_tests.rs +0 -0
  301. {rumdl-0.0.157 → rumdl-0.0.158}/tests/inline_config_blocks_test.rs +0 -0
  302. {rumdl-0.0.157 → rumdl-0.0.158}/tests/inline_config_test.rs +0 -0
  303. {rumdl-0.0.157 → rumdl-0.0.158}/tests/integration_tests.rs +0 -0
  304. {rumdl-0.0.157 → rumdl-0.0.158}/tests/json_output_test.rs +0 -0
  305. {rumdl-0.0.157 → rumdl-0.0.158}/tests/kramdown_integration_test.rs +0 -0
  306. {rumdl-0.0.157 → rumdl-0.0.158}/tests/lib.rs +0 -0
  307. {rumdl-0.0.157 → rumdl-0.0.158}/tests/lsp_editor_integration_tests.rs +0 -0
  308. {rumdl-0.0.157 → rumdl-0.0.158}/tests/lsp_formatting_tests.rs +0 -0
  309. {rumdl-0.0.157 → rumdl-0.0.158}/tests/lsp_initialization_options_test.rs +0 -0
  310. {rumdl-0.0.157 → rumdl-0.0.158}/tests/lsp_integration_tests.rs +0 -0
  311. {rumdl-0.0.157 → rumdl-0.0.158}/tests/lsp_memory_leak_tests.rs +0 -0
  312. {rumdl-0.0.157 → rumdl-0.0.158}/tests/lsp_mkdocs_flavor_test.rs +0 -0
  313. {rumdl-0.0.157 → rumdl-0.0.158}/tests/lsp_tests.rs +0 -0
  314. {rumdl-0.0.157 → rumdl-0.0.158}/tests/lsp_unopened_document_test.rs +0 -0
  315. {rumdl-0.0.157 → rumdl-0.0.158}/tests/malformed_markdown_stress_tests.rs +0 -0
  316. {rumdl-0.0.157 → rumdl-0.0.158}/tests/markdownlint_cli_integration.rs +0 -0
  317. {rumdl-0.0.157 → rumdl-0.0.158}/tests/markdownlint_config_test.rs +0 -0
  318. {rumdl-0.0.157 → rumdl-0.0.158}/tests/markdownlintignore_test.rs +0 -0
  319. {rumdl-0.0.157 → rumdl-0.0.158}/tests/md009_md013_integration_test.rs +0 -0
  320. {rumdl-0.0.157 → rumdl-0.0.158}/tests/md009_md013_order_test.rs +0 -0
  321. {rumdl-0.0.157 → rumdl-0.0.158}/tests/md013_hard_breaks_test.rs +0 -0
  322. {rumdl-0.0.157 → rumdl-0.0.158}/tests/md013_reflow_integration_test.rs +0 -0
  323. {rumdl-0.0.157 → rumdl-0.0.158}/tests/md032_edge_cases_test.rs +0 -0
  324. {rumdl-0.0.157 → rumdl-0.0.158}/tests/md032_ordered_list_bug_test.rs +0 -0
  325. {rumdl-0.0.157 → rumdl-0.0.158}/tests/md033_edge_cases_test.rs +0 -0
  326. {rumdl-0.0.157 → rumdl-0.0.158}/tests/md037_xxxx_regression_test.rs +0 -0
  327. {rumdl-0.0.157 → rumdl-0.0.158}/tests/md038_false_positive_test.rs +0 -0
  328. {rumdl-0.0.157 → rumdl-0.0.158}/tests/md051_issue_39_regression_test.rs +0 -0
  329. {rumdl-0.0.157 → rumdl-0.0.158}/tests/md051_readme_bug_test.rs +0 -0
  330. {rumdl-0.0.157 → rumdl-0.0.158}/tests/md051_toc_bug_test.rs +0 -0
  331. {rumdl-0.0.157 → rumdl-0.0.158}/tests/md052_literal_brackets_test.rs +0 -0
  332. {rumdl-0.0.157 → rumdl-0.0.158}/tests/md054_code_span_test.rs +0 -0
  333. {rumdl-0.0.157 → rumdl-0.0.158}/tests/mkdocs_anchor_edge_cases_test.rs +0 -0
  334. {rumdl-0.0.157 → rumdl-0.0.158}/tests/mkdocs_anchor_test.rs +0 -0
  335. {rumdl-0.0.157 → rumdl-0.0.158}/tests/nested_code_block_test.rs +0 -0
  336. {rumdl-0.0.157 → rumdl-0.0.158}/tests/output_format_integration_tests.rs +0 -0
  337. {rumdl-0.0.157 → rumdl-0.0.158}/tests/output_format_tests.rs +0 -0
  338. {rumdl-0.0.157 → rumdl-0.0.158}/tests/per_file_ignores_integration_test.rs +0 -0
  339. {rumdl-0.0.157 → rumdl-0.0.158}/tests/perf_check.rs +0 -0
  340. {rumdl-0.0.157 → rumdl-0.0.158}/tests/performance_validation_tests.rs +0 -0
  341. {rumdl-0.0.157 → rumdl-0.0.158}/tests/pyproject_config_tests.rs +0 -0
  342. {rumdl-0.0.157 → rumdl-0.0.158}/tests/real_world_repository_tests.rs +0 -0
  343. {rumdl-0.0.157 → rumdl-0.0.158}/tests/regression_prevention_tests.rs +0 -0
  344. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/emphasis_edge_cases_test.rs +0 -0
  345. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/heading_edge_cases_test.rs +0 -0
  346. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/inline_content_edge_cases_test.rs +0 -0
  347. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/link_edge_cases_test.rs +0 -0
  348. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/list_rules_integration_test.rs +0 -0
  349. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md001_test.rs +0 -0
  350. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md001_unicode_test.rs +0 -0
  351. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md002_test.rs +0 -0
  352. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md003_test.rs +0 -0
  353. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md004_test.rs +0 -0
  354. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md005_dynamic_indent_test.rs +0 -0
  355. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md005_test.rs +0 -0
  356. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md005_unicode_test.rs +0 -0
  357. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md006_test.rs +0 -0
  358. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md006_unicode_test.rs +0 -0
  359. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md007_test.rs +0 -0
  360. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md009_test.rs +0 -0
  361. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md010_test.rs +0 -0
  362. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md011_test.rs +0 -0
  363. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md012_test.rs +0 -0
  364. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md013_test.rs +0 -0
  365. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md014_test.rs +0 -0
  366. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md018_test.rs +0 -0
  367. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md019_test.rs +0 -0
  368. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md020_test.rs +0 -0
  369. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md021_test.rs +0 -0
  370. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md022_test.rs +0 -0
  371. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md023_extended_test.rs +0 -0
  372. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md023_test.rs +0 -0
  373. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md024_test.rs +0 -0
  374. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md025_test.rs +0 -0
  375. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md026_kramdown_test.rs +0 -0
  376. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md026_test.rs +0 -0
  377. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md027_test.rs +0 -0
  378. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md028_md009_interaction_test.rs +0 -0
  379. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md028_test.rs +0 -0
  380. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md029_code_block_separation_test.rs +0 -0
  381. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md029_fix_test.rs +0 -0
  382. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md029_issue42_test.rs +0 -0
  383. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md029_markdownlint_parity_test.rs +0 -0
  384. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md029_pathological_edge_cases_test.rs +0 -0
  385. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md029_test.rs +0 -0
  386. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md029_unicode_test.rs +0 -0
  387. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md030_test.rs +0 -0
  388. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md031_kramdown_test.rs +0 -0
  389. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md031_test.rs +0 -0
  390. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md032_test.rs +0 -0
  391. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md033_blockquote_test.rs +0 -0
  392. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md033_extended_test.rs +0 -0
  393. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md033_kramdown_test.rs +0 -0
  394. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md033_test.rs +0 -0
  395. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md034_ipv6_test.rs +0 -0
  396. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md034_test.rs +0 -0
  397. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md035_test.rs +0 -0
  398. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md036_test.rs +0 -0
  399. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md037_kramdown_test.rs +0 -0
  400. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md037_test.rs +0 -0
  401. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md038_nested_backticks_test.rs +0 -0
  402. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md038_test.rs +0 -0
  403. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md039_test.rs +0 -0
  404. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md040_test.rs +0 -0
  405. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md041_test.rs +0 -0
  406. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md042_test.rs +0 -0
  407. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md043_test.rs +0 -0
  408. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md044_test.rs +0 -0
  409. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md045_test.rs +0 -0
  410. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md046_test.rs +0 -0
  411. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md047_test.rs +0 -0
  412. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md048_test.rs +0 -0
  413. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md049_test.rs +0 -0
  414. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md050_test.rs +0 -0
  415. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md051_comprehensive_test.rs +0 -0
  416. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md051_critical_edge_cases_test.rs +0 -0
  417. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md051_edge_cases_test.rs +0 -0
  418. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md051_issue_39_regression_test.rs +0 -0
  419. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md051_performance_edge_cases_test.rs +0 -0
  420. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md051_property_based_test.rs +0 -0
  421. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md051_regression_prevention_test.rs +0 -0
  422. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md051_test.rs +0 -0
  423. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md051_unicode_security_test.rs +0 -0
  424. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md052_test.rs +0 -0
  425. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md053_additional_test.rs +0 -0
  426. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md053_proptest.rs +0 -0
  427. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md053_test.rs +0 -0
  428. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md054_test.rs +0 -0
  429. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md054_unicode_test.rs +0 -0
  430. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md055_test.rs +0 -0
  431. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md056_test.rs +0 -0
  432. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md057_test.rs +0 -0
  433. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md058_kramdown_test.rs +0 -0
  434. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/md058_test.rs +0 -0
  435. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/mkdocs_admonitions_test.rs +0 -0
  436. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/mkdocs_edge_cases_test.rs +0 -0
  437. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/mkdocs_extensions_test.rs +0 -0
  438. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/mkdocs_snippets_test.rs +0 -0
  439. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/mod.rs +0 -0
  440. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules/rule_interaction_test.rs +0 -0
  441. {rumdl-0.0.157 → rumdl-0.0.158}/tests/rules_mod_test.rs +0 -0
  442. {rumdl-0.0.157 → rumdl-0.0.158}/tests/sentence_per_line_test.rs +0 -0
  443. {rumdl-0.0.157 → rumdl-0.0.158}/tests/skip_context_tests.rs +0 -0
  444. {rumdl-0.0.157 → rumdl-0.0.158}/tests/test_ast_code_block_issue.rs +0 -0
  445. {rumdl-0.0.157 → rumdl-0.0.158}/tests/test_gfm_vs_default_parsing.rs +0 -0
  446. {rumdl-0.0.157 → rumdl-0.0.158}/tests/test_lint_context_flow.rs +0 -0
  447. {rumdl-0.0.157 → rumdl-0.0.158}/tests/test_list_ast_structure.rs +0 -0
  448. {rumdl-0.0.157 → rumdl-0.0.158}/tests/test_multiline_ast.rs +0 -0
  449. {rumdl-0.0.157 → rumdl-0.0.158}/tests/test_underscore_edge_cases.rs +0 -0
  450. {rumdl-0.0.157 → rumdl-0.0.158}/tests/thread_safety_tests.rs +0 -0
  451. {rumdl-0.0.157 → rumdl-0.0.158}/tests/unfixable_rules_test.rs +0 -0
  452. {rumdl-0.0.157 → rumdl-0.0.158}/tests/unicode_edge_case_tests.rs +0 -0
  453. {rumdl-0.0.157 → rumdl-0.0.158}/tests/utf8_boundary_tests.rs +0 -0
  454. {rumdl-0.0.157 → rumdl-0.0.158}/tests/utils/blockquote_utils_test.rs +0 -0
  455. {rumdl-0.0.157 → rumdl-0.0.158}/tests/utils/code_block_utils_extended_test.rs +0 -0
  456. {rumdl-0.0.157 → rumdl-0.0.158}/tests/utils/code_block_utils_test.rs +0 -0
  457. {rumdl-0.0.157 → rumdl-0.0.158}/tests/utils/core_utils_test.rs +0 -0
  458. {rumdl-0.0.157 → rumdl-0.0.158}/tests/utils/front_matter_utils_test.rs +0 -0
  459. {rumdl-0.0.157 → rumdl-0.0.158}/tests/utils/line_index_test.rs +0 -0
  460. {rumdl-0.0.157 → rumdl-0.0.158}/tests/utils/mod.rs +0 -0
  461. {rumdl-0.0.157 → rumdl-0.0.158}/tests/utils_markdown_edge_cases.rs +0 -0
  462. {rumdl-0.0.157 → rumdl-0.0.158}/tests/utils_tests.rs +0 -0
  463. {rumdl-0.0.157 → rumdl-0.0.158}/tests/vscode_extension_fixes.rs +0 -0
  464. {rumdl-0.0.157 → rumdl-0.0.158}/tests/vscode_windows_comprehensive_test.rs +0 -0
  465. {rumdl-0.0.157 → rumdl-0.0.158}/tests/vscode_windows_test.rs +0 -0
@@ -7,7 +7,56 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
- ## [0.0.157] - 2025-10-13 (unreleased)
10
+ ## [0.0.158] - 2025-10-14
11
+
12
+ ### Fixed
13
+
14
+ - **CRLF Line Ending Support**: Fixed byte position calculations in multiple rules for Windows-style line endings
15
+ - Fixed MD034, MD046, MD057 byte position calculations
16
+ - Fixed MD037, MD049, MD011 byte position calculations
17
+ - Fixed MD050, MD037, MD010, MD026 byte position calculations
18
+ - Fixed code_block_utils byte position calculation in `is_in_code_span`
19
+ - All rules now correctly handle CRLF line endings in fixes and diagnostics
20
+
21
+ - **Test Stability**: Fixed flaky tests with dependency injection pattern
22
+ - Eliminated race conditions from parallel test execution
23
+ - Tests no longer modify global environment variables
24
+ - Added `serial_test` crate for unavoidable global operations
25
+ - All 1731 tests now pass reliably in parallel execution
26
+
27
+ ### Changed
28
+
29
+ - **Code Architecture**: Major refactoring to improve maintainability
30
+ - Extracted `formatter` module (397 lines) - output formatting logic
31
+ - Extracted `watch` module (491 lines) - watch mode functionality
32
+ - Extracted `file_processor` module (792 lines) - file processing logic
33
+ - Extracted `stdin_processor` module (212 lines) - stdin handling
34
+ - main.rs reduced from 3268 to 1394 lines (57% reduction)
35
+ - Improved code organization and testability
36
+
37
+ - **Line Ending Handling**: Refactored line ending preservation
38
+ - Line ending detection and normalization now at I/O boundaries
39
+ - Internal code always works with consistent LF line endings
40
+ - More efficient: 1 normalization per file instead of per-rule
41
+ - Cleaner separation of concerns
42
+ - Simplified MD047, MD012, MD022 to always use LF internally
43
+ - Removed unnecessary line ending detection from rules
44
+ - Added comprehensive end-to-end CRLF tests
45
+
46
+ ### Removed
47
+
48
+ - **Legacy Fix Implementation**: Removed deprecated fix wrapper functions
49
+ - Removed `apply_fixes()` wrapper
50
+ - Removed `apply_fixes_stdin_coordinated()` wrapper
51
+ - Removed `apply_fixes_stdin()` legacy implementation
52
+ - Removed `RUMDL_NO_FIX_COORDINATOR` environment variable
53
+ - Fix Coordinator is now the only fix strategy (3 weeks stable, ~75% faster)
54
+
55
+ ## [0.0.157] - 2025-10-13
56
+
57
+ ### Changed
58
+
59
+ - **Removed legacy fix implementation** - Removed old single-pass fix implementation and `RUMDL_NO_FIX_COORDINATOR` environment variable. Fix Coordinator is now the only fix strategy, providing ~75% faster fixes with better coverage.
11
60
 
12
61
  ### Added
13
62
 
@@ -586,6 +586,7 @@ checksum = "65bc07b1a8bc7c85c5f2e110c476c7389b4554ba72af57d8445ea63a576b0876"
586
586
  dependencies = [
587
587
  "futures-channel",
588
588
  "futures-core",
589
+ "futures-executor",
589
590
  "futures-io",
590
591
  "futures-sink",
591
592
  "futures-task",
@@ -608,6 +609,17 @@ version = "0.3.31"
608
609
  source = "registry+https://github.com/rust-lang/crates.io-index"
609
610
  checksum = "05f29059c0c2090612e8d742178b0580d2dc940c837851ad723096f87af6663e"
610
611
 
612
+ [[package]]
613
+ name = "futures-executor"
614
+ version = "0.3.31"
615
+ source = "registry+https://github.com/rust-lang/crates.io-index"
616
+ checksum = "1e28d1d997f585e54aebc3f97d39e72338912123a67330d723fdbb564d646c9f"
617
+ dependencies = [
618
+ "futures-core",
619
+ "futures-task",
620
+ "futures-util",
621
+ ]
622
+
611
623
  [[package]]
612
624
  name = "futures-io"
613
625
  version = "0.3.31"
@@ -1566,7 +1578,7 @@ checksum = "caf4aa5b0f434c91fe5c7f1ecb6a5ece2130b02ad2a590589dda5146df959001"
1566
1578
 
1567
1579
  [[package]]
1568
1580
  name = "rumdl"
1569
- version = "0.0.157"
1581
+ version = "0.0.158"
1570
1582
  dependencies = [
1571
1583
  "anyhow",
1572
1584
  "assert_cmd",
@@ -1600,6 +1612,7 @@ dependencies = [
1600
1612
  "serde",
1601
1613
  "serde_json",
1602
1614
  "serde_yaml",
1615
+ "serial_test",
1603
1616
  "strsim",
1604
1617
  "tempfile",
1605
1618
  "thiserror",
@@ -1669,6 +1682,15 @@ dependencies = [
1669
1682
  "winapi-util",
1670
1683
  ]
1671
1684
 
1685
+ [[package]]
1686
+ name = "scc"
1687
+ version = "2.4.0"
1688
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1689
+ checksum = "46e6f046b7fef48e2660c57ed794263155d713de679057f2d0c169bfc6e756cc"
1690
+ dependencies = [
1691
+ "sdd",
1692
+ ]
1693
+
1672
1694
  [[package]]
1673
1695
  name = "schemars"
1674
1696
  version = "0.8.22"
@@ -1699,6 +1721,12 @@ version = "1.2.0"
1699
1721
  source = "registry+https://github.com/rust-lang/crates.io-index"
1700
1722
  checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"
1701
1723
 
1724
+ [[package]]
1725
+ name = "sdd"
1726
+ version = "3.0.10"
1727
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1728
+ checksum = "490dcfcbfef26be6800d11870ff2df8774fa6e86d047e3e8c8a76b25655e41ca"
1729
+
1702
1730
  [[package]]
1703
1731
  name = "serde"
1704
1732
  version = "1.0.226"
@@ -1786,6 +1814,31 @@ dependencies = [
1786
1814
  "unsafe-libyaml",
1787
1815
  ]
1788
1816
 
1817
+ [[package]]
1818
+ name = "serial_test"
1819
+ version = "3.2.0"
1820
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1821
+ checksum = "1b258109f244e1d6891bf1053a55d63a5cd4f8f4c30cf9a1280989f80e7a1fa9"
1822
+ dependencies = [
1823
+ "futures",
1824
+ "log",
1825
+ "once_cell",
1826
+ "parking_lot",
1827
+ "scc",
1828
+ "serial_test_derive",
1829
+ ]
1830
+
1831
+ [[package]]
1832
+ name = "serial_test_derive"
1833
+ version = "3.2.0"
1834
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1835
+ checksum = "5d69265a08751de7844521fd15003ae0a888e035773ba05695c5c759a6f89eef"
1836
+ dependencies = [
1837
+ "proc-macro2",
1838
+ "quote",
1839
+ "syn",
1840
+ ]
1841
+
1789
1842
  [[package]]
1790
1843
  name = "shlex"
1791
1844
  version = "1.3.0"
@@ -1,6 +1,6 @@
1
1
  [package]
2
2
  name = "rumdl"
3
- version = "0.0.157"
3
+ version = "0.0.158"
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)"
@@ -103,6 +103,7 @@ rand = "0.9.1"
103
103
  pretty_assertions = "1.4"
104
104
  unicode-segmentation = "1.12"
105
105
  unicode-width = "0.2"
106
+ serial_test = "3.2"
106
107
 
107
108
  [target.'cfg(not(target_env = "msvc"))'.dependencies]
108
109
  tikv-jemallocator = "0.6"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: rumdl
3
- Version: 0.0.157
3
+ Version: 0.0.158
4
4
  Classifier: Development Status :: 4 - Beta
5
5
  Classifier: Environment :: Console
6
6
  Classifier: Intended Audience :: Developers
@@ -1706,52 +1706,55 @@ impl SourcedConfig {
1706
1706
  None
1707
1707
  }
1708
1708
 
1709
- /// Discover user-level configuration file from platform-specific config directory.
1710
- /// Returns the first configuration file found in the user config directory.
1711
- fn user_configuration_path() -> Option<std::path::PathBuf> {
1712
- use etcetera::{BaseStrategy, choose_base_strategy};
1709
+ /// Internal implementation that accepts config directory for testing
1710
+ fn user_configuration_path_impl(config_dir: &Path) -> Option<std::path::PathBuf> {
1711
+ let config_dir = config_dir.join("rumdl");
1713
1712
 
1714
- match choose_base_strategy() {
1715
- Ok(strategy) => {
1716
- let config_dir = strategy.config_dir().join("rumdl");
1713
+ // Check for config files in precedence order (same as project discovery)
1714
+ const USER_CONFIG_FILES: &[&str] = &[".rumdl.toml", "rumdl.toml", "pyproject.toml"];
1717
1715
 
1718
- // Check for config files in precedence order (same as project discovery)
1719
- const USER_CONFIG_FILES: &[&str] = &[".rumdl.toml", "rumdl.toml", "pyproject.toml"];
1716
+ log::debug!(
1717
+ "[rumdl-config] Checking for user configuration in: {}",
1718
+ config_dir.display()
1719
+ );
1720
1720
 
1721
- log::debug!(
1722
- "[rumdl-config] Checking for user configuration in: {}",
1723
- config_dir.display()
1724
- );
1721
+ for filename in USER_CONFIG_FILES {
1722
+ let config_path = config_dir.join(filename);
1725
1723
 
1726
- for filename in USER_CONFIG_FILES {
1727
- let config_path = config_dir.join(filename);
1728
-
1729
- if config_path.exists() {
1730
- // For pyproject.toml, verify it contains [tool.rumdl] section
1731
- if *filename == "pyproject.toml" {
1732
- if let Ok(content) = std::fs::read_to_string(&config_path) {
1733
- if content.contains("[tool.rumdl]") || content.contains("tool.rumdl") {
1734
- log::debug!(
1735
- "[rumdl-config] Found user configuration at: {}",
1736
- config_path.display()
1737
- );
1738
- return Some(config_path);
1739
- }
1740
- log::debug!("[rumdl-config] Found user pyproject.toml but no [tool.rumdl] section");
1741
- continue;
1742
- }
1743
- } else {
1724
+ if config_path.exists() {
1725
+ // For pyproject.toml, verify it contains [tool.rumdl] section
1726
+ if *filename == "pyproject.toml" {
1727
+ if let Ok(content) = std::fs::read_to_string(&config_path) {
1728
+ if content.contains("[tool.rumdl]") || content.contains("tool.rumdl") {
1744
1729
  log::debug!("[rumdl-config] Found user configuration at: {}", config_path.display());
1745
1730
  return Some(config_path);
1746
1731
  }
1732
+ log::debug!("[rumdl-config] Found user pyproject.toml but no [tool.rumdl] section");
1733
+ continue;
1747
1734
  }
1735
+ } else {
1736
+ log::debug!("[rumdl-config] Found user configuration at: {}", config_path.display());
1737
+ return Some(config_path);
1748
1738
  }
1739
+ }
1740
+ }
1749
1741
 
1750
- log::debug!(
1751
- "[rumdl-config] No user configuration found in: {}",
1752
- config_dir.display()
1753
- );
1754
- None
1742
+ log::debug!(
1743
+ "[rumdl-config] No user configuration found in: {}",
1744
+ config_dir.display()
1745
+ );
1746
+ None
1747
+ }
1748
+
1749
+ /// Discover user-level configuration file from platform-specific config directory.
1750
+ /// Returns the first configuration file found in the user config directory.
1751
+ fn user_configuration_path() -> Option<std::path::PathBuf> {
1752
+ use etcetera::{BaseStrategy, choose_base_strategy};
1753
+
1754
+ match choose_base_strategy() {
1755
+ Ok(strategy) => {
1756
+ let config_dir = strategy.config_dir();
1757
+ Self::user_configuration_path_impl(&config_dir)
1755
1758
  }
1756
1759
  Err(e) => {
1757
1760
  log::debug!("[rumdl-config] Failed to determine user config directory: {e}");
@@ -1760,12 +1763,13 @@ impl SourcedConfig {
1760
1763
  }
1761
1764
  }
1762
1765
 
1763
- /// Load and merge configurations from files and CLI overrides.
1764
- /// If skip_auto_discovery is true, only explicit config paths are loaded.
1765
- pub fn load_with_discovery(
1766
+ /// Internal implementation that accepts user config directory for testing
1767
+ #[doc(hidden)]
1768
+ pub fn load_with_discovery_impl(
1766
1769
  config_path: Option<&str>,
1767
1770
  cli_overrides: Option<&SourcedGlobalConfig>,
1768
1771
  skip_auto_discovery: bool,
1772
+ user_config_dir: Option<&Path>,
1769
1773
  ) -> Result<Self, ConfigError> {
1770
1774
  use std::env;
1771
1775
  log::debug!("[rumdl-config] Current working directory: {:?}", env::current_dir());
@@ -1831,7 +1835,13 @@ impl SourcedConfig {
1831
1835
  // Only perform auto-discovery if not skipped AND no explicit config path provided
1832
1836
  if !skip_auto_discovery && config_path.is_none() {
1833
1837
  // Step 1: Load user configuration first (as a base)
1834
- if let Some(user_config_path) = Self::user_configuration_path() {
1838
+ let user_config_path = if let Some(dir) = user_config_dir {
1839
+ Self::user_configuration_path_impl(dir)
1840
+ } else {
1841
+ Self::user_configuration_path()
1842
+ };
1843
+
1844
+ if let Some(user_config_path) = user_config_path {
1835
1845
  let path_str = user_config_path.display().to_string();
1836
1846
  let filename = user_config_path.file_name().and_then(|n| n.to_str()).unwrap_or("");
1837
1847
 
@@ -1950,6 +1960,16 @@ impl SourcedConfig {
1950
1960
 
1951
1961
  Ok(sourced_config)
1952
1962
  }
1963
+
1964
+ /// Load and merge configurations from files and CLI overrides.
1965
+ /// If skip_auto_discovery is true, only explicit config paths are loaded.
1966
+ pub fn load_with_discovery(
1967
+ config_path: Option<&str>,
1968
+ cli_overrides: Option<&SourcedGlobalConfig>,
1969
+ skip_auto_discovery: bool,
1970
+ ) -> Result<Self, ConfigError> {
1971
+ Self::load_with_discovery_impl(config_path, cli_overrides, skip_auto_discovery, None)
1972
+ }
1953
1973
  }
1954
1974
 
1955
1975
  impl From<SourcedConfig> for Config {