Commit Graph
185 Commits
Author SHA1 Message Date
sankalp fb87bfa146 fix: handle deleted files in stage() — use git rm for missing paths V.0.2.7 2026-06-06 21:21:10 +05:45
sankalp 69bd79e0fa bump version to 0.2.6 V.0.2.6 2026-06-06 20:57:00 +05:45
sankalp a86dcc93ee update readme V.0.2.5 2026-06-06 17:43:22 +05:45
sankalp 456040ed2b feat(root): revamp README and add gitignore/license commands
Updated project overview, removed emojis, and introduced new CLI subcommands for managing .gitignore and license templates. Added architecture and custom template documentation.

New Features
- Added `devgen gitignore list` and `devgen gitignore add <name> …` commands.
- Added `devgen license list` and `devgen license add <spdx>` commands.
- Introduced support for custom commit templates via `.tpl` files.

Enhancements
- Rewrote README with clearer description and updated badges.
- Removed emojis and streamlined formatting throughout documentation.
- Added sections for custom templates, architecture overview, and contribution guide.
- Clarified dependency installation and CI workflow references.

Bug Fixes
- Fixed formatting issues in badge links and stray hyphens.
- Resolved truncated documentation sections and improved readability.
2026-06-06 17:39:25 +05:45
sankalp df1d1765d1 ci: drop pyright typecheck job in favour of ruff
The project uses ruff for lint+format, and pyright was redundant and
slow. The previous pyright run surfaced ~30 false positives from running
outside the venv plus 5 real-but-minor typing issues that don't justify
the extra CI minutes on a 0.2.x CLI.

CI now runs only ruff check, ruff format --check, and the import/CLI
smoke matrix on 3.10/3.11/3.12/3.13.
2026-06-06 17:38:01 +05:45
sankalp 09ba5e9644 ci: add CodeQL, lint/typecheck/smoke CI, and dependency review
- ci.yml: ruff check + format check, pyright typecheck, and import/CLI
  smoke test on Python 3.10/3.11/3.12/3.13 matrix. Uses uv like the
  existing pre-commit workflow for consistency.
- codeql.yml: weekly + push/PR Python security-and-quality analysis.
- dependency-review.yml: fail PRs adding high+ severity CVEs or copyleft
  licenses that would taint GPL-3.0 (AGPL, SSPL, BUSL).
2026-06-06 17:31:31 +05:45
sankalp 850e88972e ci(dependabot): merge directly via squash instead of use-github-auto-merge
The previous config required branch protection with required status checks,
but main has no protection rules configured, so auto-merge never fired and
PRs had to be merged manually.

Switch to direct squash merge in the action itself, which works regardless
of branch protection settings.
2026-06-06 17:24:10 +05:45
sankalp 96e776f7cc chore(root):ignore .tpl files in Linguist language stats to prevent inflated language statistics. 2026-06-06 17:10:34 +05:45
sankalp f70b5208ec refactor(devgen/providers): shared provider base class
Abstract out generate validation and error handling into BaseProvider, eliminating duplicated logic across Anthropic, OpenRouter, and OpenAI providers.
2026-06-06 17:10:30 +05:45
sankalp e2ec269f16 refactor(modules): restructure changelog and release note generation
Refactor to improve readability and separate concerns,
use Section enum and ordered traversal for consistent output.
2026-06-06 17:10:30 +05:45
sankalp 90ca0c0f59 refactor(devgen/modules): rename commit_message template from .j2 to .tpl
Bug Fixes:
- Updated template reference to use .tpl extension, resolving missing template error.
2026-06-06 16:56:14 +05:45
sankalp 9781523e8e refactor(devgen/modules): streamline manifest context generation
Enhancements:
- Replaced verbose scanning of many manifest files with targeted parsing of key project manifests (pyproject.toml, package.json, requirements.txt).
- Generated a compact one‑line‑per‑file summary, reducing token usage.
- Improved clarity and readability of the AI‑provided context.
2026-06-06 16:48:28 +05:45
sankalp 96b2499ecf chore(devgen/templates/commit): streamline commit template to Conventional Commits format
Clarify output format and remove redundant guidance.

New Features:
- Added explicit format and type list

Enhancements:
- Simplified instructions, removed unnecessary guidance

Bug Fixes:
- None
2026-06-06 16:48:21 +05:45
sankalp 4f8e358a60 feat(devgen/modules): expose max_groups and max_diff_size as CLI override flags
- Add CLI flags to override `max_groups` and `max_diff_size` limits
- Update file grouping logic to respect override values
- Improve truncation logging with configurable size and guidance
- Remove unused imports and streamline rich console setup
2026-06-06 16:45:18 +05:45
sankalp 72c57f0d33 feat(devgen):add token limit error detection and friendly formatting utilities 2026-06-06 16:45:13 +05:45
sankalp 0b023482d7 feat(devgen/cli): introduce --max-groups and --max-diff-size options for commit command
Add limits to prevent token‑limit errors during commit generation.
- New `--max-groups` option to cap the number of commit groups.
- New `--max-diff-size` option to set maximum diff size per group (default 8000 chars).
Update logging to reflect the new options and pass them to the engine.
2026-06-06 16:45:07 +05:45
sankalp 8069895bc7 feat(devgen/providers): normalize token limit error handling
Add token limit error detection and formatting across all provider modules to surface clear diagnostics when context windows are exceeded, improving error messages and preventing silent failures.

New Features
- Introduce `is_token_limit_error` checks in Anthropic, Gemini, Hugging Face, Ollama, OpenAI, and OpenRouter providers.
- Use `format_token_limit_error` to generate user‑friendly error messages for token limit overs.

Enhancements
- Centralize token limit error handling for consistent diagnostics across providers.
- Explicitly re‑raise `RuntimeError` in Hugging Face to preserve original behavior.

Bug Fixes
- None
2026-06-06 16:45:05 +05:45
sankalp d991af9c47 feat(devgen/cli): introduce Ollamaprovider support and interactive host configuration
- Add "ollama" to AI provider choices in config prompts
- Prompt user for Ollama server URL when selecting the Ollama provider
- Store the configured Ollama host in the config under the "ollama_host" key
- Update config saving logic in both edit_config and setup_config functions
2026-06-06 16:31:09 +05:45
sankalp d8fcf0849a feat(root): add local Ollama AI model support
- New Features
  - Added Ollama as a supported AI model source.
  - Updated README and project manifests to include Ollama.

- Enhancements
  - Expanded AI model selection to handle local Ollama endpoints.
  - Improved dependency resolution for Ollama packages.

- Bug Fixes
  - None
2026-06-06 16:31:06 +05:45
sankalp aad3703ea3 feat(devgen/modules): add configurable Ollama host- New Features
- Added `ollama_host` configuration option.
- Enhancements
  - Use the configured host when calling the Ollama provider.
2026-06-06 16:31:02 +05:45
sankalp a8b48e9f07 feat(devgen/providers): add OllamaProvider for local Ollama integration
Add a new provider that wraps the local Ollama server using an OpenAI‑compatible client, enabling generation via `ollama_host` configuration. This introduces the first provider for local LLM inference.

New Features
- Implement OllamaProvider with a `generate()` method, supporting custom host, model selection, and robust error handling.
2026-06-06 16:30:56 +05:45
sankalp 7016cff3a7 feat(devgen): add Ollama provider and host configuration
Add support for the Ollama provider in the AI generation pipeline and expose a configurable host address.

New Features:
- Introduce `ollama` as a selectable provider.
- Add `ollama_host` configuration option with default `http://localhost:11434`.

Enhancements:
- Extend provider list in error message to include Ollama.
2026-06-06 16:30:52 +05:45
sankalp 55ebbaef15 feat(devgen/cli): improve version callback error messages
- Enhanced error messages when version cannot be determined, providing clearer guidance.
- Added explicit handling for missing pyproject.toml and TOML parsing errors.
- Improved user feedback for installation corruption issues.
2026-06-06 16:27:20 +05:45
sankalp 80f68a6ccd feat(devgen): enhance provider import error handling
Enhancements:
- Split ModuleNotFoundError and AttributeError handling to deliver clearer diagnostics
- Explicitly list available providers and flag missing provider classes as packaging bugs

Bug Fixes:
- Provide specific guidance when a provider module is not a built‑in module
- Clarify that a missing provider class indicates a packaging issue rather than user error
2026-06-06 16:27:17 +05:45
sankalp fd3ce03484 feat(devgen/modules): categorize committypes and improve changelog/release note formattingAdd separate categories for Performance, Refactor, Tests, Style, and Chore; update ordering and emojis; improve remote push detection and fetch strategy; enhance error logging.
- New Features  - Introduced distinct sections for Performance, Refactor, Tests, Style, and Chore in changelog generation.
  - Added dedicated emojis for each new category.
  - Updated section ordering to reflect the new categories.
- Enhancements
  - Enhanced push logic to fetch upstream before push, avoiding non‑fast‑forward rejections.
  - Refactored `is_ahead_of_remote` with a fetch flag to reduce network calls and TOCTOU windows.
  - Improved error logging with full traceback for group processing failures.
- Bug Fixes
  - Fixed emoji mappings for "Style" and "Other Changes".
  - Corrected handling of empty upstream ref to prevent errors.
  - Ensured proper exception handling when remote branch is missing.
2026-06-06 16:27:12 +05:45
sankalp 51d2b7549f feat(devgen/providers):improve provider error handling and response parsing 2026-06-06 16:27:03 +05:45
sankalp 5660e40eb4 chore(root): tidy README and bump dependencies
New Features
- None

Enhancements
- Updated dependency versions; fixed pre‑commit typo.
- Normalized Rich version across config files.
- Cleaned up README formatting and spacing.

Bug Fixes
- Fixed misspelling "pre-comit" → "pre-commit".
- Removed redundant whitespace in README badges and title.
2026-06-06 16:26:58 +05:45
sankalp c6914e2139 Merge pull request #53 from S4NKALP/dependabot/pip/main/openai-2.41.0
build(deps): bump openai from 2.29.0 to 2.41.0
2026-06-06 16:11:32 +05:45
dependabot[bot] 4f0a055216 build(deps): bump openai from 2.29.0 to 2.41.0
Bumps [openai](https://github.com/openai/openai-python) from 2.29.0 to 2.41.0.
- [Release notes](https://github.com/openai/openai-python/releases)
- [Changelog](https://github.com/openai/openai-python/blob/main/CHANGELOG.md)
- [Commits](https://github.com/openai/openai-python/compare/v2.29.0...v2.41.0)

---
updated-dependencies:
- dependency-name: openai
  dependency-version: 2.41.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-06-06 10:26:23 +00:00
sankalp 16c6f70057 Merge pull request #56 from S4NKALP/dependabot/pip/main/typer-0.26.7
build(deps): bump typer from 0.24.1 to 0.26.7
2026-06-06 16:09:48 +05:45
sankalp 3daf798dcd Merge pull request #54 from S4NKALP/dependabot/pip/main/ruff-0.15.16
build(deps): bump ruff from 0.15.7 to 0.15.16
2026-06-06 16:09:33 +05:45
sankalp d6f2452d21 Merge pull request #55 from S4NKALP/dependabot/pip/main/google-genai-2.8.0
build(deps): bump google-genai from 1.68.0 to 2.8.0
2026-06-06 16:09:14 +05:45
dependabot[bot] 59aa40bdcf build(deps): bump google-genai from 1.68.0 to 2.8.0
Bumps [google-genai](https://github.com/googleapis/python-genai) from 1.68.0 to 2.8.0.
- [Release notes](https://github.com/googleapis/python-genai/releases)
- [Changelog](https://github.com/googleapis/python-genai/blob/main/CHANGELOG.md)
- [Commits](https://github.com/googleapis/python-genai/compare/v1.68.0...v2.8.0)

---
updated-dependencies:
- dependency-name: google-genai
  dependency-version: 2.8.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-06-06 10:22:19 +00:00
sankalp 8fdc346913 Merge pull request #50 from S4NKALP/dependabot/pip/main/anthropic-0.105.2
build(deps): bump anthropic from 0.86.0 to 0.105.2
2026-06-06 16:05:29 +05:45
dependabot[bot] cdca283cd2 build(deps): bump typer from 0.24.1 to 0.26.7
Bumps [typer](https://github.com/fastapi/typer) from 0.24.1 to 0.26.7.
- [Release notes](https://github.com/fastapi/typer/releases)
- [Changelog](https://github.com/fastapi/typer/blob/master/docs/release-notes.md)
- [Commits](https://github.com/fastapi/typer/compare/0.24.1...0.26.7)

---
updated-dependencies:
- dependency-name: typer
  dependency-version: 0.26.7
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-06-06 10:20:21 +00:00
dependabot[bot] e30d2d854d build(deps): bump ruff from 0.15.7 to 0.15.16
Bumps [ruff](https://github.com/astral-sh/ruff) from 0.15.7 to 0.15.16.
- [Release notes](https://github.com/astral-sh/ruff/releases)
- [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md)
- [Commits](https://github.com/astral-sh/ruff/compare/0.15.7...0.15.16)

---
updated-dependencies:
- dependency-name: ruff
  dependency-version: 0.15.16
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-06-06 10:20:20 +00:00
sankalp e77472fb0f Merge pull request #44 from S4NKALP/dependabot/pip/main/requests-2.34.2
build(deps): bump requests from 2.32.5 to 2.34.2
2026-06-06 16:03:59 +05:45
sankalp e3dc6729dc Merge branch 'main' into dependabot/pip/main/requests-2.34.2 2026-06-06 16:03:44 +05:45
sankalp c7c1da8459 Merge pull request #28 from S4NKALP/dependabot/pip/main/rich-15.0.0
build(deps): bump rich from 14.3.3 to 15.0.0
2026-06-06 16:03:14 +05:45
dependabot[bot] b0ad273f87 build(deps): bump anthropic from 0.86.0 to 0.105.2
Bumps [anthropic](https://github.com/anthropics/anthropic-sdk-python) from 0.86.0 to 0.105.2.
- [Release notes](https://github.com/anthropics/anthropic-sdk-python/releases)
- [Changelog](https://github.com/anthropics/anthropic-sdk-python/blob/main/CHANGELOG.md)
- [Commits](https://github.com/anthropics/anthropic-sdk-python/compare/v0.86.0...v0.105.2)

---
updated-dependencies:
- dependency-name: anthropic
  dependency-version: 0.105.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-29 01:19:02 +00:00
dependabot[bot] dcecfec258 build(deps): bump requests from 2.32.5 to 2.34.2
Bumps [requests](https://github.com/psf/requests) from 2.32.5 to 2.34.2.
- [Release notes](https://github.com/psf/requests/releases)
- [Changelog](https://github.com/psf/requests/blob/main/HISTORY.md)
- [Commits](https://github.com/psf/requests/compare/v2.32.5...v2.34.2)

---
updated-dependencies:
- dependency-name: requests
  dependency-version: 2.34.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-15 01:17:54 +00:00
dependabot[bot] f21ba55d6d build(deps): bump rich from 14.3.3 to 15.0.0
Bumps [rich](https://github.com/Textualize/rich) from 14.3.3 to 15.0.0.
- [Release notes](https://github.com/Textualize/rich/releases)
- [Changelog](https://github.com/Textualize/rich/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Textualize/rich/compare/v14.3.3...v15.0.0)

---
updated-dependencies:
- dependency-name: rich
  dependency-version: 15.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-17 01:15:55 +00:00
sankalp 48ae3be0d4 chore: auto-update README [skip ci] 2026-03-27 07:01:11 +05:45
sankalp 5682a51d97 chore: auto-update README [skip ci] 2026-03-20 08:38:34 +05:45
sankalp 3007623f4c docs(root): update README withproject description and badges
Added a concise AI‑focused description and a centered badge section to the README, improving the project overview.

New Features- Introduced an AI‑centric tagline that highlights automation of commits, changelogs, and project management tasks.

Enhancements
- Centered and styled the title block for consistent visual presentation.
- Integrated project badges for PyPI version, Python compatibility, license, build status, and pre‑commit.

Bug Fixes
- None.
2026-03-20 08:38:24 +05:45
sankalp f2e5097e7f chore: auto-update README [skip ci] 2026-03-20 08:34:44 +05:45
sankalp d95c88b240 Merge pull request #14 from S4NKALP/dependabot/pip/main/openai-2.29.0 2026-03-20 08:34:37 +05:45
sankalp dc2b00651f chore: auto-update README [skip ci] 2026-03-20 08:34:18 +05:45
sankalp 2c9c5ed22d Merge pull request #15 from S4NKALP/dependabot/pip/main/ruff-0.15.7 2026-03-20 08:34:11 +05:45
dependabot[bot] 8a42b547ec build(deps): bump openai from 2.26.0 to 2.29.0
Bumps [openai](https://github.com/openai/openai-python) from 2.26.0 to 2.29.0.
- [Release notes](https://github.com/openai/openai-python/releases)
- [Changelog](https://github.com/openai/openai-python/blob/main/CHANGELOG.md)
- [Commits](https://github.com/openai/openai-python/compare/v2.26.0...v2.29.0)

---
updated-dependencies:
- dependency-name: openai
  dependency-version: 2.29.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-20 02:49:10 +00:00