Metadata-Version: 2.1
Name: version-upper
Version: 0.0.2
Summary: Bump version strings in your repo
Home-page: https://github.com/hkiang01/version_upper
Author: Harrison Kiang
Author-email: hkiang01@gmail.com
License: UNKNOWN
Platform: UNKNOWN
Classifier: Programming Language :: Python :: 3.8
Classifier: Intended Audience :: Developers
Classifier: Topic :: Software Development
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Natural Language :: English
Requires-Python: >=3.6
Description-Content-Type: text/markdown
Requires-Dist: click (!=3.0,!=5.0,>=0.7)
Requires-Dist: pydantic (>=1.0b1)

# version-upper

[![Build Status](https://travis-ci.com/hkiang01/version-upper.svg?branch=master)](https://travis-ci.com/hkiang01/version-upper)
[![Coverage](https://coveralls.io/repos/github/hkiang01/version-upper/badge.svg?branch=master&service=github )](https://coveralls.io/github/hkiang01/version-upper?branch=master)

Primarily a reaction to [bumpversion](https://github.com/peritus/bumpversion) not supporting git hashes -- [issue](https://github.com/peritus/bumpversion/issues/125)

![Demo](demo.gif)

## Overview

```
Usage: version-upper [OPTIONS] COMMAND [ARGS]...

  A tool to update version strings in files using semantic versioning and
  commit hashes.

  Examples:

  # bump commit sha version
  version-upper bump commit_sha

  # bump patch version
  version-upper bump patch

  # bump patch version as release candidate
  version-upper bump patch --release-candidate

  # bump minor version
  version-upper bump minor

  # bump major version
  version-upper bump major

  The config file adheres to the Config Pydantic schema, and is named
  version-upper.json by default.

  Here is a sample config:
  {
      "current_version": "0.0.0",
      "current_semantic_version": "0.0.0",
      "files": []
  }

Options:
  --config TEXT  [default: version-upper.json]
  --help         Show this message and exit.

Commands:
  bump                      Bumps version strings, updates config.
  config-schema             Prints the config schema in JSON
  current-semantic-version  Prints the current semantic version
  current-version           Prints the current version
  release                   Removes rc from the version strings
  sample-config             Prints a sample config
```

## Configuration

Create a file called `version-upper.json` (can be overridden using `--config`) like below:

```json
{
  "current_version": "0.0.0",
  "current_semantic_version": "0.0.0",
  "files": ["main.py", "app/version.json"]
}
```

Be sure to add files to `"files"` otherwise nothing will be updated :)


