Skip to content

Sem Ver - Releases

---
title: asda
---
quadrantChart
    title Public API
    x-axis NO Public API Changes --> Public API Changes

    y-axis Touches API NO --> Touches API YES
    quadrant-1 MAJOR
    quadrant-2 Patch or Minor
    quadrant-3 Pre-release Patch
    quadrant-4 NONE

    Public API Change: [0.65, 0.87]
    CLI commands/flags breaking: [0.80, 0.79]
    Interface input Data NEW Schema: [0.775, 0.69]
    Droping support for Python 3.8: [0.725, 0.60]

    CI only Changes: [0.30, 0.34]
    Docs only Changes: [0.20, 0.21]

    Add FEATURE X: [0.18, 0.76]
    FIX Bug x: [0.33, 0.86]
    Add support for new python 3.14: [0.25, 0.64]

Semantic Release - Version Bump

```mermaid

graph TD

%% START((START))

COND_HAS_STARTED_SEMVER_PROMISE{"`Have we already published
a **stable v1.0.0 Release**?`"}

COND_ARE_THERE_BREAKING_CHANGES{"`Are there
**Breaking Changes**?`"}

COND_INCLUDES_FEATURE{"`Is there a feature included?`"}
COND_INCLUDES_BUGFIX{"`Is there a bug fix included?`"}

%% Does the changes touch the Public API at least ?
COND_INCLUDES_REFACTORING{"`Is there at least some
kind of **refactoring involved**?`"}

COND_IS_THIS_OUR_FIRST_STABLE_RELEASE{"`Is this our first
**Stable Release**?`"}

COND_USE_SEMVER_RECOMMENDED_PRE_STABLE_DEV_CYCLE{"`Use semver.org **recommended**
Release scheme?`"}

POSSIBLE_BUMPS_MAJOR[MAJOR]
POSSIBLE_BUMPS_MINOR[Minor]
POSSIBLE_BUMPS_PATCH[Patch]
POSSIBLE_BUMPS_PRERELEASE[Dev Pre-release]

POSSIBLE_BUMPS_MI_PA_DEV[Minor, Patch, or Dev]

%%%% LOGIC FLOW CHART %%%%
%% START --> COND_HAS_STARTED_SEMVER_PROMISE

%% PATH 1: Stable RELEASE v1.0.0 NOT Published yet

COND_HAS_STARTED_SEMVER_PROMISE -->|No| COND_IS_THIS_OUR_FIRST_STABLE_RELEASE

COND_IS_THIS_OUR_FIRST_STABLE_RELEASE -->|No| COND_USE_SEMVER_RECOMMENDED_PRE_STABLE_DEV_CYCLE
COND_USE_SEMVER_RECOMMENDED_PRE_STABLE_DEV_CYCLE -->|Yes| POSSIBLE_BUMPS_MINOR
COND_USE_SEMVER_RECOMMENDED_PRE_STABLE_DEV_CYCLE -->|No| POSSIBLE_BUMPS_MI_PA_DEV
COND_IS_THIS_OUR_FIRST_STABLE_RELEASE -->|Yes| POSSIBLE_BUMPS_MAJOR


%% PATH 2: Stable RELEASE v1.0.0 already Published

COND_HAS_STARTED_SEMVER_PROMISE -->|Yes| COND_ARE_THERE_BREAKING_CHANGES

COND_ARE_THERE_BREAKING_CHANGES -->|Yes| POSSIBLE_BUMPS_MAJOR

COND_ARE_THERE_BREAKING_CHANGES -->|No| COND_INCLUDES_FEATURE

COND_INCLUDES_FEATURE -->|Yes| POSSIBLE_BUMPS_MINOR
COND_INCLUDES_FEATURE -->|No| COND_INCLUDES_BUGFIX

COND_INCLUDES_BUGFIX -->|Yes| POSSIBLE_BUMPS_PATCH

COND_INCLUDES_BUGFIX -->|No| COND_INCLUDES_REFACTORING

COND_INCLUDES_REFACTORING -->|Yes| POSSIBLE_BUMPS_PATCH
COND_INCLUDES_REFACTORING -->|No| POSSIBLE_BUMPS_PRERELEASE

```

Non-Public API Changes

Essentially anything that is backwords-compatible.
Any non-breaking changes.

  • New Features, ie

    • adding a new CLI flag
    • adding support for new python 3.99 version (in backwords-compatible way)
    • adding support for "switching between different implementations"
  • New fixes, ie

    • fixing a bug (in backwords-compatible way)
    • fixing input DATA parsing