{"id":24841817,"url":"https://github.com/robcxyz/conventional-commits-testing","last_synced_at":"2025-06-14T17:37:57.668Z","repository":{"id":104313210,"uuid":"523882861","full_name":"robcxyz/conventional-commits-testing","owner":"robcxyz","description":"Testing repo for automating changelogs and release drafts","archived":false,"fork":false,"pushed_at":"2023-12-15T02:23:59.000Z","size":72,"stargazers_count":0,"open_issues_count":2,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-31T07:33:13.074Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/robcxyz.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-08-11T22:12:19.000Z","updated_at":"2022-10-12T21:22:49.000Z","dependencies_parsed_at":"2023-12-15T03:29:30.630Z","dependency_job_id":"d407dfa3-da51-4d2b-8e53-4c677e637f97","html_url":"https://github.com/robcxyz/conventional-commits-testing","commit_stats":null,"previous_names":[],"tags_count":25,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robcxyz%2Fconventional-commits-testing","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robcxyz%2Fconventional-commits-testing/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robcxyz%2Fconventional-commits-testing/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robcxyz%2Fconventional-commits-testing/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/robcxyz","download_url":"https://codeload.github.com/robcxyz/conventional-commits-testing/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245598316,"owners_count":20641884,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-01-31T07:28:46.673Z","updated_at":"2025-03-26T06:13:22.529Z","avatar_url":"https://github.com/robcxyz.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# conventional-commits-testing\n\n![CodeQL](https://github.com/robcxyz/conventional-commits-testing/workflows/codeql/badge.svg)\n\n[![Foresight Docs](https://api-public.service.runforesight.com/api/v1/badge/test?repoId=8009481f-1586-4df0-b507-005dc0b028d2)](https://docs.runforesight.com/)\n\n[![Foresight Docs](https://api-public.service.runforesight.com/api/v1/badge/success?repoId=8009481f-1586-4df0-b507-005dc0b028d2)](https://docs.runforesight.com/)\n\n[![Foresight Docs](https://api-public.service.runforesight.com/api/v1/badge/utilization?repoId=8009481f-1586-4df0-b507-005dc0b028d2)](https://docs.runforesight.com/)\n\nTesting repo for conventional commits release patterns and how to automatically maintain a changelog from commit messages. There are basically two schools of thought for auto-generating changelogs, from commit messages and from PRs. \n\nFor commit message based changelogs, conventional commits will bump the version on each new `feat` flag. This can produce many incremented changes when you have lots of things that qualify as a feat and can result in many incremented versions to be released. This is especially true when practicing trunk based development. \n\nFor PR based changelogs, every PR must be tagged which will then flow into the changelog. Pattern is to tag PR, squash commits, and merge from there to produce the release draft. \n\nIdeal solution would be to have something below a `feat` / `fix` that doesn't increment the semvar and is grouped within the release draft + changelog. Ideally commits would not increment the version automatically and all the `feats` / `fix` tags would just be grouped into the changelog / release draft. \n\nWould also accommodate PRs as well but they would need to follow the convention. \n\n\n### Labels \n\n- `feat` \n  - For features that should trigger a minor release \n- `feature` - TODO: ?\n  - For features that should be grouped within a minor release \n- `fix`\n  - For fixes that trigger a new patch \n- `refactor`\n  - For changes in code style \n\n### GH Actions \n\n- https://github.com/bcoe/conventional-release-labels\n  - Allows you to use custom labels \n- https://github.com/google-github-actions/release-please-action\n  - Produces changelog and updates release draft\n  - Has map for associating labels with \n\n\n###  Links \n\n- https://github.com/TimonVS/pr-labeler-action/issues/28\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frobcxyz%2Fconventional-commits-testing","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frobcxyz%2Fconventional-commits-testing","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frobcxyz%2Fconventional-commits-testing/lists"}