all repos — conver-tool @ c648f9a820cc0ae109b4a6b63200d2ca96f4e84f

A command line tool to manage ConVer projects.

Added README, CHANGELOG, and LICENSE.
h3rald h3rald@h3rald.com
Fri, 12 Jun 2026 15:27:40 +0200
commit

c648f9a820cc0ae109b4a6b63200d2ca96f4e84f

parent

7dc8ad8c5fa7181ad2c0f49dff7f32150c720ab2

3 files changed, 77 insertions(+), 4 deletions(-)

jump to
A CHANGELOG.md

@@ -0,0 +1,5 @@

+## conver tool Changelog + +### v100-D (2026-06-12) + +Initial release.
A LICENSE.md

@@ -0,0 +1,21 @@

+MIT License + +Copyright (c) Fabio Cevasco + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE.
M README.mdREADME.md

@@ -1,8 +1,8 @@

-# conver +## conver -**conver** is a simple tool to manage projects implementing Convergent Versioning. +**conver** is a simple tool to manage projects implementing [Convergent Versioning](https://h3rald.com/conver). -## Usage +### Usage ``` conver - Convergent Versioning Tool v100-D

@@ -23,4 +23,51 @@ status: Display the current Draft and Release versions, if any.

release: Move the current draft version to release. semver: Generate SemVer version number based on history. history: Print the full version history of the project. -```+``` + +### The .conver directory and the VERSIONING.md file + +By running `conver init` in the root folder of your project, the following files are created: + +* ./conver — This directory contains some files used to internally manage Convergent Versioning via the _conver_ tool. + * draft.txt — This file is used to store the current _draft_ version of the project you are working on. + * history.txt — This file contains the full Convergent Versioning history (all ConVer releases) of your project. + * legacy.txt — This file can be used to set the legacy Semantic Versioning release number, which will be used to calculate the equivalent SemVer number of your ConVer releases. + * release.txt — This file is used to store the current _release_ version of the project you are working on. + * semver.txr — This file will contain the equivalent SemVer release number generated via `conver semver`. +* VERSIONING.md — This file contains a standard notice informing users that this project follow Convergent Versioning. + +### Commands + +`conver` provides different sub commands, described in the following sections. + +#### init + +This project initializes your project to use ConVer by creating the `.conver` directory and the `VERSIONING.md` file. + +#### draft + +This command asks you some questions about the version of your project you are working on, to determine the correct ConVer number. + +#### release + +This command is used to _release_ an existing draft version of your project. It will write the ConVer version number to the `.conver/release.txt` file and append an entry to the `.conver/history.txt` file. + +#### status + +This command displays the current draft and the current release versions of your project, if any. + +#### history + +This comman prints the full details of each ConVer release of your project by processing the `.conver/history.txt` file. + +#### semver + +This command generates a SemVer-compatible version number for your project by processing the `.conver/history.txt` file, and stores it in `.conver.semver.txt`. + +### Building conver + +`conver` is written in C99 and has no external dependencies. To generate the `conver` or `conver.exe` executable: + +* Clone the [conver-tool](https://git.sr.ht/~h3rald/conver-tool) repository. +* Run `make`