{"id":16367091,"url":"https://github.com/jeremybanka/break-check","last_synced_at":"2026-01-16T00:40:10.520Z","repository":{"id":203455526,"uuid":"709644809","full_name":"jeremybanka/break-check","owner":"jeremybanka","description":"Versatile semantic versioning tooling for finding breaking changes.","archived":false,"fork":false,"pushed_at":"2024-07-01T09:17:07.000Z","size":2096,"stargazers_count":0,"open_issues_count":5,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-08T17:47:28.723Z","etag":null,"topics":["semver","testing"],"latest_commit_sha":null,"homepage":"","language":"Go","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/jeremybanka.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":"2023-10-25T05:37:06.000Z","updated_at":"2023-10-31T01:08:44.000Z","dependencies_parsed_at":"2024-06-24T15:02:35.437Z","dependency_job_id":"ac1379e6-0d10-4c95-9891-c5446fde883c","html_url":"https://github.com/jeremybanka/break-check","commit_stats":null,"previous_names":["jeremybanka/break-check"],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jeremybanka%2Fbreak-check","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jeremybanka%2Fbreak-check/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jeremybanka%2Fbreak-check/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jeremybanka%2Fbreak-check/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jeremybanka","download_url":"https://codeload.github.com/jeremybanka/break-check/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246933355,"owners_count":20857052,"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":["semver","testing"],"created_at":"2024-10-11T02:48:34.474Z","updated_at":"2026-01-16T00:40:10.487Z","avatar_url":"https://github.com/jeremybanka.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# break-check\nSemantic versioning tooling. Versatile testing function for finding breaking changes.\n\nThis work is the result of AI-based Test-Driven Development. The conversation started like so:\n\n**me**\n``` \nI have an idea for a npm package written in go called \"break-check\" which helps identify when breaking changes have been made in your code. The use case is,\n- I'm on a feature branch, having made some changes.\n- I run break-check, and my current code is tested using a subset of the tests that were present at the time of the last release—the subset should be only the tests covering my code's public API.\n- I get one failed test, indicating I have introduced breaking changes into my code.\n- Assuming my tests correctly cover my package's public interface, this tells me that I have made a breaking change.\nKey considerations:\n- The consumer should be able to define a search pattern for the subset of \"public API tests\", passed via CLI arg.\n- The consumer should be able to define what the \"test command\" is.\n- The tests that run should be the ones from the most recent tag in git history.\nCan you walk me through implementing this from scratch?\n```\n**chatGPT**\n```\nCertainly! This is a complex, yet fascinating task. Implementing \"break-check\" from scratch will involve several steps, particularly:\n\nSetting up the Go environment and initializing the project\nParsing CLI arguments and configuration\nIdentifying the latest Git tag\nFetching tests related to the last release using Git\nFiltering tests based on the \"public API\" search pattern\nRunning the tests using the provided test command\nDisplaying the results\nLet's walk through the process...\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjeremybanka%2Fbreak-check","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjeremybanka%2Fbreak-check","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjeremybanka%2Fbreak-check/lists"}