Releases: gear-tech/sails
Releases · gear-tech/sails
Sails-JS v1.0.0
What's Changed
- fix(sails-rs): fix
get_unchecked_muttrusting safe-trait encoded_size() by @vobradovich in #1363 - fix: IDL Git includes & Fs includes security by @vobradovich in #1364
- refactor: simplify client Envs by @vobradovich in #1353
- fix(js): Unescaped IDL docs allow TypeScript code injection by @vobradovich in #1367
- fix(macros): Mutable program borrows can survive async dispatch by @vobradovich in #1365
- feat(macros): allow empty init payload for
#[program]without constructors, filter program-level dispatch by export codec by @vobradovich in #1357 - release: sync Sails-RS v1.0.0 to master by @github-actions[bot] in #1368
- release(js): v1.0.0 by @osipov-mit in #1369
- fix(js): release workflow by @osipov-mit in #1371
- fix(js): release workflow by @osipov-mit in #1372
Full Changelog: js/v1.0.0-beta.2...js/v1.0.0
Sails-RS v1.0.0
BREAKING CHANGE v1.0.0
- IDL V2 Introduction: Introduced a new version of the Interface Definition Language (IDL V2) along with its specification, Abstract Syntax Tree (AST), parser, and code generator. This new version provides enhanced capabilities and a more structured approach to defining interfaces.
- Sails Header for Message Routing: Implemented a standardized Sails Header (v1) for asynchronous messages. This header facilitates deterministic routing, improves off-chain decodability, and enables unique service fingerprinting without altering the underlying Gear message layout. Detailed specifications for the header, interface IDs, and ReflectHash are provided.
- Client Generation Logic Refinement: Updated the client generation process to align with IDL V2 and the new Sails Header. This includes changes to how service methods and events are identified and encoded/decoded, leveraging new
ROUTE_IDandINTERFACE_IDconstants for improved clarity and efficiency. - Sails Type Registry: Replace
scale-infowithsails-type-registry. - Comprehensive Documentation: Added new documentation files (
idl-v2-spex.md,interface-id-spec.md,reflect-hash-spec.md,sails-header-v1-spec.md) to thoroughly explain the new specifications and their implications for developers.
What's Changed
- feat(idl-v2): intoduce IDL V2 (spec, ast, parser, gen) and Sails Header (spec, routing, code gen) by @vobradovich in #1186
- feta: add Syscall - ::gas_available, ::read_bytes, ::system_reserve_gas, refine deps, add Syscall spec by @vobradovich in #1247
- feat: embed IDL in WASM custom sections (sails:idl) by @ukint-vs in #1261
- feat: replace scale-info with sails-type-registry by @m62624 in #1248
- feat: Client generation for IDL v1 using sails-rs 1.x.x by @vobradovich in #1286
- feat: add #[sails_type] attribute macro to simplify dervive by @vobradovich in #1297
- feat: Extend #[export] with per-function transport/encoding opt-in (scale and ethabi) by @vobradovich in #1303
- feat: Migrate type registry to IDL AST, add explicit generic type declarations by @vobradovich in #1314
- feat:
#[event]macros codec selection by @vobradovich in #1325 - feat: State trait, pattern, doc, examples by @vobradovich in #1331
- feat: Simplify service event listening API by @vobradovich in #1332
- feat(macros): allow empty init payload for
#[program]without constructors, filter program-level dispatch by export codec by @vobradovich in #1357
New Contributors
Full Changelog: rs/v0.10.3...rs/v1.0.0
Sails-JS v1.0.0-beta.2
What's Changed
- fix(js): validate route_idx in v2 header check; uniform events[x].type by @ukint-vs in #1340
- fix(js): validate reply prefix in decodeResult by @ukint-vs in #1315
- feat(js): service-scoped type resolution + generic substitution on TypeResolver by @ukint-vs in #1323
- feat(js): public user-type accessors on SailsProgram and SailsService by @ukint-vs in #1343
Full Changelog: js/v1.0.0-beta.1...js/v1.0.0-beta.2
Sails-RS v0.10.4
What's Changed
- feat: embed IDL in WASM custom sections (sails:idl) (#1261) by @vobradovich in #1290
- feat: embed IDL on build by @vobradovich in #1350
Full Changelog: rs/v0.10.3...rs/v0.10.4
Sails-RS v1.0.0-beta.5
BREAKING CHANGE v1.0.0
- IDL V2 Introduction: Introduced a new version of the Interface Definition Language (IDL V2) along with its specification, Abstract Syntax Tree (AST), parser, and code generator. This new version provides enhanced capabilities and a more structured approach to defining interfaces.
- Sails Header for Message Routing: Implemented a standardized Sails Header (v1) for asynchronous messages. This header facilitates deterministic routing, improves off-chain decodability, and enables unique service fingerprinting without altering the underlying Gear message layout. Detailed specifications for the header, interface IDs, and ReflectHash are provided.
- Client Generation Logic Refinement: Updated the client generation process to align with IDL V2 and the new Sails Header. This includes changes to how service methods and events are identified and encoded/decoded, leveraging new
ROUTE_IDandINTERFACE_IDconstants for improved clarity and efficiency. - Sails Type Registry: Replace
scale-infowithsails-type-registry. - Comprehensive Documentation: Added new documentation files (
idl-v2-spex.md,interface-id-spec.md,reflect-hash-spec.md,sails-header-v1-spec.md) to thoroughly explain the new specifications and their implications for developers.
What's Changed
- feat:
#[event]macros codec selection by @vobradovich in #1325 - feat: State trait, pattern, doc, examples by @vobradovich in #1331
- feat: Simplify service event listening API by @vobradovich in #1332
- feat: Extend
cargo sails newapp template by @vobradovich in #1333 - fix: drop
gclientfrom defaultcargo sails newdev-deps by @ukint-vs in #1335 - chore: Clarify service-local IDL type scopes by @vobradovich in #1341
- feat: scaffold a custom-DTO query to demonstrate
#[sails_type]by @ukint-vs in #1338 - fix(idl-v2): cycle/duplicate guards and FFI hardening by @ukint-vs in #1345
Full Changelog: rs/v1.0.0-beta.4...rs/v1.0.0-beta.5
Sails-RS v1.0.0-beta.4
BREAKING CHANGE v1.0.0
- IDL V2 Introduction: Introduced a new version of the Interface Definition Language (IDL V2) along with its specification, Abstract Syntax Tree (AST), parser, and code generator. This new version provides enhanced capabilities and a more structured approach to defining interfaces.
- Sails Header for Message Routing: Implemented a standardized Sails Header (v1) for asynchronous messages. This header facilitates deterministic routing, improves off-chain decodability, and enables unique service fingerprinting without altering the underlying Gear message layout. Detailed specifications for the header, interface IDs, and ReflectHash are provided.
- Client Generation Logic Refinement: Updated the client generation process to align with IDL V2 and the new Sails Header. This includes changes to how service methods and events are identified and encoded/decoded, leveraging new
ROUTE_IDandINTERFACE_IDconstants for improved clarity and efficiency. - Sails Type Registry: Replace
scale-infowithsails-type-registry. - Comprehensive Documentation: Added new documentation files (
idl-v2-spex.md,interface-id-spec.md,reflect-hash-spec.md,sails-header-v1-spec.md) to thoroughly explain the new specifications and their implications for developers.
What's Changed
- fix:
cargo sails newerror: failed to select a version for the requirement by @vobradovich in #1296 - fix: strip .wasm/.opt extensions from program name by @m62624 in #1300
- feat: add #[sails_type] attribute macro to simplify dervive by @vobradovich in #1297
- feat: migrate metadata from doc-comments to IDL annotations by @m62624 in #1301
- feat: Extend #[export] with per-function transport/encoding opt-in (scale and ethabi) by @vobradovich in #1303
- feat: add Address type by @m62624 in #1313
- fix(IDL): make Annotation ident rust compatible for
#[annotate(<ident>)], renameentry-idtoentry_idby @vobradovich in #1322 - feat: Migrate type registry to IDL AST, add explicit generic type declarations by @vobradovich in #1314
- feat(codegen): filter generated clients by codec annotations by @vobradovich in #1305
Full Changelog: rs/v1.0.0-beta.3...rs/v1.0.0-beta.4
Sails-RS v1.0.0-beta.3
BREAKING CHANGE v1.0.0
- IDL V2 Introduction: Introduced a new version of the Interface Definition Language (IDL V2) along with its specification, Abstract Syntax Tree (AST), parser, and code generator. This new version provides enhanced capabilities and a more structured approach to defining interfaces.
- Sails Header for Message Routing: Implemented a standardized Sails Header (v1) for asynchronous messages. This header facilitates deterministic routing, improves off-chain decodability, and enables unique service fingerprinting without altering the underlying Gear message layout. Detailed specifications for the header, interface IDs, and ReflectHash are provided.
- Client Generation Logic Refinement: Updated the client generation process to align with IDL V2 and the new Sails Header. This includes changes to how service methods and events are identified and encoded/decoded, leveraging new
ROUTE_IDandINTERFACE_IDconstants for improved clarity and efficiency. - Sails Type Registry: Replace
scale-infowithsails-type-registry. - Comprehensive Documentation: Added new documentation files (
idl-v2-spex.md,interface-id-spec.md,reflect-hash-spec.md,sails-header-v1-spec.md) to thoroughly explain the new specifications and their implications for developers.
What's Changed
- feat: add
git://support to IDL v2 includes by @m62624 in #1272 - fix: cargo
cargo sails newerror: failed to select a version for the requirement by @vobradovich in #1273 - feat: add
entry_idto IDL AST and use it across parser and generators by @vobradovich in #1275 - feat: replace scale-info with sails-type-registry by @m62624 in #1248
- feat: Client generation for IDL v1 using sails-rs 1.x.x by @vobradovich in #1286
Full Changelog: rs/v1.0.0-beta.2...rs/v1.0.0-beta.3
Sails-JS v1.0.0-beta.1
What's Changed
- feat(idl-v2): intoduce IDL V2 (spec, ast, parser, gen) and Sails Header (spec, routing, code gen) by @vobradovich in #1186
- feat: support type aliases in IDL v2 by @m62624 in #1264
- feat: add
entry_idto IDL AST and use it across parser and generators by @vobradovich in #1275 - feat(js): add bun build & bun tests by @vobradovich in #1284
- chore(js): update dependencies by @osipov-mit in #1288
- feat: Client generation for IDL v1 using sails-rs 1.x.x by @vobradovich in #1286
Full Changelog: js/v0.5.0...js/v1.0.0-beta.1
Sails-RS v1.0.0-beta.2
BREAKING CHANGE v1.0.0
- IDL V2 Introduction: Introduced a new version of the Interface Definition Language (IDL V2) along with its specification, Abstract Syntax Tree (AST), parser, and code generator. This new version provides enhanced capabilities and a more structured approach to defining interfaces.
- Sails Header for Message Routing: Implemented a standardized Sails Header (v1) for asynchronous messages. This header facilitates deterministic routing, improves off-chain decodability, and enables unique service fingerprinting without altering the underlying Gear message layout. Detailed specifications for the header, interface IDs, and ReflectHash are provided.
- Client Generation Logic Refinement: Updated the client generation process to align with IDL V2 and the new Sails Header. This includes changes to how service methods and events are identified and encoded/decoded, leveraging new
ROUTE_IDandINTERFACE_IDconstants for improved clarity and efficiency. - Comprehensive Documentation: Added new documentation files (
idl-v2-spex.md,interface-id-spec.md,reflect-hash-spec.md,sails-header-v1-spec.md) to thoroughly explain the new specifications and their implications for developers.
What's Changed
- feat(cli): fix template name conflict, remove old templates by @vobradovich in #1245
- fix: sails-cli idl gen for eth by @vobradovich in #1246
- feat: add Syscall - ::gas_available, ::read_bytes, ::system_reserve_gas, refine deps, add Syscall spec by @vobradovich in #1247
- fix: fn returns
CommandReply<()>with value must send manual reply by @vobradovich in #1254 - feat: support type aliases in IDL v2 by @m62624 in #1264
- feat: add include support to IDL v2 by @m62624 in #1175
- feat: embed IDL in WASM custom sections (sails:idl) by @ukint-vs in #1261
New Contributors
Full Changelog: rs/v1.0.0-beta.1...rs/v1.0.0-beta.2
Sails-JS v1.0.0-beta
js/v1.0.0-beta chore: inline macros to simplify code generation (#1258)