Releases: ahoehne/code2md
Release list
Release v0.1.0
Changelog:
What's Changed
- Added C, C++, C#, Rust, JSX and TSX support, on by default
- Added SQL and TOML as opt-in languages via -l
- Added mjs, cjs, mts, cts and hh extensions with correct markdown tags (js, ts, cpp)
- Added manifest files for Python (pyproject.toml, requirements.txt, setup.py, setup.cfg, Pipfile), Gradle-based Java projects (build.gradle, settings.gradle) and Rust (Cargo.toml)
- Ignore patterns now follow full gitignore semantics: ! negation with last-match-wins, ** globstars, anchored (/build) and directory-only (build/) patterns; * and ? no longer cross /
- Nested .gitignore files in subdirectories are now respected
- File extensions are matched case-insensitively (.GO, .Py)
- Fixed markdown tag for cs files (csharp instead of cs)
- Output file is now excluded by absolute path instead of by name
- Manifest files only bypass the built-in default ignores, never --ignore flags or .gitignore rules
- Invalid ignore patterns print a warning and are skipped
- Documented the ignore rules in the README
- Cleaned up tests across all packages
- Tests run on ubuntu 26.04 with go 1.26
- Bumped actions/checkout to v7.0.0, actions/setup-go to v6.5.0 and action-gh-release to v3.0.1 #9
Full Changelog: v0.0.9...v0.1.0
Release v0.0.9
Changelog:
What's Changed
- allowedFileNames now bypass ignore patterns (e.g. pom.xml included despite *.xml ignore)
- Default ignore patterns for a language are dropped when that language is explicitly enabled
- Explicit --ignore flags always take precedence over the above
- Extracted vet as a standalone Makefile target; build/buildall depend on it
- Added clean, test-verbose targets; test no longer prints verbose by default
- Fixed empty-string fileExtension assignment on some shells
- Bumped actions/setup-go to v6.4.0 and action-gh-release to v3.0.0 #6
Full Changelog: v0.0.8...v0.0.9
Release v0.0.8
What's Changed
- Code and pipeline improvements
- using latest 1.26 go version for build
- Bump the actions group with 2 updates by @dependabot[bot] in #1
- Bump actions/setup-go from 6.2.0 to 6.3.0 in the actions group by @dependabot[bot] in #2
- Bump softprops/action-gh-release from 2.5.3 to 2.6.1 in the actions group by @dependabot[bot] in #4
Full Changelog: v0.0.7...v0.0.8
Release v0.0.7
Changelog
What's New
Maximum File Size Control
You can now set a maximum file size limit with the --max-file-size (or -m) flag. Files exceeding this limit are automatically skipped with a warning. The default is 100MB, preventing memory issues when processing large codebases.
Improved Memory Efficiency
Large files are now streamed directly to output instead of being loaded entirely into memory, making the tool more reliable when working with bigger projects.
Better TypeScript Support
TypeScript projects now automatically include tsconfig.json alongside package.json in the output, giving you complete project context.
Automatic Output Directory Creation
When specifying an output path like docs/output/code.md, the tool now creates any missing directories automatically.
Improved Gitignore Handling
Whitespace in .gitignore files is now properly handled, reducing unexpected behavior when patterns have trailing spaces.
Enhanced Error Messages
Errors now provide clearer context about what went wrong, making troubleshooting easier.
Full Changelog: v0.0.6...v0.0.7
Release v0.0.6
🚀 New Features
- Add support for java, xml and markdown files
- Make output file optional, allowing printing results directly to stdout instead of always writing files.
🧹 Cleanup / Misc
- Will not process output file anymore
- Improve the help/usage table for better clarity.
- Increase readability (e.g., adjusting indentation for Vim).
- Apply EditorConfig formatting rules.
- Installation: Change binary ownership after installation to root
Full Changelog: v0.0.5...v0.0.6
Release v0.0.5
Release v0.0.4
Key Features:
- Added support for html, css and scss
- improved --language flag: case intensitive and it's not required anymore to write ".php" (leading dot is not necessary anymore)
- rudimentary support for globbing (at start) in gitignore and --ignore flag
Full Changelog: v0.0.3...v0.0.4
Release v0.0.3
- small code optimizations including better error handling
- release version now building with go >= 1.24
Full Changelog: v0.0.2...v0.0.3
Release v0.0.2
Release v0.0.1
first pre-release