Skip to content

Releases: metatypedev/metatype

v0.5.0-rc.6

16 Nov 11:16
0273360
Compare
Choose a tag to compare

v0.5.0-rc.6 - 2024-11-14

Bug Fixes

(cli) Implement `--prefix` argument (#913)

Migration notes


  • The change comes with new or modified tests
  • Hard-to-understand functions have explanatory comments
  • End-user documentation is updated to reflect the change
(cli) Deployment after reloading config (#917)
  • Fixes typegraph deployment bug using meta dev after changing
    metatype.yml and added more watcher tests.

Migration notes


  • The change comes with new or modified tests
  • Hard-to-understand functions have explanatory comments
  • End-user documentation is updated to reflect the change
(subs) Disable save/kwargs mutation + better `LOG_LEVEL` (#915)

Tackles
MET-724
and
MET-730
.

  • A reference to run.kwargs should not be exposed directly, the
    kwargs used by the user should be a deep copy.
  • save now returns a deep copy of the returned value
  • noisy debug logs on substantial agent (disabled by default)

Migration notes

save will always refer to a deep clone of a value throughout the
initial run/replay.

const example = await ctx.save(() => someRef);
someRef.field = "changed!"; // will not affect example
  • The change comes with new or modified tests
  • Hard-to-understand functions have explanatory comments
  • End-user documentation is updated to reflect the change

Remove prisma count (#916)
  • Remove prisma count operation: it does not work, making it work like
    on the prisma client would complicate the prisma runtime (until we have
    output transformations...); Use aggregate instead.
  • Increase the delay before exiting the process on the nodejs typegraph
    client to give the CLI time to process all the output.
  • Remove quaint logs on the typegate (too verbose).

Migration notes


  • The change comes with new or modified tests
  • Hard-to-understand functions have explanatory comments
  • End-user documentation is updated to reflect the change

Documentation

`/docs/reference/graphql` (#875)
  • Adds page /docs/reference/graphql

v0.5.0-rc.5

10 Nov 15:30
d669167
Compare
Choose a tag to compare

v0.5.0-rc.5 - 2024-11-10

Bug Fixes

Meta dev does not exit properly upon `SIGTERM` (#895)

Migration notes

None

  • The change comes with new or modified tests
  • Hard-to-understand functions have explanatory comments
  • End-user documentation is updated to reflect the change
Fix optional field filter in apply (#909)
  • Fix the optional field filter on apply: resolve types before matching.

Migration notes

No migrations needed.


  • The change comes with new or modified tests
  • Hard-to-understand functions have explanatory comments
  • End-user documentation is updated to reflect the change

Documentation

Grpc annoucement blog (#872)

Migration notes

...

  • The change comes with new or modified tests
  • Hard-to-understand functions have explanatory comments
  • End-user documentation is updated to reflect the change

Features

(cli) Watch artifacts (#897)
  • ...

Migration notes


  • The change comes with new or modified tests
  • Hard-to-understand functions have explanatory comments
  • End-user documentation is updated to reflect the change
Substantial function secrets support (#908)
  • Add support for passing secrets to substantial workflows
  • Bump version to 0.5.0-rc5

  • The change comes with new or modified tests

Miscellaneous Tasks

License change to MPL Version 2.0 (#899) - BREAKING: license change to MPL Version 2.0 (#899)

Migration notes

All license headers has changed to MPL 2.0.

  • The change comes with new or modified tests
  • Hard-to-understand functions have explanatory comments
  • End-user documentation is updated to reflect the change

v0.5.0-rc.4

05 Nov 06:51
43faf11
Compare
Choose a tag to compare

v0.5.0-rc.4 - 2024-11-05

Bug Fixes

(typegraph) Send rpc message in chunks in the TS typegraph client (#904)
  • Send the JSON-RPC message is chunks in the TypeScript typegraph client
    to prevent reaching the line size limit for stdout. Note: we could not
    reproduce the issue locally as it only occurs when using the published
    package for Node.js.
  • Use JSON-RPC notification for logging and report from the typegraph
    clients.
  • Other changes:
    • Use relative paths for static task sources in the CLI;
  • Fix TODO in meta gen: pass the working directory on the
    working_dir param of SerializeActionGenerator::new.

Migration notes

N/A


  • The change comes with new or modified tests
  • Hard-to-understand functions have explanatory comments
  • End-user documentation is updated to reflect the change
Speculative fix for `typegate_prisma_test.ts` (#898)
  • Assigns special schemas for each test that relies on the
    runtimes/prisma/prisma.py typegraph.
  • Bumps version tag to 0.5.0-rc4
  • Fixes issues in release pipeline
  • Disables all but the test-full job when the test pipeline is run
    with tmate enabled.

The flakeout of typegate_prisma_test.ts has proved difficult to
recreate. Looking at the code and going from recent similar cases, I
suspect it happens due to the old code reusing the same pg schema for
multiple tests. Assigning special schemas for each tests should
hopefully help.

Migration notes

N/A


  • The change comes with new or modified tests

v0.5.0-rc.3

30 Oct 06:35
bb42c00
Compare
Choose a tag to compare

v0.5.0-rc.3 - 2024-10-30

Bug Fixes

Update license file (#890)

PR Summary

Commit d84e4ed moved the
LICENSE-MPL-2.0.md file. This PR adjusts sources to changes.

Migration notes

  • The change comes with new or modified tests
  • Hard-to-understand functions have explanatory comments
  • End-user documentation is updated to reflect the change
Minor bug fixes (#894)
  • Bug with typegraph context reset around deno_modules
  • Bug with typegate onPush hook error detection and typegraph parsing of
    such errors
  • Bug with artifact resolution when they're reused.
  • Bug with return type of the KvRuntime get functions
  • Bumps metatype to 0.5.0-rc.3

Migration notes

N/A


  • The change comes with new or modified tests
  • Hard-to-understand functions have explanatory comments
  • End-user documentation is updated to reflect the change

Documentation

Add substantial (#891)
  • docs
  • N/A

Migration

N/A

  • The change comes with new or modified tests
  • Hard-to-understand functions have explanatory comments
  • End-user documentation is updated to reflect the change

v0.5.0-rc.2

24 Oct 18:37
042ae80
Compare
Choose a tag to compare

v0.5.0-rc.2 - 2024-10-24

Bug Fixes

Fix `.apply` serialization error with optional structs (#886)
  • Fix the error on .apply when the apply tree goes beyond an optional
    struct, mostly changing the implementation of resolve_optional method.
  • Improve the errors when we encounter an exception raise by
    Result::Err from typegraph_core.

Migration notes

...

  • The change comes with new or modified tests
  • Hard-to-understand functions have explanatory comments
  • End-user documentation is updated to reflect the change

Features

Add GraphQL alias support for prisma runtime (#887)
  • Add GraphQL alias support for prisma runtime

Migration notes

...

  • The change comes with new or modified tests
  • Hard-to-understand functions have explanatory comments
  • End-user documentation is updated to reflect the change

v0.5.0-rc.1

22 Oct 20:46
54558c7
Compare
Choose a tag to compare

v0.5.0-rc.1 - 2024-10-22

Bug Fixes

(ci) Disable sccache when secrets not avail (#874)
  • Makes sccache optional so PRs from dependabot and forks can still run
    the test suite.
  • Increases sccache allotment to 50g.

(cli) Change default installation directory (#873)
  • Remplacement PR for #843.
  • ...

Migration notes

...

  • The change comes with new or modified tests
  • Hard-to-understand functions have explanatory comments
  • End-user documentation is updated to reflect the change

(docs) Grpc docs (#852)

Migration notes

...

  • The change comes with new or modified tests
  • Hard-to-understand functions have explanatory comments
  • End-user documentation is updated to reflect the change
(gate) Make __typename returns the variant name on unions (#838)
  • Add missing implementation for static injection for parameter
    transformations on the typegate
  • Solves
    MET-642:
    Fix the __typename result on union variants: return the variant name
    instead of the parent type name

Migration notes

N/A

Checklist

  • The change comes with new or modified tests
  • Hard-to-understand functions have explanatory comments
  • End-user documentation is updated to reflect the change
(subs) Key collision on redis (#865)

Follow up of #863
When multiple start occurs for redis, some schedules can happen
exactly at the same time resulting into the same identifier (and
leading to an inconsistent state).

This solution simply combines the schedule with the run_id making it
unique instead of using it as is.

mutation AllAtOnce {
  a: start_retry(kwargs: { .. }) # => calls add_schedule( ... date ...)
  b: start_retry(kwargs: { .. })
  c: start_retry(kwargs: { .. })
  d: start_retry(kwargs: { .. }) 
  e: start_retry(kwargs: { .. })
  f: start_retry(kwargs: { .. })
 # ..
}

Migration notes

None

  • The change comes with new or modified tests
  • Hard-to-understand functions have explanatory comments
  • End-user documentation is updated to reflect the change
Fix missing images (#847)

Fix missing images for durable execution blog

Migration notes

...

  • The change comes with new or modified tests
  • Hard-to-understand functions have explanatory comments
  • End-user documentation is updated to reflect the change
Improve name generation for prisma types (#849)

Solve
MET-657

Migration notes

...

  • The change comes with new or modified tests
  • Hard-to-understand functions have explanatory comments
  • End-user documentation is updated to reflect the change

Documentation

(blog) Running python with WebAssembly part 1 (#823)

Running python with webassembly (part 1)

Migration notes

None

  • The change comes with new or modified tests
  • Hard-to-understand functions have explanatory comments
  • End-user documentation is updated to reflect the change

Summary by CodeRabbit

Summary by CodeRabbit

  • New Features

  • Introduced a comprehensive guide for integrating Python runtime with
    WebAssembly (WASI) in the Metatype ecosystem.

  • Detailed the advantages of using WebAssembly over Docker for platform
    independence and resource management.

  • Provided technical requirements and a refined solution for executing
    Python scripts in a sandboxed environment.

  • Expanded vocabulary with new relevant terms for enhanced text
    processing and validation.

  • Documentation

  • Updated YAML configuration structure in documentation for clarity on
    type gate usage.


`/docs/reference/typegraph/client` (#777)

Pre-documentation for the code-first queries feature.

Migration notes

...

  • The change comes with new or modified tests
  • Hard-to-understand functions have explanatory comments
  • End-user documentation is updated to reflect the change

Features

(dev) Typegraph explorer (#859)
  • Add a web version of tree-view which is more interactive
  • Enable typegraph serialization without metatype.yml config file

image

(gate) Empty object as custom scalar (#876)
  • Allow empty object on the output without any change
  • Just like Int, String, and such, rightfully refer the constant
    {} as a scalar
  • Any empty object will now be refered as EmptyObject scalar

Migration notes

None

  • The change comes with new or modified tests
  • Hard-to-understand functions have explanatory comments
  • End-user documentation is updated to reflect the change
(mdk) Overridable templates (#842)

Solve
MET-630

  • Make templates in the static sections overridable
    • mdk_rust
    • mdk_python
    • mdk_typescript
  • Add a CLI tool to generate extract the default template

Migration notes

No changes needed.


  • The change comes with new or modified tests
  • Hard-to-understand functions have explanatory comments
  • End-user documentation is updated to reflect the change
(metagen) Union/either for clients (#857)
  • Add union support for the client_xx metagen implementations.

There are still some edge cases especially around variant identification
in the client languages. I tried many things but our hands are tied by
serde. Basically, users will have to be careful when designing their
union types to avoid ambiguity cases. Hopefully,
674
will help there.

Migration notes

...

  • The change comes with new or modified tests
  • Hard-to-u...
Read more

v0.4.10

04 Sep 12:43
67c1d0f
Compare
Choose a tag to compare

v0.4.10 - 2024-09-04

Miscellaneous Tasks

Bump to v0.4.10 (#835)
  • Bump v0.4.10

v0.4.10-rc1

03 Sep 08:40
2e692b9
Compare
Choose a tag to compare

v0.4.10-rc1 - 2024-09-03

Bug Fixes

Use import_map at runtime (#833)
  • Bump to release v0.4.10-rc1
  • Use import_map.json at runtime since remote configs aren't supported

v0.4.9-rc2

02 Sep 13:23
65a9db0
Compare
Choose a tag to compare

v0.4.9-rc2 - 2024-09-02

Miscellaneous Tasks

(release) Prepare 0.4.9-rc2 (#829)
  • Fix the minor issues with rc1
  • Bump to rc2

v0.4.9-rc1

02 Sep 09:04
d84e4ed
Compare
Choose a tag to compare

v0.4.9-rc1 - 2024-09-02

Features

(docs) Post on `Durable Execution`. (#816)
(metagen) Client_ts (#790)
  • Implements client_ts as described in #777 .

Migration notes

...

  • The change comes with new or modified tests
  • Hard-to-understand functions have explanatory comments
  • End-user documentation is updated to reflect the change

Summary by CodeRabbit

  • Bug Fixes

  • Improved error handling in the typegraph function to provide better
    error messages.

  • Chores

  • Updated Docker image references to use docker.io prefix for
    consistency.

    • Excluded unnecessary files from the VSCode settings.
    • Enhanced configurability of Docker commands in development tasks.
  • Updated environment variable GHJK_VERSION to reflect a semantic
    versioning format.

  • New Features

  • Introduced modules and methods for TypeScript and Python code
    generation in the metagen library, enhancing client generation
    capabilities.

    • Added test_typegraph_3 function for improved testing capabilities.
    • Included metadata for the package manager in the project settings.
(sub) Sdk and typing (#811)

User side of substantial

Migration notes

None

  • The change comes with new or modified tests
  • Hard-to-understand functions have explanatory comments
  • End-user documentation is updated to reflect the change
Add caching to Secrets struct to improve performance (#813)

Migration notes

  • The change comes with new or modified tests
  • Hard-to-understand functions have explanatory comments
  • End-user documentation is updated to reflect the change

Refactor

(docs, gate) Push for `meta dev` instead of `meta typegate` on docs (#822)

Ensure documentation is pushing for meta dev instead of meta typegate

  • add a warning that envs are not set.

MET-635

Migration notes

No Migration Needed

  • The change comes with new or modified tests
  • Hard-to-understand functions have explanatory comments
  • End-user documentation is updated to reflect the change
Flatten deps and improve repo folder (#821)
  • Renames libs/ to src/.
  • Moves typegate/, meta-cli, typegraph/, meta-lsp/ to src/.
  • Renames dev/ to tools/
  • Moves website/ to docs/metatype.dev/
  • Moves src/typegate/tests to tests/
  • Moves src/typegraph/deno/dev to tools/jsr/
  • Moves src/typegraph/deno/sdk to src/typegraph/deno/
  • Renames src/deno to src/mt_deno
  • Bumps deno to 1.46.1
  • Bumps rust toolchain to 1.80.1
  • Moves all rust dependencies to workspace section
  • Moves tools/task-*.ts to tools/task/*.ts
  • Moves cliff.toml, Cross.toml, ruff.toml to tools/
  • Uses deno
    workspaces to
    organize src/typegraph/deno, src/typegate, tools/, tests/ and
    more.
  • Closes MET-607
  • Updates poetry to 1.8.3
  • Bumps metatype to version 0.4.9-rc1
  • Update CONTRIBUTING.md
  • Fix CI workflows
  • Fix Dockerfile
  • Fix all tests

Migration notes

  • No end user changes required

  • The change comes with new or modified tests

  • Hard-to-understand functions have explanatory comments

  • End-user documentation is updated to reflect the change