mirror of
https://codeberg.org/JasterV/granc.git
synced 2026-04-26 18:40:05 +00:00
This is an automated PR generated by [release-plz](https://github.com/MarcoIeni/release-plz) via Woodpecker CI. Co-authored-by: release-plz-bot <bot@codeberg.org> Reviewed-on: https://codeberg.org/JasterV/granc/pulls/4
8.1 KiB
8.1 KiB
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
[Unreleased]
granc - 0.7.6 - 2026-04-22
Other
- update dependencies
granc_core - 0.6.4 - 2026-04-22
Other
- update Cargo.toml dependencies
granc - 0.7.5 - 2026-04-22
- refactor: use streams for streaming responses' (#2)
granc_core - 0.6.3 - 2026-04-22
- refactor: use streams for streaming responses' (#2)
granc - 0.7.4 - 2026-03-09
- [chore] Migration to Codeberg
granc_core - 0.6.2 - 2026-03-09
- [chore] Migration to Codeberg
granc - 0.7.3 - 2026-02-11
- [fix] Support for cargo binstall
granc - 0.7.2 - 2026-02-11
- [chore] Add support for cargo binstall
granc - 0.7.1 - 2026-02-06
- [feat] Add a new command to generate markdown documentation for gRPC services (#46)
- (deps) bump clap from 4.5.55 to 4.5.56 (#45)
granc_core - 0.6.1 - 2026-02-06
- Added
name,full_name, andpackage_namemethods toDescriptorto simplify access to descriptor metadata.
granc - 0.7.0 - 2026-01-28
- (deps) bump clap from 4.5.54 to 4.5.55 (#36)
- [fix] A URL should not be required for list and describe commands (#35)
- [test] Added comprehensive tests for CLI argument parsing and validation.
granc_core - 0.6.0 - 2026-01-28
- [refactor] Now the
GrancClientalso provides a full offline state and other states have been renamed to be more idiomatic (#35)
granc - 0.6.0 - 2026-01-27
- Make the
--file-descriptor-seta global option for all commands, so reflection commands can also be executed against a local descriptor. (#28)
granc_core - 0.5.0 - 2026-01-27
- Typestate design refactor: The GrancClient has been refactored to support multiple states where invariants for each state are ensured by the compiler. (#28)
- The GrancClient can be in either a
WithServerReflectionstate or aWithFileDescriptorstate, and both states have independent APIs (Async vs sync).
- The GrancClient can be in either a
granc - 0.5.1 - 2026-01-24
Other
- Update deps: Update
granc_coreto0.4.1
granc_core - 0.4.1 - 2026-01-27
Other
- Internal clean up: We've replaced our own script that generated the Reflection client to use
tonic-reflectioninstead. (#29)
granc - 0.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 <URL> <COMMAND>structure.- Previous implicit calls are now explicit:
granc http://... call <ENDPOINT> .... - The URL is now a global positional argument required for all commands.
- Previous implicit calls are now explicit:
granc_core - 0.4.0 - 2026-01-24
Added
- Introspection APIs: Added
list_servicesandget_descriptor_by_symboltoGrancClient. - Reflection Support: Updated
ReflectionClientto support theListServicesreflection method.
Changed
- Error Handling Refactor: Overhauled error types to be more specific per method (
GetDescriptoError,ListServicesError) and reduced internal duplication.
granc - 0.4.0 - 2026-01-22
- Made a mistake publishing
granc 0.3and introduced bugs,granc 0.4fixes them and its the first working version after0.2.4.
granc_core - 0.3.1 - 2026-01-22
Other
- Update granc-core documentation
granc_core - 0.3.0 - 2026-01-22
- Fix: separate reflection generation binary to not be published (#20)
granc - 0.2.4 - 2026-01-22
- Published granc-core as a library crate
granc-core(#16)
granc_core - 0.2.4 - 2026-01-22
- Published granc-core as a library crate
granc-core(#16)
granc - 0.2.3 - 2026-01-21
- Internal refactor: Decouple ReflectionClient to possibly publish in a separate crate
granc - 0.2.2 - 2026-01-21
- Updated README.md
granc - 0.2.1 - 2026-01-21
- Updated README
granc - 0.2.0 - 2026-01-21
Added
- Automatic Reflection: The tool now supports automatic reflection, trying to reach the reflection service in the server if the user doesn't provide a file descriptor binary (#9)
granc - 0.1.0 2026-01-20
Added
- Dynamic gRPC Client: Implemented a CLI that performs gRPC calls without generating Rust code, bridging JSON payloads to Protobuf binary format at runtime.
- Schema Loading: Support for loading Protobuf schemas dynamically from binary
FileDescriptorSet(.binor.pb) files. - Full Streaming Support: Automatic dispatch for all four gRPC access patterns based on the method descriptor:
- Unary (Single Request → Single Response)
- Server Streaming (Single Request → Stream)
- Client Streaming (Stream → Single Response)
- Bidirectional Streaming (Stream → Stream)
- JSON Transcoding: Custom
tonic::Codecimplementation (JsonCodec) to validate and transcodeserde_json::Valueto/from Protobuf bytes on the fly. - Metadata Support: Ability to attach custom headers/metadata to requests via the
-H/--headerflag. - Input Validation: Fast-fail validation that checks if the provided JSON structure is valid before making the network request.