rumdl 0.0.149__tar.gz → 0.0.153__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 (450) hide show
  1. {rumdl-0.0.149 → rumdl-0.0.153}/Cargo.lock +1 -1
  2. {rumdl-0.0.149 → rumdl-0.0.153}/Cargo.toml +1 -1
  3. {rumdl-0.0.149 → rumdl-0.0.153}/PKG-INFO +1 -1
  4. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md001_heading_increment.rs +6 -2
  5. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md002_first_heading_h1.rs +2 -2
  6. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md003_heading_style.rs +6 -2
  7. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md004_unordered_list_style.rs +2 -2
  8. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md006_start_bullets.rs +1 -2
  9. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md007_ul_indent.rs +38 -27
  10. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md010_no_hard_tabs.rs +1 -1
  11. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md011_no_reversed_links.rs +4 -0
  12. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md012_no_multiple_blanks.rs +2 -2
  13. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md013_line_length.rs +561 -40
  14. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md014_commands_show_output.rs +1 -1
  15. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md018_no_missing_space_atx.rs +5 -1
  16. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md019_no_multiple_space_atx.rs +1 -1
  17. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md020_no_missing_space_closed_atx.rs +1 -1
  18. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md021_no_multiple_space_closed_atx.rs +1 -2
  19. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md022_blanks_around_headings.rs +6 -1
  20. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md023_heading_start_left.rs +5 -0
  21. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md024_no_duplicate_heading.rs +5 -0
  22. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md025_single_title.rs +1 -1
  23. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md026_no_trailing_punctuation.rs +1 -1
  24. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md027_multiple_spaces_blockquote.rs +1 -1
  25. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md028_no_blanks_blockquote.rs +1 -1
  26. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md029_ordered_list_prefix.rs +1 -4
  27. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md030_list_marker_space.rs +1 -1
  28. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md031_blanks_around_fences.rs +2 -2
  29. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md032_blanks_around_lists.rs +6 -1
  30. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md033_no_inline_html.rs +2 -3
  31. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md034_no_bare_urls.rs +6 -2
  32. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md035_hr_style.rs +2 -2
  33. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md036_no_emphasis_only_first.rs +1 -1
  34. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md037_spaces_around_emphasis.rs +1 -2
  35. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md038_no_space_in_code.rs +1 -1
  36. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md039_no_space_in_links.rs +1 -11
  37. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md040_fenced_code_language.rs +1 -2
  38. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md041_first_line_heading.rs +3 -1
  39. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md042_no_empty_links.rs +1 -2
  40. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md045_no_alt_text.rs +1 -1
  41. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md046_code_block_style.rs +2 -2
  42. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md047_single_trailing_newline.rs +29 -10
  43. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md048_code_fence_style.rs +1 -1
  44. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md049_emphasis_style.rs +2 -2
  45. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md050_strong_style.rs +2 -1
  46. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md051_link_fragments.rs +90 -142
  47. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md052_reference_links_images.rs +2 -2
  48. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md053_link_image_reference_definitions.rs +2 -2
  49. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md054_link_image_style.rs +4 -0
  50. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md055_table_pipe_style.rs +3 -6
  51. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md056_table_column_count.rs +2 -2
  52. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md057_existing_relative_links.rs +1 -2
  53. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md058_blanks_around_tables.rs +2 -2
  54. {rumdl-0.0.149 → rumdl-0.0.153}/src/utils/anchor_styles/github.rs +16 -20
  55. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md007_test.rs +40 -38
  56. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md051_comprehensive_test.rs +2 -2
  57. {rumdl-0.0.149 → rumdl-0.0.153}/.config/nextest.toml +0 -0
  58. {rumdl-0.0.149 → rumdl-0.0.153}/.mise.toml +0 -0
  59. {rumdl-0.0.149 → rumdl-0.0.153}/.pre-commit-config.yaml +0 -0
  60. {rumdl-0.0.149 → rumdl-0.0.153}/.rumdl.toml +0 -0
  61. {rumdl-0.0.149 → rumdl-0.0.153}/.rustfmt.toml +0 -0
  62. {rumdl-0.0.149 → rumdl-0.0.153}/CHANGELOG.md +0 -0
  63. {rumdl-0.0.149 → rumdl-0.0.153}/LICENSE +0 -0
  64. {rumdl-0.0.149 → rumdl-0.0.153}/MANIFEST.in +0 -0
  65. {rumdl-0.0.149 → rumdl-0.0.153}/Makefile +0 -0
  66. {rumdl-0.0.149 → rumdl-0.0.153}/README.md +0 -0
  67. {rumdl-0.0.149 → rumdl-0.0.153}/assets/logo.png +0 -0
  68. {rumdl-0.0.149 → rumdl-0.0.153}/benches/fix_performance.rs +0 -0
  69. {rumdl-0.0.149 → rumdl-0.0.153}/benches/range_performance.rs +0 -0
  70. {rumdl-0.0.149 → rumdl-0.0.153}/benches/range_utils_benchmark.rs +0 -0
  71. {rumdl-0.0.149 → rumdl-0.0.153}/benches/rule_performance.rs +0 -0
  72. {rumdl-0.0.149 → rumdl-0.0.153}/benches/simple_fix_bench.rs +0 -0
  73. {rumdl-0.0.149 → rumdl-0.0.153}/benchmark/bin/bench_lint_context.rs +0 -0
  74. {rumdl-0.0.149 → rumdl-0.0.153}/benchmark/bin/benchmark.rs +0 -0
  75. {rumdl-0.0.149 → rumdl-0.0.153}/benchmark/bin/benchmark_rule.rs +0 -0
  76. {rumdl-0.0.149 → rumdl-0.0.153}/benchmark/bin/file_parallel_benchmark.rs +0 -0
  77. {rumdl-0.0.149 → rumdl-0.0.153}/benchmark/bin/measure_code_span_performance.rs +0 -0
  78. {rumdl-0.0.149 → rumdl-0.0.153}/docs/RULES.md +0 -0
  79. {rumdl-0.0.149 → rumdl-0.0.153}/docs/global-settings.md +0 -0
  80. {rumdl-0.0.149 → rumdl-0.0.153}/docs/inline-configuration.md +0 -0
  81. {rumdl-0.0.149 → rumdl-0.0.153}/docs/md001.md +0 -0
  82. {rumdl-0.0.149 → rumdl-0.0.153}/docs/md002.md +0 -0
  83. {rumdl-0.0.149 → rumdl-0.0.153}/docs/md003.md +0 -0
  84. {rumdl-0.0.149 → rumdl-0.0.153}/docs/md004.md +0 -0
  85. {rumdl-0.0.149 → rumdl-0.0.153}/docs/md005.md +0 -0
  86. {rumdl-0.0.149 → rumdl-0.0.153}/docs/md006.md +0 -0
  87. {rumdl-0.0.149 → rumdl-0.0.153}/docs/md007.md +0 -0
  88. {rumdl-0.0.149 → rumdl-0.0.153}/docs/md009.md +0 -0
  89. {rumdl-0.0.149 → rumdl-0.0.153}/docs/md010.md +0 -0
  90. {rumdl-0.0.149 → rumdl-0.0.153}/docs/md011.md +0 -0
  91. {rumdl-0.0.149 → rumdl-0.0.153}/docs/md012.md +0 -0
  92. {rumdl-0.0.149 → rumdl-0.0.153}/docs/md013.md +0 -0
  93. {rumdl-0.0.149 → rumdl-0.0.153}/docs/md014.md +0 -0
  94. {rumdl-0.0.149 → rumdl-0.0.153}/docs/md018.md +0 -0
  95. {rumdl-0.0.149 → rumdl-0.0.153}/docs/md019.md +0 -0
  96. {rumdl-0.0.149 → rumdl-0.0.153}/docs/md020.md +0 -0
  97. {rumdl-0.0.149 → rumdl-0.0.153}/docs/md021.md +0 -0
  98. {rumdl-0.0.149 → rumdl-0.0.153}/docs/md022.md +0 -0
  99. {rumdl-0.0.149 → rumdl-0.0.153}/docs/md023.md +0 -0
  100. {rumdl-0.0.149 → rumdl-0.0.153}/docs/md024.md +0 -0
  101. {rumdl-0.0.149 → rumdl-0.0.153}/docs/md025.md +0 -0
  102. {rumdl-0.0.149 → rumdl-0.0.153}/docs/md026.md +0 -0
  103. {rumdl-0.0.149 → rumdl-0.0.153}/docs/md027.md +0 -0
  104. {rumdl-0.0.149 → rumdl-0.0.153}/docs/md028.md +0 -0
  105. {rumdl-0.0.149 → rumdl-0.0.153}/docs/md029.md +0 -0
  106. {rumdl-0.0.149 → rumdl-0.0.153}/docs/md030.md +0 -0
  107. {rumdl-0.0.149 → rumdl-0.0.153}/docs/md031.md +0 -0
  108. {rumdl-0.0.149 → rumdl-0.0.153}/docs/md032.md +0 -0
  109. {rumdl-0.0.149 → rumdl-0.0.153}/docs/md033.md +0 -0
  110. {rumdl-0.0.149 → rumdl-0.0.153}/docs/md034.md +0 -0
  111. {rumdl-0.0.149 → rumdl-0.0.153}/docs/md035.md +0 -0
  112. {rumdl-0.0.149 → rumdl-0.0.153}/docs/md036.md +0 -0
  113. {rumdl-0.0.149 → rumdl-0.0.153}/docs/md037.md +0 -0
  114. {rumdl-0.0.149 → rumdl-0.0.153}/docs/md038.md +0 -0
  115. {rumdl-0.0.149 → rumdl-0.0.153}/docs/md039.md +0 -0
  116. {rumdl-0.0.149 → rumdl-0.0.153}/docs/md040.md +0 -0
  117. {rumdl-0.0.149 → rumdl-0.0.153}/docs/md041.md +0 -0
  118. {rumdl-0.0.149 → rumdl-0.0.153}/docs/md042.md +0 -0
  119. {rumdl-0.0.149 → rumdl-0.0.153}/docs/md043.md +0 -0
  120. {rumdl-0.0.149 → rumdl-0.0.153}/docs/md044.md +0 -0
  121. {rumdl-0.0.149 → rumdl-0.0.153}/docs/md045.md +0 -0
  122. {rumdl-0.0.149 → rumdl-0.0.153}/docs/md046.md +0 -0
  123. {rumdl-0.0.149 → rumdl-0.0.153}/docs/md047.md +0 -0
  124. {rumdl-0.0.149 → rumdl-0.0.153}/docs/md048.md +0 -0
  125. {rumdl-0.0.149 → rumdl-0.0.153}/docs/md049.md +0 -0
  126. {rumdl-0.0.149 → rumdl-0.0.153}/docs/md050.md +0 -0
  127. {rumdl-0.0.149 → rumdl-0.0.153}/docs/md051.md +0 -0
  128. {rumdl-0.0.149 → rumdl-0.0.153}/docs/md052.md +0 -0
  129. {rumdl-0.0.149 → rumdl-0.0.153}/docs/md053.md +0 -0
  130. {rumdl-0.0.149 → rumdl-0.0.153}/docs/md054.md +0 -0
  131. {rumdl-0.0.149 → rumdl-0.0.153}/docs/md055.md +0 -0
  132. {rumdl-0.0.149 → rumdl-0.0.153}/docs/md056.md +0 -0
  133. {rumdl-0.0.149 → rumdl-0.0.153}/docs/md057.md +0 -0
  134. {rumdl-0.0.149 → rumdl-0.0.153}/docs/md058.md +0 -0
  135. {rumdl-0.0.149 → rumdl-0.0.153}/docs/vscode-extension.md +0 -0
  136. {rumdl-0.0.149 → rumdl-0.0.153}/parity_check.py +0 -0
  137. {rumdl-0.0.149 → rumdl-0.0.153}/pyproject.toml +0 -0
  138. {rumdl-0.0.149 → rumdl-0.0.153}/python/MANIFEST.in +0 -0
  139. {rumdl-0.0.149 → rumdl-0.0.153}/python/PYTHON-README.md +0 -0
  140. {rumdl-0.0.149 → rumdl-0.0.153}/python/rumdl/__init__.py +0 -0
  141. {rumdl-0.0.149 → rumdl-0.0.153}/python/rumdl/__main__.py +0 -0
  142. {rumdl-0.0.149 → rumdl-0.0.153}/python/rumdl/py.typed +0 -0
  143. {rumdl-0.0.149 → rumdl-0.0.153}/rumdl.schema.json +0 -0
  144. {rumdl-0.0.149 → rumdl-0.0.153}/rumdl.toml.example +0 -0
  145. {rumdl-0.0.149 → rumdl-0.0.153}/rust-toolchain.toml +0 -0
  146. {rumdl-0.0.149 → rumdl-0.0.153}/scripts/extract-changelog.sh +0 -0
  147. {rumdl-0.0.149 → rumdl-0.0.153}/scripts/generate-downloads-table.sh +0 -0
  148. {rumdl-0.0.149 → rumdl-0.0.153}/scripts/pre-release.sh +0 -0
  149. {rumdl-0.0.149 → rumdl-0.0.153}/scripts/prepare-release.sh +0 -0
  150. {rumdl-0.0.149 → rumdl-0.0.153}/scripts/setup-pre-commit.sh +0 -0
  151. {rumdl-0.0.149 → rumdl-0.0.153}/scripts/update-pre-commit-docs.sh +0 -0
  152. {rumdl-0.0.149 → rumdl-0.0.153}/src/config.rs +0 -0
  153. {rumdl-0.0.149 → rumdl-0.0.153}/src/exit_codes.rs +0 -0
  154. {rumdl-0.0.149 → rumdl-0.0.153}/src/fix_coordinator.rs +0 -0
  155. {rumdl-0.0.149 → rumdl-0.0.153}/src/inline_config.rs +0 -0
  156. {rumdl-0.0.149 → rumdl-0.0.153}/src/lib.rs +0 -0
  157. {rumdl-0.0.149 → rumdl-0.0.153}/src/lint_context.rs +0 -0
  158. {rumdl-0.0.149 → rumdl-0.0.153}/src/lsp/mod.rs +0 -0
  159. {rumdl-0.0.149 → rumdl-0.0.153}/src/lsp/server.rs +0 -0
  160. {rumdl-0.0.149 → rumdl-0.0.153}/src/lsp/types.rs +0 -0
  161. {rumdl-0.0.149 → rumdl-0.0.153}/src/main.rs +0 -0
  162. {rumdl-0.0.149 → rumdl-0.0.153}/src/markdownlint_config.rs +0 -0
  163. {rumdl-0.0.149 → rumdl-0.0.153}/src/output/formatters/azure.rs +0 -0
  164. {rumdl-0.0.149 → rumdl-0.0.153}/src/output/formatters/concise.rs +0 -0
  165. {rumdl-0.0.149 → rumdl-0.0.153}/src/output/formatters/github.rs +0 -0
  166. {rumdl-0.0.149 → rumdl-0.0.153}/src/output/formatters/gitlab.rs +0 -0
  167. {rumdl-0.0.149 → rumdl-0.0.153}/src/output/formatters/grouped.rs +0 -0
  168. {rumdl-0.0.149 → rumdl-0.0.153}/src/output/formatters/json.rs +0 -0
  169. {rumdl-0.0.149 → rumdl-0.0.153}/src/output/formatters/json_lines.rs +0 -0
  170. {rumdl-0.0.149 → rumdl-0.0.153}/src/output/formatters/junit.rs +0 -0
  171. {rumdl-0.0.149 → rumdl-0.0.153}/src/output/formatters/mod.rs +0 -0
  172. {rumdl-0.0.149 → rumdl-0.0.153}/src/output/formatters/pylint.rs +0 -0
  173. {rumdl-0.0.149 → rumdl-0.0.153}/src/output/formatters/sarif.rs +0 -0
  174. {rumdl-0.0.149 → rumdl-0.0.153}/src/output/formatters/text.rs +0 -0
  175. {rumdl-0.0.149 → rumdl-0.0.153}/src/output/mod.rs +0 -0
  176. {rumdl-0.0.149 → rumdl-0.0.153}/src/parallel.rs +0 -0
  177. {rumdl-0.0.149 → rumdl-0.0.153}/src/performance.rs +0 -0
  178. {rumdl-0.0.149 → rumdl-0.0.153}/src/profiling.rs +0 -0
  179. {rumdl-0.0.149 → rumdl-0.0.153}/src/python.rs +0 -0
  180. {rumdl-0.0.149 → rumdl-0.0.153}/src/rule.rs +0 -0
  181. {rumdl-0.0.149 → rumdl-0.0.153}/src/rule_config.rs +0 -0
  182. {rumdl-0.0.149 → rumdl-0.0.153}/src/rule_config_serde.rs +0 -0
  183. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/blockquote_utils.rs +0 -0
  184. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/code_block_utils.rs +0 -0
  185. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/code_fence_utils.rs +0 -0
  186. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/emphasis_style.rs +0 -0
  187. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/front_matter_utils.rs +0 -0
  188. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/heading_utils.rs +0 -0
  189. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/list_utils.rs +0 -0
  190. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md002_first_heading_h1/md002_config.rs +0 -0
  191. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md003_heading_style/md003_config.rs +0 -0
  192. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md004_unordered_list_style/md004_config.rs +0 -0
  193. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md005_list_indent.rs +0 -0
  194. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md007_ul_indent/md007_config.rs +0 -0
  195. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md009_trailing_spaces/md009_config.rs +0 -0
  196. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md009_trailing_spaces.rs +0 -0
  197. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md010_no_hard_tabs/md010_config.rs +0 -0
  198. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md012_no_multiple_blanks/md012_config.rs +0 -0
  199. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md013_line_length/md013_config.rs +0 -0
  200. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md014_commands_show_output/md014_config.rs +0 -0
  201. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md022_blanks_around_headings/md022_config.rs +0 -0
  202. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md024_no_duplicate_heading/md024_config.rs +0 -0
  203. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md025_single_title/md025_config.rs +0 -0
  204. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md026_no_trailing_punctuation/md026_config.rs +0 -0
  205. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md029_ordered_list_prefix/md029_config.rs +0 -0
  206. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md030_list_marker_space/md030_config.rs +0 -0
  207. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md033_no_inline_html/md033_config.rs +0 -0
  208. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md035_hr_style/md035_config.rs +0 -0
  209. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md036_no_emphasis_only_first/md036_config.rs +0 -0
  210. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md043_required_headings.rs +0 -0
  211. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md044_proper_names/md044_config.rs +0 -0
  212. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md044_proper_names.rs +0 -0
  213. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md045_no_alt_text/md045_config.rs +0 -0
  214. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md046_code_block_style/md046_config.rs +0 -0
  215. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md048_code_fence_style/md048_config.rs +0 -0
  216. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md049_emphasis_style/md049_config.rs +0 -0
  217. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md050_strong_style/md050_config.rs +0 -0
  218. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md054_link_image_style/md054_config.rs +0 -0
  219. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md055_table_pipe_style/md055_config.rs +0 -0
  220. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/md057_existing_relative_links/md057_config.rs +0 -0
  221. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/mod.rs +0 -0
  222. {rumdl-0.0.149 → rumdl-0.0.153}/src/rules/strong_style.rs +0 -0
  223. {rumdl-0.0.149 → rumdl-0.0.153}/src/utils/anchor_styles/jekyll.rs +0 -0
  224. {rumdl-0.0.149 → rumdl-0.0.153}/src/utils/anchor_styles/kramdown.rs +0 -0
  225. {rumdl-0.0.149 → rumdl-0.0.153}/src/utils/anchor_styles/kramdown_gfm.rs +0 -0
  226. {rumdl-0.0.149 → rumdl-0.0.153}/src/utils/anchor_styles/mod.rs +0 -0
  227. {rumdl-0.0.149 → rumdl-0.0.153}/src/utils/ast_utils.rs +0 -0
  228. {rumdl-0.0.149 → rumdl-0.0.153}/src/utils/code_block_utils.rs +0 -0
  229. {rumdl-0.0.149 → rumdl-0.0.153}/src/utils/document_structure.rs +0 -0
  230. {rumdl-0.0.149 → rumdl-0.0.153}/src/utils/early_returns.rs +0 -0
  231. {rumdl-0.0.149 → rumdl-0.0.153}/src/utils/element_cache.rs +0 -0
  232. {rumdl-0.0.149 → rumdl-0.0.153}/src/utils/emphasis_utils.rs +0 -0
  233. {rumdl-0.0.149 → rumdl-0.0.153}/src/utils/fix_utils.rs +0 -0
  234. {rumdl-0.0.149 → rumdl-0.0.153}/src/utils/header_id_utils.rs +0 -0
  235. {rumdl-0.0.149 → rumdl-0.0.153}/src/utils/jinja_utils.rs +0 -0
  236. {rumdl-0.0.149 → rumdl-0.0.153}/src/utils/kramdown_utils.rs +0 -0
  237. {rumdl-0.0.149 → rumdl-0.0.153}/src/utils/line_ending.rs +0 -0
  238. {rumdl-0.0.149 → rumdl-0.0.153}/src/utils/markdown_elements.rs +0 -0
  239. {rumdl-0.0.149 → rumdl-0.0.153}/src/utils/mkdocs_admonitions.rs +0 -0
  240. {rumdl-0.0.149 → rumdl-0.0.153}/src/utils/mkdocs_common.rs +0 -0
  241. {rumdl-0.0.149 → rumdl-0.0.153}/src/utils/mkdocs_critic.rs +0 -0
  242. {rumdl-0.0.149 → rumdl-0.0.153}/src/utils/mkdocs_footnotes.rs +0 -0
  243. {rumdl-0.0.149 → rumdl-0.0.153}/src/utils/mkdocs_patterns.rs +0 -0
  244. {rumdl-0.0.149 → rumdl-0.0.153}/src/utils/mkdocs_snippets.rs +0 -0
  245. {rumdl-0.0.149 → rumdl-0.0.153}/src/utils/mkdocs_tabs.rs +0 -0
  246. {rumdl-0.0.149 → rumdl-0.0.153}/src/utils/mkdocs_test_utils.rs +0 -0
  247. {rumdl-0.0.149 → rumdl-0.0.153}/src/utils/mkdocstrings_refs.rs +0 -0
  248. {rumdl-0.0.149 → rumdl-0.0.153}/src/utils/mod.rs +0 -0
  249. {rumdl-0.0.149 → rumdl-0.0.153}/src/utils/range_utils.rs +0 -0
  250. {rumdl-0.0.149 → rumdl-0.0.153}/src/utils/regex_cache.rs +0 -0
  251. {rumdl-0.0.149 → rumdl-0.0.153}/src/utils/skip_context.rs +0 -0
  252. {rumdl-0.0.149 → rumdl-0.0.153}/src/utils/string_interner.rs +0 -0
  253. {rumdl-0.0.149 → rumdl-0.0.153}/src/utils/table_utils.rs +0 -0
  254. {rumdl-0.0.149 → rumdl-0.0.153}/src/utils/text_reflow.rs +0 -0
  255. {rumdl-0.0.149 → rumdl-0.0.153}/src/vscode.rs +0 -0
  256. {rumdl-0.0.149 → rumdl-0.0.153}/tests/advanced_integration_tests.rs +0 -0
  257. {rumdl-0.0.149 → rumdl-0.0.153}/tests/character_ranges/additional_tests.rs +0 -0
  258. {rumdl-0.0.149 → rumdl-0.0.153}/tests/character_ranges/basic_tests.rs +0 -0
  259. {rumdl-0.0.149 → rumdl-0.0.153}/tests/character_ranges/comprehensive_tests.rs +0 -0
  260. {rumdl-0.0.149 → rumdl-0.0.153}/tests/character_ranges/extended_tests.rs +0 -0
  261. {rumdl-0.0.149 → rumdl-0.0.153}/tests/character_ranges/mod.rs +0 -0
  262. {rumdl-0.0.149 → rumdl-0.0.153}/tests/character_ranges/unicode_utils.rs +0 -0
  263. {rumdl-0.0.149 → rumdl-0.0.153}/tests/cli_duplication_test.rs +0 -0
  264. {rumdl-0.0.149 → rumdl-0.0.153}/tests/cli_explain_test.rs +0 -0
  265. {rumdl-0.0.149 → rumdl-0.0.153}/tests/cli_flag_precedence_test.rs +0 -0
  266. {rumdl-0.0.149 → rumdl-0.0.153}/tests/cli_integration_tests.rs +0 -0
  267. {rumdl-0.0.149 → rumdl-0.0.153}/tests/cli_lsp_fix_consistency.rs +0 -0
  268. {rumdl-0.0.149 → rumdl-0.0.153}/tests/cli_statistics_test.rs +0 -0
  269. {rumdl-0.0.149 → rumdl-0.0.153}/tests/common/cli_test_utils.rs +0 -0
  270. {rumdl-0.0.149 → rumdl-0.0.153}/tests/common/fixtures.rs +0 -0
  271. {rumdl-0.0.149 → rumdl-0.0.153}/tests/common/mod.rs +0 -0
  272. {rumdl-0.0.149 → rumdl-0.0.153}/tests/common/test_utils.rs +0 -0
  273. {rumdl-0.0.149 → rumdl-0.0.153}/tests/commonmark_compliance_tests.rs +0 -0
  274. {rumdl-0.0.149 → rumdl-0.0.153}/tests/comprehensive_integration_tests.rs +0 -0
  275. {rumdl-0.0.149 → rumdl-0.0.153}/tests/comprehensive_output_format_tests.rs +0 -0
  276. {rumdl-0.0.149 → rumdl-0.0.153}/tests/config_application_tests.rs +0 -0
  277. {rumdl-0.0.149 → rumdl-0.0.153}/tests/config_file_command_test.rs +0 -0
  278. {rumdl-0.0.149 → rumdl-0.0.153}/tests/config_tests.rs +0 -0
  279. {rumdl-0.0.149 → rumdl-0.0.153}/tests/config_upward_traversal_test.rs +0 -0
  280. {rumdl-0.0.149 → rumdl-0.0.153}/tests/configuration_inheritance_tests.rs +0 -0
  281. {rumdl-0.0.149 → rumdl-0.0.153}/tests/consistency_regression_tests.rs +0 -0
  282. {rumdl-0.0.149 → rumdl-0.0.153}/tests/cross_platform_compatibility_tests.rs +0 -0
  283. {rumdl-0.0.149 → rumdl-0.0.153}/tests/deeply_nested_lists_performance_test.rs +0 -0
  284. {rumdl-0.0.149 → rumdl-0.0.153}/tests/escaped_brackets_test.rs +0 -0
  285. {rumdl-0.0.149 → rumdl-0.0.153}/tests/final_confidence_assessment.rs +0 -0
  286. {rumdl-0.0.149 → rumdl-0.0.153}/tests/fix_counting_test.rs +0 -0
  287. {rumdl-0.0.149 → rumdl-0.0.153}/tests/fix_performance_baseline_test.rs +0 -0
  288. {rumdl-0.0.149 → rumdl-0.0.153}/tests/fixable_unfixable_config_test.rs +0 -0
  289. {rumdl-0.0.149 → rumdl-0.0.153}/tests/init_command_test.rs +0 -0
  290. {rumdl-0.0.149 → rumdl-0.0.153}/tests/init_tests.rs +0 -0
  291. {rumdl-0.0.149 → rumdl-0.0.153}/tests/inline_config_blocks_test.rs +0 -0
  292. {rumdl-0.0.149 → rumdl-0.0.153}/tests/inline_config_test.rs +0 -0
  293. {rumdl-0.0.149 → rumdl-0.0.153}/tests/integration_tests.rs +0 -0
  294. {rumdl-0.0.149 → rumdl-0.0.153}/tests/json_output_test.rs +0 -0
  295. {rumdl-0.0.149 → rumdl-0.0.153}/tests/kramdown_integration_test.rs +0 -0
  296. {rumdl-0.0.149 → rumdl-0.0.153}/tests/lib.rs +0 -0
  297. {rumdl-0.0.149 → rumdl-0.0.153}/tests/lsp_editor_integration_tests.rs +0 -0
  298. {rumdl-0.0.149 → rumdl-0.0.153}/tests/lsp_formatting_tests.rs +0 -0
  299. {rumdl-0.0.149 → rumdl-0.0.153}/tests/lsp_initialization_options_test.rs +0 -0
  300. {rumdl-0.0.149 → rumdl-0.0.153}/tests/lsp_integration_tests.rs +0 -0
  301. {rumdl-0.0.149 → rumdl-0.0.153}/tests/lsp_memory_leak_tests.rs +0 -0
  302. {rumdl-0.0.149 → rumdl-0.0.153}/tests/lsp_mkdocs_flavor_test.rs +0 -0
  303. {rumdl-0.0.149 → rumdl-0.0.153}/tests/lsp_tests.rs +0 -0
  304. {rumdl-0.0.149 → rumdl-0.0.153}/tests/lsp_unopened_document_test.rs +0 -0
  305. {rumdl-0.0.149 → rumdl-0.0.153}/tests/malformed_markdown_stress_tests.rs +0 -0
  306. {rumdl-0.0.149 → rumdl-0.0.153}/tests/markdownlint_cli_integration.rs +0 -0
  307. {rumdl-0.0.149 → rumdl-0.0.153}/tests/markdownlint_config_test.rs +0 -0
  308. {rumdl-0.0.149 → rumdl-0.0.153}/tests/markdownlintignore_test.rs +0 -0
  309. {rumdl-0.0.149 → rumdl-0.0.153}/tests/md013_reflow_integration_test.rs +0 -0
  310. {rumdl-0.0.149 → rumdl-0.0.153}/tests/md032_edge_cases_test.rs +0 -0
  311. {rumdl-0.0.149 → rumdl-0.0.153}/tests/md032_ordered_list_bug_test.rs +0 -0
  312. {rumdl-0.0.149 → rumdl-0.0.153}/tests/md033_edge_cases_test.rs +0 -0
  313. {rumdl-0.0.149 → rumdl-0.0.153}/tests/md037_xxxx_regression_test.rs +0 -0
  314. {rumdl-0.0.149 → rumdl-0.0.153}/tests/md038_false_positive_test.rs +0 -0
  315. {rumdl-0.0.149 → rumdl-0.0.153}/tests/md051_issue_39_regression_test.rs +0 -0
  316. {rumdl-0.0.149 → rumdl-0.0.153}/tests/md051_readme_bug_test.rs +0 -0
  317. {rumdl-0.0.149 → rumdl-0.0.153}/tests/md051_toc_bug_test.rs +0 -0
  318. {rumdl-0.0.149 → rumdl-0.0.153}/tests/md052_literal_brackets_test.rs +0 -0
  319. {rumdl-0.0.149 → rumdl-0.0.153}/tests/md054_code_span_test.rs +0 -0
  320. {rumdl-0.0.149 → rumdl-0.0.153}/tests/nested_code_block_test.rs +0 -0
  321. {rumdl-0.0.149 → rumdl-0.0.153}/tests/output_format_integration_tests.rs +0 -0
  322. {rumdl-0.0.149 → rumdl-0.0.153}/tests/output_format_tests.rs +0 -0
  323. {rumdl-0.0.149 → rumdl-0.0.153}/tests/per_file_ignores_integration_test.rs +0 -0
  324. {rumdl-0.0.149 → rumdl-0.0.153}/tests/perf_check.rs +0 -0
  325. {rumdl-0.0.149 → rumdl-0.0.153}/tests/performance_validation_tests.rs +0 -0
  326. {rumdl-0.0.149 → rumdl-0.0.153}/tests/pyproject_config_tests.rs +0 -0
  327. {rumdl-0.0.149 → rumdl-0.0.153}/tests/python_bindings_test.rs +0 -0
  328. {rumdl-0.0.149 → rumdl-0.0.153}/tests/real_world_repository_tests.rs +0 -0
  329. {rumdl-0.0.149 → rumdl-0.0.153}/tests/regression_prevention_tests.rs +0 -0
  330. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/emphasis_edge_cases_test.rs +0 -0
  331. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/heading_edge_cases_test.rs +0 -0
  332. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/inline_content_edge_cases_test.rs +0 -0
  333. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/link_edge_cases_test.rs +0 -0
  334. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/list_rules_integration_test.rs +0 -0
  335. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md001_test.rs +0 -0
  336. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md001_unicode_test.rs +0 -0
  337. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md002_test.rs +0 -0
  338. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md003_test.rs +0 -0
  339. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md004_test.rs +0 -0
  340. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md005_dynamic_indent_test.rs +0 -0
  341. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md005_test.rs +0 -0
  342. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md005_unicode_test.rs +0 -0
  343. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md006_test.rs +0 -0
  344. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md006_unicode_test.rs +0 -0
  345. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md009_test.rs +0 -0
  346. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md010_test.rs +0 -0
  347. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md011_test.rs +0 -0
  348. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md012_test.rs +0 -0
  349. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md013_test.rs +0 -0
  350. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md014_test.rs +0 -0
  351. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md018_test.rs +0 -0
  352. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md019_test.rs +0 -0
  353. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md020_test.rs +0 -0
  354. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md021_test.rs +0 -0
  355. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md022_test.rs +0 -0
  356. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md023_extended_test.rs +0 -0
  357. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md023_test.rs +0 -0
  358. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md024_test.rs +0 -0
  359. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md025_test.rs +0 -0
  360. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md026_kramdown_test.rs +0 -0
  361. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md026_test.rs +0 -0
  362. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md027_test.rs +0 -0
  363. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md028_md009_interaction_test.rs +0 -0
  364. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md028_test.rs +0 -0
  365. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md029_code_block_separation_test.rs +0 -0
  366. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md029_fix_test.rs +0 -0
  367. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md029_issue42_test.rs +0 -0
  368. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md029_markdownlint_parity_test.rs +0 -0
  369. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md029_pathological_edge_cases_test.rs +0 -0
  370. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md029_test.rs +0 -0
  371. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md029_unicode_test.rs +0 -0
  372. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md030_test.rs +0 -0
  373. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md031_kramdown_test.rs +0 -0
  374. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md031_test.rs +0 -0
  375. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md032_test.rs +0 -0
  376. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md033_extended_test.rs +0 -0
  377. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md033_kramdown_test.rs +0 -0
  378. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md033_test.rs +0 -0
  379. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md034_ipv6_test.rs +0 -0
  380. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md034_test.rs +0 -0
  381. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md035_test.rs +0 -0
  382. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md036_test.rs +0 -0
  383. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md037_kramdown_test.rs +0 -0
  384. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md037_test.rs +0 -0
  385. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md038_nested_backticks_test.rs +0 -0
  386. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md038_test.rs +0 -0
  387. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md039_test.rs +0 -0
  388. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md040_test.rs +0 -0
  389. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md041_test.rs +0 -0
  390. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md042_test.rs +0 -0
  391. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md043_test.rs +0 -0
  392. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md044_test.rs +0 -0
  393. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md045_test.rs +0 -0
  394. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md046_test.rs +0 -0
  395. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md047_test.rs +0 -0
  396. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md048_test.rs +0 -0
  397. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md049_test.rs +0 -0
  398. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md050_test.rs +0 -0
  399. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md051_critical_edge_cases_test.rs +0 -0
  400. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md051_edge_cases_test.rs +0 -0
  401. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md051_issue_39_regression_test.rs +0 -0
  402. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md051_performance_edge_cases_test.rs +0 -0
  403. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md051_property_based_test.rs +0 -0
  404. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md051_regression_prevention_test.rs +0 -0
  405. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md051_test.rs +0 -0
  406. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md051_unicode_security_test.rs +0 -0
  407. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md052_test.rs +0 -0
  408. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md053_additional_test.rs +0 -0
  409. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md053_proptest.rs +0 -0
  410. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md053_test.rs +0 -0
  411. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md054_test.rs +0 -0
  412. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md054_unicode_test.rs +0 -0
  413. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md055_test.rs +0 -0
  414. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md056_test.rs +0 -0
  415. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md057_test.rs +0 -0
  416. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md058_kramdown_test.rs +0 -0
  417. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/md058_test.rs +0 -0
  418. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/mkdocs_admonitions_test.rs +0 -0
  419. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/mkdocs_edge_cases_test.rs +0 -0
  420. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/mkdocs_extensions_test.rs +0 -0
  421. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/mkdocs_snippets_test.rs +0 -0
  422. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/mod.rs +0 -0
  423. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules/rule_interaction_test.rs +0 -0
  424. {rumdl-0.0.149 → rumdl-0.0.153}/tests/rules_mod_test.rs +0 -0
  425. {rumdl-0.0.149 → rumdl-0.0.153}/tests/sentence_per_line_test.rs +0 -0
  426. {rumdl-0.0.149 → rumdl-0.0.153}/tests/skip_context_tests.rs +0 -0
  427. {rumdl-0.0.149 → rumdl-0.0.153}/tests/test_ast_code_block_issue.rs +0 -0
  428. {rumdl-0.0.149 → rumdl-0.0.153}/tests/test_gfm_vs_default_parsing.rs +0 -0
  429. {rumdl-0.0.149 → rumdl-0.0.153}/tests/test_lint_context_flow.rs +0 -0
  430. {rumdl-0.0.149 → rumdl-0.0.153}/tests/test_list_ast_structure.rs +0 -0
  431. {rumdl-0.0.149 → rumdl-0.0.153}/tests/test_multiline_ast.rs +0 -0
  432. {rumdl-0.0.149 → rumdl-0.0.153}/tests/test_underscore_edge_cases.rs +0 -0
  433. {rumdl-0.0.149 → rumdl-0.0.153}/tests/thread_safety_tests.rs +0 -0
  434. {rumdl-0.0.149 → rumdl-0.0.153}/tests/unfixable_rules_test.rs +0 -0
  435. {rumdl-0.0.149 → rumdl-0.0.153}/tests/unicode_edge_case_tests.rs +0 -0
  436. {rumdl-0.0.149 → rumdl-0.0.153}/tests/utf8_boundary_tests.rs +0 -0
  437. {rumdl-0.0.149 → rumdl-0.0.153}/tests/utils/blockquote_utils_test.rs +0 -0
  438. {rumdl-0.0.149 → rumdl-0.0.153}/tests/utils/code_block_utils_extended_test.rs +0 -0
  439. {rumdl-0.0.149 → rumdl-0.0.153}/tests/utils/code_block_utils_test.rs +0 -0
  440. {rumdl-0.0.149 → rumdl-0.0.153}/tests/utils/core_utils_test.rs +0 -0
  441. {rumdl-0.0.149 → rumdl-0.0.153}/tests/utils/front_matter_utils_test.rs +0 -0
  442. {rumdl-0.0.149 → rumdl-0.0.153}/tests/utils/line_index_test.rs +0 -0
  443. {rumdl-0.0.149 → rumdl-0.0.153}/tests/utils/mod.rs +0 -0
  444. {rumdl-0.0.149 → rumdl-0.0.153}/tests/utils_markdown_edge_cases.rs +0 -0
  445. {rumdl-0.0.149 → rumdl-0.0.153}/tests/utils_tests.rs +0 -0
  446. {rumdl-0.0.149 → rumdl-0.0.153}/tests/vscode_extension_fixes.rs +0 -0
  447. {rumdl-0.0.149 → rumdl-0.0.153}/tests/vscode_test.rs +0 -0
  448. {rumdl-0.0.149 → rumdl-0.0.153}/tests/vscode_tests.rs +0 -0
  449. {rumdl-0.0.149 → rumdl-0.0.153}/tests/vscode_windows_comprehensive_test.rs +0 -0
  450. {rumdl-0.0.149 → rumdl-0.0.153}/tests/vscode_windows_test.rs +0 -0
@@ -1644,7 +1644,7 @@ checksum = "caf4aa5b0f434c91fe5c7f1ecb6a5ece2130b02ad2a590589dda5146df959001"
1644
1644
 
1645
1645
  [[package]]
1646
1646
  name = "rumdl"
1647
- version = "0.0.149"
1647
+ version = "0.0.153"
1648
1648
  dependencies = [
1649
1649
  "anyhow",
1650
1650
  "assert_cmd",
@@ -1,6 +1,6 @@
1
1
  [package]
2
2
  name = "rumdl"
3
- version = "0.0.149"
3
+ version = "0.0.153"
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)"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: rumdl
3
- Version: 0.0.149
3
+ Version: 0.0.153
4
4
  Classifier: Development Status :: 4 - Beta
5
5
  Classifier: Environment :: Console
6
6
  Classifier: Intended Audience :: Developers
@@ -179,8 +179,12 @@ impl Rule for MD001HeadingIncrement {
179
179
  }
180
180
 
181
181
  fn should_skip(&self, ctx: &crate::lint_context::LintContext) -> bool {
182
- // Skip if content is empty or has no headings
183
- ctx.content.is_empty() || !ctx.lines.iter().any(|line| line.heading.is_some())
182
+ // Fast path: check if document likely has headings
183
+ if ctx.content.is_empty() || !ctx.likely_has_headings() {
184
+ return true;
185
+ }
186
+ // Verify headings actually exist
187
+ !ctx.lines.iter().any(|line| line.heading.is_some())
184
188
  }
185
189
 
186
190
  fn as_any(&self) -> &dyn std::any::Any {
@@ -281,8 +281,8 @@ impl Rule for MD002FirstHeadingH1 {
281
281
 
282
282
  /// Check if this rule should be skipped
283
283
  fn should_skip(&self, ctx: &crate::lint_context::LintContext) -> bool {
284
- let content = ctx.content;
285
- content.is_empty() || (!content.contains('#') && !content.contains('=') && !content.contains('-'))
284
+ // Check for heading indicators: # for ATX, = or - for Setext
285
+ ctx.content.is_empty() || (!ctx.has_char('#') && !ctx.has_char('=') && !ctx.has_char('-'))
286
286
  }
287
287
 
288
288
  fn as_any(&self) -> &dyn std::any::Any {
@@ -235,8 +235,12 @@ impl Rule for MD003HeadingStyle {
235
235
  }
236
236
 
237
237
  fn should_skip(&self, ctx: &crate::lint_context::LintContext) -> bool {
238
- // Skip if content is empty or has no headings
239
- ctx.content.is_empty() || !ctx.lines.iter().any(|line| line.heading.is_some())
238
+ // Fast path: check if document likely has headings using character frequency
239
+ if ctx.content.is_empty() || !ctx.likely_has_headings() {
240
+ return true;
241
+ }
242
+ // Verify headings actually exist (handles false positives from character frequency)
243
+ !ctx.lines.iter().any(|line| line.heading.is_some())
240
244
  }
241
245
 
242
246
  fn as_any(&self) -> &dyn std::any::Any {
@@ -104,7 +104,7 @@ impl Rule for MD004UnorderedListStyle {
104
104
  }
105
105
 
106
106
  // Quick check for any list markers before processing
107
- if !ctx.content.contains(['*', '-', '+']) {
107
+ if !ctx.likely_has_lists() {
108
108
  return Ok(Vec::new());
109
109
  }
110
110
 
@@ -314,7 +314,7 @@ impl Rule for MD004UnorderedListStyle {
314
314
 
315
315
  /// Check if this rule should be skipped
316
316
  fn should_skip(&self, ctx: &crate::lint_context::LintContext) -> bool {
317
- ctx.content.is_empty() || !ctx.content.contains(['*', '-', '+'])
317
+ ctx.content.is_empty() || !ctx.likely_has_lists()
318
318
  }
319
319
 
320
320
  fn as_any(&self) -> &dyn std::any::Any {
@@ -337,8 +337,7 @@ impl Rule for MD006StartBullets {
337
337
 
338
338
  /// Check if this rule should be skipped
339
339
  fn should_skip(&self, ctx: &crate::lint_context::LintContext) -> bool {
340
- let content = ctx.content;
341
- content.is_empty() || (!content.contains('*') && !content.contains('-') && !content.contains('+'))
340
+ ctx.content.is_empty() || !ctx.likely_has_lists()
342
341
  }
343
342
 
344
343
  fn as_any(&self) -> &dyn std::any::Any {
@@ -124,9 +124,17 @@ impl Rule for MD007ULIndent {
124
124
  Self::char_pos_to_visual_column(&line_info.content, list_item.content_column)
125
125
  };
126
126
 
127
+ // For nesting detection, treat 1-space indent as if it's at column 0
128
+ // because 1 space is insufficient to establish a nesting relationship
129
+ let visual_marker_for_nesting = if visual_marker_column == 1 {
130
+ 0
131
+ } else {
132
+ visual_marker_column
133
+ };
134
+
127
135
  // Clean up stack - remove items at same or deeper indentation
128
136
  while let Some(&(indent, _, _, _)) = list_stack.last() {
129
- if indent >= visual_marker_column {
137
+ if indent >= visual_marker_for_nesting {
130
138
  list_stack.pop();
131
139
  } else {
132
140
  break;
@@ -178,13 +186,14 @@ impl Rule for MD007ULIndent {
178
186
 
179
187
  // Add current item to stack
180
188
  // Use actual marker position for cleanup logic
181
- // For text-aligned children, store the ACTUAL content position
182
- // to match markdownlint's behavior (allows cascade)
183
- let actual_content_visual_col = visual_marker_column + 2; // where content ACTUALLY is
184
- list_stack.push((visual_marker_column, line_idx, false, actual_content_visual_col));
189
+ // For text-aligned children, store the EXPECTED content position after fix
190
+ // (not the actual position) to prevent error cascade
191
+ let expected_content_visual_col = expected_indent + 2; // where content SHOULD be after fix
192
+ list_stack.push((visual_marker_column, line_idx, false, expected_content_visual_col));
185
193
 
186
194
  // Skip first level check if start_indented is false
187
- if !self.config.start_indented && nesting_level == 0 {
195
+ // BUT always check items with 1 space indent (insufficient for nesting)
196
+ if !self.config.start_indented && nesting_level == 0 && visual_marker_column != 1 {
188
197
  continue;
189
198
  }
190
199
 
@@ -295,12 +304,14 @@ impl Rule for MD007ULIndent {
295
304
 
296
305
  /// Check if this rule should be skipped
297
306
  fn should_skip(&self, ctx: &crate::lint_context::LintContext) -> bool {
298
- // Skip if content is empty or has no unordered list items
299
- ctx.content.is_empty()
300
- || !ctx
301
- .lines
302
- .iter()
303
- .any(|line| line.list_item.as_ref().is_some_and(|item| !item.is_ordered))
307
+ // Fast path: check if document likely has lists
308
+ if ctx.content.is_empty() || !ctx.likely_has_lists() {
309
+ return true;
310
+ }
311
+ // Verify unordered list items actually exist
312
+ !ctx.lines
313
+ .iter()
314
+ .any(|line| line.list_item.as_ref().is_some_and(|item| !item.is_ordered))
304
315
  }
305
316
 
306
317
  fn as_any(&self) -> &dyn std::any::Any {
@@ -395,10 +406,10 @@ mod tests {
395
406
  let content = "* Item 1\n * Item 2\n * Item 3";
396
407
  let ctx = LintContext::new(content, crate::config::MarkdownFlavor::Standard);
397
408
  let result = rule.fix(&ctx).unwrap();
398
- // With text-aligned style (cascade behavior like markdownlint):
409
+ // With text-aligned style and non-cascade:
399
410
  // Item 2 aligns with Item 1's text (2 spaces)
400
- // Item 3 aligns with Item 2's ACTUAL text position (5 spaces)
401
- let expected = "* Item 1\n * Item 2\n * Item 3";
411
+ // Item 3 aligns with Item 2's expected text position (4 spaces)
412
+ let expected = "* Item 1\n * Item 2\n * Item 3";
402
413
  assert_eq!(result, expected);
403
414
  }
404
415
 
@@ -608,17 +619,17 @@ repos:
608
619
  let content_multi = "* Item 1\n\t* Item 2\n\t\t* Item 3";
609
620
  let ctx = LintContext::new(content_multi, crate::config::MarkdownFlavor::Standard);
610
621
  let fixed = rule.fix(&ctx).unwrap();
611
- // With cascade: Item 2 is at column 4 (tab), content at 6
612
- // Item 3 aligns with Item 2's actual content at column 6
613
- assert_eq!(fixed, "* Item 1\n * Item 2\n * Item 3");
622
+ // With non-cascade: Item 2 at 2 spaces, content at 4
623
+ // Item 3 aligns with Item 2's expected content at 4 spaces
624
+ assert_eq!(fixed, "* Item 1\n * Item 2\n * Item 3");
614
625
 
615
626
  // Mixed tabs and spaces
616
627
  let content_mixed = "* Item 1\n \t* Item 2\n\t * Item 3";
617
628
  let ctx = LintContext::new(content_mixed, crate::config::MarkdownFlavor::Standard);
618
629
  let fixed = rule.fix(&ctx).unwrap();
619
- // With cascade: Item 2 at column 4 (space+tab), content at 6
620
- // Item 3 at column 5 (tab+space), child of Item 2, aligns with content at 6
621
- assert_eq!(fixed, "* Item 1\n * Item 2\n * Item 3");
630
+ // With non-cascade: Item 2 at 2 spaces, content at 4
631
+ // Item 3 aligns with Item 2's expected content at 4 spaces
632
+ assert_eq!(fixed, "* Item 1\n * Item 2\n * Item 3");
622
633
  }
623
634
 
624
635
  #[test]
@@ -722,9 +733,9 @@ tags:
722
733
  let content = "* Item 1 with **bold** and *italic*\n * Item 2 with `code`\n * Item 3 with [link](url)";
723
734
  let ctx = LintContext::new(content, crate::config::MarkdownFlavor::Standard);
724
735
  let fixed = rule.fix(&ctx).unwrap();
725
- // With cascade: Item 2 is at column 3, content at 5
726
- // Item 3 aligns with Item 2's actual content at column 5
727
- let expected = "* Item 1 with **bold** and *italic*\n * Item 2 with `code`\n * Item 3 with [link](url)";
736
+ // With non-cascade: Item 2 at 2 spaces, content at 4
737
+ // Item 3 aligns with Item 2's expected content at 4 spaces
738
+ let expected = "* Item 1 with **bold** and *italic*\n * Item 2 with `code`\n * Item 3 with [link](url)";
728
739
  assert_eq!(fixed, expected, "Fix should only change indentation, not content");
729
740
  }
730
741
 
@@ -836,17 +847,17 @@ tags:
836
847
  assert!(result[0].message.contains("Expected 2 spaces"));
837
848
  assert!(result[0].message.contains("found 3"));
838
849
 
839
- // Test insufficient indentation (1 space instead of 2)
850
+ // Test insufficient indentation (1 space is treated as level 0, should be 0)
840
851
  let content = "- Item 1\n - Item 2 with 1 space";
841
852
  let ctx = LintContext::new(content, crate::config::MarkdownFlavor::Standard);
842
853
  let result = rule.check(&ctx).unwrap();
843
854
  assert_eq!(
844
855
  result.len(),
845
856
  1,
846
- "Should detect insufficient indentation (1 instead of 2)"
857
+ "Should detect 1-space indent (insufficient for nesting, expected 0)"
847
858
  );
848
859
  assert_eq!(result[0].line, 2);
849
- assert!(result[0].message.contains("Expected 2 spaces"));
860
+ assert!(result[0].message.contains("Expected 0 spaces"));
850
861
  assert!(result[0].message.contains("found 1"));
851
862
  }
852
863
 
@@ -241,7 +241,7 @@ impl Rule for MD010NoHardTabs {
241
241
 
242
242
  fn should_skip(&self, ctx: &crate::lint_context::LintContext) -> bool {
243
243
  // Skip if content is empty or has no tabs
244
- ctx.content.is_empty() || !ctx.content.contains('\t')
244
+ ctx.content.is_empty() || !ctx.has_char('\t')
245
245
  }
246
246
 
247
247
  fn category(&self) -> RuleCategory {
@@ -194,6 +194,10 @@ impl Rule for MD011NoReversedLinks {
194
194
  Ok(result)
195
195
  }
196
196
 
197
+ fn should_skip(&self, ctx: &crate::lint_context::LintContext) -> bool {
198
+ ctx.content.is_empty() || !ctx.likely_has_links_or_images()
199
+ }
200
+
197
201
  fn as_any(&self) -> &dyn std::any::Any {
198
202
  self
199
203
  }
@@ -436,8 +436,8 @@ impl Rule for MD012NoMultipleBlanks {
436
436
  }
437
437
 
438
438
  fn should_skip(&self, ctx: &crate::lint_context::LintContext) -> bool {
439
- // Skip if content is empty or doesn't have consecutive newlines
440
- ctx.content.is_empty() || !ctx.content.contains("\n\n")
439
+ // Skip if content is empty or doesn't have newlines (single line can't have multiple blanks)
440
+ ctx.content.is_empty() || !ctx.has_char('\n')
441
441
  }
442
442
 
443
443
  fn default_config_section(&self) -> Option<(String, toml::Value)> {