diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index 0227e2e..1c3a054 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -3,59 +3,67 @@ name: Release on: push: tags: - - "*" + - v[0-9]+.* jobs: - build: - strategy: - matrix: - os: [ubuntu-latest, macos-latest] - rust: [stable] + body: + runs-on: ubuntu-latest permissions: contents: write - - runs-on: ${{ matrix.os }} steps: - name: Checkout - uses: actions/checkout@master - - - name: Install just - uses: taiki-e/install-action@just - - - name: Install Rust - uses: actions-rs/toolchain@v1 + uses: actions/checkout@v4 + - name: Extract release notes + uses: ffurrer2/extract-release-notes@v2 + id: release_notes + - name: Upload Body + uses: softprops/action-gh-release@v2 with: - toolchain: stable + body: ${{ steps.release_notes.outputs.release_notes }} - - name: Setup build env for Linux - if: matrix.os == 'ubuntu-latest' + build: + permissions: + contents: write + continue-on-error: false + strategy: + matrix: + include: + - target: x86_64-unknown-linux-gnu + os: ubuntu-latest + - target: x86_64-unknown-linux-musl + os: ubuntu-latest + - target: aarch64-apple-darwin + os: macos-latest + - target: x86_64-apple-darwin + os: macos-latest + - target: x86_64-pc-windows-msvc + os: windows-latest + - target: aarch64-pc-windows-msvc + os: windows-latest + runs-on: ${{ matrix.os }} + steps: + - name: Checkout + uses: actions/checkout@v4 + - name: Add Musl + if: matrix.target == 'x86_64-unknown-linux-musl' run: | sudo apt update sudo apt install -y musl-tools gcc - rustup target add x86_64-unknown-linux-musl - - - name: Build for Linux - if: matrix.os == 'ubuntu-latest' - run: | - just build-release-linux - cp target/x86_64-unknown-linux-musl/release/tenere tenere-x86_64-linux-musl - - - name: Build for macos - if: matrix.os == 'macos-latest' - run: | - rustup target add aarch64-apple-darwin - just build-release-macos - cp target/x86_64-apple-darwin/release/tenere tenere-x86_64-macos - cp target/aarch64-apple-darwin/release/tenere tenere-aarch64-macos - - - name: Extract release notes - if: matrix.os == 'ubuntu-latest' - id: release_notes - uses: ffurrer2/extract-release-notes@v1 - - - name: Release - uses: softprops/action-gh-release@v1 + - name: Install Target + uses: dtolnay/rust-toolchain@stable + with: + targets: ${{ matrix.target }} + - name: Compile + run: cargo build --release --target ${{ matrix.target }} + - name: Strip Binary (linux) + if: matrix.target == 'x86_64-unknown-linux-gnu' || matrix.target == 'x86_64-unknown-linux-musl' + run: strip ./target/${{ matrix.target }}/release/tenere + - name: Rename Binary (unix) + if: runner.os != 'Windows' + run: mv ./target/${{ matrix.target }}/release/tenere ./tenere-${{ matrix.target }} + - name: Rename Binary (windows) + if: runner.os == 'Windows' + run: mv ./target/${{ matrix.target }}/release/tenere.exe ./tenere-${{ matrix.target }}.exe + - name: Upload Binary + uses: softprops/action-gh-release@v2 with: - body: ${{ steps.release_notes.outputs.release_notes }} files: "tenere*" - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/CHANGELOG.md b/CHANGELOG.md index 1ee341e..47e2eb5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,16 +2,31 @@ All notable changes to this project will be documented in this file. -The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), +and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). -## [0.11.1] 19/03/2024 + +## [unreleased] + +### Added + +* Windows executables to release. +* Windows config instructions. + + +### Changed + +* Reworked release github workflow. + + +## [0.11.1] - 2024-03-19 ### Changed - Update the license to GPLv3 - Update the notification layout -## [0.11] 02/02/2024 +## [0.11] - 2024-02-02 ### Added @@ -22,7 +37,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), - Remove borders for chat block -## [0.10] 27/01/2024 +## [0.10] - 2024-01-27 ### Added @@ -34,7 +49,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), - Use model from the config file if defined -## [0.9] 01/11/2023 +## [0.9] - 2023-11-01 ### Features @@ -44,33 +59,33 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), - Scroll bars -## [0.8] 20/08/2023 +## [0.8] - 2023-08-20 ### Features - Stop the stream response with the key `t` - Add scrollbar for the chat block -## [0.7] 12/08/2023 +## [0.7] - 2023-08-12 ### Features - Support streamig responses for ChatGPT -## [0.6] 27/04/2023 +## [0.6] - 2023-04-27 ### Features - display a spinner in the waiting message - chatgpt url is configureable -## [0.5] 22/04/2023 +## [0.5] - 2023-04-22 ### Features - Save the current chat or chat history to a file with the key `s` -## [0.4] 21/04/2023 +## [0.4] - 2023-04-21 ### Features @@ -80,7 +95,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), - Change `ctrl+l` to `n` to start a new chat -## [0.3] 20/04/2023 +## [0.3] - 2023-04-20 ### Features @@ -94,7 +109,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), - Remove mode block -## [0.2] 17/04/2023 +## [0.2] - 2023-04-17 ### Features @@ -104,6 +119,21 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), - Fix the scrolling issue -## [0.1] 16/04/2023 +## [0.1] - 2023-04-16 First release 🎉 + + +[unreleased]: https://github.com/WyvernIXTL/ubilerntui/compare/v0.11.1...HEAD +[0.11.1]: https://github.com/pythops/tenere/compare/v0.11...v0.11.1 +[0.11]: https://github.com/pythops/tenere/compare/v0.10...v0.11 +[0.10]: https://github.com/pythops/tenere/compare/v0.9...v0.10 +[0.9]: https://github.com/pythops/tenere/compare/v0.8...v0.9 +[0.8]: https://github.com/pythops/tenere/compare/v0.7...v0.8 +[0.7]: https://github.com/pythops/tenere/compare/v0.6...v0.7 +[0.6]: https://github.com/pythops/tenere/compare/v0.5...v0.6 +[0.5]: https://github.com/pythops/tenere/compare/v0.4...v0.5 +[0.4]: https://github.com/pythops/tenere/compare/v0.3...v0.4 +[0.3]: https://github.com/pythops/tenere/compare/v0.2...v0.3 +[0.2]: https://github.com/pythops/tenere/compare/v0.1...v0.2 +[0.1]: https://github.com/pythops/tenere/releases/tag/v0.1 \ No newline at end of file diff --git a/README.md b/README.md index dc0f308..c1c28e7 100644 --- a/README.md +++ b/README.md @@ -73,6 +73,8 @@ Tenere can be configured using a TOML configuration file. The file should be loc - Linux : `$HOME/.config/tenere/config.toml` or `$XDG_CONFIG_HOME/tenere/config.toml` - Mac : `$HOME/Library/Application Support/tenere/config.toml` +- Windows: `~/AppData/Roaming/tenere/config.toml` + ### General settings