Skip to content

Releases: modiimedia/arri

v0.70.1

28 Dec 02:12
Compare
Choose a tag to compare

What's Changed

If a particular language isn't mentioned then no change occurred.

Go

Breaking Changes

  • EncodeJSON now accept EncodingOptions as one of it's parameters
  • DecodeJSON now accepts EncodingOptions as one of it's parameters
  • FromUrlQuery has been renamed to DecodeQueryParams
  • FromUrlQuery now accepts EncodingOptions as one of it's parameters
  • Context interface has been renamed to Event to prevent confusion with context from the STD
  • EncodeJSON in the ArriModel interface now accepts EncodingOptions 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 to OrderedMap
  • Entries() method has been added to OrderedMap
  • Keys() method has been added to OrderedMap
  • Add documentation for helper types

Tooling

Breaking Changes

  • json-schema-to-jtd package has been deprecated and replaced with json-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 to timestamp 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

07 Dec 16:51
Compare
Choose a tag to compare

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

04 Dec 19:51
Compare
Choose a tag to compare

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

04 Dec 19:39
Compare
Choose a tag to compare

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

30 Nov 06:13
Compare
Choose a tag to compare

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

22 Nov 16:03
Compare
Choose a tag to compare

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

14 Nov 19:57
Compare
Choose a tag to compare

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

13 Nov 03:48
Compare
Choose a tag to compare

Full Changelog: v0.65.1...v0.65.2

v0.65.1

13 Nov 03:35
Compare
Choose a tag to compare

What's Changed

Full Changelog: v0.65.0...v0.65.1

v0.65.0

12 Nov 20:56
Compare
Choose a tag to compare

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