{"id":21740173,"url":"https://github.com/bserdar/check-release-plugin","last_synced_at":"2025-03-21T01:13:15.743Z","repository":{"id":7792572,"uuid":"9162682","full_name":"bserdar/check-release-plugin","owner":"bserdar","description":"Maven plugin to make sure build artifacts are versioned correctly","archived":false,"fork":false,"pushed_at":"2013-12-10T16:48:06.000Z","size":132,"stargazers_count":1,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-01-25T21:27:20.684Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bserdar.png","metadata":{"files":{"readme":"README.markdown","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2013-04-02T04:56:44.000Z","updated_at":"2013-12-10T16:48:07.000Z","dependencies_parsed_at":"2022-09-15T12:10:17.211Z","dependency_job_id":null,"html_url":"https://github.com/bserdar/check-release-plugin","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bserdar%2Fcheck-release-plugin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bserdar%2Fcheck-release-plugin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bserdar%2Fcheck-release-plugin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bserdar%2Fcheck-release-plugin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bserdar","download_url":"https://codeload.github.com/bserdar/check-release-plugin/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244717339,"owners_count":20498284,"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":"2024-11-26T06:12:26.141Z","updated_at":"2025-03-21T01:13:15.724Z","avatar_url":"https://github.com/bserdar.png","language":"Java","readme":"check-release plugin makes sure that if the build artifact of a\nproject is semantically modified, it gets a new version number. This\nensures that any project depending on that artifact can have reliable\nrepeatable builds. The plugin assumes that once the project is ready\nto \"release\" its build artifacts, it uses Maven \"deploy\" goal to\ndeploy them to a release repository. At this phase, check-release\nplugin is used to make sure that:\n\n  - if the artifact on release repository is to be overwritten, it is\n  semantically identical to the new version, and\n  - if the artifact is different, it is not overwritten.\n\nSemantically identical means that changes that do not affect the\noperation of the artifact are allowed, such as comments in XML files. \n\nFor instance, suppose we're working on a Java project\n`my-project:my-project` version 2.0. Once the development is ready, we\ndeploy it to a Maven repo on `http://my.host/release-repo`.\n\n    \u003cproject\u003e\n      \u003cmodelVersion\u003e4.0.0\u003c/modelVersion\u003e\n      \u003cgroupId\u003emy-project\u003c/groupId\u003e\n      \u003cartifactId\u003emy-project\u003c/artifactId\u003e\n      \u003cpackaging\u003ejar\u003c/packaging\u003e\n      \u003cversion\u003e2.0\u003c/version\u003e\n      \u003cdistributionManagement\u003e\n        \u003crepository\u003e\n          \u003cid\u003essh-repository\u003c/id\u003e\n          \u003curl\u003ehttp://my.host/release-repo\u003c/url\u003e\n        \u003c/repository\u003e\n      \u003c/distributionManagement\u003e\n      \u003cbuild\u003e\n        \u003cplugins\u003e\n          \u003cplugin\u003e\n            \u003cgroupId\u003eorg.apache.maven.plugins\u003c/groupId\u003e\n            \u003cartifactId\u003echeck-release-maven-plugin\u003c/artifactId\u003e\n            \u003cversion\u003e1.1.0\u003c/version\u003e\n            \u003cconfiguration\u003e\n               \u003crepoUrl\u003ehttp://my.host/release-repo\u003c/repoUrl\u003e\n            \u003c/configuration\u003e\n          \u003c/plugin\u003e\n        \u003c/plugins\u003e\n      \u003c/build\u003e\n    \u003c/project\u003e\n\n\nRunning \n\n    mvn clean deploy\n\nwill build and deploy the artifact to `http://my.host/release-repo`.\nIf changes are made to the project, and then `mvn deploy` is run again,\nthe existing version (2.0) will be overwritten. However, if you deploy using\n\n    mvn clean deploy check-release:check-release\n\nversion 2.0 will be overwritten only if the new version is\nsemantically equivalent to the existing version 2.0. If there are\nchanges that affect the operation of the artifact, check-release\nplugin will fail the build.\n\n\nUsing \n\n    mvn clean install check-release:report \n\nwill write WARNING messages instead of failing the build. This can be\nrun locally before publishing project artifacts to make sure\n`check-release:check-release` will succeed.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbserdar%2Fcheck-release-plugin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbserdar%2Fcheck-release-plugin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbserdar%2Fcheck-release-plugin/lists"}