From 09821858b59d518d3f08327465e5973d74e42212 Mon Sep 17 00:00:00 2001 From: akadeepesh Date: Fri, 15 May 2026 20:20:13 +0530 Subject: [PATCH] Bump version to 0.2.0 and update changelog for new git-changes features --- CHANGELOG.md | 33 +++++++++++++++++++++++++++++++++ contextzip/__init__.py | 2 +- pyproject.toml | 2 +- 3 files changed, 35 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index db1d1f0..3623438 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -31,3 +31,36 @@ This project uses [Semantic Versioning](https://semver.org/). - Warnings for large files (≥ 1 MB), binary files, and skipped files (dangling symlinks, permission errors) - Rich terminal output with panels, progress bars, and colour-coded detection results - Compression stats (ratio, size before/after) shown after ZIP creation + +--- + +## [0.2.0] — 2026-05-15 + +### Added +- `--git-changes` mode for packaging only files reported as changed by git +- Automatic detection of: + - staged files + - unstaged modifications + - untracked files +- Dedicated git-aware packaging pipeline optimised for AI/code review workflows +- Rich git change summary panel with staged/unstaged/untracked breakdown +- Verbose git mode output showing categorized changed files +- Graceful handling for: + - repositories with no changes + - deleted files + - submodules + - repositories outside the selected project tree + - missing git installations + - non-git directories +- Support for monorepo-aware repository root resolution +- Binary and large-file checks now also apply in git-changes mode + +### Improved +- File resolution architecture refactored to support multiple packaging strategies cleanly +- Internal file scanning pipeline separated from git-based file selection logic +- CLI output consistency improved between standard scan mode and git-changes mode + +### Developer Notes +- Introduced new `contextzip.git` module for git integration and porcelain parsing +- Added `resolve_files_from_git()` pipeline for pre-selected file resolution +- Added structured `GitChanges` and `GitError` models for cleaner error handling and extensibility \ No newline at end of file diff --git a/contextzip/__init__.py b/contextzip/__init__.py index 2c707fd..10bf6a8 100644 --- a/contextzip/__init__.py +++ b/contextzip/__init__.py @@ -1,3 +1,3 @@ """contextzip — intelligent codebase packager for AI tools.""" -__version__ = "0.1.2" +__version__ = "0.2.0" diff --git a/pyproject.toml b/pyproject.toml index d3bb0f6..4fa1ebf 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "contextzip" -version = "0.1.2" +version = "0.2.0" description = "Intelligently package your codebase for AI tools" readme = "README.md" requires-python = ">=3.9"