Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package rumdl for openSUSE:Factory checked in at 2025-11-14 18:03:23 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/rumdl (Old) and /work/SRC/openSUSE:Factory/.rumdl.new.2061 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "rumdl" Fri Nov 14 18:03:23 2025 rev:5 rq:1317815 version:0.0.176 Changes: -------- --- /work/SRC/openSUSE:Factory/rumdl/rumdl.changes 2025-11-13 17:30:02.005897755 +0100 +++ /work/SRC/openSUSE:Factory/.rumdl.new.2061/rumdl.changes 2025-11-14 18:03:26.651341712 +0100 @@ -1,0 +2,121 @@ +Fri Nov 14 13:23:09 UTC 2025 - Johannes Kastl <[email protected]> + +- Update to version 0.0.176: + * Added + - Git-style intelligent configuration merging + - User and project configs can now intelligently combine + instead of simply overriding + - disable array uses union semantics - user can add to + project disables + - enable array uses replace semantics - project can enforce + specific rules + - When a rule appears in both enable and disable, enable wins + (project can override user) + - Configuration hierarchy is now explicit and follows Git's + pattern: + - Default (0) < UserConfig (1) < PyprojectToml (2) < + ProjectConfig (3) < CLI (4) + - Renamed config sources for clarity: + - ConfigSource::RumdlToml → UserConfig (global user config) + - ConfigSource::RumdlToml → ProjectConfig (project-level + config files) + - Removed Markdownlint source (now uses ProjectConfig) + - New API methods: + - SourcedValue::merge_union() - additive merging for + disable arrays + - SourcedValue::merge_override() - replacement merging for + enable arrays + - Example use cases: + - User disables MD013 globally → Project enables MD013 → + MD013 is enabled ✓ + - Project disables MD001, MD003 → User disables MD013 → All + three are disabled ✓ + - 17 comprehensive tests covering merge semantics, + precedence, and conflict resolution + - Matches configuration pattern used by git, eslint, + prettier, and other modern tools + * Performance + - Major memory optimizations eliminating string allocations + - Converted LineInfo to use byte ranges instead of owned + strings (50-80% memory reduction) + - Eliminates N string allocations where N = number of lines + in document + - Added zero-copy content(&self, source: &str) -> &str method + for on-demand access + - Converted LineIndex to borrow &'a str instead of cloning + (eliminates one full document copy per lint operation) + - Converted ParsedLink/ParsedImage to use Cow<'a, str> + (60-80% reduction in heap allocations for link/image + parsing) + - Zero-cost when borrowing, minimal overhead when owning - + most data borrowed directly from source + - Eliminated O(n²) complexity in multiple rules + - Fixed quadratic bottlenecks in MD027 (Multiple spaces after + blockquote symbol) + - Fixed quadratic bottlenecks in MD020 (No space inside + hashes on closed atx style heading) + - Fixed quadratic bottlenecks in MD046 (Code block style) + - All three rules now use pre-computed context data with O(1) + lookups + - Optimized CLI commands + - rumdl config now executes in ~18ms (eliminated duplicate + rule instantiation) + - Removed duplicate instantiation of ~50 rule objects between + main.rs and formatter.rs + - Cleaner architecture with single source of truth for rule + instances + * Fixed + - Config loading: User config now always loaded as base layer + (#131) + - Fixed LSP server ignoring user config when finding + project-level config files + - User configuration is now always loaded first (unless + --no-config is used) + - Project configs merge on top of user config, CLI flags have + highest priority + - Configuration hierarchy now consistent between CLI and LSP: + - User/global config (~/.config/rumdl/rumdl.toml) - base + layer + - Project config (discovered or explicit) - overrides user + config + - CLI flags - highest priority + - Matches pattern used by git, eslint, prettier, and other + tools + - Added regression test verifying user config preserved with + explicit project config + - MD035: Frontmatter delimiter false positives (#40) + - Fixed incorrect flagging of YAML/TOML frontmatter + delimiters (---/+++) as horizontal rules + - Rule now correctly skips frontmatter in three places: + - most_prevalent_hr_style() - don't count frontmatter HRs + for prevalence + - check() - don't flag frontmatter delimiters as violations + - fix() - don't replace frontmatter delimiters when fixing + - Uses pre-computed LineInfo.in_front_matter field for + efficient detection + * Changed + - Architecture: Consistent use of pre-computed context data + - MD035 now uses pre-computed LineInfo.in_front_matter + instead of function calls + - All rules now consistently use ctx.line_index for + line-based operations + - Eliminates redundant function calls and O(n) scans + - More efficient with O(1) field access patterns + - Test infrastructure improvements + - Implemented dynamic fixture downloading for performance + tests + - Test downloads now happen on-demand instead of being + checked into repository + - Better handling of large test files for performance + benchmarking + - Test quality improvements + - Corrected ESM block test assertions to match actual MDX + behavior + - ESM blocks only exist at TOP of MDX files and end at first + non-ESM line + - Tests now assert correct behavior rather than documenting + implementation quirks + - Fixed MD033 test assertions to properly validate HTML + inline rules + +------------------------------------------------------------------- Old: ---- rumdl-0.0.175.obscpio New: ---- rumdl-0.0.176.obscpio ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ rumdl.spec ++++++ --- /var/tmp/diff_new_pack.qMXNch/_old 2025-11-14 18:03:36.727765985 +0100 +++ /var/tmp/diff_new_pack.qMXNch/_new 2025-11-14 18:03:36.735766321 +0100 @@ -17,7 +17,7 @@ Name: rumdl -Version: 0.0.175 +Version: 0.0.176 Release: 0 Summary: Markdown Linter written in Rust License: MIT ++++++ _service ++++++ --- /var/tmp/diff_new_pack.qMXNch/_old 2025-11-14 18:03:36.859771543 +0100 +++ /var/tmp/diff_new_pack.qMXNch/_new 2025-11-14 18:03:36.883772553 +0100 @@ -3,7 +3,7 @@ <param name="url">https://github.com/rvben/rumdl.git</param> <param name="scm">git</param> <param name="submodules">enable</param> - <param name="revision">v0.0.175</param> + <param name="revision">v0.0.176</param> <param name="versionformat">@PARENT_TAG@</param> <param name="versionrewrite-pattern">v(.*)</param> <param name="changesgenerate">enable</param> ++++++ _servicedata ++++++ --- /var/tmp/diff_new_pack.qMXNch/_old 2025-11-14 18:03:36.971776259 +0100 +++ /var/tmp/diff_new_pack.qMXNch/_new 2025-11-14 18:03:36.975776427 +0100 @@ -1,6 +1,6 @@ <servicedata> <service name="tar_scm"> <param name="url">https://github.com/rvben/rumdl.git</param> - <param name="changesrevision">6ee7969a2b449998055afdc4514e53e167bee02a</param></service></servicedata> + <param name="changesrevision">36e394f684e2fe8a878f9bbadb767e94ba4a04c4</param></service></servicedata> (No newline at EOF) ++++++ rumdl-0.0.175.obscpio -> rumdl-0.0.176.obscpio ++++++ ++++ 4876 lines of diff (skipped) ++++++ rumdl.obsinfo ++++++ --- /var/tmp/diff_new_pack.qMXNch/_old 2025-11-14 18:03:37.859813649 +0100 +++ /var/tmp/diff_new_pack.qMXNch/_new 2025-11-14 18:03:37.867813987 +0100 @@ -1,5 +1,5 @@ name: rumdl -version: 0.0.175 -mtime: 1762959101 -commit: 6ee7969a2b449998055afdc4514e53e167bee02a +version: 0.0.176 +mtime: 1763121644 +commit: 36e394f684e2fe8a878f9bbadb767e94ba4a04c4 ++++++ vendor.tar.zst ++++++ /work/SRC/openSUSE:Factory/rumdl/vendor.tar.zst /work/SRC/openSUSE:Factory/.rumdl.new.2061/vendor.tar.zst differ: char 7, line 1
