https://github.com/attakei/age
Alt bumpversion
https://github.com/attakei/age
bumpversion hacktoberfest nim nimble version-manager versioning
Last synced: 4 months ago
JSON representation
Alt bumpversion
- Host: GitHub
- URL: https://github.com/attakei/age
- Owner: attakei
- License: apache-2.0
- Created: 2024-03-07T09:45:34.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2026-02-02T17:45:48.000Z (5 months ago)
- Last Synced: 2026-02-03T07:16:12.559Z (5 months ago)
- Topics: bumpversion, hacktoberfest, nim, nimble, version-manager, versioning
- Language: Nim
- Homepage: https://age.attakei.dev
- Size: 268 KB
- Stars: 8
- Watchers: 0
- Forks: 0
- Open Issues: 15
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# age
age is my bumpversion tool.
[](https://github.com/attakei/age)
[](https://github.com/attakei/age/actions/workflows/main.yml)
## Overview
This is faster bump-version tools inspired by bumpversion and inherits.
**age** is a meaning that *logging lib's birthday* and *"Up" in Japanese slang*.
## Installation
```
nimble install age
```
You can also from these:
- Download directly from [GitHub releases](https://github.com/attakei/age/releases).
- Use aqua with custom registry.
## Usage
At first, you must generate configuration file -- `.age.toml`.
You should edit it for your current version, because generated file is set `current_version = "0.0.0"`.
```
age init
```
If you want to up next version, run `age update|major|minor|patch`.
* `update` accepts any semver.
* `major` is shortcut to major version updating of semver.
* `minor` is shortcut to minor version updating of semver.
* `patch` is shortcut to patch version updating of semver.
Example:
```console
# If current_version = "1.2.3"
> age major # Update to 2.0.0
> age minor # Update to 1.3.0
> age patch # Update to 1.2.4
```
## Configuration file
### `current_version`
Version value that `age` manages.
### `files`
List of replace target for update versioning.
* `path`: File path of cwd.
* `search`: Replace target line.
* `replace`: Replaced text for target.
## Templating context
Age uses template-engine to search and replace targets.
You can set context values into `files.search` and `files.replace`.
If you want to know example, please see [.age.toml](https://github.com/attakei/age/blob/main/.age.toml).
### Context values.
- `current_version`: Version text before run command.
- `new_version`: New version text after run command.
- `now`: Date time text when context is created (as ISO 8601 format string).