diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 0000000..8b528fa --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,39 @@ +name: Release + +on: + push: + branches: ["main"] + +env: + BUILD_TYPE: Release + GH_TOKEN: ${{ secrets.SEMANTIC_RELEASE_TOKEN }} + PYTHONUTF8: 1 + +# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages +permissions: + contents: write + pages: write + id-token: write + packages: write + +jobs: + versioning: + name: Update Version + runs-on: ubuntu-24.04 + steps: + - name: Checkout + uses: actions/checkout@v4 + with: + fetch-depth: 0 + persist-credentials: false + - name: Run TinySemVer + uses: ashvardanian/tinysemver@v2.1.1 + with: + verbose: "true" + version-file: "VERSION" + update-version-in: | + CMakeLists.txt:VERSION (\d+\.\d+\.\d+) + dry-run: "false" + push: "true" + create-release: "true" + github-token: ${{ secrets.SEMANTIC_RELEASE_TOKEN }} diff --git a/CMakeLists.txt b/CMakeLists.txt index cd41619..ffe1099 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -4,7 +4,13 @@ cmake_minimum_required(VERSION 3.16 FATAL_ERROR) # ------------------------------------------------------------------------------ # Project Setup # ------------------------------------------------------------------------------ -project(less_slow LANGUAGES CXX) +project(less_slow + VERSION 0.1.0 + LANGUAGES C CXX + DESCRIPTION "Learning how to write Less Slow code, from numerical micro-kernels and SIMD to coroutines, ranges, and polymorphic state machines" + HOMEPAGE_URL "https://github.com/ashvardanian/less_slow.cpp") + +set(CMAKE_C_STANDARD 99) set(CMAKE_CXX_STANDARD 20) set(CMAKE_CXX_STANDARD_REQUIRED YES) set(CMAKE_CXX_EXTENSIONS NO) diff --git a/VERSION b/VERSION new file mode 100644 index 0000000..6c6aa7c --- /dev/null +++ b/VERSION @@ -0,0 +1 @@ +0.1.0 \ No newline at end of file