diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 0000000..6575dc9 --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,46 @@ +name: Release + +on: + push: + tags: + - v[0-9]+.* + +jobs: + create-release: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: taiki-e/create-gh-release-action@v1 + with: + changelog: CHANGELOG.md + token: ${{ secrets.GITHUB_TOKEN }} + + upload-assets: + needs: create-release + strategy: + matrix: + include: + - target: x86_64-unknown-linux-gnu + os: ubuntu-latest + build-tool: cargo-zigbuild + - target: aarch64-unknown-linux-gnu + os: ubuntu-latest + build-tool: cargo-zigbuild + - target: aarch64-apple-darwin + os: macos-latest + build-tool: cargo-zigbuild + - target: x86_64-apple-darwin + os: macos-latest + build-tool: cargo-zigbuild + - target: x86_64-pc-windows-gnu + os: windows-latest + build-tool: cargo-zigbuild + runs-on: ${{ matrix.os }} + steps: + - uses: actions/checkout@v4 + - uses: taiki-e/upload-rust-binary-action@v1 + with: + bin: jgrab-client + target: ${{ matrix.target }} + build-tool: ${{ matrix.build-tool }} + token: ${{ secrets.GITHUB_TOKEN }} diff --git a/CHANGELOG.MD b/CHANGELOG.MD new file mode 100644 index 0000000..ca9f4f1 --- /dev/null +++ b/CHANGELOG.MD @@ -0,0 +1,26 @@ +# Changelog + +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.1.0/), +and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). + +## [1.0-rc1] - 2024-04-27 + +### Changed + +- Minimum required Java version changed from 8 to 11. +- Replaced Apache Ivy with [JBuild](https://github.com/renatoathaydes/jbuild/) for resolving Maven dependencies. +- Consider Maven local repository (before trying Maven Central) to resolve dependencies. +- No longer use JCenter to resolve dependencies. +- Use `JGRAB_HOME` env var to find JGrab home if available, otherwise default to `$HOME/.jgrab/`. +- Cache resolved classpaths on JGrab Home (not using Ivy repository anymore). +- Cache `ClassLoader` for resolve classpaths in memory. +- No longer allow applications to access the JGrab's own `ClassLoader`. +- Better parsing of CLI options and error reporting. + +## [0.6.0] - 2017-05-16 + +### Added + +- Initial JGrab Release. diff --git a/jgrab-client/Cargo.lock b/jgrab-client/Cargo.lock index c540526..e7daef6 100644 --- a/jgrab-client/Cargo.lock +++ b/jgrab-client/Cargo.lock @@ -48,7 +48,7 @@ dependencies = [ [[package]] name = "jgrab-client" -version = "0.6.0" +version = "1.0.0" dependencies = [ "dirs", "wait-timeout", @@ -144,9 +144,9 @@ checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" [[package]] name = "wait-timeout" -version = "0.1.5" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9f3bf741a801531993db6478b95682117471f76916f5e690dd8d45395b09349" +checksum = "9f200f5b12eb75f8c1ed65abd4b2db8a6e1b138a20de009dacee265a2498f3f6" dependencies = [ "libc", ] diff --git a/jgrab-client/Cargo.toml b/jgrab-client/Cargo.toml index af778ce..f6a3ca9 100644 --- a/jgrab-client/Cargo.toml +++ b/jgrab-client/Cargo.toml @@ -1,12 +1,12 @@ [package] name = "jgrab-client" -version = "0.6.0" +version = "1.0.0" authors = [ "Renato Athaydes" ] [dependencies] dirs = "5.0.1" -wait-timeout = "0.1.5" +wait-timeout = "0.2.0" [profile.release]