Releases: ksylvan/markdown-tree-parser
Releases · ksylvan/markdown-tree-parser
v1.6.1
What's Changed
Full Changelog: v1.6.0...v1.6.1
CHANGES
- Improved code block detection in CLI explode functionality significantly 🚀
- Enhanced section extraction to properly handle code blocks with headings 📑
- Updated heading level adjustment logic to ignore headings in fenced blocks 🚫
- Added comprehensive test coverage for code block handling edge cases ✅
OTHER IMPROVEMENTS
- Added comprehensive prettier ignore rules for lock files and configs 📜
- Enhanced VS Code settings with formatter and linting configurations 🛠️
- Improved code formatting throughout README with consistent style guidelines 📘
- Bumped development dependencies including ESLint and Prettier to latest versions ⬆️
- Added radix parameter to parseInt calls for better code quality 🔢
v1.6.0
What's Changed
Full Changelog: v1.5.1...v1.6.0
CHANGES
- 🛡️ Enhanced text sanitization to support CJK (Chinese, Japanese, Korean) characters.
- ⚙️ Updated CLI to properly handle Markdown files with CJK headings.
- 🧪 Added comprehensive test coverage for CJK Markdown file parsing.
- 💥 Ensured CLI "explode" command generates correct filenames for CJK sections.
- 🔗 Now generates slugs and filenames using native CJK characters correctly.
- ⏫ Version bump: advanced from 1.5.1 to 1.6.0 for clarity.
- 📄 Created new test Markdown file featuring mixed CJK and English sections.
- 🧩 Improved automated tests to assert CJK-aware filename/link generation.
- 📂 Index files now contain correct links to CJK-titled sections and files.
- 🌐 Dramatically increased multilingual robustness for Markdown document parsing workflows.
v1.5.1
What's Changed
Full Changelog: v1.5.0...v1.5.1
CHANGES
- 🔗 Improved link checking to include reference-style links and definitions
- 🌐 Enhanced URL collection to handle both inline and reference links
- 🛠️ Updated
@types/node
dependency to version 24.0.3 for better support - 🧪 Modified test suite to include new reference link test cases
- 📄 Added test file for reference-style links to ensure comprehensive coverage
- 🔄 Refactored test code to use consistent Node.js module imports
- ✨ Fixed minor code formatting issues for better readability
- 📦 Updated package version to 1.5.1 reflecting recent changes
- 🧹 Improved test cleanup to handle potential file deletion errors gracefully
- ✔️ Enhanced test assertions to verify both link presence and URL resolution
v1.5.0
Full Changelog: v1.4.2...v1.5.0
CHANGES
- ✨ Added check-links command for verifying link reachability
- 🔗 Support for recursive link checking across markdown files
- 📧 Smart handling of email links with skip notifications
- 🌐 HTTP/HTTPS link validation with status code reporting
- 📁 Local file existence checking with clear error messages
- 🔧 Modernized imports to use node: prefix for built-in modules
- 🎯 Enhanced for...of loops replacing forEach for better performance
- 📊 Improved number parsing with Number.parseInt for consistency
- 🧪 Comprehensive test coverage for new link checking features
- 📦 Updated dependencies including ESLint 9.29.0 and Node types
v1.4.2
What's Changed
New Contributors
Full Changelog: v1.4.1...v1.4.2
CHANGES
- Optimized heading search with direct array iteration 🚀
- Replaced visit() with for loops for better performance ⚡
- Standardized all quotes to single quotes consistently ✨
- Improved section extraction with faster index-based loops 🎯
- Enhanced performance in getSection() method significantly 💨
- Bumped version from 1.4.1 to 1.4.2 📦
- Updated dev dependencies to latest versions available 🔧
- Streamlined tree traversal operations for speed gains 🏃
- Maintained backwards compatibility while improving performance ✅
- Refactored visitor patterns to more efficient implementations 🔄
- Fixed First Issue: #1
v1.4.1
Full Changelog: v1.4.0...v1.4.1
CHANGES
- 🎨 Added beautiful logo to enhance project visual identity!
- 🔧 Updated ESLint from 9.27.0 to 9.28.0 for better linting!
- 📚 Enhanced README with centered logo display for aesthetics!
- 🚀 Upgraded @types/node to 22.15.29 for TypeScript improvements!
- ⚡ Updated @eslint/js to 9.28.0 for latest features!
- 🎯 Added logo.png file to project root directory!
- 🔄 Synchronized package-lock.json with latest dependency versions!
- 📝 Updated pnpm-lock.yaml to reflect all dependency changes!
- ✨ Maintained consistency across all package management files!
v1.4.0
Full Changelog: v1.3.2...v1.4.0
CHANGES
- 📑 Extracted constants into organized pattern, limit, and message objects
- 🔄 Refactored command handlers into separate, focused methods for clarity
- 🛡️ Added unified heading level adjustment method with bounds checking
- 🔗 Introduced semantic aliases for text sanitization and anchor creation
- 📬 Consolidated error messages into centralized MESSAGES constant object
- 🔍 Improved code readability with consistent constant usage throughout codebase
- 📚 Added proper JSDoc documentation for key utility methods
- 🔧 Simplified heading level manipulation with bidirectional adjustment support
- 🛠️ Enhanced maintainability by reducing magic strings and numbers
- 🔢 Bumped version to 1.4.0 reflecting significant refactoring improvements
v1.3.2
Full Changelog: v1.3.1...v1.3.2
CHANGES
- Fixed heading levels when exploding markdown into sections! 🎯
- Main sections now use level 1 headings properly! 📝
- Subsection headings automatically decrement by one level perfectly! ⬇️
- Assembly process now correctly restores original heading hierarchy! 🔄
- Added smart heading level increment logic for reassembly! ⬆️
- Improved regex patterns to handle headings levels 1-5! 🔍
- Version bumped to 1.3.2 with these critical fixes! 🚀
- Document structure preservation works flawlessly in both directions!
↔️ - No more broken heading hierarchies after explode/assemble cycles! ✨
- Enhanced code comments explain the heading transformation process! 💡
v1.3.1
Full Changelog: v1.3.0...v1.3.1
CHANGES
- Introduced text-based explode for perfect round-trip compatibility 🎯
- Enhanced TOC generation with full subsection hierarchy support 📚
- Preserved original formatting exactly during document operations ✨
- Added direct text manipulation for heading level adjustments 🔧
- Improved section extraction with line-by-line parsing approach 📝
- Fixed document assembly to maintain original spacing patterns 🎨
- Created URL-friendly anchor generation for better navigation 🔗
- Simplified file reading with better error handling patterns 🛡️
- Bumped version to 1.3.1 with stability improvements 🚀
- Optimized memory usage by processing documents line-by-line ⚡
v1.3.0
Full Changelog: v1.2.1...v1.3.0
CHANGES
- Added new
assemble
command for document reconstruction 🚀 - Renamed
explode-doc
to simplerexplode
command name ✨ - Implemented heading level incrementing for proper reassembly 📈
- Created TOC parser extracting section files from index 🔍
- Added comprehensive tests for explode/assemble workflow cycle 🧪
- Enhanced CLI help with new assemble command documentation 📚
- Bumped version from 1.2.1 to 1.3.0 release 🎉
- Added export for MarkdownCLI class enabling better testing 🛠️
- Implemented deep tree cloning for safe heading manipulation 🌳
- Created helper methods for document reassembly from directories 📂