Releases: modiimedia/arri
v0.70.1
What's Changed
If a particular language isn't mentioned then no change occurred.
Go
Breaking Changes
EncodeJSON
now acceptEncodingOptions
as one of it's parametersDecodeJSON
now acceptsEncodingOptions
as one of it's parametersFromUrlQuery
has been renamed toDecodeQueryParams
FromUrlQuery
now acceptsEncodingOptions
as one of it's parametersContext
interface has been renamed toEvent
to prevent confusion withcontext
from the STDEncodeJSON
in theArriModel
interface now acceptsEncodingOptions
as its parameter- When encoding enums the first specified enum value will be used as a fallback during serialization
- When encoding discriminated unions the first specified subtype will be used as a fallback during serialization
Non-Breaking Changes
- Initial support for RPC middleware has been added
Len()
method has been added toOrderedMap
Entries()
method has been added toOrderedMap
Keys()
method has been added toOrderedMap
- Add documentation for helper types
Tooling
Breaking Changes
json-schema-to-jtd
package has been deprecated and replaced withjson-schema-to-atd
@arrirpc/jtd-utils
package has been deprecated and replaced with@arrirpc/type-defs
Non-Breaking Changes
json-schema-to-atd
now supports converting "string" with "date-time" format totimestamp
type
Other
- Update dev dependencies
- Move all ts server and client libraries to
languages/ts
for consistency
Full Changelog: v0.69.2...v0.70.1
v0.69.2
What's Changed
- feature: add support for dictionary types when converting from JSON schema to ATD by @joshmossas in #120
Full Changelog: v0.69.1...v0.69.2
v0.69.1
What's Changed
- [arri use] bugfix: await all pending go mod file update tasks by @joshmossas in #119
Full Changelog: v0.69.0...v0.69.1
v0.69.0
What's Changed
Overview
- feature: golang - expose ArriModel interface publicly by @joshmossas in #118
Go
ArriModel
is now exposed publicly
You can now implement the ArriModel
interface to tell Arri how a particular struct should be serialized, deserialized, and represented as an Arri Type Definition.
This release also includes an IsArriModel
helper function which can be used to test whether a particular struct implements the ArriModel
interface
Full Changelog: v0.68.0...v0.69.0
v0.68.0
Overview
- chore: add integration tests for serializing transformed keys by @joshmossas in #115
- chore: update libs by @joshmossas in #116
- feature: add "onError" hook to generated clients by @joshmossas in #102 specifically (ts, dart, swift, and kotlin)
- feature: add go mod support to "arri use" by @joshmossas in #117
Full Changelog: v0.67.0...v0.68.0
v0.67.0
What's Changed
- Bugfix: optional types should respect original json key during serialization by @joshmossas in #114
Full Changelog: v0.66.0...v0.67.0
v0.66.0
What's Changed
- Refactor: change schema for
Generator
used in generator plugins - Feature: export metadata for rpc overrides by @joshmossas in #111
- Feature: support $ref when converting json schema to ATD by @joshmossas in #112
Breaking Change
Generator
type has changed from
export interface Generator<TOptions extends Record<string, any> | undefined> {
generator: (def: AppDefinition, isDevServer?: boolean) => any;
options: TOptions;
}
To
export interface Generator<TOptions extends Record<string, any> | undefined> {
// this property has been renamed
run: (def: AppDefinition, isDevServer?: boolean) => any;
options: TOptions;
}
All future generator plugins using 0.66.0 or later must adjust to match this new interface.
Full Changelog: v0.65.2...v0.66.0
v0.65.2
Full Changelog: v0.65.1...v0.65.2
v0.65.1
What's Changed
- remove unnecessary log from init command by @joshmossas in #109
Full Changelog: v0.65.0...v0.65.1
v0.65.0
What's Changed
- Bugfix: go server validations should error with empty body by @joshmossas in #107
- Feature: procedure overrides for ts client generation by @joshmossas in #108
- Chore: setup publishable go module for the Arri RPC go server
- Feature:
arri init
now supports scaffolding a go project
Full Changelog: v0.63.4...v0.65.0