rumdl 0.0.90__tar.gz → 0.0.92__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 (343) hide show
  1. {rumdl-0.0.90 → rumdl-0.0.92}/.mise.toml +5 -5
  2. {rumdl-0.0.90 → rumdl-0.0.92}/CHANGELOG.md +7 -1
  3. {rumdl-0.0.90 → rumdl-0.0.92}/Cargo.lock +16 -3
  4. {rumdl-0.0.90 → rumdl-0.0.92}/Cargo.toml +2 -2
  5. {rumdl-0.0.90 → rumdl-0.0.92}/Makefile +62 -1
  6. {rumdl-0.0.90 → rumdl-0.0.92}/PKG-INFO +58 -43
  7. {rumdl-0.0.90 → rumdl-0.0.92}/README.md +57 -42
  8. {rumdl-0.0.90 → rumdl-0.0.92}/benches/fix_performance.rs +35 -37
  9. {rumdl-0.0.90 → rumdl-0.0.92}/benches/range_performance.rs +9 -9
  10. {rumdl-0.0.90 → rumdl-0.0.92}/benches/range_utils_benchmark.rs +3 -3
  11. {rumdl-0.0.90 → rumdl-0.0.92}/benches/rule_performance.rs +11 -12
  12. {rumdl-0.0.90 → rumdl-0.0.92}/benches/simple_fix_bench.rs +6 -6
  13. {rumdl-0.0.90 → rumdl-0.0.92}/docs/md045.md +25 -5
  14. {rumdl-0.0.90 → rumdl-0.0.92}/rust-toolchain.toml +1 -1
  15. {rumdl-0.0.90 → rumdl-0.0.92}/src/bin/benchmark.rs +4 -4
  16. {rumdl-0.0.90 → rumdl-0.0.92}/src/bin/file_parallel_benchmark.rs +9 -10
  17. {rumdl-0.0.90 → rumdl-0.0.92}/src/bin/measure_code_span_performance.rs +13 -13
  18. {rumdl-0.0.90 → rumdl-0.0.92}/src/config.rs +120 -115
  19. {rumdl-0.0.90 → rumdl-0.0.92}/src/init.rs +37 -35
  20. {rumdl-0.0.90 → rumdl-0.0.92}/src/lib.rs +61 -71
  21. {rumdl-0.0.90 → rumdl-0.0.92}/src/lint_context.rs +25 -18
  22. {rumdl-0.0.90 → rumdl-0.0.92}/src/lsp/mod.rs +47 -48
  23. {rumdl-0.0.90 → rumdl-0.0.92}/src/lsp/server.rs +193 -63
  24. {rumdl-0.0.90 → rumdl-0.0.92}/src/lsp/types.rs +14 -20
  25. {rumdl-0.0.90 → rumdl-0.0.92}/src/main.rs +101 -105
  26. {rumdl-0.0.90 → rumdl-0.0.92}/src/markdownlint_config.rs +141 -106
  27. {rumdl-0.0.90 → rumdl-0.0.92}/src/output/formatters/azure.rs +18 -18
  28. {rumdl-0.0.90 → rumdl-0.0.92}/src/output/formatters/concise.rs +19 -28
  29. {rumdl-0.0.90 → rumdl-0.0.92}/src/output/formatters/github.rs +16 -16
  30. {rumdl-0.0.90 → rumdl-0.0.92}/src/output/formatters/gitlab.rs +52 -43
  31. {rumdl-0.0.90 → rumdl-0.0.92}/src/output/formatters/grouped.rs +19 -18
  32. {rumdl-0.0.90 → rumdl-0.0.92}/src/output/formatters/json.rs +44 -41
  33. {rumdl-0.0.90 → rumdl-0.0.92}/src/output/formatters/json_lines.rs +36 -30
  34. {rumdl-0.0.90 → rumdl-0.0.92}/src/output/formatters/junit.rs +41 -40
  35. {rumdl-0.0.90 → rumdl-0.0.92}/src/output/formatters/pylint.rs +25 -41
  36. {rumdl-0.0.90 → rumdl-0.0.92}/src/output/formatters/sarif.rs +89 -64
  37. {rumdl-0.0.90 → rumdl-0.0.92}/src/output/formatters/text.rs +7 -12
  38. {rumdl-0.0.90 → rumdl-0.0.92}/src/output/mod.rs +36 -31
  39. {rumdl-0.0.90 → rumdl-0.0.92}/src/parallel.rs +42 -30
  40. {rumdl-0.0.90 → rumdl-0.0.92}/src/performance.rs +136 -33
  41. {rumdl-0.0.90 → rumdl-0.0.92}/src/profiling.rs +36 -33
  42. {rumdl-0.0.90 → rumdl-0.0.92}/src/python.rs +26 -18
  43. {rumdl-0.0.90 → rumdl-0.0.92}/src/rule.rs +63 -61
  44. {rumdl-0.0.90 → rumdl-0.0.92}/src/rule_config.rs +13 -13
  45. {rumdl-0.0.90 → rumdl-0.0.92}/src/rule_config_serde.rs +55 -43
  46. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/blockquote_utils.rs +93 -48
  47. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/code_block_utils.rs +45 -30
  48. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/code_fence_utils.rs +21 -22
  49. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/front_matter_utils.rs +123 -68
  50. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/heading_utils.rs +67 -46
  51. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/list_utils.rs +52 -47
  52. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md001_heading_increment.rs +2 -2
  53. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md002_first_heading_h1.rs +51 -31
  54. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md003_heading_style/md003_config.rs +1 -1
  55. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md003_heading_style.rs +3 -6
  56. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md004_unordered_list_style.rs +26 -10
  57. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md005_list_indent.rs +17 -16
  58. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md006_start_bullets.rs +4 -7
  59. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md007_ul_indent.rs +39 -42
  60. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md009_trailing_spaces.rs +23 -17
  61. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md010_no_hard_tabs.rs +13 -14
  62. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md011_no_reversed_links.rs +4 -4
  63. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md012_no_multiple_blanks.rs +8 -7
  64. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md013_line_length.rs +11 -11
  65. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md014_commands_show_output.rs +27 -19
  66. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md019_no_multiple_space_atx.rs +1 -1
  67. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md020_no_missing_space_closed_atx.rs +4 -6
  68. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md021_no_multiple_space_closed_atx.rs +1 -1
  69. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md022_blanks_around_headings.rs +1 -1
  70. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md023_heading_start_left.rs +3 -3
  71. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md024_no_duplicate_heading.rs +11 -9
  72. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md025_single_title.rs +14 -10
  73. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md026_no_trailing_punctuation.rs +16 -8
  74. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md027_multiple_spaces_blockquote.rs +9 -9
  75. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md028_no_blanks_blockquote.rs +5 -5
  76. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md029_ordered_list_prefix.rs +1 -2
  77. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md030_list_marker_space.rs +3 -4
  78. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md031_blanks_around_fences.rs +2 -2
  79. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md032_blanks_around_lists.rs +15 -23
  80. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md034_no_bare_urls.rs +17 -20
  81. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md035_hr_style.rs +27 -27
  82. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md036_no_emphasis_only_first.rs +111 -51
  83. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md037_spaces_around_emphasis.rs +4 -6
  84. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md038_no_space_in_code.rs +4 -4
  85. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md039_no_space_in_links.rs +16 -21
  86. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md040_fenced_code_language.rs +27 -15
  87. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md041_first_line_heading.rs +68 -40
  88. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md042_no_empty_links.rs +22 -10
  89. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md043_required_headings.rs +1 -1
  90. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md044_proper_names/md044_config.rs +8 -0
  91. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md044_proper_names.rs +206 -101
  92. rumdl-0.0.92/src/rules/md045_no_alt_text/md045_config.rs +24 -0
  93. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md045_no_alt_text.rs +84 -29
  94. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md046_code_block_style/md046_config.rs +1 -1
  95. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md046_code_block_style.rs +26 -26
  96. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md047_single_trailing_newline.rs +0 -1
  97. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md048_code_fence_style/md048_config.rs +1 -1
  98. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md048_code_fence_style.rs +21 -21
  99. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md049_emphasis_style.rs +30 -31
  100. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md050_strong_style/md050_config.rs +1 -1
  101. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md050_strong_style.rs +44 -30
  102. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md051_link_fragments.rs +61 -45
  103. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md052_reference_links_images.rs +38 -38
  104. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md053_link_image_reference_definitions.rs +26 -32
  105. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md054_link_image_style.rs +25 -26
  106. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md055_table_pipe_style/md055_config.rs +1 -1
  107. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md055_table_pipe_style.rs +3 -7
  108. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md056_table_column_count.rs +25 -25
  109. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md057_existing_relative_links.rs +1 -3
  110. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md058_blanks_around_tables.rs +21 -21
  111. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/strong_style.rs +2 -2
  112. {rumdl-0.0.90 → rumdl-0.0.92}/src/utils/ast_utils.rs +55 -59
  113. {rumdl-0.0.90 → rumdl-0.0.92}/src/utils/code_block_utils.rs +15 -14
  114. {rumdl-0.0.90 → rumdl-0.0.92}/src/utils/document_structure.rs +16 -12
  115. {rumdl-0.0.90 → rumdl-0.0.92}/src/utils/early_returns.rs +52 -52
  116. {rumdl-0.0.90 → rumdl-0.0.92}/src/utils/element_cache.rs +0 -8
  117. {rumdl-0.0.90 → rumdl-0.0.92}/src/utils/emphasis_utils.rs +1 -1
  118. {rumdl-0.0.90 → rumdl-0.0.92}/src/utils/fix_utils.rs +15 -16
  119. {rumdl-0.0.90 → rumdl-0.0.92}/src/utils/mod.rs +1 -5
  120. {rumdl-0.0.90 → rumdl-0.0.92}/src/utils/regex_cache.rs +33 -37
  121. {rumdl-0.0.90 → rumdl-0.0.92}/src/utils/table_utils.rs +48 -48
  122. {rumdl-0.0.90 → rumdl-0.0.92}/src/vscode.rs +33 -32
  123. {rumdl-0.0.90 → rumdl-0.0.92}/tests/advanced_integration_tests.rs +4 -6
  124. {rumdl-0.0.90 → rumdl-0.0.92}/tests/character_ranges/additional_tests.rs +1 -1
  125. {rumdl-0.0.90 → rumdl-0.0.92}/tests/character_ranges/basic_tests.rs +1 -1
  126. {rumdl-0.0.90 → rumdl-0.0.92}/tests/character_ranges/comprehensive_tests.rs +1 -1
  127. {rumdl-0.0.90 → rumdl-0.0.92}/tests/character_ranges/extended_tests.rs +1 -1
  128. {rumdl-0.0.90 → rumdl-0.0.92}/tests/character_ranges/mod.rs +1 -1
  129. {rumdl-0.0.90 → rumdl-0.0.92}/tests/cli_integration_tests.rs +30 -39
  130. {rumdl-0.0.90 → rumdl-0.0.92}/tests/cli_lsp_fix_consistency.rs +46 -54
  131. {rumdl-0.0.90 → rumdl-0.0.92}/tests/cli_statistics_test.rs +8 -17
  132. {rumdl-0.0.90 → rumdl-0.0.92}/tests/commonmark_compliance_tests.rs +5 -8
  133. {rumdl-0.0.90 → rumdl-0.0.92}/tests/comprehensive_integration_tests.rs +11 -11
  134. {rumdl-0.0.90 → rumdl-0.0.92}/tests/config_application_tests.rs +1 -1
  135. {rumdl-0.0.90 → rumdl-0.0.92}/tests/config_tests.rs +16 -30
  136. {rumdl-0.0.90 → rumdl-0.0.92}/tests/configuration_inheritance_tests.rs +4 -4
  137. {rumdl-0.0.90 → rumdl-0.0.92}/tests/cross_platform_compatibility_tests.rs +22 -25
  138. {rumdl-0.0.90 → rumdl-0.0.92}/tests/final_confidence_assessment.rs +5 -8
  139. {rumdl-0.0.90 → rumdl-0.0.92}/tests/init_tests.rs +1 -1
  140. {rumdl-0.0.90 → rumdl-0.0.92}/tests/lsp_editor_integration_tests.rs +2 -2
  141. {rumdl-0.0.90 → rumdl-0.0.92}/tests/lsp_integration_tests.rs +6 -10
  142. {rumdl-0.0.90 → rumdl-0.0.92}/tests/lsp_memory_leak_tests.rs +28 -32
  143. {rumdl-0.0.90 → rumdl-0.0.92}/tests/lsp_tests.rs +1 -1
  144. {rumdl-0.0.90 → rumdl-0.0.92}/tests/malformed_markdown_stress_tests.rs +2 -7
  145. {rumdl-0.0.90 → rumdl-0.0.92}/tests/markdownlint_cli_integration.rs +6 -9
  146. {rumdl-0.0.90 → rumdl-0.0.92}/tests/markdownlint_config_test.rs +3 -5
  147. {rumdl-0.0.90 → rumdl-0.0.92}/tests/output_format_tests.rs +29 -38
  148. {rumdl-0.0.90 → rumdl-0.0.92}/tests/perf_check.rs +5 -5
  149. {rumdl-0.0.90 → rumdl-0.0.92}/tests/performance_validation_tests.rs +5 -8
  150. {rumdl-0.0.90 → rumdl-0.0.92}/tests/pyproject_config_tests.rs +9 -12
  151. {rumdl-0.0.90 → rumdl-0.0.92}/tests/real_world_repository_tests.rs +4 -4
  152. {rumdl-0.0.90 → rumdl-0.0.92}/tests/regression_prevention_tests.rs +8 -6
  153. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md002_test.rs +73 -58
  154. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md004_test.rs +27 -18
  155. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md006_test.rs +2 -4
  156. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md007_test.rs +50 -53
  157. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md009_test.rs +2 -1
  158. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md010_test.rs +60 -36
  159. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md012_test.rs +9 -9
  160. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md013_test.rs +43 -25
  161. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md014_test.rs +33 -13
  162. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md022_test.rs +2 -2
  163. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md023_extended_test.rs +1 -1
  164. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md024_test.rs +2 -2
  165. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md025_test.rs +1 -1
  166. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md026_test.rs +75 -44
  167. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md029_test.rs +1 -1
  168. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md030_test.rs +5 -5
  169. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md032_test.rs +6 -8
  170. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md034_test.rs +26 -32
  171. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md036_test.rs +160 -15
  172. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md037_test.rs +6 -7
  173. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md041_test.rs +2 -2
  174. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md044_test.rs +3 -3
  175. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md045_test.rs +8 -2
  176. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md046_test.rs +6 -4
  177. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md051_test.rs +23 -12
  178. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md052_test.rs +1 -1
  179. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md053_additional_test.rs +10 -12
  180. rumdl-0.0.92/tests/rules_mod_test.rs +206 -0
  181. {rumdl-0.0.90 → rumdl-0.0.92}/tests/thread_safety_tests.rs +8 -10
  182. {rumdl-0.0.90 → rumdl-0.0.92}/tests/unicode_edge_case_tests.rs +2 -6
  183. {rumdl-0.0.90 → rumdl-0.0.92}/tests/utils/code_block_utils_extended_test.rs +5 -5
  184. {rumdl-0.0.90 → rumdl-0.0.92}/tests/utils/code_block_utils_test.rs +3 -3
  185. {rumdl-0.0.90 → rumdl-0.0.92}/tests/utils/core_utils_test.rs +47 -1
  186. {rumdl-0.0.90 → rumdl-0.0.92}/tests/utils/line_index_test.rs +2 -2
  187. {rumdl-0.0.90 → rumdl-0.0.92}/tests/utils_markdown_edge_cases.rs +13 -14
  188. {rumdl-0.0.90 → rumdl-0.0.92}/tests/utils_tests.rs +1 -1
  189. {rumdl-0.0.90 → rumdl-0.0.92}/tests/vscode_extension_fixes.rs +23 -47
  190. {rumdl-0.0.90 → rumdl-0.0.92}/tests/vscode_test.rs +2 -2
  191. rumdl-0.0.92/tests/vscode_tests.rs +230 -0
  192. {rumdl-0.0.90 → rumdl-0.0.92}/.config/nextest.toml +0 -0
  193. {rumdl-0.0.90 → rumdl-0.0.92}/.rumdl.toml +0 -0
  194. {rumdl-0.0.90 → rumdl-0.0.92}/.rustfmt.toml +0 -0
  195. {rumdl-0.0.90 → rumdl-0.0.92}/LICENSE +0 -0
  196. {rumdl-0.0.90 → rumdl-0.0.92}/MANIFEST.in +0 -0
  197. {rumdl-0.0.90 → rumdl-0.0.92}/assets/logo.png +0 -0
  198. {rumdl-0.0.90 → rumdl-0.0.92}/docs/RULES.md +0 -0
  199. {rumdl-0.0.90 → rumdl-0.0.92}/docs/global-settings.md +0 -0
  200. {rumdl-0.0.90 → rumdl-0.0.92}/docs/md001.md +0 -0
  201. {rumdl-0.0.90 → rumdl-0.0.92}/docs/md002.md +0 -0
  202. {rumdl-0.0.90 → rumdl-0.0.92}/docs/md003.md +0 -0
  203. {rumdl-0.0.90 → rumdl-0.0.92}/docs/md004.md +0 -0
  204. {rumdl-0.0.90 → rumdl-0.0.92}/docs/md005.md +0 -0
  205. {rumdl-0.0.90 → rumdl-0.0.92}/docs/md006.md +0 -0
  206. {rumdl-0.0.90 → rumdl-0.0.92}/docs/md007.md +0 -0
  207. {rumdl-0.0.90 → rumdl-0.0.92}/docs/md009.md +0 -0
  208. {rumdl-0.0.90 → rumdl-0.0.92}/docs/md010.md +0 -0
  209. {rumdl-0.0.90 → rumdl-0.0.92}/docs/md011.md +0 -0
  210. {rumdl-0.0.90 → rumdl-0.0.92}/docs/md012.md +0 -0
  211. {rumdl-0.0.90 → rumdl-0.0.92}/docs/md013.md +0 -0
  212. {rumdl-0.0.90 → rumdl-0.0.92}/docs/md014.md +0 -0
  213. {rumdl-0.0.90 → rumdl-0.0.92}/docs/md018.md +0 -0
  214. {rumdl-0.0.90 → rumdl-0.0.92}/docs/md019.md +0 -0
  215. {rumdl-0.0.90 → rumdl-0.0.92}/docs/md020.md +0 -0
  216. {rumdl-0.0.90 → rumdl-0.0.92}/docs/md021.md +0 -0
  217. {rumdl-0.0.90 → rumdl-0.0.92}/docs/md022.md +0 -0
  218. {rumdl-0.0.90 → rumdl-0.0.92}/docs/md023.md +0 -0
  219. {rumdl-0.0.90 → rumdl-0.0.92}/docs/md024.md +0 -0
  220. {rumdl-0.0.90 → rumdl-0.0.92}/docs/md025.md +0 -0
  221. {rumdl-0.0.90 → rumdl-0.0.92}/docs/md026.md +0 -0
  222. {rumdl-0.0.90 → rumdl-0.0.92}/docs/md027.md +0 -0
  223. {rumdl-0.0.90 → rumdl-0.0.92}/docs/md028.md +0 -0
  224. {rumdl-0.0.90 → rumdl-0.0.92}/docs/md029.md +0 -0
  225. {rumdl-0.0.90 → rumdl-0.0.92}/docs/md030.md +0 -0
  226. {rumdl-0.0.90 → rumdl-0.0.92}/docs/md031.md +0 -0
  227. {rumdl-0.0.90 → rumdl-0.0.92}/docs/md032.md +0 -0
  228. {rumdl-0.0.90 → rumdl-0.0.92}/docs/md033.md +0 -0
  229. {rumdl-0.0.90 → rumdl-0.0.92}/docs/md034.md +0 -0
  230. {rumdl-0.0.90 → rumdl-0.0.92}/docs/md035.md +0 -0
  231. {rumdl-0.0.90 → rumdl-0.0.92}/docs/md036.md +0 -0
  232. {rumdl-0.0.90 → rumdl-0.0.92}/docs/md037.md +0 -0
  233. {rumdl-0.0.90 → rumdl-0.0.92}/docs/md038.md +0 -0
  234. {rumdl-0.0.90 → rumdl-0.0.92}/docs/md039.md +0 -0
  235. {rumdl-0.0.90 → rumdl-0.0.92}/docs/md040.md +0 -0
  236. {rumdl-0.0.90 → rumdl-0.0.92}/docs/md041.md +0 -0
  237. {rumdl-0.0.90 → rumdl-0.0.92}/docs/md042.md +0 -0
  238. {rumdl-0.0.90 → rumdl-0.0.92}/docs/md043.md +0 -0
  239. {rumdl-0.0.90 → rumdl-0.0.92}/docs/md044.md +0 -0
  240. {rumdl-0.0.90 → rumdl-0.0.92}/docs/md046.md +0 -0
  241. {rumdl-0.0.90 → rumdl-0.0.92}/docs/md047.md +0 -0
  242. {rumdl-0.0.90 → rumdl-0.0.92}/docs/md048.md +0 -0
  243. {rumdl-0.0.90 → rumdl-0.0.92}/docs/md049.md +0 -0
  244. {rumdl-0.0.90 → rumdl-0.0.92}/docs/md050.md +0 -0
  245. {rumdl-0.0.90 → rumdl-0.0.92}/docs/md051.md +0 -0
  246. {rumdl-0.0.90 → rumdl-0.0.92}/docs/md052.md +0 -0
  247. {rumdl-0.0.90 → rumdl-0.0.92}/docs/md053.md +0 -0
  248. {rumdl-0.0.90 → rumdl-0.0.92}/docs/md054.md +0 -0
  249. {rumdl-0.0.90 → rumdl-0.0.92}/docs/md055.md +0 -0
  250. {rumdl-0.0.90 → rumdl-0.0.92}/docs/md056.md +0 -0
  251. {rumdl-0.0.90 → rumdl-0.0.92}/docs/md057.md +0 -0
  252. {rumdl-0.0.90 → rumdl-0.0.92}/docs/md058.md +0 -0
  253. {rumdl-0.0.90 → rumdl-0.0.92}/docs/vscode-extension.md +0 -0
  254. {rumdl-0.0.90 → rumdl-0.0.92}/issues/plan-rule-parity-with-markdownlint.md +0 -0
  255. {rumdl-0.0.90 → rumdl-0.0.92}/parity_check.py +0 -0
  256. {rumdl-0.0.90 → rumdl-0.0.92}/pyproject.toml +0 -0
  257. {rumdl-0.0.90 → rumdl-0.0.92}/python/MANIFEST.in +0 -0
  258. {rumdl-0.0.90 → rumdl-0.0.92}/python/PYTHON-README.md +0 -0
  259. {rumdl-0.0.90 → rumdl-0.0.92}/python/rumdl/__init__.py +0 -0
  260. {rumdl-0.0.90 → rumdl-0.0.92}/python/rumdl/__main__.py +0 -0
  261. {rumdl-0.0.90 → rumdl-0.0.92}/python/rumdl/py.typed +0 -0
  262. {rumdl-0.0.90 → rumdl-0.0.92}/rumdl.toml.example +0 -0
  263. {rumdl-0.0.90 → rumdl-0.0.92}/scripts/extract-changelog.sh +0 -0
  264. {rumdl-0.0.90 → rumdl-0.0.92}/scripts/prepare-release.sh +0 -0
  265. {rumdl-0.0.90 → rumdl-0.0.92}/src/inline_config.rs +0 -0
  266. {rumdl-0.0.90 → rumdl-0.0.92}/src/output/formatters/mod.rs +0 -0
  267. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/emphasis_style.rs +0 -0
  268. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md002_first_heading_h1/md002_config.rs +0 -0
  269. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md004_unordered_list_style/md004_config.rs +0 -0
  270. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md007_ul_indent/md007_config.rs +0 -0
  271. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md009_trailing_spaces/md009_config.rs +0 -0
  272. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md010_no_hard_tabs/md010_config.rs +0 -0
  273. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md012_no_multiple_blanks/md012_config.rs +0 -0
  274. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md013_line_length/md013_config.rs +0 -0
  275. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md014_commands_show_output/md014_config.rs +0 -0
  276. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md018_no_missing_space_atx.rs +0 -0
  277. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md022_blanks_around_headings/md022_config.rs +0 -0
  278. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md024_no_duplicate_heading/md024_config.rs +0 -0
  279. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md025_single_title/md025_config.rs +0 -0
  280. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md026_no_trailing_punctuation/md026_config.rs +0 -0
  281. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md030_list_marker_space/md030_config.rs +0 -0
  282. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md033_no_inline_html/md033_config.rs +0 -0
  283. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md033_no_inline_html.rs +0 -0
  284. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md035_hr_style/md035_config.rs +0 -0
  285. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md036_no_emphasis_only_first/md036_config.rs +0 -0
  286. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md049_emphasis_style/md049_config.rs +0 -0
  287. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md054_link_image_style/md054_config.rs +0 -0
  288. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/md057_existing_relative_links/md057_config.rs +0 -0
  289. {rumdl-0.0.90 → rumdl-0.0.92}/src/rules/mod.rs +0 -0
  290. {rumdl-0.0.90 → rumdl-0.0.92}/src/utils/markdown_elements.rs +0 -0
  291. {rumdl-0.0.90 → rumdl-0.0.92}/src/utils/range_utils.rs +0 -0
  292. {rumdl-0.0.90 → rumdl-0.0.92}/src/utils/string_interner.rs +0 -0
  293. {rumdl-0.0.90 → rumdl-0.0.92}/tests/character_ranges/unicode_utils.rs +0 -0
  294. {rumdl-0.0.90 → rumdl-0.0.92}/tests/cli_duplication_test.rs +0 -0
  295. {rumdl-0.0.90 → rumdl-0.0.92}/tests/comprehensive_output_format_tests.rs +0 -0
  296. {rumdl-0.0.90 → rumdl-0.0.92}/tests/config_file_command_test.rs +0 -0
  297. {rumdl-0.0.90 → rumdl-0.0.92}/tests/consistency_regression_tests.rs +0 -0
  298. {rumdl-0.0.90 → rumdl-0.0.92}/tests/init_command_test.rs +0 -0
  299. {rumdl-0.0.90 → rumdl-0.0.92}/tests/inline_config_test.rs +0 -0
  300. {rumdl-0.0.90 → rumdl-0.0.92}/tests/integration_tests.rs +0 -0
  301. {rumdl-0.0.90 → rumdl-0.0.92}/tests/json_output_test.rs +0 -0
  302. {rumdl-0.0.90 → rumdl-0.0.92}/tests/lib.rs +0 -0
  303. {rumdl-0.0.90 → rumdl-0.0.92}/tests/markdownlintignore_test.rs +0 -0
  304. {rumdl-0.0.90 → rumdl-0.0.92}/tests/md030_edge_cases.md +0 -0
  305. {rumdl-0.0.90 → rumdl-0.0.92}/tests/output_format_integration_tests.rs +0 -0
  306. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md001_test.rs +0 -0
  307. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md001_unicode_test.rs +0 -0
  308. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md003_test.rs +1 -1
  309. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md005_test.rs +0 -0
  310. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md006_unicode_test.rs +0 -0
  311. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md011_test.rs +0 -0
  312. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md018_test.rs +0 -0
  313. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md019_test.rs +0 -0
  314. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md020_test.rs +0 -0
  315. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md021_test.rs +0 -0
  316. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md023_test.rs +0 -0
  317. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md027_test.rs +0 -0
  318. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md028_test.rs +0 -0
  319. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md031_test.rs +0 -0
  320. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md033_extended_test.rs +0 -0
  321. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md033_test.rs +0 -0
  322. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md035_test.rs +0 -0
  323. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md038_test.rs +0 -0
  324. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md039_test.rs +0 -0
  325. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md040_test.rs +0 -0
  326. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md042_test.rs +0 -0
  327. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md043_test.rs +0 -0
  328. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md047_test.rs +0 -0
  329. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md048_test.rs +1 -1
  330. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md049_test.rs +1 -1
  331. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md050_test.rs +1 -1
  332. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md053_proptest.rs +0 -0
  333. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md053_test.rs +0 -0
  334. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md054_test.rs +0 -0
  335. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md054_unicode_test.rs +0 -0
  336. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md055_test.rs +0 -0
  337. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md056_test.rs +0 -0
  338. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md057_test.rs +0 -0
  339. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/md058_test.rs +0 -0
  340. {rumdl-0.0.90 → rumdl-0.0.92}/tests/rules/mod.rs +0 -0
  341. {rumdl-0.0.90 → rumdl-0.0.92}/tests/utils/blockquote_utils_test.rs +0 -0
  342. {rumdl-0.0.90 → rumdl-0.0.92}/tests/utils/front_matter_utils_test.rs +0 -0
  343. {rumdl-0.0.90 → rumdl-0.0.92}/tests/utils/mod.rs +0 -0
@@ -7,7 +7,7 @@ RUST_BACKTRACE = "1"
7
7
 
8
8
  [tools]
9
9
  # Rust toolchain - version matches rust-toolchain.toml
10
- rust = "1.87.0"
10
+ rust = "1.88.0"
11
11
 
12
12
  # Python for maturin/python bindings
13
13
  python = "3.12"
@@ -24,10 +24,10 @@ uv = "latest"
24
24
  # Zig for cross-compilation (used by maturin)
25
25
  zig = "0.13"
26
26
 
27
- # Optional: Additional useful Rust development tools
28
- # Uncomment to enable
29
- # "cargo:cargo-edit" = "latest" # For cargo add/rm/upgrade commands
30
- # "cargo:cargo-outdated" = "latest" # Check for outdated dependencies
27
+ # Additional Rust development tools for dependency management
28
+ "cargo:cargo-edit" = "latest" # For cargo add/rm/upgrade commands
29
+ "cargo:cargo-outdated" = "latest" # Check for outdated dependencies
30
+ # Optional: Security and dependency tools
31
31
  # "cargo:cargo-audit" = "latest" # Security audit dependencies
32
32
  # "cargo:cargo-deny" = "latest" # Lint dependencies
33
33
 
@@ -7,6 +7,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [0.0.92] - 2025-07-02
11
+
12
+ ## [0.0.91] - 2025-07-02
13
+
10
14
  ## [0.0.90] - 2025-07-01
11
15
 
12
16
  ## [0.0.89] - 2025-07-01
@@ -109,7 +113,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
109
113
  ### Added
110
114
  - Initial implementation of remaining rules for markdownlint parity
111
115
 
112
- [Unreleased]: https://github.com/rvben/rumdl/compare/v0.0.90...HEAD
116
+ [Unreleased]: https://github.com/rvben/rumdl/compare/v0.0.92...HEAD
117
+ [0.0.92]: https://github.com/rvben/rumdl/compare/v0.0.91...v0.0.92
118
+ [0.0.91]: https://github.com/rvben/rumdl/compare/v0.0.90...v0.0.91
113
119
  [0.0.90]: https://github.com/rvben/rumdl/compare/v0.0.89...v0.0.90
114
120
  [0.0.89]: https://github.com/rvben/rumdl/compare/v0.0.88...v0.0.89
115
121
  [0.0.88]: https://github.com/rvben/rumdl/compare/v0.0.87...v0.0.88
@@ -848,6 +848,17 @@ version = "2.0.6"
848
848
  source = "registry+https://github.com/rust-lang/crates.io-index"
849
849
  checksum = "f4c7245a08504955605670dbf141fceab975f15ca21570696aebe9d2e71576bd"
850
850
 
851
+ [[package]]
852
+ name = "io-uring"
853
+ version = "0.7.8"
854
+ source = "registry+https://github.com/rust-lang/crates.io-index"
855
+ checksum = "b86e202f00093dcba4275d4636b93ef9dd75d025ae560d2521b45ea28ab49013"
856
+ dependencies = [
857
+ "bitflags 2.9.1",
858
+ "cfg-if",
859
+ "libc",
860
+ ]
861
+
851
862
  [[package]]
852
863
  name = "is-terminal"
853
864
  version = "0.4.16"
@@ -1454,7 +1465,7 @@ checksum = "2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c"
1454
1465
 
1455
1466
  [[package]]
1456
1467
  name = "rumdl"
1457
- version = "0.0.90"
1468
+ version = "0.0.92"
1458
1469
  dependencies = [
1459
1470
  "anyhow",
1460
1471
  "assert_cmd",
@@ -1785,17 +1796,19 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20"
1785
1796
 
1786
1797
  [[package]]
1787
1798
  name = "tokio"
1788
- version = "1.45.1"
1799
+ version = "1.46.0"
1789
1800
  source = "registry+https://github.com/rust-lang/crates.io-index"
1790
- checksum = "75ef51a33ef1da925cea3e4eb122833cb377c61439ca401b770f54902b806779"
1801
+ checksum = "1140bb80481756a8cbe10541f37433b459c5aa1e727b4c020fbfebdc25bf3ec4"
1791
1802
  dependencies = [
1792
1803
  "backtrace",
1793
1804
  "bytes",
1805
+ "io-uring",
1794
1806
  "libc",
1795
1807
  "mio",
1796
1808
  "parking_lot",
1797
1809
  "pin-project-lite",
1798
1810
  "signal-hook-registry",
1811
+ "slab",
1799
1812
  "socket2",
1800
1813
  "tokio-macros",
1801
1814
  "windows-sys 0.52.0",
@@ -1,8 +1,8 @@
1
1
  [package]
2
2
  name = "rumdl"
3
- version = "0.0.90"
3
+ version = "0.0.92"
4
4
  edition = "2024"
5
- rust-version = "1.87.0"
5
+ rust-version = "1.88.0"
6
6
  description = "A fast Markdown linter written in Rust (Ru(st) MarkDown Linter)"
7
7
  authors = ["Ruben J. Jongejan <ruben.jongejan@gmail.com>"]
8
8
  license = "MIT"
@@ -1,4 +1,4 @@
1
- .PHONY: build test clean fmt check doc version-major version-minor version-patch build-python build-wheel dev-install setup-mise dev-setup dev-verify
1
+ .PHONY: build test clean fmt check doc version-major version-minor version-patch build-python build-wheel dev-install setup-mise dev-setup dev-verify update-dependencies update-rust-version pre-release
2
2
 
3
3
  # Development environment setup
4
4
  setup-mise:
@@ -248,3 +248,64 @@ trigger-pre-commit:
248
248
  -H "Authorization: Bearer $(PRECOMMIT_DISPATCH_TOKEN)" \
249
249
  https://api.github.com/repos/rvben/rumdl-pre-commit/dispatches \
250
250
  -d '{"event_type": "pypi_release"}'
251
+
252
+ # Dependency and version update targets
253
+ update-dependencies:
254
+ @echo "Updating Cargo dependencies to latest compatible versions..."
255
+ @cargo update
256
+ @echo "Dependencies updated in Cargo.lock"
257
+ @echo ""
258
+ @if command -v cargo-outdated >/dev/null 2>&1; then \
259
+ echo "Checking for available updates beyond current constraints:"; \
260
+ cargo outdated; \
261
+ else \
262
+ echo "Install cargo-outdated for more detailed update information:"; \
263
+ echo " cargo install cargo-outdated"; \
264
+ fi
265
+
266
+ update-rust-version:
267
+ @echo "Checking for latest stable Rust version..."
268
+ $(eval LATEST_RUST := $(shell curl -s https://api.github.com/repos/rust-lang/rust/releases/latest | grep '"tag_name":' | sed -E 's/.*"([0-9]+\.[0-9]+\.[0-9]+)".*/\1/' | head -1))
269
+ $(eval CURRENT_RUST := $(shell grep '^rust-version' Cargo.toml | sed -E 's/rust-version = "([0-9]+\.[0-9]+\.[0-9]+)"/\1/'))
270
+ @if [ -z "$(LATEST_RUST)" ]; then \
271
+ echo "Failed to fetch latest Rust version"; \
272
+ exit 1; \
273
+ fi
274
+ @echo "Current Rust version: $(CURRENT_RUST)"
275
+ @echo "Latest Rust version: $(LATEST_RUST)"
276
+ @if [ "$(CURRENT_RUST)" = "$(LATEST_RUST)" ]; then \
277
+ echo "Already using the latest Rust version"; \
278
+ else \
279
+ echo "Updating Rust version to $(LATEST_RUST)..."; \
280
+ sed -i.bak -E 's/^rust-version = "[0-9]+\.[0-9]+\.[0-9]+"/rust-version = "$(LATEST_RUST)"/' Cargo.toml; \
281
+ sed -i.bak -E 's/^rust = "[0-9]+\.[0-9]+\.[0-9]+"/rust = "$(LATEST_RUST)"/' .mise.toml; \
282
+ sed -i.bak -E 's/^channel = "[0-9]+\.[0-9]+\.[0-9]+"/channel = "$(LATEST_RUST)"/' rust-toolchain.toml; \
283
+ rm -f Cargo.toml.bak .mise.toml.bak rust-toolchain.toml.bak; \
284
+ echo "Updated Rust version in Cargo.toml, .mise.toml, and rust-toolchain.toml"; \
285
+ echo "Running 'cargo check' to verify compatibility..."; \
286
+ cargo check || (echo "Warning: cargo check failed. You may need to fix compatibility issues."; exit 1); \
287
+ fi
288
+
289
+ pre-release:
290
+ @echo "Preparing for release..."
291
+ @echo "===================="
292
+ @$(MAKE) update-rust-version
293
+ @echo ""
294
+ @$(MAKE) update-dependencies
295
+ @echo ""
296
+ @echo "Running tests to verify everything works..."
297
+ @$(MAKE) test-quick
298
+ @echo ""
299
+ @echo "Pre-release preparation complete!"
300
+ @echo "===================="
301
+ @echo ""
302
+ @echo "Summary of changes:"
303
+ @echo "- Rust version: $$(grep '^rust-version' Cargo.toml | sed -E 's/rust-version = "([0-9]+\.[0-9]+\.[0-9]+)"/\1/')"
304
+ @echo "- Dependencies: Updated to latest compatible versions"
305
+ @echo ""
306
+ @echo "Please review changes and commit if satisfied."
307
+
308
+ # Full release targets that include pre-release preparation
309
+ release-major-full: pre-release version-major version-push
310
+ release-minor-full: pre-release version-minor version-push
311
+ release-patch-full: pre-release version-patch version-push
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: rumdl
3
- Version: 0.0.90
3
+ Version: 0.0.92
4
4
  Classifier: Development Status :: 4 - Beta
5
5
  Classifier: Environment :: Console
6
6
  Classifier: Intended Audience :: Developers
@@ -48,41 +48,6 @@ Project-URL: Repository, https://github.com/rvben/rumdl.git
48
48
 
49
49
  </div>
50
50
 
51
- ## Table of Contents
52
-
53
- - [rumdl - A high-performance Markdown linter, written in Rust](#rumdl---a-high-performance-markdown-linter-written-in-rust)
54
- - [A modern Markdown linter and formatter, built for speed with Rust](#a-modern-markdown-linter-and-formatter-built-for-speed-with-rust)
55
- - [Table of Contents](#table-of-contents)
56
- - [Quick Start](#quick-start)
57
- - [Overview](#overview)
58
- - [Performance](#performance)
59
- - [Installation](#installation)
60
- - [Using Cargo (Rust)](#using-cargo-rust)
61
- - [Using pip (Python)](#using-pip-python)
62
- - [Download binary](#download-binary)
63
- - [VS Code Extension](#vs-code-extension)
64
- - [Usage](#usage)
65
- - [Pre-commit Integration](#pre-commit-integration)
66
- - [Rules](#rules)
67
- - [Command-line Interface](#command-line-interface)
68
- - [Commands](#commands)
69
- - [Usage Examples](#usage-examples)
70
- - [Configuration](#configuration)
71
- - [Configuration File Example](#configuration-file-example)
72
- - [Initializing Configuration](#initializing-configuration)
73
- - [Configuration in pyproject.toml](#configuration-in-pyprojecttoml)
74
- - [Configuration Output](#configuration-output)
75
- - [Effective Configuration (`rumdl config`)](#effective-configuration-rumdl-config)
76
- - [Example output](#example-output)
77
- - [Defaults Only (`rumdl config --defaults`)](#defaults-only-rumdl-config---defaults)
78
- - [Output Style](#output-style)
79
- - [Output Format](#output-format)
80
- - [Development](#development)
81
- - [Prerequisites](#prerequisites)
82
- - [Building](#building)
83
- - [Testing](#testing)
84
- - [License](#license)
85
-
86
51
  ## Quick Start
87
52
 
88
53
  ```bash
@@ -101,7 +66,9 @@ rumdl init
101
66
 
102
67
  ## Overview
103
68
 
104
- rumdl is a high-performance Markdown linter and fixer that helps ensure consistency and best practices in your Markdown files. It offers:
69
+ rumdl is a high-performance Markdown linter and fixer that helps ensure consistency and best practices in your Markdown files. Inspired by [ruff](https://github.com/astral-sh/ruff)'s approach to Python linting, rumdl brings similar speed and developer experience improvements to the Markdown ecosystem.
70
+
71
+ It offers:
105
72
 
106
73
  - ⚡️ **Built for speed** with Rust - significantly faster than alternatives
107
74
  - 🔍 **54 lint rules** covering common Markdown issues
@@ -113,13 +80,37 @@ rumdl is a high-performance Markdown linter and fixer that helps ensure consiste
113
80
  - 📏 **Modern CLI** with detailed error reporting
114
81
  - 🔄 **CI/CD friendly** with non-zero exit code on errors
115
82
 
116
- ## Performance
117
-
118
- rumdl is designed for speed and efficiency:
119
-
120
- ![Performance Comparison](assets/performance_overview.png)
83
+ ## Table of Contents
121
84
 
122
- rumdl is **4.3x faster** on average than markdownlint for typical markdown files, with performance improvements ranging from 3.4x to 5.4x depending on project size.
85
+ - [Quick Start](#quick-start)
86
+ - [Overview](#overview)
87
+ - [Installation](#installation)
88
+ - [Using Cargo (Rust)](#using-cargo-rust)
89
+ - [Using pip (Python)](#using-pip-python)
90
+ - [Using uv](#using-uv)
91
+ - [Download binary](#download-binary)
92
+ - [VS Code Extension](#vs-code-extension)
93
+ - [Usage](#usage)
94
+ - [Pre-commit Integration](#pre-commit-integration)
95
+ - [Rules](#rules)
96
+ - [Command-line Interface](#command-line-interface)
97
+ - [Commands](#commands)
98
+ - [Usage Examples](#usage-examples)
99
+ - [Configuration](#configuration)
100
+ - [Configuration File Example](#configuration-file-example)
101
+ - [Initializing Configuration](#initializing-configuration)
102
+ - [Configuration in pyproject.toml](#configuration-in-pyprojecttoml)
103
+ - [Configuration Output](#configuration-output)
104
+ - [Effective Configuration (`rumdl config`)](#effective-configuration-rumdl-config)
105
+ - [Example output](#example-output)
106
+ - [Defaults Only (`rumdl config --defaults`)](#defaults-only-rumdl-config---defaults)
107
+ - [Output Style](#output-style)
108
+ - [Output Format](#output-format)
109
+ - [Development](#development)
110
+ - [Prerequisites](#prerequisites)
111
+ - [Building](#building)
112
+ - [Testing](#testing)
113
+ - [License](#license)
123
114
 
124
115
  ## Installation
125
116
 
@@ -137,6 +128,18 @@ cargo install rumdl
137
128
  pip install rumdl
138
129
  ```
139
130
 
131
+ ### Using uv
132
+
133
+ For faster installation and better dependency management with [uv](https://github.com/astral-sh/uv):
134
+
135
+ ```bash
136
+ # Install directly
137
+ uv tool install rumdl
138
+
139
+ # Or run without installing
140
+ uv tool run rumdl check .
141
+ ```
142
+
140
143
  ### Download binary
141
144
 
142
145
  ```bash
@@ -164,6 +167,7 @@ rumdl vscode --force
164
167
  ```
165
168
 
166
169
  The extension provides:
170
+
167
171
  - 🔍 Real-time linting as you type
168
172
  - 💡 Quick fixes for common issues
169
173
  - 🎨 Code formatting on save
@@ -275,9 +279,11 @@ rumdl <command> [options] [file or directory...]
275
279
  Lint Markdown files and print warnings/errors (main subcommand)
276
280
 
277
281
  **Arguments:**
282
+
278
283
  - `[PATHS...]`: Files or directories to lint. If provided, these paths take precedence over include patterns
279
284
 
280
285
  **Options:**
286
+
281
287
  - `-f, --fix`: Automatically fix issues where possible
282
288
  - `-l, --list-rules`: List all available rules
283
289
  - `-d, --disable <rules>`: Disable specific rules (comma-separated)
@@ -297,6 +303,7 @@ Lint Markdown files and print warnings/errors (main subcommand)
297
303
  Create a default configuration file in the current directory
298
304
 
299
305
  **Options:**
306
+
300
307
  - `--pyproject`: Generate configuration for `pyproject.toml` instead of `.rumdl.toml`
301
308
 
302
309
  #### `import <FILE> [OPTIONS]`
@@ -304,9 +311,11 @@ Create a default configuration file in the current directory
304
311
  Import and convert markdownlint configuration files to rumdl format
305
312
 
306
313
  **Arguments:**
314
+
307
315
  - `<FILE>`: Path to markdownlint config file (JSON/YAML)
308
316
 
309
317
  **Options:**
318
+
310
319
  - `-o, --output <path>`: Output file path (default: `.rumdl.toml`)
311
320
  - `--format <format>`: Output format: `toml` or `json` (default: `toml`)
312
321
  - `--dry-run`: Show converted config without writing to file
@@ -316,6 +325,7 @@ Import and convert markdownlint configuration files to rumdl format
316
325
  Show information about a rule or list all rules
317
326
 
318
327
  **Arguments:**
328
+
319
329
  - `[rule]`: Rule name or ID (optional). If provided, shows details for that rule. If omitted, lists all available rules
320
330
 
321
331
  #### `config [OPTIONS] [COMMAND]`
@@ -323,10 +333,12 @@ Show information about a rule or list all rules
323
333
  Show configuration or query a specific key
324
334
 
325
335
  **Options:**
336
+
326
337
  - `--defaults`: Show only the default configuration values
327
338
  - `--output <format>`: Output format (e.g. `toml`, `json`)
328
339
 
329
340
  **Subcommands:**
341
+
330
342
  - `get <key>`: Query a specific config key (e.g. `global.exclude` or `MD013.line_length`)
331
343
  - `file`: Show the absolute path of the configuration file that was loaded
332
344
 
@@ -335,6 +347,7 @@ Show configuration or query a specific key
335
347
  Start the Language Server Protocol server for editor integration
336
348
 
337
349
  **Options:**
350
+
338
351
  - `--port <PORT>`: TCP port to listen on (for debugging)
339
352
  - `--stdio`: Use stdio for communication (default)
340
353
  - `-v, --verbose`: Enable verbose logging
@@ -344,6 +357,7 @@ Start the Language Server Protocol server for editor integration
344
357
  Install the rumdl VS Code extension
345
358
 
346
359
  **Options:**
360
+
347
361
  - `--force`: Force reinstall even if already installed
348
362
  - `--status`: Show installation status without installing
349
363
 
@@ -431,6 +445,7 @@ rumdl can be configured in several ways:
431
445
  rumdl provides seamless compatibility with existing markdownlint configurations:
432
446
 
433
447
  **Automatic Discovery**: rumdl automatically detects and loads markdownlint config files:
448
+
434
449
  - `.markdownlint.json` / `.markdownlint.jsonc`
435
450
  - `.markdownlint.yaml` / `.markdownlint.yml`
436
451
  - `markdownlint.json` / `markdownlint.yaml`
@@ -17,41 +17,6 @@
17
17
 
18
18
  </div>
19
19
 
20
- ## Table of Contents
21
-
22
- - [rumdl - A high-performance Markdown linter, written in Rust](#rumdl---a-high-performance-markdown-linter-written-in-rust)
23
- - [A modern Markdown linter and formatter, built for speed with Rust](#a-modern-markdown-linter-and-formatter-built-for-speed-with-rust)
24
- - [Table of Contents](#table-of-contents)
25
- - [Quick Start](#quick-start)
26
- - [Overview](#overview)
27
- - [Performance](#performance)
28
- - [Installation](#installation)
29
- - [Using Cargo (Rust)](#using-cargo-rust)
30
- - [Using pip (Python)](#using-pip-python)
31
- - [Download binary](#download-binary)
32
- - [VS Code Extension](#vs-code-extension)
33
- - [Usage](#usage)
34
- - [Pre-commit Integration](#pre-commit-integration)
35
- - [Rules](#rules)
36
- - [Command-line Interface](#command-line-interface)
37
- - [Commands](#commands)
38
- - [Usage Examples](#usage-examples)
39
- - [Configuration](#configuration)
40
- - [Configuration File Example](#configuration-file-example)
41
- - [Initializing Configuration](#initializing-configuration)
42
- - [Configuration in pyproject.toml](#configuration-in-pyprojecttoml)
43
- - [Configuration Output](#configuration-output)
44
- - [Effective Configuration (`rumdl config`)](#effective-configuration-rumdl-config)
45
- - [Example output](#example-output)
46
- - [Defaults Only (`rumdl config --defaults`)](#defaults-only-rumdl-config---defaults)
47
- - [Output Style](#output-style)
48
- - [Output Format](#output-format)
49
- - [Development](#development)
50
- - [Prerequisites](#prerequisites)
51
- - [Building](#building)
52
- - [Testing](#testing)
53
- - [License](#license)
54
-
55
20
  ## Quick Start
56
21
 
57
22
  ```bash
@@ -70,7 +35,9 @@ rumdl init
70
35
 
71
36
  ## Overview
72
37
 
73
- rumdl is a high-performance Markdown linter and fixer that helps ensure consistency and best practices in your Markdown files. It offers:
38
+ rumdl is a high-performance Markdown linter and fixer that helps ensure consistency and best practices in your Markdown files. Inspired by [ruff](https://github.com/astral-sh/ruff)'s approach to Python linting, rumdl brings similar speed and developer experience improvements to the Markdown ecosystem.
39
+
40
+ It offers:
74
41
 
75
42
  - ⚡️ **Built for speed** with Rust - significantly faster than alternatives
76
43
  - 🔍 **54 lint rules** covering common Markdown issues
@@ -82,13 +49,37 @@ rumdl is a high-performance Markdown linter and fixer that helps ensure consiste
82
49
  - 📏 **Modern CLI** with detailed error reporting
83
50
  - 🔄 **CI/CD friendly** with non-zero exit code on errors
84
51
 
85
- ## Performance
86
-
87
- rumdl is designed for speed and efficiency:
88
-
89
- ![Performance Comparison](assets/performance_overview.png)
52
+ ## Table of Contents
90
53
 
91
- rumdl is **4.3x faster** on average than markdownlint for typical markdown files, with performance improvements ranging from 3.4x to 5.4x depending on project size.
54
+ - [Quick Start](#quick-start)
55
+ - [Overview](#overview)
56
+ - [Installation](#installation)
57
+ - [Using Cargo (Rust)](#using-cargo-rust)
58
+ - [Using pip (Python)](#using-pip-python)
59
+ - [Using uv](#using-uv)
60
+ - [Download binary](#download-binary)
61
+ - [VS Code Extension](#vs-code-extension)
62
+ - [Usage](#usage)
63
+ - [Pre-commit Integration](#pre-commit-integration)
64
+ - [Rules](#rules)
65
+ - [Command-line Interface](#command-line-interface)
66
+ - [Commands](#commands)
67
+ - [Usage Examples](#usage-examples)
68
+ - [Configuration](#configuration)
69
+ - [Configuration File Example](#configuration-file-example)
70
+ - [Initializing Configuration](#initializing-configuration)
71
+ - [Configuration in pyproject.toml](#configuration-in-pyprojecttoml)
72
+ - [Configuration Output](#configuration-output)
73
+ - [Effective Configuration (`rumdl config`)](#effective-configuration-rumdl-config)
74
+ - [Example output](#example-output)
75
+ - [Defaults Only (`rumdl config --defaults`)](#defaults-only-rumdl-config---defaults)
76
+ - [Output Style](#output-style)
77
+ - [Output Format](#output-format)
78
+ - [Development](#development)
79
+ - [Prerequisites](#prerequisites)
80
+ - [Building](#building)
81
+ - [Testing](#testing)
82
+ - [License](#license)
92
83
 
93
84
  ## Installation
94
85
 
@@ -106,6 +97,18 @@ cargo install rumdl
106
97
  pip install rumdl
107
98
  ```
108
99
 
100
+ ### Using uv
101
+
102
+ For faster installation and better dependency management with [uv](https://github.com/astral-sh/uv):
103
+
104
+ ```bash
105
+ # Install directly
106
+ uv tool install rumdl
107
+
108
+ # Or run without installing
109
+ uv tool run rumdl check .
110
+ ```
111
+
109
112
  ### Download binary
110
113
 
111
114
  ```bash
@@ -133,6 +136,7 @@ rumdl vscode --force
133
136
  ```
134
137
 
135
138
  The extension provides:
139
+
136
140
  - 🔍 Real-time linting as you type
137
141
  - 💡 Quick fixes for common issues
138
142
  - 🎨 Code formatting on save
@@ -244,9 +248,11 @@ rumdl <command> [options] [file or directory...]
244
248
  Lint Markdown files and print warnings/errors (main subcommand)
245
249
 
246
250
  **Arguments:**
251
+
247
252
  - `[PATHS...]`: Files or directories to lint. If provided, these paths take precedence over include patterns
248
253
 
249
254
  **Options:**
255
+
250
256
  - `-f, --fix`: Automatically fix issues where possible
251
257
  - `-l, --list-rules`: List all available rules
252
258
  - `-d, --disable <rules>`: Disable specific rules (comma-separated)
@@ -266,6 +272,7 @@ Lint Markdown files and print warnings/errors (main subcommand)
266
272
  Create a default configuration file in the current directory
267
273
 
268
274
  **Options:**
275
+
269
276
  - `--pyproject`: Generate configuration for `pyproject.toml` instead of `.rumdl.toml`
270
277
 
271
278
  #### `import <FILE> [OPTIONS]`
@@ -273,9 +280,11 @@ Create a default configuration file in the current directory
273
280
  Import and convert markdownlint configuration files to rumdl format
274
281
 
275
282
  **Arguments:**
283
+
276
284
  - `<FILE>`: Path to markdownlint config file (JSON/YAML)
277
285
 
278
286
  **Options:**
287
+
279
288
  - `-o, --output <path>`: Output file path (default: `.rumdl.toml`)
280
289
  - `--format <format>`: Output format: `toml` or `json` (default: `toml`)
281
290
  - `--dry-run`: Show converted config without writing to file
@@ -285,6 +294,7 @@ Import and convert markdownlint configuration files to rumdl format
285
294
  Show information about a rule or list all rules
286
295
 
287
296
  **Arguments:**
297
+
288
298
  - `[rule]`: Rule name or ID (optional). If provided, shows details for that rule. If omitted, lists all available rules
289
299
 
290
300
  #### `config [OPTIONS] [COMMAND]`
@@ -292,10 +302,12 @@ Show information about a rule or list all rules
292
302
  Show configuration or query a specific key
293
303
 
294
304
  **Options:**
305
+
295
306
  - `--defaults`: Show only the default configuration values
296
307
  - `--output <format>`: Output format (e.g. `toml`, `json`)
297
308
 
298
309
  **Subcommands:**
310
+
299
311
  - `get <key>`: Query a specific config key (e.g. `global.exclude` or `MD013.line_length`)
300
312
  - `file`: Show the absolute path of the configuration file that was loaded
301
313
 
@@ -304,6 +316,7 @@ Show configuration or query a specific key
304
316
  Start the Language Server Protocol server for editor integration
305
317
 
306
318
  **Options:**
319
+
307
320
  - `--port <PORT>`: TCP port to listen on (for debugging)
308
321
  - `--stdio`: Use stdio for communication (default)
309
322
  - `-v, --verbose`: Enable verbose logging
@@ -313,6 +326,7 @@ Start the Language Server Protocol server for editor integration
313
326
  Install the rumdl VS Code extension
314
327
 
315
328
  **Options:**
329
+
316
330
  - `--force`: Force reinstall even if already installed
317
331
  - `--status`: Show installation status without installing
318
332
 
@@ -400,6 +414,7 @@ rumdl can be configured in several ways:
400
414
  rumdl provides seamless compatibility with existing markdownlint configurations:
401
415
 
402
416
  **Automatic Discovery**: rumdl automatically detects and loads markdownlint config files:
417
+
403
418
  - `.markdownlint.json` / `.markdownlint.jsonc`
404
419
  - `.markdownlint.yaml` / `.markdownlint.yml`
405
420
  - `markdownlint.json` / `markdownlint.yaml`