Skip to main content

Changelog

All notable changes to this project will be documented in this file.

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 - 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 - 2024-10-30

Bug Fixes

Update license file (#890)

PR Summary

Commit d84e4ed6c3f88d52c95f1491a050daa924e14b87 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 - 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 - 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-understand functions have explanatory comments
  • End-user documentation is updated to reflect the change

Summary by CodeRabbit

  • New Features

  • Introduced new methods for rendering union types in both TypeScript and Python.

  • Enhanced GraphQL query generation with support for multiple union types.

  • Added a new variants property to the NodeMeta type for improved selection handling.

  • Bug Fixes

    • Improved error handling for node selections and argument processing.
  • Tests

  • Updated test cases to reflect schema changes and added new tests for client functionality.

(subs) Redis backend (#855)

  • Redis Backend base logic port + some improvements
  • Moved SUBSTANTIAL_POLL_INTERVAL_SEC and SUBSTANTIAL_LEASE_LIFESPAN_SEC to config

Migration notes

  • Renamed Backend.fs() and Backend.memory() to Backend.dev_fs() and Backend.dev_memory()
  • Removed SUBSTANTIAL_RELAUNCH_MS as it was relevant only for purely worker-based runs, which rendered the new SUBSTANTIAL_POLL_INTERVAL_SEC redundant when an interrupt hits.
  • 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

Release Notes

  • New Features

  • Introduced Redis as a new backend option for enhanced data management.

    • Added Docker Compose configuration for a Redis service.
  • Implemented comprehensive testing for Redis functionality and backend integration.

  • Bug Fixes

    • Improved error handling during backend initialization.
  • Documentation

  • Updated type definitions for backend configurations to streamline Redis integration.

  • Chores

  • Refactored test cases for clarity and consistency across different backend types.

(subs) Retry + timeout on save (#863)

Port and improve retry/timeout.

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

(subs) Child workflows + docs (#867)

Support for child workflows.

Solves MET-689 and MET-668.

Migration notes

Previously

    sub = SubstantialRuntime(backend)
hello = sub.deno(file="workflow.ts", name="sayHello", deps=[])

g.expose(
# each function start, stop, result, ... holds a copy of the workflow data
start_hello = hello.start(...),
stop_hello = hello.stop()
)

This approach relied on workflow files being referenced in each materializer, but the constructs were too restrictive to support something like mutation { results(name: "nameManuallyGiven") }.

We now have instead

    file = (
WorkflowFile
.deno(file="workflow.ts", deps=[])
.import_(["sayHello"])
.build()
)

# workflow data are refered only once
sub = SubstantialRuntime(backend, [file])
g.expose(
start_hello = sub.start(...).reduce({ "name": "sayHello" }),
stop = sub.stop()
)
  • 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,gate) Substantial integration (#844)

(subs,gate) Port agent concept (#845)

Continuation of #844

Well-defined type comparison semantics (#846)

Solve MET-655

  • Document the type comparison semantics
  • Improve the implementation (EnsureSubtypeOf trait)
  • Add more test cases for type comparisons

Migration notes

No change is 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

Summary by CodeRabbit

Release Notes

  • New Features

  • Introduced comprehensive type comparison rules and semantics for scalar types, optionals, lists, objects, and unions.

  • Added support for enumerated types in the type system, allowing for more precise type definitions.

  • Enhanced parent injection mechanism documentation to clarify type compatibility requirements.

  • Implemented a new suite of type comparison tests and validation mechanisms.

  • Bug Fixes

  • Improved error reporting and handling in the type validation process.

  • Documentation

  • Updated and expanded documentation for type comparisons, enumerations, and parent injections.

  • Tests

    • Added new tests for type comparison and validation scenarios.

Grpc runtime (#819)

Migration notes

...

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

Python hostcall (#860)

Dead lock on python worker

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

Miscellaneous Tasks

Checks/validation on t.either (#868)

  • BREAKING: Checks/validation on t.either (#868)

Emit a warning or an error when a variant is a subtype of another one.

Migration notes

BREAKING CHANGE: Previously valid typegraph might fail validation. You will need to fix your types to add some consistency in t.either/t.union types.

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

Update prisma + deno + rust deps (#869)

  • Bump deno to 1.46.3
  • Update prisma-engines to 5.20
  • Update other rust deps.

Closes MET-669 and MET-622 and MET-680.

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

(gate) Add err msg for missing env vars (#827)

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) Use stream during artifact upload to s3 (#841)

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

(gen, doc) Rename mdk to fdk (#851)

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

(sdk) Remove index based names (#848)

  • BREAKING: remove index based names (#848)
  • Replace index based names for types by one that relies on type context in graph
  • Tests for type deduplication

Migration notes

TODO

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

Move as_id out of TypeNode (#866)

  • BREAKING: Move as_id out of TypeNode (#866)

Solve MET-684 and MET-471

  • common/typegraph
  • Store the id field in ObjectTypeData instead of in the target type (as_id)
    • Add id() method on t.integer and t.string
  • typegraph/core
    • Store as_id, injection and policy in TypeRef::attribute
    • Add support for direct and link target in TypeRef
    • Only allow name registration for TypeDef
  • Semantics
  • Use property name instead of type name in from_parent injection source

Migration notes

BREAKING CHANGE from_parent injections source shall be changed to the key in the parent t.struct instead of the type name.

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

Move injection data to t.func (#871)

MET-682

  • Move all injection data in ObjectTypeData (i.e. t.func)

MET-656

  • Translate reduce to injection specification on t.func

MET-94

  • Remove runtime field from TypeNode (#858)

MET-683

  • Move runtime-related configs to MaterializerData or RuntimeData
  • Misc.
  • Enable random ports for the typegate (when TG_PORT=0); this will work with meta dev with embedded typegate if you set the --gate option with port 0.

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.4.10 - 2024-09-04

Miscellaneous Tasks

Bump to v0.4.10 (#835)

  • Bump v0.4.10

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 - 2024-09-02

Miscellaneous Tasks

Bump to v0.4.9 (#831)

  • Bump version to v0.4.9
  • Fix issue with cross config context

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 - 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


v0.4.8 - 2024-08-16

Bug Fixes

Table method for kv runtime (#815)

I discover an issue in the KV runtime documentation kvruntime docs

wasm_backtrace config bug (#814)

  • $WASM_BACKTRACE_DETAILS was enabled in main ghjk env which affected embedded wasm module compilation to have backtrace enabled. This broke typegate runs without the flag enabled due to mismatch.
  • Fixes Cargo.lock not being used in Dockerfile.
  • Prepare 0.4.8 release

Features

Kv runtime (#797)

Migration notes

...

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

Miscellaneous Tasks

Bump to 0.4.8-0 (#810)

  • Bump prerelease
  • Fix minor issue with release pipeline

v0.4.7 - 2024-08-08

Features

(cli) Fix auto deployment (#806)

  • Upgrade lade-sdk
  • Fix discovery
  • Remove obsolete dep: actix-web
  • lade-sdk uses the main branch, which now has the fix for the following issues:
  • dependency version conflict with deno: url is set at <2.5.0;
  • required ProjectID error for infisical: the project id is added explicitly on the command.

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

Cors headers on error (#803)

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

Miscellaneous Tasks

Bump to 0.4.7-0 (#805)

  • Bump version to 0.4.7-0

Refactor

(docs) Add how to test typegraphs doc (#798)

How to test your typegraphs documentation

  • add python doc
  • add ts doc
  • upgrade bitnami/minIo image to 2024?

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

Summary by CodeRabbit

  • New Features

  • Updated the Minio service to the latest version for improved performance and potential new features.

  • Introduced comprehensive documentation for testing typegraphs in both TypeScript and Python, enhancing developer experience.

  • Documentation

    • Enhanced readability of the Meta CLI upgrade instructions.
  • Reformatted installation instructions for the typegraph package for better clarity.

  • Chores

  • Updated dependency management configuration for improved compatibility and performance across different platforms.

Improve JSR score (part 1) (#807)

  • Add symbol documentations
  • Fix slow types

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.4.6 - 2024-08-01

Features

Better arg split logic for MCLI_LOADER (#799)

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

Miscellaneous Tasks

Prepare 0.4.6 (#795)

  • Bump version to 0.4.6-0
  • Add sanity tests for published SDKs
  • Bump deno to 1.45.2
  • Bump rust to 1.79.0
  • Fix myriad of bugs

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

  • New Features

  • Introduced new logging capabilities in the ConnectedEngine with adjustable logging levels.

  • Implemented cleanup procedures in tests to enhance resource management.

  • Bug Fixes

  • Fixed import paths for permissions to ensure correct functionality in tests and applications.

  • Version Updates

  • Incremented version numbers across multiple projects and packages to reflect ongoing development and improvements.

  • Documentation

  • Added comments to clarify code behavior and potential future considerations in various modules.

  • Refactor

  • Optimized string handling in several functions and adjusted method signatures for improved clarity and efficiency.

Refactor

(docs) Better documentation on quick-start page (#793)

Improve the documentation on quick-start page

  • add dev hunt result to homepage.

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.4.5 - 2024-07-18

Bug Fixes

Broken pipeline for 0.4.4 (#782)

Fixes erroneous usage of setup-deno which has been replaced by ghjk itself.

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

Broken release pipeline 2 (#783)

Fix issue with the three remaining failing jobs.

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

Release pipeline 3 (#784)

  • Remove accidental dry-run from jsr publish
  • Fix cross dockerfile

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

Skip deno stack trace from error message (#787)

Skip the deno stack trace from the error message when tg_manage fails.

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

Features

(cli) Configurable backoff (#789)

  • BREAKING: configurable backoff (#789)
  • Make the backoff configurable through the --retry and --retry-interval-ms options.
  • The default max retry count is changed to 0 on the default mode, and remains 3 on the watch mode.
  • The --max-parallel-loads option has been renamed to --threads.

Migration notes

The --max-parallel-loads option has been renamed to --threads.

  • 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 list subcommand features to meta_cli (#775)

new branch after conflict with main branch

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

Upgrade www and gha (#786)

Add back gleap (#791)

  • Gleap.io was removed a while back
  • this adds it back so visitors can open ticket and suggest feedback
  • internally, we will use this to fine tune the documentation

Miscellaneous Tasks

Bump v0.4.5 (#792)

  • Bumps metatype version to 0.4.5
  • Bumps ghjk to latest commit
  • Fixes setup whiz task to avoid issues on macos
  • Fixes release pipeline to publish JSR

MET-614 MET-606 MET-605 MET-613

Migration notes

No 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

v0.4.4 - 2024-07-05

Bug Fixes

(gate) Ensure all deps are defined in import_map.json (#768)

Ensure that all deps are defined in import_map.json with a specific version.

Missing typegraphs (#755)

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

Stable formatting and uniformize the code-loader (#766)

  • add prettier to avoid doc formatting issue
  • now explicitly require !!code-loader! to load code inside the documentation (will hopefully help also with the missing typegraphs issues, still under investigation)
  • 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

Generate clients from openapi (#778)

Demonstrate how to use the openapi spec to generate clients in most languages/frameworks.

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

  • Documentation
  • Updated REST API documentation URLs with placeholders for easier configuration.
  • Added information on generating and using OpenAPI clients, including TypeScript fetch client generation.
  • Bug Fixes
  • Corrected a regular expression in import handling to ensure accurate replacements.
  • Chores
  • Improved file writing by appending a newline character to JSON strings.

Features

Move all the configs to one single file (#733)

  • Move all the configs to one single file
  • Remove some specific configs from the global config variable and make them accessible on the Typegate instance, to improve test configurability.

Migration notes

  • SYNC_REDIS_PASSWORD has been removed, can only be set on the SYNC_REDIS_URL.

  • 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 restrictions for union/either types (#761)

In the previous versions, we restricted the variant types allowed in union/either to be all in the same category (after flattening multi-level unions):

  • Category 1 - GraphQL leaf types: scalar type, or array of scalar type, which require no selection set on GraphQL.
  • Category 2 - GraphQL non-leaf types: object type or array of object type, which require a selection set on GraphQL (aka selectable types in the codebase).

Those restrictions can be lifted, and the selection field of an union-type field will have inline fragments with type conditions for each Category 2 variant. No type condition is required for Category 1 types, the selection sets are not relevant.

The case that is not handled by this PR is when one of the variants is an array of union type.

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

Typegate in meta dev, upgrade test (#776)

  • Test the typegate upgrade from the latest published version to the current version.
  • Add a flag to run an instance of the typegate with the target configuration (port, admin passsword) to meta deploy, enabled by default for meta dev.

Migration notes

If you have a script that runs meta dev, add the flag --no-typegate if you already have a typegate.

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

Miscellaneous Tasks

Add programmatic deploy tests (#769)

Add Programmatic deploy tests for the docs

  • Add programmatic typegraph deploy/remove tests
  • refactor tg_remove to accept typegraph_name instead of TypegraphOutput obj.

MET-591

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

Bump to version 0.4.4 (#779)

Prepare release of the 0.4.4 version.

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

(sdk) Back to deno + jsr exploration (#760)

  • BREAKING: back to deno + jsr exploration (#760)

Try reverting back to deno runtime for the typescript sdk in hope of making the dx easier. Hosting a custom node/npm project adds more layer of indirection which may result in cryptic issues sometimes.

This should also facilitate publishing on jsr although additional work are still required on the jco codegen side.

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

Move to ghjk 0.2.0 (#754)

  • Refactors the ghjk.ts, CI to the latest version of ghjk
  • Bumps version to 0.4.4-0
  • Fixes race bug in python_sync tests
  • Fixes flakeout of wasm build.sh scripts due to wasm-tools EOF issue
  • #763
  • #746

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

  • Chores
  • Updated GitHub Actions workflows to use the latest version of metatypedev/setup-ghjk for improved stability and performance.
  • Modified GHJK_VERSION and various environment variables across multiple configuration files to ensure compatibility with updated dependencies.
  • Revised Dockerfiles to streamline environment setup and improve build efficiency.
  • Updated dependency management in pyproject.toml for better security and performance.
    • Enhanced logging and error handling in test scripts.

These updates collectively optimize the development environment, ensuring smoother builds and more reliable workflows.


Testing

(full) Update test runner (#705)

New test runner, by default:

  • Less verbose
  • No output for successful tests

Parallel tests re-enabled.

Migration notes

N/A

v0.4.3 - 2024-06-22

Bug Fixes

(ci) Poetry lockfile (#732)

  • Fixes poetry lockfile and adds pre-commit hook to prevent issue from happening

(docs) Fix demo typegraphs 2 (#756)

Fix example typegraphs on metatype.dev.

  • reduce.ts
  • policies.ts
  • graphql.ts
  • authentication.ts

MET_574

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

(docs) Fix programmatic deployment guides (#762)

  • Fix typo
  • fix/test tg deploy
  • fix/test tg remove

MET-587

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

Only build xtask once for the tests (#720)

Use the xtask binary to run the tests.

  • 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

  • New Features

    • Updated platform compatibility to x86_64-linux.
  • Added new configuration entry for enhanced versioning and platform support.

  • Improvements

  • Modified test script to use a custom build script for better test management.

These changes improve platform compatibility and streamline the testing process.


Missing typegraphs (#741)

Fix Missing Typegraphs

  • attempt to fix the missing typegraphs on metatype.dev.

MET-563

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

Upload url path and add logging in the SDK (#740)

  • Fix upload url: prepare-upload returns upload tokens instead of upload urls
  • Add logging in the typegraph SDK
  • Refactor the actor system in the CLI
  • Use jsonrpc for communication between the CLI and typegraph processes (over stdin/stdout)

Migration notes

  • The typegraphs.deno section of the metatype.yaml config file has been replaced by typegraphs.typescript and typegraphs.javascript.

  • tg_deploy params has changed.

  • The change comes with new or modified tests

  • Hard-to-understand functions have explanatory comments

  • End-user documentation is updated to reflect the change

Failed typegraph deployment (#758)

  • Fix casing typo in the typescript sdk
  • Fix error reporting in the typescript sdk
  • Display the retry number
  • Warning on cancelled retry

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

/docs/concepts/features-overview/ (#725)

  • Re-does the feature overview page of the documentation.

Summary by CodeRabbit

  • New Features

  • Added a "Features Roadmap" component to the website, displaying a list of features with details and links.

  • Documentation

  • Updated various guides and reference documents to improve clarity and presentation of code examples.

  • Added new sections for various features such as Typegate, Typegraph, Runtimes, Prisma, Auth, Tooling, and SDK.

  • Bug Fixes

    • Corrected a typo in the GraphQL runtimes reference documentation.
  • Refactor

  • Replaced SDKTabs and TabItem components with TGExample for better code example presentation.

  • Adjusted the MiniQL component to handle optional properties and default settings.


/docs/reference/metagen + /docs/guides/wasm-functions (#751)

  • Adds /docs/reference/metagen
  • Adds /docs/guides/wasm-functions
  • Adds a codegen section to /docs/guides/external-functions

MDK-492.

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

  • New Features

  • Added new targets for metagen with different generators and paths for TypeScript, Python, and Rust.

  • Introduced new functionality for defining and exposing typegraphs with policies in various environments (Deno, Python, Rust).

  • Added automated Rust WebAssembly project generation and compilation script.

  • Enhanced documentation with new sections and updated code examples using TGExample.

  • Bug Fixes

    • Updated .gitignore to exclude *.wasm files.
  • Documentation

  • Updated links and added detailed instructions for generating types using metagen.

  • Refactor

  • Switched from HashMap to BTreeMap and HashSet to BTreeSet in various modules for better data structure handling.

    • Added logging enhancements in the Typegate class.
  • Chores

    • Updated build script for Rust WebAssembly target.

Programmatic deployment blogpost (#752)

Blogpost to help discover programmatic deployment additions.

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

  • New Features

  • Introduced programmatic deployment feature for deploying typegraphs within the Metatype ecosystem using TypeScript/Python SDKs.

  • Added new configuration options and deployment functions to enhance automation and flexibility in deployment processes.

  • Documentation

  • Added a new blog post detailing the programmatic deployment feature and its usage.

Features

(SDK) Add globs and dir support for artifact deps. (#698)

  • Include glob and dir support for PythonRuntime deps.
  • Include glob and dir support for DenoRuntime deps.
  • add tests

The change includes support for declaring artifact dependencies through globs and dirs

MET-441

Migration notes

In the deps parameter for python.import(...) and deno.import(...), globs and dirs can be passed in addition to files.

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

Summary by CodeRabbit

  • New Features

  • Introduced functionality for defining and deploying Typegraphs for Deno and Python runtimes.

  • Added support for defining a Deno runtime dependency graph with policies for test scenarios.

  • Bug Fixes

  • Corrected the structure of the Deno.serve call in the serve function.

  • Refactor

  • Enhanced method chaining for better readability in the MetaTest class.

  • Tests

  • Updated test coverage reporting to include new Deno runtime test files.

    • Commented out and removed outdated test cases in Deno runtime tests.
  • Chores

    • Updated platform specification in configuration files.

(docs) Add embedded typegate page (#747)

Embedded typegate docs page

  • need a page under meta-cli/embedded typegate to explain how that works
  • tutorials should take advantage of the embedded one
  • the embedded one should be the default everything
  • explain that there is 2 flavors in reference/meta-cli

MET-562

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

(mdk) Mdk python (#707)

Mdk for python runtime

Migration notes

None

Summary by CodeRabbit

  • New Features

  • Introduced new functionalities for generating Python code based on configurations, including handling of templates and required objects.

  • Added Python script templates for defining typed functions and structured objects with comprehensive data type handling.

    • Enhanced type management and priority handling in utility functions.
  • Documentation

  • Provided detailed summaries and documentation for new functionalities and templates.

  • Refactor

  • Implemented new structures and methods for efficient code generation and type handling.

  • Tests

    • Added tests for defining typegraph structures and policies in Python.
  • Chores

  • Updated URLs in the .ghjk/deno.lock file to reflect new changes in the codebase.


(mdk) mdk_typescript (#739)

  • BREAKING: mdk_typescript (#739)
  • Implements the mdk_typescript code generator for typescript type inference on Deno runtime external modules.
  • Ports the very simple generator already present in meta-cli.
  • Removes old codegen from cli and sdk.

Migration notes

  • Metagen section of metatype.yaml has changed. Targets are now lists instead of maps, items no sporting generator field instead of key acting as ref to generator.
  • (sdk) WasmRuntime's fromExport method has been renamed to export to make it more uniform to handler.
  • (sdk) WasmRuntime export and handler method's now expect handler/func name under name instead of func.
  • (sdk) codegen flag has been removed from ArtifactsConfig object.
  • (cli) gen mod/mdk has been simplified to just gen as the previous mod option is no longer avail.

  • 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,gate) Hostcall (#706)

Introduces a mechanism for wasm materializers to access hostgate functions.

This implements a pretty basic JSON wire interface, a singular hostcall function that's exposed to materializers. The only implemented function on this interface are gql queries.

This is a stacked PR on top of #687.

MET-473.

  • The change come with new or modified tests

Summary by CodeRabbit

  • New Features

  • Added an import statement for std_url and a new task for installing WASI adapter related files.

  • Introduced new functionalities in the application's runtime to support additional parameters and error handling.

  • Enhancements

  • Improved the application's handling of GraphQL queries with new error types and display methods.

  • Enhanced the WASM runtime build process to target a more appropriate architecture.

  • Bug Fixes

  • Fixed issues in Python and WASM runtime tests to ensure reliability and performance.

  • Documentation

  • Updated internal documentation to reflect new command interfaces and environmental interactions in the application's CLI tools.

  • Refactor

  • Refactored various internal APIs to improve code maintainability and efficiency.


(meta-test) Update t.engine() impl (#716)

Update the implementation of t.engine()

The change comes with removing the different spin-offs of t.engine which arose from the previous impl of t.engine incompatibility with artifact upload protocol. The change will make t.engine deploy the artifacts in Artifact Resolution mode by running a shell command to deploy the typegraph.

...

MET-500

  • remove different versions of t.engine
  • add tg_deploy caller script which imports typegraphs dynamically and deploys them.
  • make changes to make t.engine run in artifact resolution mode
  • update existing tests to adhere to the current change
  • pass unique different tempDirs to all the typegate instances created during test.
  • add support for authoring multiple typegraphs in a single file in meta-test and add multi typegraph tests.

Migration notes

python SDK test typegraphs' function names should be the same with the filename of the typegraph file, for dynamic import compatibility reasons.

Summary by CodeRabbit

  • New Features

  • Introduced a new function wasm_duplicate to handle WebAssembly runtimes with specific policies.

  • Refactor

  • Renamed and refactored functions and test setups to align with updated test frameworks and improve code clarity.

  • Bug Fixes

  • Added error handling in the getLocalPath function to log warnings if linking errors occur.

  • Tests

  • Updated test scripts to reflect changes in function calls, imports, and engine instantiation for better test accuracy and reliability.

Doc polish (#735)

  • doc polish and cleanup
  • upgrade website except Docusaurus as the css issue is stil present
  • bump to next pre-release
  • not everything is done, but let's iterate!

Summary by CodeRabbit

  • New Features

    • Added platform compatibility for x86_64-linux.
  • Introduced new functionalities for generating Python code and enhanced type management.

  • Added import statement for std_url and new task for installing WASI adapter files.

  • Enhanced runtime support for additional parameters and error handling.

  • Improvements

  • Enhanced GraphQL query handling with new error types and display methods.

  • Improved WASM runtime build process for better architecture targeting.

  • Documentation

    • Updated feature overview and added a "Features Roadmap" component.
    • Enhanced various guides and references for better clarity.
  • Added new sections for Typegate, Typegraph, Runtimes, Prisma, Auth, Tooling, and SDK.

    • Corrected typos and improved code example presentation.
  • Bug Fixes

    • Fixed issues in Python and WASM runtime tests to ensure reliability.

Miscellaneous Tasks

(docs) Replace term materializer with function for user facing concepts (#736)

Materializer and function might introduce confusion as they are pretty much the same thing from the user point of view, one can be defined in terms of the other.

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

  • Documentation
  • Updated terminology from "materializers" to "functions" across various documentation files to reflect a semantic shift and provide clearer descriptions.
  • Improved clarity in descriptions of custom functions, runtimes, and their roles in the Metatype computing model.
  • Corrected typos and refined explanations in multiple guides and reference documents.

These changes enhance the readability and consistency of our documentation, making it easier for users to understand and implement the features and concepts within the system.

(docs) Embedded typegate (v0.3.x) blog (#750)

Add a blog about Embedded Typegate.

MET-564

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

Summary by CodeRabbit

  • New Features

  • Introduced a new blog post on emulating server nodes locally using the Embedded Typegate feature in Meta CLI.

  • Added a new BlogIntro component to the website for displaying styled blog introductions.

  • Documentation

  • Updated documentation to explain how to spin up a local instance of Typegate for testing and development.

  • Chores

  • Updated platform compatibility from "x86_64-linux" to "aarch64-darwin".

(website) g.rest reference at /docs/reference/rest (#734)

Add reference page for g.rest(..)

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

  • Documentation
    • Added a reference to the REST reference section in the REST guide.
    • Introduced new documentation for consuming APIs using Metatype.
  • Included examples in Python and TypeScript for interacting with REST APIs.
    • Explained query types, dynamic queries, and endpoint access.
  • Provided guidance on accessing auto-generated documentation and downloading the OpenAPI spec.

Bump deno to 1.43.6 (#737)

Update deno to 1.43.6 and make requisite changes.

Required because of dep conflicts with latest lade-sdk.

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

Update rust dependencies (#748)

update Rust dependencies

MET-479

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

Bump METATYPE_VERSION to 0.4.3 (#764)

v0.4.2 - 2024-05-22

Bug Fixes

(release) Fix fat CLI compilation (#730)

  • Fix fat CLI compilation

  • Bump to 0.4.2

  • Bump wasmtime to 21

  • Bump rust to 1.78.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.4.1 - 2024-05-20

Bug Fixes

(SDK) Artifact upload fails when same file referred multiple times (#715)

  • fix the bug where duplicate artifact references causing failure during artifact resolution(typegate) during runtime.
  • add sync mode tests for Python and Deno runtime.
  • add other edge test cases to artifact upload.
    • test for no artifact in typegraph
    • test for duplicate artifact reference in the same typegraph

(gate) Improve logging and responses, prepare 0.4.1 (#714)

  • Logging before and after each faillible operation
    • Runtimes: foreign resolvers
  • Always log before reporting error: HTTP response
  • Fix error code in artifact_service
  • Add BaseError class for structured messages in responses

Summary by CodeRabbit

  • New Features

  • Updated Docker image versions and dependency versions to ensure compatibility and stability.

    • Added a search functionality to the app.
  • Bug Fixes

  • Enhanced error handling with specific error classes for more detailed error messages.

  • Refactor

  • Replaced generic Error instances with specific error classes for better error categorization.

  • Refactored error handling in HTTP response functions to use a BaseError class.

  • Chores

  • Updated version numbers across multiple configuration files to 0.4.1-0.


Features

Polish documentation and project (#696)

  • update the headline, the overviews and many other documentation areas
  • upgrades the dependencies.
  • The change come 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

  • Updated Docker image version for the typegate service to ensure stability and compatibility.

  • Documentation

  • Revised TAGLINE for better clarity on supported languages: WASM, Typescript, and Python.

  • Updated version declarations for improved consistency and functionality across multiple files.


Miscellaneous Tasks

(docs) Final polish to comparison table. (#709)

some changes to comparison table(docs)

Migration notes

No Migrations Needed

Summary by CodeRabbit

  • Documentation
  • Introduced a new section on Artifact Tracking Protocol in the architecture documentation, explaining artifact classification and tracking modes in Metatype.
  • Updated comparisons documentation with additional platforms, criteria for choosing Metatype, and detailed feature comparison tables.
  • Renamed project directory for clarity and consistency in project setup documentation.
  • Bug Fixes
    • Removed outdated TODO comment in installation documentation.

Bump to version 0.4.1-0 (#713)

  • Bumps version to 0.4.1-0.
  • Fixes broken release CI.
  • #719
  • Adds 20 minutes to test-full timeout.

Summary by CodeRabbit

Summary by CodeRabbit

  • New Features

  • Updated platform support for better compatibility with "x86_64-linux".

  • Bug Fixes

  • Minor version updates across multiple configurations to enhance stability.

  • Chores

  • Updated version numbers from "0.4.0" to "0.4.1-0" across various files and configurations.

  • Refactor

  • Adjusted build and test scripts for improved efficiency and compatibility.

  • Documentation

  • Enhanced internal documentation to reflect version and platform changes.


v0.4.0 - 2024-05-09

Documentation

Add a comparison b/n metatype and other similar solutions/products. (#697)

  • Adds a comparison table between metatype and other similar services.
  • Add artifact upload protocol to Architecture section in docs.

MET-443

Migration notes

No Migration Needed

Features

Artifact removal (#668)

  • Add GC: remove artifacts when unreferenced by any deployed typegraph
  • Improve resource management: use AsyncDisposable and AsyncDisposableStack
  • Improve testability (for parallel testing): always read the tmpDir config from the Typegate object

Motivation and context

MET-433

Migration notes

N/A

Checklist

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

Summary by CodeRabbit

  • New Features

    • Enhanced search functionality with the addition of a new search bar.
    • Introduced new test configurations to improve script execution.
  • Updated artifact storage documentation to clarify management processes.

    • Added new extensions to support improved code commenting.
  • Bug Fixes

  • Removed outdated Deno import mapping settings to streamline development environment setup.

  • Documentation

  • Expanded documentation on artifact tracking and management, including reference counting and garbage collection mechanisms.

  • Refactor

  • Implemented interface changes in QueryEngine for better async disposal management.

  • Code restructuring in artifact management for enhanced performance and maintainability.

  • Chores

  • Adjusted settings and configurations in the development environment to align with current best practices.

  • Tests

  • Introduced new test cases for artifact upload and management functionalities.


Miscellaneous Tasks

(release) Prepare 0.4.0 (#710)

Bumps version to release 0.4.0.

Summary by CodeRabbit

  • New Features
  • Updated the software across various components to version 0.4.0, enhancing functionality and potentially introducing new features or fixes.
  • Documentation
  • Updated version documentation in multiple configuration files to reflect new version 0.4.0.
  • Bug Fixes
  • Adjusted version constants and dependencies to ensure compatibility and stability with the new software version 0.4.0.

Refactor

(gate) Wasi 0.2 pyrt (#687)

  • Rewrites the PythonRuntime host using a componentize-py based component.
  • Leaf through this memo for a mental model.

(libs/xtask,gate) Remove xtask/codegen (#700)

Faster build time

Migration notes

Make sure to sync typegate/src/types.ts when an update is made on the typegraph schema.