{"id":15678109,"url":"https://github.com/kt3k/bmp","last_synced_at":"2025-05-07T02:43:39.625Z","repository":{"id":62422114,"uuid":"370748210","full_name":"kt3k/bmp","owner":"kt3k","description":"⤴️ Version upgrade without hassle","archived":false,"fork":false,"pushed_at":"2024-10-15T05:25:05.000Z","size":61,"stargazers_count":14,"open_issues_count":0,"forks_count":2,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-31T05:33:00.399Z","etag":null,"topics":["cli","versioning"],"latest_commit_sha":null,"homepage":"https://jsr.io/@kt3k/bmp","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kt3k.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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":"2021-05-25T15:50:05.000Z","updated_at":"2025-01-11T09:57:47.000Z","dependencies_parsed_at":"2024-10-23T13:29:44.692Z","dependency_job_id":null,"html_url":"https://github.com/kt3k/bmp","commit_stats":null,"previous_names":[],"tags_count":12,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kt3k%2Fbmp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kt3k%2Fbmp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kt3k%2Fbmp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kt3k%2Fbmp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kt3k","download_url":"https://codeload.github.com/kt3k/bmp/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252802608,"owners_count":21806537,"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":["cli","versioning"],"created_at":"2024-10-03T16:16:53.129Z","updated_at":"2025-05-07T02:43:39.605Z","avatar_url":"https://github.com/kt3k.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# bmp v0.3.2\n\n\u003e Version up. No hassles.\n\n`bmp` is a command line tool for updating the version number in source files.\n\n# Motivation\n\nIt's common to have the version number of the library written in multiple places\nin a repository, e.g. metadata files, documetation, source code, etc.\n\nIf the version number of the library written more than 1 place, updating these\nnumbers in every release is boring, error prone chore. `bmp` helps that\nsituation with simple config file `.bmp.yml` which can track every occurence of\nthe version number in a repository and updates every occurence consistently.\n\n# Install\n\n```sh\ndeno install --global --allow-env --allow-read=. --allow-write=. --allow-run=git -qf jsr:@kt3k/bmp@0.3.2\n```\n\nThis installs `bmp` command.\n\n# Usage\n\nHit the below command to initialize the config file:\n\n```sh\nbmp -i # or bump --init\n```\n\nThis creates a config file like the below:\n\n`.bmp.yml`\n\n```yaml\nversion: 0.0.0\ncommit: \"chore: bump version to %.%.%\"\nfiles:\n  README.md: v%.%.%\n```\n\n- `version` is the current version of your repository. You need to set this to\n  the actuall current version number.\n- `commit` is the commit message which is used when you perform the command\n  `bmp -c`, which commits the change, and cut the tag. This field is optional,\n  and you can delete this if you don't want to use committing feature.\n- `files` contains the version number patterns in files. For example, if your\n  README.md file contains `my-library v1.2.3`, then you need to set this\n  property to `README.md: my-library v%.%.%`. (As you can see `%.%.%` part\n  represents the version number) `bmp` doesn't parse your files. So you can list\n  any files with any syntax.\n\nThen you need to modify this file to fit the existing state of your repository.\nIt might look something like the below, for example:\n\n```yaml\nversion: 0.4.3\ncommit: \"chore: bump version to v%.%.%\"\nfiles:\n  README.md:\n    - v%.%.%\n    - my-lib@%.%.%\n  main.ts: 'const version = \"%.%.%\";'\n```\n\nThen hit the command `bmp` (no options). This validates the occurencies of the\npatterns in each file. If the config has any error, the command shows it. If the\nconfig finds every pattern in every file, you'll see the output like the below:\n\n```\nCurrent version: 0.4.3\nCommit message: chore: bump to 0.4.3\nVersion patterns:\n  README.md: v0.0.2\n  README.md: my-lib@0.0.2\n  main.ts: const version = \"0.4.3\";\n```\n\nNow you are all set. You can bump the versoin by the commands `bmp -j` (major),\n`bmp -m` (minor), `bmp -p` (patch). The tool also supports `preid` (like\n`alpha.1` or `beta.2`). See `bmp -h` output for more details.\n\n# Example commands\n\n## `bmp -i`\n\nCreates .bmp.yml file with placeholders.\n\n## `bmp`\n\nChecks and validates the config file.\n\n## `bmp -p`\n\nBump the patch version and updates every version occurrences based on .bmp.yml\nconfig.\n\n`bmp -m` for minor version bump, `bmp -j` for major version bump.\n\n## `bmp -c`\n\nCommits the current change in the git repository with the commit message\nspecified in .bmp.yml config and cut the tag.\n\n## `bmp -pc`\n\nPatch version up, commits the change, and cut the tag.\n\nAlso `bmp -mc` for minor, `bmp -jc` for major.\n\n# LICENSE\n\nMIT\n\n# History\n\n- 2023-02-08 v0.2.0 Allow glob as files key\n  [#2](https://github.com/kt3k/bmp/pull/2)\n\nThis tool was ported from the ruby version: https://github.com/kt3k/ruby-bmp\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkt3k%2Fbmp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkt3k%2Fbmp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkt3k%2Fbmp/lists"}