{"id":21381,"library":"git-changelog","title":"git-changelog","description":"Automatic Changelog generator using Jinja2 templates. Version 2.9.3, released 2026-03-26. Active development, frequent releases.","status":"active","version":"2.9.3","language":"python","source_language":"en","source_url":"https://github.com/pawamoy/git-changelog","tags":["changelog","git","jinja2","templating","release-notes"],"install":[{"cmd":"pip install git-changelog","lang":"bash","label":"Install from PyPI"}],"dependencies":[{"reason":"Core dependency for Git operations","package":"gitpython","optional":false},{"reason":"Template engine for changelog rendering","package":"jinja2","optional":false}],"imports":[{"note":"Direct import from top-level package does not work; correct path includes .changelog submodule","wrong":"from git_changelog import Changelog","symbol":"Changelog","correct":"from git_changelog.changelog import Changelog"}],"quickstart":{"code":"import os\nfrom git_changelog.changelog import Changelog\nfrom git_changelog.provider import Provider\n\ntoken = os.environ.get('GIT_TOKEN', '')\nprovider = Provider.GITHUB\n\ncl = Changelog.from_repository(\n    repo_path='.',\n    provider=provider,\n    token=token,\n)\nprint(cl.generate())","lang":"python","description":"Generate changelog from current Git repository (requires git executable in PATH)."},"warnings":[{"fix":"Set GIT_TOKEN environment variable with a personal access token.","message":"Provider token is required for private repositories or high rate limits; public repos may work without token but can hit GitHub API rate limits.","severity":"gotcha","affected_versions":"all"},{"fix":"Ensure you run the script from within a Git repository, or pass a valid repo_path.","message":"The library expects to be run inside a Git repository; calling from_repository on a non-repo path raises an exception.","severity":"gotcha","affected_versions":"all"},{"fix":"Switch to built-in templates or use --template CLI option.","message":"The gem log output format (gem) is deprecated in favor of the default `keepachangelog`-like template.","severity":"deprecated","affected_versions":">=2.0"}],"env_vars":null,"last_verified":"2026-04-27T00:00:00.000Z","next_check":"2026-07-26T00:00:00.000Z","problems":[{"fix":"Run 'pip install git-changelog' to install.","cause":"Package not installed.","error":"ModuleNotFoundError: No module named 'git_changelog'"},{"fix":"Use 'from git_changelog.changelog import Changelog' instead.","cause":"Wrong import path; direct top-level import does not expose Changelog.","error":"AttributeError: module 'git_changelog' has no attribute 'Changelog'"}],"ecosystem":"pypi","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}