-
Notifications
You must be signed in to change notification settings - Fork 13
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat(sdk): expose metagen to typegraph/sdk
#718
feat(sdk): expose metagen to typegraph/sdk
#718
Conversation
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> Signed-off-by: Teo Stocco <[email protected]>
some changes to comparison table(docs) #### Migration notes _No Migrations Needed_ <!-- 5. Readiness 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 --> <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## 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. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
WalkthroughThe recent updates introduce significant enhancements to the Changes
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media? TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (invoked as PR comments)
Additionally, you can add CodeRabbit Configration File (
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 21
#715) - [x] fix the bug where duplicate artifact references causing failure during artifact resolution(typegate) during runtime. - [x] add sync mode tests for Python and Deno runtime. - [x] add other edge test cases to artifact upload. - [x] test for no artifact in typegraph - [x] test for duplicate artifact reference in the same typegraph Issue: [MET-501](https://linear.app/metatypedev/issue/MET-501/bug-artifact-upload-fails-when-same-file-refered-twice) #### Migration notes _No Migrations Needed_ ... <!-- 5. Readiness 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 --> <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Introduced testing functionalities for Deno and Python runtimes, supporting artifact deployment and policy enforcement. - Added Python and Deno scripts for deploying Typegraphs and handling runtime configurations. - **Bug Fixes** - Improved artifact handling and deployment logic in both Python and Deno runtimes. - **Tests** - Added comprehensive test cases for Deno and Python runtimes, including scenarios for duplicate artifacts, no artifacts, and runtime synchronization. - Enhanced testing with integration of various services like Redis and S3. - **Documentation** - Updated test scripts to include detailed comments and summaries for new functionalities and test scenarios. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Signed-off-by: Teo Stocco <[email protected]> Co-authored-by: Teo Stocco <[email protected]> Co-authored-by: Teo Stocco <[email protected]> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #718 +/- ##
==========================================
+ Coverage 74.05% 74.13% +0.08%
==========================================
Files 120 121 +1
Lines 13777 13822 +45
Branches 1407 1407
==========================================
+ Hits 10202 10247 +45
Misses 3549 3549
Partials 26 26 ☔ View full report in Codecov by Sentry. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👏
wip: python mdk feat: represent union, either with Union feat: solve cycles, order python types by priority fix: self-reference fix: premature checks docs: add a comparison b/n metatype and other similar solutions/products. (#697) <!-- Pull requests are squash merged using: - their title as the commit message - their description as the commit body Having a good title and description is important for the users to get readable changelog. --> <!-- 1. Explain below WHAT the change is --> - Adds a comparison table between metatype and other similar services. - Add artifact upload protocol to `Architecture` section in docs. <!-- 2. Explain below WHY the change cannot be made simpler --> <!-- 3. Explain below WHY the was made or link an issue number --> [MET-443](https://linear.app/metatypedev/issue/MET-443/include-comparisons-with-other-products-similar-to-metatype) <!-- 4. Explain HOW users should update their code or remove that section --> _No Migration Needed_ <!-- 5. Readiness 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 --> refactor(gate): wasi 0.2 pyrt (#687) - Rewrites the PythonRuntime host using a `componentize-py` based component. - Leaf through this [memo](https://hackmd.io/@SC-qT-WXTROceKYdNA-Lpg/ryyAXiQlC/edit) for a mental model. Todo: - [x] `PythonRuntime.import_` support #699 - [x] ~~Add `pyrt.wasm` to release job~~ obviated by `build.rs` Items for other PRs: - Implemen `hostcall` MET-404. _No end-user changes required_ - [x] The change come with new or modified tests - [x] Hard-to-understand functions have explanatory comments - [ ] End-user documentation is updated to reflect the change --------- Co-authored-by: afmika <[email protected]> cleanups fix: pre-commit fix: forward-refs fix: top level simple types test(metagen): python mdk cleanups and small fixes feat(metagen): codegen decorator and some cleanups feat(metagen): always merge defs if refered file is the same fix(metagen): prioritize relto typegraph path only if base.path is empty feat: 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 [MET-433](https://linear.app/metatypedev/issue/MET-433/file-removal) _N/A_ - [x] The change come with new or modified tests - [x] Hard-to-understand functions have explanatory comments - [x] End-user documentation is updated to reflect the change <!-- This is an auto-generated comment: release notes by coderabbit.ai --> - **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. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Signed-off-by: Natoandro <[email protected]> Co-authored-by: destifo <[email protected]> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> chore(release): prepare 0.4.0 (#710) Bumps version to release 0.4.0. <!-- This is an auto-generated comment: release notes by coderabbit.ai --> - **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. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Co-authored-by: Natoandro <[email protected]> chore(docs): final polish to comparison table. (#709) some changes to comparison table(docs) _No Migrations Needed_ <!-- 5. Readiness 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 --> <!-- This is an auto-generated comment: release notes by coderabbit.ai --> - **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. <!-- end of auto-generated comment: release notes by coderabbit.ai --> chore: 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. <!-- 5. Readiness 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 --> <!-- This is an auto-generated comment: release notes by coderabbit.ai --> - **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. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Co-authored-by: Yohe-Am <[email protected]> feat: polish documentation and project (#696) <!-- Pull requests are squash merged using: - their title as the commit message - their description as the commit body Having a good title and description is important for the users to get readable changelog. --> <!-- 1. Explain below WHAT the change is --> - update the headline, the overviews and many other documentation areas - upgrades the dependencies. <!-- 2. Explain below WHY the change cannot be made simpler --> <!-- 4. Explain HOW users should update their code or remove that section --> - [ ] The change come with new or modified tests - [ ] Hard-to-understand functions have explanatory comments - [x] End-user documentation is updated to reflect the change <!-- This is an auto-generated comment: release notes by coderabbit.ai --> - **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. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Signed-off-by: Teo Stocco <[email protected]> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> feat(sdk): expose metagen to `typegraph/sdk` (#718) Expose metagen features to `typegraph/sdk` Depends on #707 and #696 None <!-- This is an auto-generated comment: release notes by coderabbit.ai --> - **New Features** - Introduced new `Metagen` class for code generation tasks in both TypeScript and Python SDKs. - Added functionality for defining policies and structures for deployment examples using Node.js. - **Improvements** - Enhanced `Metagen` class with methods for simulating and executing code generation tasks. - Simplified file reading and writing functions for better performance and maintainability. - **Bug Fixes** - Refined `compress_and_encode` function to streamline file handling processes. - **Tests** - Added comprehensive tests for `Metagen` functionality in both TypeScript and Python SDKs. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Signed-off-by: Teo Stocco <[email protected]> Co-authored-by: Teo Stocco <[email protected]> Co-authored-by: Teo Stocco <[email protected]> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> Co-authored-by: Estifanos Bireda <[email protected]> Co-authored-by: Yohe-Am <[email protected]>
wip: python mdk feat: represent union, either with Union feat: solve cycles, order python types by priority fix: self-reference fix: premature checks docs: add a comparison b/n metatype and other similar solutions/products. (#697) <!-- Pull requests are squash merged using: - their title as the commit message - their description as the commit body Having a good title and description is important for the users to get readable changelog. --> <!-- 1. Explain below WHAT the change is --> - Adds a comparison table between metatype and other similar services. - Add artifact upload protocol to `Architecture` section in docs. <!-- 2. Explain below WHY the change cannot be made simpler --> <!-- 3. Explain below WHY the was made or link an issue number --> [MET-443](https://linear.app/metatypedev/issue/MET-443/include-comparisons-with-other-products-similar-to-metatype) <!-- 4. Explain HOW users should update their code or remove that section --> _No Migration Needed_ <!-- 5. Readiness 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 --> refactor(gate): wasi 0.2 pyrt (#687) - Rewrites the PythonRuntime host using a `componentize-py` based component. - Leaf through this [memo](https://hackmd.io/@SC-qT-WXTROceKYdNA-Lpg/ryyAXiQlC/edit) for a mental model. Todo: - [x] `PythonRuntime.import_` support #699 - [x] ~~Add `pyrt.wasm` to release job~~ obviated by `build.rs` Items for other PRs: - Implemen `hostcall` MET-404. _No end-user changes required_ - [x] The change come with new or modified tests - [x] Hard-to-understand functions have explanatory comments - [ ] End-user documentation is updated to reflect the change --------- Co-authored-by: afmika <[email protected]> cleanups fix: pre-commit fix: forward-refs fix: top level simple types test(metagen): python mdk cleanups and small fixes feat(metagen): codegen decorator and some cleanups feat(metagen): always merge defs if refered file is the same fix(metagen): prioritize relto typegraph path only if base.path is empty feat: 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 [MET-433](https://linear.app/metatypedev/issue/MET-433/file-removal) _N/A_ - [x] The change come with new or modified tests - [x] Hard-to-understand functions have explanatory comments - [x] End-user documentation is updated to reflect the change <!-- This is an auto-generated comment: release notes by coderabbit.ai --> - **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. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Signed-off-by: Natoandro <[email protected]> Co-authored-by: destifo <[email protected]> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> chore(release): prepare 0.4.0 (#710) Bumps version to release 0.4.0. <!-- This is an auto-generated comment: release notes by coderabbit.ai --> - **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. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Co-authored-by: Natoandro <[email protected]> chore(docs): final polish to comparison table. (#709) some changes to comparison table(docs) _No Migrations Needed_ <!-- 5. Readiness 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 --> <!-- This is an auto-generated comment: release notes by coderabbit.ai --> - **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. <!-- end of auto-generated comment: release notes by coderabbit.ai --> chore: 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. <!-- 5. Readiness 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 --> <!-- This is an auto-generated comment: release notes by coderabbit.ai --> - **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. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Co-authored-by: Yohe-Am <[email protected]> feat: polish documentation and project (#696) <!-- Pull requests are squash merged using: - their title as the commit message - their description as the commit body Having a good title and description is important for the users to get readable changelog. --> <!-- 1. Explain below WHAT the change is --> - update the headline, the overviews and many other documentation areas - upgrades the dependencies. <!-- 2. Explain below WHY the change cannot be made simpler --> <!-- 4. Explain HOW users should update their code or remove that section --> - [ ] The change come with new or modified tests - [ ] Hard-to-understand functions have explanatory comments - [x] End-user documentation is updated to reflect the change <!-- This is an auto-generated comment: release notes by coderabbit.ai --> - **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. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Signed-off-by: Teo Stocco <[email protected]> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> feat(sdk): expose metagen to `typegraph/sdk` (#718) Expose metagen features to `typegraph/sdk` Depends on #707 and #696 None <!-- This is an auto-generated comment: release notes by coderabbit.ai --> - **New Features** - Introduced new `Metagen` class for code generation tasks in both TypeScript and Python SDKs. - Added functionality for defining policies and structures for deployment examples using Node.js. - **Improvements** - Enhanced `Metagen` class with methods for simulating and executing code generation tasks. - Simplified file reading and writing functions for better performance and maintainability. - **Bug Fixes** - Refined `compress_and_encode` function to streamline file handling processes. - **Tests** - Added comprehensive tests for `Metagen` functionality in both TypeScript and Python SDKs. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Signed-off-by: Teo Stocco <[email protected]> Co-authored-by: Teo Stocco <[email protected]> Co-authored-by: Teo Stocco <[email protected]> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> Co-authored-by: Estifanos Bireda <[email protected]> Co-authored-by: Yohe-Am <[email protected]>
Expose metagen features to
typegraph/sdk
Depends on #707 and #696
Migration notes
None
Summary by CodeRabbit
New Features
Metagen
class for code generation tasks in both TypeScript and Python SDKs.Improvements
Metagen
class with methods for simulating and executing code generation tasks.Bug Fixes
compress_and_encode
function to streamline file handling processes.Tests
Metagen
functionality in both TypeScript and Python SDKs.