rumdl 0.0.154__tar.gz → 0.0.155__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.
- {rumdl-0.0.154 → rumdl-0.0.155}/Cargo.lock +1 -113
- {rumdl-0.0.154 → rumdl-0.0.155}/Cargo.toml +2 -8
- {rumdl-0.0.154 → rumdl-0.0.155}/PKG-INFO +1 -1
- {rumdl-0.0.154 → rumdl-0.0.155}/pyproject.toml +1 -1
- rumdl-0.0.155/rumdl/__init__.py +11 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/lib.rs +0 -3
- {rumdl-0.0.154 → rumdl-0.0.155}/src/vscode.rs +1 -5
- rumdl-0.0.154/python/MANIFEST.in +0 -9
- rumdl-0.0.154/python/PYTHON-README.md +0 -57
- rumdl-0.0.154/python/rumdl/__init__.py +0 -5
- rumdl-0.0.154/src/python.rs +0 -246
- rumdl-0.0.154/tests/python_bindings_test.rs +0 -40
- {rumdl-0.0.154 → rumdl-0.0.155}/.config/nextest.toml +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/.mise.toml +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/.pre-commit-config.yaml +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/.rumdl.toml +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/.rustfmt.toml +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/CHANGELOG.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/LICENSE +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/MANIFEST.in +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/Makefile +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/README.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/assets/logo.png +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/benches/fix_performance.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/benches/range_performance.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/benches/range_utils_benchmark.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/benches/rule_performance.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/benches/simple_fix_bench.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/benchmark/bin/bench_lint_context.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/benchmark/bin/benchmark.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/benchmark/bin/benchmark_rule.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/benchmark/bin/file_parallel_benchmark.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/benchmark/bin/measure_code_span_performance.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/LINTCONTEXT_OPTIMIZATION_PLAN.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/LINTCONTEXT_OPTIMIZATION_SUMMARY.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/LINTCONTEXT_PERFORMANCE_ANALYSIS.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/PHASE_2_OPTIMIZATION_COMPLETE.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/PHASE_3_OPTIMIZATION_COMPLETE.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/RULES.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/global-settings.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/inline-configuration.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/md001.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/md002.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/md003.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/md004.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/md005.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/md006.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/md007.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/md009.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/md010.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/md011.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/md012.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/md013.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/md014.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/md018.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/md019.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/md020.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/md021.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/md022.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/md023.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/md024.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/md025.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/md026.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/md027.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/md028.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/md029.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/md030.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/md031.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/md032.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/md033.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/md034.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/md035.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/md036.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/md037.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/md038.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/md039.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/md040.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/md041.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/md042.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/md043.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/md044.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/md045.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/md046.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/md047.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/md048.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/md049.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/md050.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/md051.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/md052.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/md053.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/md054.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/md055.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/md056.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/md057.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/md058.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/docs/vscode-extension.md +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/parity_check.py +0 -0
- {rumdl-0.0.154/python → rumdl-0.0.155}/rumdl/__main__.py +0 -0
- {rumdl-0.0.154/python → rumdl-0.0.155}/rumdl/py.typed +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/rumdl.schema.json +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/rumdl.toml.example +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/rust-toolchain.toml +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/scripts/extract-changelog.sh +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/scripts/generate-downloads-table.sh +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/scripts/pre-release.sh +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/scripts/prepare-release.sh +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/scripts/setup-pre-commit.sh +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/scripts/update-pre-commit-docs.sh +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/config.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/exit_codes.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/fix_coordinator.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/inline_config.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/lint_context.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/lsp/mod.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/lsp/server.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/lsp/types.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/main.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/markdownlint_config.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/output/formatters/azure.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/output/formatters/concise.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/output/formatters/github.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/output/formatters/gitlab.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/output/formatters/grouped.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/output/formatters/json.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/output/formatters/json_lines.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/output/formatters/junit.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/output/formatters/mod.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/output/formatters/pylint.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/output/formatters/sarif.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/output/formatters/text.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/output/mod.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/parallel.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/performance.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/profiling.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rule.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rule_config.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rule_config_serde.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/blockquote_utils.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/code_block_utils.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/code_fence_utils.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/emphasis_style.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/front_matter_utils.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/heading_utils.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/list_utils.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md001_heading_increment.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md002_first_heading_h1/md002_config.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md002_first_heading_h1.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md003_heading_style/md003_config.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md003_heading_style.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md004_unordered_list_style/md004_config.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md004_unordered_list_style.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md005_list_indent.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md006_start_bullets.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md007_ul_indent/md007_config.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md007_ul_indent.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md009_trailing_spaces/md009_config.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md009_trailing_spaces.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md010_no_hard_tabs/md010_config.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md010_no_hard_tabs.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md011_no_reversed_links.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md012_no_multiple_blanks/md012_config.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md012_no_multiple_blanks.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md013_line_length/md013_config.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md013_line_length.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md014_commands_show_output/md014_config.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md014_commands_show_output.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md018_no_missing_space_atx.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md019_no_multiple_space_atx.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md020_no_missing_space_closed_atx.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md021_no_multiple_space_closed_atx.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md022_blanks_around_headings/md022_config.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md022_blanks_around_headings.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md023_heading_start_left.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md024_no_duplicate_heading/md024_config.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md024_no_duplicate_heading.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md025_single_title/md025_config.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md025_single_title.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md026_no_trailing_punctuation/md026_config.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md026_no_trailing_punctuation.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md027_multiple_spaces_blockquote.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md028_no_blanks_blockquote.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md029_ordered_list_prefix/md029_config.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md029_ordered_list_prefix.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md030_list_marker_space/md030_config.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md030_list_marker_space.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md031_blanks_around_fences.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md032_blanks_around_lists.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md033_no_inline_html/md033_config.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md033_no_inline_html.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md034_no_bare_urls.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md035_hr_style/md035_config.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md035_hr_style.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md036_no_emphasis_only_first/md036_config.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md036_no_emphasis_only_first.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md037_spaces_around_emphasis.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md038_no_space_in_code.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md039_no_space_in_links.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md040_fenced_code_language.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md041_first_line_heading.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md042_no_empty_links.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md043_required_headings.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md044_proper_names/md044_config.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md044_proper_names.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md045_no_alt_text/md045_config.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md045_no_alt_text.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md046_code_block_style/md046_config.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md046_code_block_style.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md047_single_trailing_newline.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md048_code_fence_style/md048_config.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md048_code_fence_style.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md049_emphasis_style/md049_config.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md049_emphasis_style.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md050_strong_style/md050_config.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md050_strong_style.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md051_link_fragments.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md052_reference_links_images.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md053_link_image_reference_definitions.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md054_link_image_style/md054_config.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md054_link_image_style.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md055_table_pipe_style/md055_config.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md055_table_pipe_style.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md056_table_column_count.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md057_existing_relative_links/md057_config.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md057_existing_relative_links.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/md058_blanks_around_tables.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/mod.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/rules/strong_style.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/utils/anchor_styles/github.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/utils/anchor_styles/jekyll.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/utils/anchor_styles/kramdown.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/utils/anchor_styles/kramdown_gfm.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/utils/anchor_styles/mod.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/utils/ast_utils.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/utils/code_block_utils.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/utils/document_structure.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/utils/early_returns.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/utils/element_cache.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/utils/emphasis_utils.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/utils/fix_utils.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/utils/header_id_utils.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/utils/jinja_utils.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/utils/kramdown_utils.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/utils/line_ending.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/utils/markdown_elements.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/utils/mkdocs_admonitions.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/utils/mkdocs_common.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/utils/mkdocs_critic.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/utils/mkdocs_footnotes.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/utils/mkdocs_patterns.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/utils/mkdocs_snippets.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/utils/mkdocs_tabs.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/utils/mkdocs_test_utils.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/utils/mkdocstrings_refs.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/utils/mod.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/utils/range_utils.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/utils/regex_cache.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/utils/skip_context.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/utils/string_interner.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/utils/table_utils.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/src/utils/text_reflow.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/advanced_integration_tests.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/character_ranges/additional_tests.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/character_ranges/basic_tests.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/character_ranges/comprehensive_tests.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/character_ranges/extended_tests.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/character_ranges/mod.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/character_ranges/unicode_utils.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/cli_duplication_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/cli_explain_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/cli_flag_precedence_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/cli_integration_tests.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/cli_lsp_fix_consistency.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/cli_statistics_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/common/cli_test_utils.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/common/fixtures.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/common/mod.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/common/test_utils.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/commonmark_compliance_tests.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/comprehensive_integration_tests.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/comprehensive_output_format_tests.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/config_application_tests.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/config_file_command_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/config_tests.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/config_upward_traversal_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/configuration_inheritance_tests.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/consistency_regression_tests.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/cross_platform_compatibility_tests.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/deeply_nested_lists_performance_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/escaped_brackets_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/final_confidence_assessment.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/fix_counting_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/fix_performance_baseline_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/fixable_unfixable_config_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/init_command_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/init_tests.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/inline_config_blocks_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/inline_config_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/integration_tests.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/json_output_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/kramdown_integration_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/lib.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/lsp_editor_integration_tests.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/lsp_formatting_tests.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/lsp_initialization_options_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/lsp_integration_tests.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/lsp_memory_leak_tests.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/lsp_mkdocs_flavor_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/lsp_tests.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/lsp_unopened_document_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/malformed_markdown_stress_tests.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/markdownlint_cli_integration.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/markdownlint_config_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/markdownlintignore_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/md009_md013_integration_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/md009_md013_order_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/md013_hard_breaks_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/md013_reflow_integration_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/md032_edge_cases_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/md032_ordered_list_bug_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/md033_edge_cases_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/md037_xxxx_regression_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/md038_false_positive_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/md051_issue_39_regression_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/md051_readme_bug_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/md051_toc_bug_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/md052_literal_brackets_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/md054_code_span_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/nested_code_block_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/output_format_integration_tests.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/output_format_tests.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/per_file_ignores_integration_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/perf_check.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/performance_validation_tests.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/pyproject_config_tests.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/real_world_repository_tests.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/regression_prevention_tests.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/emphasis_edge_cases_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/heading_edge_cases_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/inline_content_edge_cases_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/link_edge_cases_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/list_rules_integration_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md001_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md001_unicode_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md002_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md003_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md004_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md005_dynamic_indent_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md005_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md005_unicode_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md006_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md006_unicode_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md007_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md009_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md010_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md011_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md012_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md013_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md014_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md018_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md019_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md020_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md021_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md022_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md023_extended_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md023_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md024_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md025_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md026_kramdown_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md026_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md027_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md028_md009_interaction_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md028_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md029_code_block_separation_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md029_fix_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md029_issue42_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md029_markdownlint_parity_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md029_pathological_edge_cases_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md029_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md029_unicode_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md030_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md031_kramdown_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md031_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md032_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md033_extended_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md033_kramdown_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md033_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md034_ipv6_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md034_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md035_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md036_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md037_kramdown_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md037_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md038_nested_backticks_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md038_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md039_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md040_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md041_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md042_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md043_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md044_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md045_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md046_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md047_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md048_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md049_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md050_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md051_comprehensive_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md051_critical_edge_cases_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md051_edge_cases_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md051_issue_39_regression_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md051_performance_edge_cases_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md051_property_based_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md051_regression_prevention_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md051_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md051_unicode_security_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md052_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md053_additional_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md053_proptest.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md053_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md054_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md054_unicode_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md055_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md056_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md057_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md058_kramdown_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/md058_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/mkdocs_admonitions_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/mkdocs_edge_cases_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/mkdocs_extensions_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/mkdocs_snippets_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/mod.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules/rule_interaction_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/rules_mod_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/sentence_per_line_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/skip_context_tests.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/test_ast_code_block_issue.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/test_gfm_vs_default_parsing.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/test_lint_context_flow.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/test_list_ast_structure.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/test_multiline_ast.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/test_underscore_edge_cases.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/thread_safety_tests.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/unfixable_rules_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/unicode_edge_case_tests.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/utf8_boundary_tests.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/utils/blockquote_utils_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/utils/code_block_utils_extended_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/utils/code_block_utils_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/utils/core_utils_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/utils/front_matter_utils_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/utils/line_index_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/utils/mod.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/utils_markdown_edge_cases.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/utils_tests.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/vscode_extension_fixes.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/vscode_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/vscode_tests.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/vscode_windows_comprehensive_test.rs +0 -0
- {rumdl-0.0.154 → rumdl-0.0.155}/tests/vscode_windows_test.rs +0 -0
|
@@ -901,12 +901,6 @@ dependencies = [
|
|
|
901
901
|
"hashbrown 0.16.0",
|
|
902
902
|
]
|
|
903
903
|
|
|
904
|
-
[[package]]
|
|
905
|
-
name = "indoc"
|
|
906
|
-
version = "2.0.6"
|
|
907
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
908
|
-
checksum = "f4c7245a08504955605670dbf141fceab975f15ca21570696aebe9d2e71576bd"
|
|
909
|
-
|
|
910
904
|
[[package]]
|
|
911
905
|
name = "inotify"
|
|
912
906
|
version = "0.9.6"
|
|
@@ -1131,15 +1125,6 @@ dependencies = [
|
|
|
1131
1125
|
"libc",
|
|
1132
1126
|
]
|
|
1133
1127
|
|
|
1134
|
-
[[package]]
|
|
1135
|
-
name = "memoffset"
|
|
1136
|
-
version = "0.9.1"
|
|
1137
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1138
|
-
checksum = "488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a"
|
|
1139
|
-
dependencies = [
|
|
1140
|
-
"autocfg",
|
|
1141
|
-
]
|
|
1142
|
-
|
|
1143
1128
|
[[package]]
|
|
1144
1129
|
name = "mimalloc"
|
|
1145
1130
|
version = "0.1.48"
|
|
@@ -1462,69 +1447,6 @@ version = "0.11.0"
|
|
|
1462
1447
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1463
1448
|
checksum = "007d8adb5ddab6f8e3f491ac63566a7d5002cc7ed73901f72057943fa71ae1ae"
|
|
1464
1449
|
|
|
1465
|
-
[[package]]
|
|
1466
|
-
name = "pyo3"
|
|
1467
|
-
version = "0.24.2"
|
|
1468
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1469
|
-
checksum = "e5203598f366b11a02b13aa20cab591229ff0a89fd121a308a5df751d5fc9219"
|
|
1470
|
-
dependencies = [
|
|
1471
|
-
"cfg-if",
|
|
1472
|
-
"indoc",
|
|
1473
|
-
"libc",
|
|
1474
|
-
"memoffset",
|
|
1475
|
-
"once_cell",
|
|
1476
|
-
"portable-atomic",
|
|
1477
|
-
"pyo3-build-config",
|
|
1478
|
-
"pyo3-ffi",
|
|
1479
|
-
"pyo3-macros",
|
|
1480
|
-
"unindent",
|
|
1481
|
-
]
|
|
1482
|
-
|
|
1483
|
-
[[package]]
|
|
1484
|
-
name = "pyo3-build-config"
|
|
1485
|
-
version = "0.24.2"
|
|
1486
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1487
|
-
checksum = "99636d423fa2ca130fa5acde3059308006d46f98caac629418e53f7ebb1e9999"
|
|
1488
|
-
dependencies = [
|
|
1489
|
-
"once_cell",
|
|
1490
|
-
"target-lexicon",
|
|
1491
|
-
]
|
|
1492
|
-
|
|
1493
|
-
[[package]]
|
|
1494
|
-
name = "pyo3-ffi"
|
|
1495
|
-
version = "0.24.2"
|
|
1496
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1497
|
-
checksum = "78f9cf92ba9c409279bc3305b5409d90db2d2c22392d443a87df3a1adad59e33"
|
|
1498
|
-
dependencies = [
|
|
1499
|
-
"libc",
|
|
1500
|
-
"pyo3-build-config",
|
|
1501
|
-
]
|
|
1502
|
-
|
|
1503
|
-
[[package]]
|
|
1504
|
-
name = "pyo3-macros"
|
|
1505
|
-
version = "0.24.2"
|
|
1506
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1507
|
-
checksum = "0b999cb1a6ce21f9a6b147dcf1be9ffedf02e0043aec74dc390f3007047cecd9"
|
|
1508
|
-
dependencies = [
|
|
1509
|
-
"proc-macro2",
|
|
1510
|
-
"pyo3-macros-backend",
|
|
1511
|
-
"quote",
|
|
1512
|
-
"syn",
|
|
1513
|
-
]
|
|
1514
|
-
|
|
1515
|
-
[[package]]
|
|
1516
|
-
name = "pyo3-macros-backend"
|
|
1517
|
-
version = "0.24.2"
|
|
1518
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1519
|
-
checksum = "822ece1c7e1012745607d5cf0bcb2874769f0f7cb34c4cde03b9358eb9ef911a"
|
|
1520
|
-
dependencies = [
|
|
1521
|
-
"heck",
|
|
1522
|
-
"proc-macro2",
|
|
1523
|
-
"pyo3-build-config",
|
|
1524
|
-
"quote",
|
|
1525
|
-
"syn",
|
|
1526
|
-
]
|
|
1527
|
-
|
|
1528
1450
|
[[package]]
|
|
1529
1451
|
name = "quick-error"
|
|
1530
1452
|
version = "1.2.3"
|
|
@@ -1644,7 +1566,7 @@ checksum = "caf4aa5b0f434c91fe5c7f1ecb6a5ece2130b02ad2a590589dda5146df959001"
|
|
|
1644
1566
|
|
|
1645
1567
|
[[package]]
|
|
1646
1568
|
name = "rumdl"
|
|
1647
|
-
version = "0.0.
|
|
1569
|
+
version = "0.0.155"
|
|
1648
1570
|
dependencies = [
|
|
1649
1571
|
"anyhow",
|
|
1650
1572
|
"assert_cmd",
|
|
@@ -1671,12 +1593,10 @@ dependencies = [
|
|
|
1671
1593
|
"pretty_assertions",
|
|
1672
1594
|
"proptest",
|
|
1673
1595
|
"pulldown-cmark",
|
|
1674
|
-
"pyo3",
|
|
1675
1596
|
"rand",
|
|
1676
1597
|
"rayon",
|
|
1677
1598
|
"regex",
|
|
1678
1599
|
"schemars",
|
|
1679
|
-
"seahash",
|
|
1680
1600
|
"serde",
|
|
1681
1601
|
"serde_json",
|
|
1682
1602
|
"serde_yaml",
|
|
@@ -1691,8 +1611,6 @@ dependencies = [
|
|
|
1691
1611
|
"tower 0.5.2",
|
|
1692
1612
|
"tower-lsp",
|
|
1693
1613
|
"tower-service",
|
|
1694
|
-
"unicode-bidi",
|
|
1695
|
-
"unicode-blocks",
|
|
1696
1614
|
"unicode-normalization",
|
|
1697
1615
|
"unicode-segmentation",
|
|
1698
1616
|
"unicode-width",
|
|
@@ -1781,12 +1699,6 @@ version = "1.2.0"
|
|
|
1781
1699
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1782
1700
|
checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"
|
|
1783
1701
|
|
|
1784
|
-
[[package]]
|
|
1785
|
-
name = "seahash"
|
|
1786
|
-
version = "4.1.0"
|
|
1787
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1788
|
-
checksum = "1c107b6f4780854c8b126e228ea8869f4d7b71260f962fefb57b996b8959ba6b"
|
|
1789
|
-
|
|
1790
1702
|
[[package]]
|
|
1791
1703
|
name = "serde"
|
|
1792
1704
|
version = "1.0.226"
|
|
@@ -1945,12 +1857,6 @@ dependencies = [
|
|
|
1945
1857
|
"syn",
|
|
1946
1858
|
]
|
|
1947
1859
|
|
|
1948
|
-
[[package]]
|
|
1949
|
-
name = "target-lexicon"
|
|
1950
|
-
version = "0.13.3"
|
|
1951
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1952
|
-
checksum = "df7f62577c25e07834649fc3b39fafdc597c0a3527dc1c60129201ccfcbaa50c"
|
|
1953
|
-
|
|
1954
1860
|
[[package]]
|
|
1955
1861
|
name = "tempfile"
|
|
1956
1862
|
version = "3.22.0"
|
|
@@ -2243,18 +2149,6 @@ version = "2.8.1"
|
|
|
2243
2149
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
2244
2150
|
checksum = "75b844d17643ee918803943289730bec8aac480150456169e647ed0b576ba539"
|
|
2245
2151
|
|
|
2246
|
-
[[package]]
|
|
2247
|
-
name = "unicode-bidi"
|
|
2248
|
-
version = "0.3.18"
|
|
2249
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
2250
|
-
checksum = "5c1cb5db39152898a79168971543b1cb5020dff7fe43c8dc468b0885f5e29df5"
|
|
2251
|
-
|
|
2252
|
-
[[package]]
|
|
2253
|
-
name = "unicode-blocks"
|
|
2254
|
-
version = "0.1.9"
|
|
2255
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
2256
|
-
checksum = "6b12e05d9e06373163a9bb6bb8c263c261b396643a99445fe6b9811fd376581b"
|
|
2257
|
-
|
|
2258
2152
|
[[package]]
|
|
2259
2153
|
name = "unicode-id"
|
|
2260
2154
|
version = "0.3.6"
|
|
@@ -2288,12 +2182,6 @@ version = "0.2.1"
|
|
|
2288
2182
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
2289
2183
|
checksum = "4a1a07cc7db3810833284e8d372ccdc6da29741639ecc70c9ec107df0fa6154c"
|
|
2290
2184
|
|
|
2291
|
-
[[package]]
|
|
2292
|
-
name = "unindent"
|
|
2293
|
-
version = "0.2.4"
|
|
2294
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
2295
|
-
checksum = "7264e107f553ccae879d21fbea1d6724ac785e8c3bfc762137959b5802826ef3"
|
|
2296
|
-
|
|
2297
2185
|
[[package]]
|
|
2298
2186
|
name = "unsafe-libyaml"
|
|
2299
2187
|
version = "0.2.11"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[package]
|
|
2
2
|
name = "rumdl"
|
|
3
|
-
version = "0.0.
|
|
3
|
+
version = "0.0.155"
|
|
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)"
|
|
@@ -18,7 +18,7 @@ default-run = "rumdl" # Default binary for cargo run
|
|
|
18
18
|
|
|
19
19
|
[lib]
|
|
20
20
|
name = "rumdl_lib"
|
|
21
|
-
crate-type = ["
|
|
21
|
+
crate-type = ["rlib"]
|
|
22
22
|
|
|
23
23
|
[[bin]]
|
|
24
24
|
name = "rumdl"
|
|
@@ -91,7 +91,6 @@ serde_yaml = "0.9.34"
|
|
|
91
91
|
serde_json = "1.0"
|
|
92
92
|
toml = "0.8.20"
|
|
93
93
|
strsim = "0.11"
|
|
94
|
-
pyo3 = { version = "0.24.1", features = ["extension-module", "abi3-py37"], optional = true }
|
|
95
94
|
thiserror = "2.0.12"
|
|
96
95
|
once_cell = "1.21.3"
|
|
97
96
|
globset = "0.4.16"
|
|
@@ -105,7 +104,6 @@ dyn-clone = "1"
|
|
|
105
104
|
url = { version = "2", features = ["serde"] }
|
|
106
105
|
unicode-normalization = "0.1"
|
|
107
106
|
memmap2 = "0.9"
|
|
108
|
-
seahash = "4.1"
|
|
109
107
|
schemars = "0.8"
|
|
110
108
|
|
|
111
109
|
# LSP dependencies
|
|
@@ -124,8 +122,6 @@ etcetera = "0.8"
|
|
|
124
122
|
default = ["parallel"]
|
|
125
123
|
parallel = ["rayon"]
|
|
126
124
|
profiling = []
|
|
127
|
-
python = ["pyo3"]
|
|
128
|
-
structure_preprocessing = []
|
|
129
125
|
build-benchmarks = []
|
|
130
126
|
|
|
131
127
|
[dev-dependencies]
|
|
@@ -138,8 +134,6 @@ rand = "0.9.1"
|
|
|
138
134
|
pretty_assertions = "1.4"
|
|
139
135
|
unicode-segmentation = "1.12"
|
|
140
136
|
unicode-width = "0.2"
|
|
141
|
-
unicode-blocks = "0.1"
|
|
142
|
-
unicode-bidi = "0.3"
|
|
143
137
|
|
|
144
138
|
[target.'cfg(not(target_env = "msvc"))'.dependencies]
|
|
145
139
|
tikv-jemallocator = "0.6"
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"""
|
|
2
|
+
rumdl: An extremely fast Markdown linter written in Rust.
|
|
3
|
+
"""
|
|
4
|
+
|
|
5
|
+
try:
|
|
6
|
+
from importlib.metadata import version
|
|
7
|
+
__version__ = version("rumdl")
|
|
8
|
+
except ImportError:
|
|
9
|
+
# Python < 3.8
|
|
10
|
+
from importlib_metadata import version
|
|
11
|
+
__version__ = version("rumdl")
|
|
@@ -426,11 +426,7 @@ impl VsCodeExtension {
|
|
|
426
426
|
|
|
427
427
|
if output.status.success() {
|
|
428
428
|
println!("{}", "✓ Successfully updated Rumdl VS Code extension!".green());
|
|
429
|
-
|
|
430
|
-
// Verify the update
|
|
431
|
-
if let Ok(new_version) = self.get_installed_version() {
|
|
432
|
-
println!(" New version: {}", new_version.cyan());
|
|
433
|
-
}
|
|
429
|
+
println!(" New version: {}", latest_version.cyan());
|
|
434
430
|
Ok(())
|
|
435
431
|
} else {
|
|
436
432
|
let stderr = String::from_utf8_lossy(&output.stderr);
|
rumdl-0.0.154/python/MANIFEST.in
DELETED
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
# rumdl Python Package
|
|
2
|
-
|
|
3
|
-
This directory contains the Python package for `rumdl`, which is a wrapper around the Rust binary.
|
|
4
|
-
|
|
5
|
-
## Build Process
|
|
6
|
-
|
|
7
|
-
The Python package is built using Maturin, which provides a seamless integration between Rust and Python. The package configuration is now in the root `pyproject.toml` file.
|
|
8
|
-
|
|
9
|
-
### Building and Installing
|
|
10
|
-
|
|
11
|
-
To build and install the package in development mode:
|
|
12
|
-
|
|
13
|
-
```bash
|
|
14
|
-
# From the project root
|
|
15
|
-
make dev-install
|
|
16
|
-
```
|
|
17
|
-
|
|
18
|
-
Or using Maturin directly:
|
|
19
|
-
|
|
20
|
-
```bash
|
|
21
|
-
maturin develop --release
|
|
22
|
-
```
|
|
23
|
-
|
|
24
|
-
### Building for Distribution
|
|
25
|
-
|
|
26
|
-
To build a wheel for distribution:
|
|
27
|
-
|
|
28
|
-
```bash
|
|
29
|
-
# From the project root
|
|
30
|
-
make build-wheel
|
|
31
|
-
```
|
|
32
|
-
|
|
33
|
-
Or using Maturin directly:
|
|
34
|
-
|
|
35
|
-
```bash
|
|
36
|
-
maturin build --release --strip --interpreter python3
|
|
37
|
-
```
|
|
38
|
-
|
|
39
|
-
### Testing the Package
|
|
40
|
-
|
|
41
|
-
After installation, you can test the package with:
|
|
42
|
-
|
|
43
|
-
```bash
|
|
44
|
-
python -m rumdl --version
|
|
45
|
-
```
|
|
46
|
-
|
|
47
|
-
## Package Structure
|
|
48
|
-
|
|
49
|
-
- `rumdl/__init__.py`: Provides version information and package imports
|
|
50
|
-
- `rumdl/__main__.py`: Command-line interface that finds and executes the Rust binary
|
|
51
|
-
- `rumdl/py.typed`: Marker file for type annotations
|
|
52
|
-
|
|
53
|
-
## Maintenance Notes
|
|
54
|
-
|
|
55
|
-
- The version is now managed in both Cargo.toml and Python's **init**.py
|
|
56
|
-
- When releasing a new version, update both files to match
|
|
57
|
-
- Maturin handles the packaging and distribution, including finding the Rust binary
|
rumdl-0.0.154/src/python.rs
DELETED
|
@@ -1,246 +0,0 @@
|
|
|
1
|
-
//!
|
|
2
|
-
//! This module provides Python bindings and integration for rumdl.
|
|
3
|
-
|
|
4
|
-
use pyo3::prelude::*;
|
|
5
|
-
|
|
6
|
-
/// Python module for rumdl
|
|
7
|
-
#[pymodule]
|
|
8
|
-
fn rumdl(_py: Python, m: &Bound<PyModule>) -> PyResult<()> {
|
|
9
|
-
// Add version
|
|
10
|
-
m.add("__version__", env!("CARGO_PKG_VERSION"))?;
|
|
11
|
-
|
|
12
|
-
// Add a function to check a file
|
|
13
|
-
m.add_function(wrap_pyfunction!(check_file, m)?)?;
|
|
14
|
-
|
|
15
|
-
Ok(())
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
/// Check a file for markdown lint issues
|
|
19
|
-
#[pyfunction]
|
|
20
|
-
fn check_file(file_path: &str) -> PyResult<i32> {
|
|
21
|
-
// For now, we'll just call the binary as a subprocess
|
|
22
|
-
// In a future implementation, this could directly call the Rust functions
|
|
23
|
-
let status = std::process::Command::new("rumdl")
|
|
24
|
-
.arg(file_path)
|
|
25
|
-
.status()
|
|
26
|
-
.map_err(|e| PyErr::new::<pyo3::exceptions::PyRuntimeError, _>(format!("Failed to execute rumdl: {e}")))?;
|
|
27
|
-
|
|
28
|
-
Ok(status.code().unwrap_or(1))
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
#[cfg(test)]
|
|
32
|
-
mod tests {
|
|
33
|
-
use super::*;
|
|
34
|
-
use std::fs::File;
|
|
35
|
-
use std::io::Write;
|
|
36
|
-
use tempfile::TempDir;
|
|
37
|
-
|
|
38
|
-
// Tests that don't require Python runtime
|
|
39
|
-
|
|
40
|
-
#[test]
|
|
41
|
-
fn test_check_file_with_valid_input() {
|
|
42
|
-
// Create a temporary markdown file
|
|
43
|
-
let temp_dir = TempDir::new().unwrap();
|
|
44
|
-
let file_path = temp_dir.path().join("test.md");
|
|
45
|
-
let mut file = File::create(&file_path).unwrap();
|
|
46
|
-
writeln!(file, "# Test Markdown File\n\nThis is a test.").unwrap();
|
|
47
|
-
|
|
48
|
-
// Note: This test would require rumdl binary to be in PATH
|
|
49
|
-
// In practice, this might fail in isolated test environments
|
|
50
|
-
if std::env::var("SKIP_INTEGRATION_TESTS").is_ok() {
|
|
51
|
-
return;
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
// Only run if rumdl binary exists
|
|
55
|
-
if std::process::Command::new("rumdl").arg("--version").output().is_ok() {
|
|
56
|
-
let result = check_file(file_path.to_str().unwrap());
|
|
57
|
-
// We can't guarantee the exit code without knowing the content
|
|
58
|
-
// but we can check that it doesn't panic
|
|
59
|
-
assert!(result.is_ok());
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
#[test]
|
|
64
|
-
fn test_check_file_with_invalid_file() {
|
|
65
|
-
// Only run if rumdl binary exists
|
|
66
|
-
if std::process::Command::new("rumdl").arg("--version").output().is_ok() {
|
|
67
|
-
let result = check_file("/non/existent/file/path.md");
|
|
68
|
-
// When the file doesn't exist, rumdl should return an error code
|
|
69
|
-
assert!(result.is_ok());
|
|
70
|
-
// The error code should be non-zero
|
|
71
|
-
let code = result.unwrap();
|
|
72
|
-
assert_ne!(code, 0);
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
|
|
76
|
-
#[test]
|
|
77
|
-
fn test_error_handling_missing_rumdl_binary() {
|
|
78
|
-
// Save the current PATH
|
|
79
|
-
let original_path = std::env::var("PATH").unwrap_or_default();
|
|
80
|
-
|
|
81
|
-
// Set PATH to empty to ensure rumdl binary won't be found
|
|
82
|
-
unsafe {
|
|
83
|
-
std::env::set_var("PATH", "");
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
let result = check_file("any_file.md");
|
|
87
|
-
|
|
88
|
-
// Restore original PATH
|
|
89
|
-
unsafe {
|
|
90
|
-
std::env::set_var("PATH", original_path);
|
|
91
|
-
}
|
|
92
|
-
|
|
93
|
-
// The function should return an error when rumdl binary is not found
|
|
94
|
-
assert!(result.is_err());
|
|
95
|
-
|
|
96
|
-
// Check that the error message contains expected text
|
|
97
|
-
if let Err(e) = result {
|
|
98
|
-
let error_str = e.to_string();
|
|
99
|
-
assert!(error_str.contains("Failed to execute rumdl"));
|
|
100
|
-
}
|
|
101
|
-
}
|
|
102
|
-
|
|
103
|
-
#[test]
|
|
104
|
-
fn test_check_file_command_construction() {
|
|
105
|
-
// This test verifies that the command is constructed correctly
|
|
106
|
-
// Create a test file path
|
|
107
|
-
let _test_path = "/tmp/test_file.md";
|
|
108
|
-
|
|
109
|
-
// Test with a path containing spaces
|
|
110
|
-
let path_with_spaces = "/tmp/test file with spaces.md";
|
|
111
|
-
|
|
112
|
-
// Only run if rumdl binary exists
|
|
113
|
-
if std::process::Command::new("rumdl").arg("--version").output().is_ok() {
|
|
114
|
-
let result = check_file(path_with_spaces);
|
|
115
|
-
// The result depends on whether rumdl is installed
|
|
116
|
-
assert!(result.is_ok() || result.is_err());
|
|
117
|
-
}
|
|
118
|
-
}
|
|
119
|
-
|
|
120
|
-
#[test]
|
|
121
|
-
fn test_check_file_return_codes() {
|
|
122
|
-
// This test documents the expected return codes
|
|
123
|
-
// 0: Success (no lint errors)
|
|
124
|
-
// 1: Default error code or lint errors found
|
|
125
|
-
// Other: Specific error conditions
|
|
126
|
-
|
|
127
|
-
// Only run if rumdl binary exists
|
|
128
|
-
if std::process::Command::new("rumdl").arg("--version").output().is_ok() {
|
|
129
|
-
// Test with non-existent file should return non-zero
|
|
130
|
-
let result = check_file("/definitely/not/a/real/file.md");
|
|
131
|
-
if let Ok(code) = result {
|
|
132
|
-
assert_ne!(code, 0, "Non-existent file should return non-zero exit code");
|
|
133
|
-
}
|
|
134
|
-
}
|
|
135
|
-
}
|
|
136
|
-
|
|
137
|
-
// Tests that require Python runtime - marked as ignore by default
|
|
138
|
-
#[cfg(feature = "python")]
|
|
139
|
-
mod python_runtime_tests {
|
|
140
|
-
use super::*;
|
|
141
|
-
use pyo3::types::PyDict;
|
|
142
|
-
use std::ffi::CString;
|
|
143
|
-
|
|
144
|
-
#[test]
|
|
145
|
-
#[ignore] // Requires Python runtime
|
|
146
|
-
fn test_module_initialization() {
|
|
147
|
-
pyo3::prepare_freethreaded_python();
|
|
148
|
-
Python::with_gil(|py| {
|
|
149
|
-
let module = PyModule::new(py, "test_rumdl").unwrap();
|
|
150
|
-
let result = rumdl(py, &module);
|
|
151
|
-
assert!(result.is_ok());
|
|
152
|
-
|
|
153
|
-
// Check that __version__ is added
|
|
154
|
-
assert!(module.hasattr("__version__").unwrap());
|
|
155
|
-
let version: String = module.getattr("__version__").unwrap().extract().unwrap();
|
|
156
|
-
assert_eq!(version, env!("CARGO_PKG_VERSION"));
|
|
157
|
-
|
|
158
|
-
// Check that check_file function is added
|
|
159
|
-
assert!(module.hasattr("check_file").unwrap());
|
|
160
|
-
});
|
|
161
|
-
}
|
|
162
|
-
|
|
163
|
-
#[test]
|
|
164
|
-
#[ignore] // Requires Python runtime
|
|
165
|
-
fn test_check_file_python_integration() {
|
|
166
|
-
pyo3::prepare_freethreaded_python();
|
|
167
|
-
Python::with_gil(|py| {
|
|
168
|
-
let module = PyModule::new(py, "test_rumdl").unwrap();
|
|
169
|
-
rumdl(py, &module).unwrap();
|
|
170
|
-
|
|
171
|
-
// Create a temporary file
|
|
172
|
-
let temp_dir = TempDir::new().unwrap();
|
|
173
|
-
let file_path = temp_dir.path().join("test.md");
|
|
174
|
-
let mut file = File::create(&file_path).unwrap();
|
|
175
|
-
writeln!(file, "# Test\n\nContent").unwrap();
|
|
176
|
-
|
|
177
|
-
// Call the function through Python
|
|
178
|
-
let locals = PyDict::new(py);
|
|
179
|
-
locals.set_item("module", module).unwrap();
|
|
180
|
-
locals.set_item("file_path", file_path.to_str().unwrap()).unwrap();
|
|
181
|
-
|
|
182
|
-
let code_str = CString::new("module.check_file(file_path)").unwrap();
|
|
183
|
-
let code = py.eval(code_str.as_c_str(), None, Some(&locals));
|
|
184
|
-
assert!(code.is_ok());
|
|
185
|
-
});
|
|
186
|
-
}
|
|
187
|
-
|
|
188
|
-
#[test]
|
|
189
|
-
#[ignore] // Requires Python runtime
|
|
190
|
-
fn test_version_string_correctness() {
|
|
191
|
-
pyo3::prepare_freethreaded_python();
|
|
192
|
-
Python::with_gil(|py| {
|
|
193
|
-
let module = PyModule::new(py, "test_version").unwrap();
|
|
194
|
-
rumdl(py, &module).unwrap();
|
|
195
|
-
|
|
196
|
-
let version: String = module.getattr("__version__").unwrap().extract().unwrap();
|
|
197
|
-
|
|
198
|
-
// Version should match Cargo.toml version
|
|
199
|
-
assert_eq!(version, env!("CARGO_PKG_VERSION"));
|
|
200
|
-
|
|
201
|
-
// Version should follow semver format (basic check)
|
|
202
|
-
let parts: Vec<&str> = version.split('.').collect();
|
|
203
|
-
assert!(parts.len() >= 2); // At least major.minor
|
|
204
|
-
|
|
205
|
-
// Each part should be parseable as a number
|
|
206
|
-
for part in parts {
|
|
207
|
-
// Handle pre-release versions like "1.0.0-alpha"
|
|
208
|
-
let num_part = part.split('-').next().unwrap();
|
|
209
|
-
assert!(
|
|
210
|
-
num_part.parse::<u32>().is_ok(),
|
|
211
|
-
"Version part '{num_part}' is not a valid number"
|
|
212
|
-
);
|
|
213
|
-
}
|
|
214
|
-
});
|
|
215
|
-
}
|
|
216
|
-
|
|
217
|
-
#[test]
|
|
218
|
-
#[ignore] // This test requires Python runtime and specific setup
|
|
219
|
-
fn test_pymodule_attributes() {
|
|
220
|
-
pyo3::prepare_freethreaded_python();
|
|
221
|
-
Python::with_gil(|py| {
|
|
222
|
-
let module = PyModule::new(py, "test_attrs").unwrap();
|
|
223
|
-
rumdl(py, &module).unwrap();
|
|
224
|
-
|
|
225
|
-
// Test that the module has the expected structure
|
|
226
|
-
let dir_str = CString::new("dir(module)").unwrap();
|
|
227
|
-
let dir_result = py.eval(
|
|
228
|
-
dir_str.as_c_str(),
|
|
229
|
-
None,
|
|
230
|
-
Some(&{
|
|
231
|
-
let locals = PyDict::new(py);
|
|
232
|
-
locals.set_item("module", &module).unwrap();
|
|
233
|
-
locals
|
|
234
|
-
}),
|
|
235
|
-
);
|
|
236
|
-
|
|
237
|
-
assert!(dir_result.is_ok());
|
|
238
|
-
let attrs: Vec<String> = dir_result.unwrap().extract().unwrap();
|
|
239
|
-
|
|
240
|
-
// Check for expected attributes
|
|
241
|
-
assert!(attrs.contains(&"__version__".to_string()));
|
|
242
|
-
assert!(attrs.contains(&"check_file".to_string()));
|
|
243
|
-
});
|
|
244
|
-
}
|
|
245
|
-
}
|
|
246
|
-
}
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
//! Integration tests for Python bindings
|
|
2
|
-
//!
|
|
3
|
-
//! These tests verify the Python bindings work correctly when the Python feature is enabled.
|
|
4
|
-
//! Most tests are marked with #[ignore] as they require a Python runtime.
|
|
5
|
-
|
|
6
|
-
#![cfg(feature = "python")]
|
|
7
|
-
|
|
8
|
-
use std::process::Command;
|
|
9
|
-
|
|
10
|
-
#[test]
|
|
11
|
-
fn test_python_module_can_be_imported() {
|
|
12
|
-
// Skip if no Python available
|
|
13
|
-
if Command::new("python3").arg("--version").output().is_err() {
|
|
14
|
-
eprintln!("Skipping test: Python 3 not found");
|
|
15
|
-
return;
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
// This test would require building the Python module first
|
|
19
|
-
// In a real CI/CD pipeline, you would:
|
|
20
|
-
// 1. Build the module with `maturin build`
|
|
21
|
-
// 2. Install it in a virtual environment
|
|
22
|
-
// 3. Test importing it
|
|
23
|
-
|
|
24
|
-
// For now, we just verify the module exists in the codebase
|
|
25
|
-
assert!(std::path::Path::new("src/python.rs").exists());
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
#[test]
|
|
29
|
-
#[ignore] // Requires built Python module
|
|
30
|
-
fn test_python_module_version() {
|
|
31
|
-
// This would test the module after it's built and installed
|
|
32
|
-
// python3 -c "import rumdl; print(rumdl.__version__)"
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
#[test]
|
|
36
|
-
#[ignore] // Requires built Python module
|
|
37
|
-
fn test_python_check_file_function() {
|
|
38
|
-
// This would test the check_file function from Python
|
|
39
|
-
// python3 -c "import rumdl; exit_code = rumdl.check_file('test.md'); print(exit_code)"
|
|
40
|
-
}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|