diff --git a/CHANGELOG.md b/CHANGELOG.md index 70829a9..7d85980 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,32 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## `granc` - [0.5.0](https://github.com/JasterV/granc/compare/granc-v0.2.4...granc-v0.5.0) - 2026-01-24 + +### Added + +- **Introspection Commands**: + - `list`: Lists all services available on the server (requires reflection). + - `describe`: Lists all methods within a specific service, prints the Protobuf definition of a message type or show all the variants of an enum. +- **Formatted Output**: Added colored output for Protobuf definitions, JSON responses, and error messages. + +### Changed + +- **[BREAKING] New CLI Structure**: The CLI now enforces a `granc ` structure. + - Previous implicit calls are now explicit: `granc http://... call ...`. + - The URL is now a global positional argument required for all commands. + +## `granc_core` - [0.4.0](https://github.com/JasterV/granc/compare/granc_core-v0.3.1...granc_core-v0.4.0) - 2026-01-24 + +### Added + +- **Introspection APIs**: Added `list_services` and `get_descriptor_by_symbol` to `GrancClient`. +- **Reflection Support**: Updated `ReflectionClient` to support the `ListServices` reflection method. + +### Changed + +- **Error Handling Refactor**: Overhauled error types to be more specific per method (`GetDescriptoError`, `ListServicesError`) and reduced internal duplication. + ## `granc` - [0.4.0](https://github.com/JasterV/granc/compare/granc-v0.2.4...granc-v0.4.0) - 2026-01-22 - Made a mistake publishing `granc 0.3` and introduced bugs, `granc 0.4` fixes them and its the first working version after `0.2.4`. diff --git a/Cargo.lock b/Cargo.lock index 66c95cd..4085962 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -336,7 +336,7 @@ dependencies = [ [[package]] name = "granc" -version = "0.4.0" +version = "0.5.0" dependencies = [ "clap", "colored", @@ -355,7 +355,7 @@ dependencies = [ [[package]] name = "granc_core" -version = "0.3.2" +version = "0.4.0" dependencies = [ "echo-service", "futures-util", diff --git a/granc-core/Cargo.toml b/granc-core/Cargo.toml index 0421196..85ad3b0 100644 --- a/granc-core/Cargo.toml +++ b/granc-core/Cargo.toml @@ -11,7 +11,7 @@ publish = true readme = "README.md" repository = { workspace = true } rust-version = { workspace = true } -version = "0.3.2" +version = "0.4.0" [lib] name = "granc_core" diff --git a/granc/Cargo.toml b/granc/Cargo.toml index d5d88dc..e63fc9f 100644 --- a/granc/Cargo.toml +++ b/granc/Cargo.toml @@ -11,12 +11,12 @@ publish = true readme = "../README.md" repository = { workspace = true } rust-version = { workspace = true } -version = "0.4.0" +version = "0.5.0" [dependencies] clap = { version = "4.5.54", features = ["derive"] } colored = "3.1.1" -granc_core = { path = "../granc-core" } +granc_core = "0.4.0" serde_json = { workspace = true } tokio = { workspace = true, features = ["rt-multi-thread", "macros"] } tonic = { workspace = true }