Skip to content
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/node): move js deno to node #539

Merged
merged 26 commits into from
Jan 12, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
698f3df
fix: change configs to node
afmika Jan 8, 2024
dbb100b
chore(node): fix imports, disable some import rename in fix-declarati…
afmika Jan 8, 2024
9a9d1f8
fix: ci
afmika Jan 8, 2024
d732631
feat(sdk): setup npm project
afmika Jan 8, 2024
14d1f7d
feat(sdk): replace deno dep to node equivalent
afmika Jan 8, 2024
d02f1c6
fix(node): ts compilation
afmika Jan 8, 2024
f13c413
fix(sdk/node): fix tsconfig.json + convert project to esModule + bump…
afmika Jan 9, 2024
5ce69a5
feat(deno): enable
afmika Jan 9, 2024
6e8164e
fix(workflow): remove fix-declarations
afmika Jan 9, 2024
8ea9880
fix(sdk/node): reimplement/import runtime deps
afmika Jan 10, 2024
c6c2565
feat(sdk/deno): emit type declaration for compiled js files
afmika Jan 10, 2024
7006acb
fix(deno/test): replace deno imports with js
afmika Jan 10, 2024
dcc3ac9
test(e2e): update snapshot
afmika Jan 10, 2024
89c245a
fix(node): replace npx with pnpm exec
afmika Jan 10, 2024
113a58e
fix(ci): remove unused deps + move typescript to non-dev, bump target…
afmika Jan 10, 2024
3b00712
fix(ci): missing pnpm install
afmika Jan 11, 2024
ec7caa2
Merge branch 'main' into move-js-deno-to-node
afmika Jan 11, 2024
97782a9
chore(node): add licenses, rename file to _import
afmika Jan 11, 2024
df66c50
fix(lock.yml): always sync package.json
afmika Jan 11, 2024
c6e30ab
fix(ci/node): directly use pnpm publish instead
afmika Jan 11, 2024
984926f
fix(ci): release script
afmika Jan 11, 2024
dd52afd
fix(example): tsconfig + load-tgraph command
afmika Jan 11, 2024
944e5d9
rename mod to index, fix tsconfig, merge licenses
afmika Jan 11, 2024
5999b56
Merge branch 'main' into move-js-deno-to-node
afmika Jan 12, 2024
20cbd6e
Merge branch 'main' into move-js-deno-to-node
afmika Jan 12, 2024
d20f917
feat(node/ci): workspace configuration
afmika Jan 12, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
13 changes: 7 additions & 6 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -124,14 +124,15 @@ jobs:
cd ../..

npm install --global @bytecodealliance/jco@$JCO_VERSION
jco transpile $WASM_FILE -o typegraph/deno/src/gen
deno run -A typegraph/deno/dev/fix-declarations.ts

cd typegraph/deno/src
deno run -A ../../../dev/publish.ts
cd ../../..
jco transpile $WASM_FILE -o typegraph/node/src/gen

cd typegraph/node
pnpm install
pnpm run sdk-build
cp ./sdk/{package.json,package-lock.json,LICENSE.md} ./sdk/dist
cd ../..

cd typegraph/node/sdk/dist
pnpm config set '//registry.npmjs.org/:_authToken' "${NODE_AUTH_TOKEN}"
pnpm publish --no-git-checks
- uses: svenstaro/upload-release-action@v2
Expand Down
10 changes: 7 additions & 3 deletions .github/workflows/tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -296,9 +296,13 @@ jobs:
mkdir -p $(dirname $WASM_FILE)
wasm-opt -Oz target/wasm/wasm32-unknown-unknown/debug/typegraph_core.wasm -o $WASM_FILE.opt
wasm-tools component new $WASM_FILE.opt -o $WASM_FILE
rm -rf typegraph/deno/src/gen
jco transpile $WASM_FILE -o typegraph/deno/src/gen
deno run -A typegraph/deno/dev/fix-declarations.ts
rm -rf typegraph/node/sdk/src/gen typegraph/node/sdk/dist
jco transpile $WASM_FILE -o typegraph/node/sdk/src/gen
cd typegraph/node
pnpm install
pnpm run sdk-build
cp ./sdk/{package.json,package-lock.json,LICENSE.md} ./sdk/dist
cd ../..
rm -rf typegraph/python/typegraph/gen
poetry run python -m wasmtime.bindgen $WASM_FILE --out-dir typegraph/python/typegraph/gen

Expand Down
3 changes: 1 addition & 2 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -40,8 +40,7 @@ recipe.json
tmp/
coverage*

typegraph/node
typegraph/deno/src/gen
typegraph/node/sdk/src/gen
typegraph/python/typegraph/gen

*.egg-info/
7 changes: 3 additions & 4 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,7 @@
"typegate",
"dev",
"examples/templates/deno",
"typegraph/core/tests/typegraphs/deno",
"typegraph/deno"
"typegraph/node/dev"
],
"deno.unstable": true,
"deno.suggest.completeFunctionCalls": true,
Expand All @@ -30,8 +29,8 @@
"[python]": {
"editor.defaultFormatter": "ms-python.black-formatter",
"editor.codeActionsOnSave": {
"source.fixAll": true,
"source.organizeImports": true
"source.fixAll": "explicit",
"source.organizeImports": "explicit"
}
},
"[typescript]": {
Expand Down
51 changes: 20 additions & 31 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

11 changes: 9 additions & 2 deletions dev/lock.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,8 @@ dev:
files:
dev/LICENSE-MPL-2.0.md:
- typegraph/python/LICENSE.md
- typegraph/deno/LICENSE.md
- typegraph/node/LICENSE.md
afmika marked this conversation as resolved.
Show resolved Hide resolved
- typegraph/node/sdk/LICENSE.md
lines:
rust-toolchain.toml:
(channel = ").+("): RUST_VERSION
Expand All @@ -25,6 +26,12 @@ dev:
'([\s-]+uses:\s+metatypedev/setup-ghjk@).+()': GHJK_ACTION_VERSION
typegraph/python/typegraph/__init__.py:
(version = ").+("): METATYPE_VERSION
typegraph/node/sdk/package.json:
'(\s*"version"\s*:\s*").+(",?)': METATYPE_VERSION
'(\s*"description"\s*:\s*").*(",?)': TAGLINE
typegraph/node/package.json:
'(\s*"version"\s*:\s*").+(",?)': METATYPE_VERSION
'(\s*"description"\s*:\s*").*(",?)': TAGLINE
typegraph/python/pyproject.toml:
(description = ").+("): TAGLINE
'**/Cargo.toml':
Expand Down Expand Up @@ -72,7 +79,7 @@ dev:
PNPM_VERSION: v8.8.0
CARGO_INSTA_VERSION: 1.33.0
WASM_TOOLS_VERSION: 1.0.53
JCO_VERSION: 0.12.1
JCO_VERSION: 0.14.2
WASMTIME_VERSION: 13.0.2
WASMEDGE_VERSION: 0.13.5
TYPEGRAPH_VERSION: 0.0.3
Expand Down
75 changes: 0 additions & 75 deletions dev/publish.ts

This file was deleted.

4 changes: 2 additions & 2 deletions examples/templates/node/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@
"type": "module",
"version": "1.0.0",
"scripts": {
"load-tgraph": "tsx",
"dev": "MCLI_LOADER_CMD='npm load-tgraph' meta-cli dev"
"load-tgraph": "npx tsx api/example.ts",
"dev": "MCLI_LOADER_CMD='npm run load-tgraph --silent' meta dev"
},
"dependencies": {
"@typegraph/sdk": "^0.2.4"
Expand Down
2 changes: 1 addition & 1 deletion examples/templates/node/tsconfig.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,6 @@
"compilerOptions": {
"strict": true,
"moduleResolution": "node16",
"esModuleInterop": true
"esModuleInterop": true
}
}
2 changes: 1 addition & 1 deletion ghjk.ts
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ const POETRY_VERSION = "1.7.0";
const PYTHON_VERSION = "3.8.18";
const PNPM_VERSION = "v8.8.0";
const WASM_TOOLS_VERSION = "1.0.53";
const JCO_VERSION = "0.12.1";
const JCO_VERSION = "0.14.2";
const WASMEDGE_VERSION = "0.13.5";
const WASM_OPT_VERSION = "0.116.0";
const MOLD_VERSION = "v2.4.0";
Expand Down
2 changes: 1 addition & 1 deletion typegate/import_map.json
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@
"outdent": "https://deno.land/x/outdent@v0.8.0/mod.ts",
"json-schema-faker": "npm:json-schema-faker@0.5.3",
"ajv": "https://esm.sh/ajv@8.12.0?pin=v131",
"@typegraph/sdk/": "../typegraph/deno/src/",
"@typegraph/sdk/": "../typegraph/node/sdk/dist/",
"test-utils/": "./tests/utils/"
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -1569,7 +1569,7 @@ snapshot[`typegraphs creation 6`] = `
"idempotent": true
},
"data": {
"code": "file:scripts/three.ts;base64:H4sIAAAAAAAA/+0Y7W7bRsy//RSE/lTqFMWSk2BQ12JdW6wFOjRoM2BAYBhn6eQIlXSadJptGH6Tvc1ebLwPSWc7X8OQFG1NJNaJx+ORPJJHMWJ5mdGlx+vBg8EI4ezkRD4Rdp/j8cnpwB+dnPmjYBSMBd73Ax/pB48ATc1JBTD4v7Cr3FcCx8fwipWrKp1fcfiNcsJXJYUP//ztQpZGtKhpDE0R0wr4FYU3Gal5GsF7NQWBN/KGyOLT+es/jjTy6F1MC54mKa3CdsEREg6HaV6yisMakqUL5wz5r1zg+IdbzitSXsEGkorlYP3coY7r+PNxzmJ0UOtZz+E1LdjHBrfJ6U2LKjVdH6M4bGf5y4bfuFlJKpLXasGwm7KHAGv8ByhITkOwOK35UaSi50iQ1ZYr52saVZTXIVxaauhbLuhh0A/H1kTRV4QjP8UbYJEWMVt8olEIZyN3C/k+zVMegh/82OL/bGi10ugOmbGIZG+WEa1RhtMWG7GC0yU3z8ZqalppoTfqEbGq7mUhWcYWryoq15AMZxL8pa45/ZYSdA6h7WQLj650xWJphV/fXFjbkx/Q3dJCzD3tZ+iyZDW9hl9Oli/nVJrED0aGvPLHnjvw/IWWGbWsOYgDh+dQ0IXpJ7bzzKApmxmSKCf08AWfgsCgqFlOL0QwPAfu1bxqIm63lmEFHhn3srTmNvdSNO2cVrbjomvlQrExyoZj7SoXC2bBxmn14QsmFrOSp6wgmT33KprY1ie9n+U4rY49i24S+WxJqT3wJkHJFBFpMQ/VFI7sTg4yTTJGuJiSA1sL77uQNxlPke+HJITAEJ0UU1o0uVginlP70kJTCKdGpayJSaeN0tG3RlqDwFD0etQejxl3CyZSV71WapakKPIaPtMVKv8XyRqhect9s6tCt0mrx84W3ilu4p1OtlYqS4WGzUBu1PNxDPoCw53GxqHTFBNiZV8adjW0dCaO05/wDpfpAtdO8dDDzslMA+ckzaSFxcC+xhle9Wdu+MPcI5jVbJHavBmp0Z8vZZL6RYwFFs9Hh4BJepWTKDg9syXtW3yRpE7PVcVl51GCLJQh5iVNEdnGqXVSuR2SezPGMkqK3gZgnLRYFQuVbBnEeA7Uco1ZmiRUnFGyxBghscmk8wbHE+ZUkWxjJLcGk7oiFT4HB7gJ2kifttflA1SCd9R//ulor/4bj4PgUP89AnyR+u+L1n7nK6xMivsyKCX1XjWoyr82eI5acrwJjXrk1krjPsWKZiBF0DRb0uuKZSdHkxjvKS23UO49yWcxaRO1cd1ZSVrV3DIuPFWdsiK2rr8Fe0KNWLcJPJObwDKE5eUTyffJBH4QL4rhk0l3gd+QsLUxV9dcLg8ks72WzFxQ6zfy4CQKnmrc7UKLO2bzdd8vdVSlJa+P+VVF6QN1Ae7I/5j5x7v5Pxif+If8/wjwqPkfi+MqIRGFC+Ft74qy4TJRzkLAgn1GK5H0SP+yGQ5FZsO0LbKBKKZB+qn8GAfiwgw2ocFMxOR6E8oIl5+7IXzEMK7in1SN7qIqnwu2KF7IwlB96RJzc0OSjZzFL/WmKrrdhEyDbwnqVFTtD9r+uyv+g5F/ttf/G4nn4BHgEP/fR/03VMUUkV2S7jO9w9f+VvtEhvt220L1RkQ3RH1zq3WzLX4dlSu6ViGcjBXtbuGo+4X7xeI9qsHby0mZY7Hn0NO0GF0sKjLR+tvvF6WxqbIumLCyxDyqm1Tn+GKp2sdoSPwuGoltJ0KLiYT33ED0Ihj6ipBpl7Pcr+W8U+fKJlxfK9bYSZr1baStxoIftH3OrTquNY0WRDbmeoZSHqnIPlcxJznjkQulxIlLm26ca3eSXEs1tvBlJXpmSjbZU+2afvJ+01Ioj2+LYNRvb9TZSS5DnhgtTSYQu3XdN1/IHuAABzjAAf4T/AtWr19zACAAAA=="
"code": "file:scripts/three.ts;base64:H4sIAAAAAAAA/+0Y7W7bNtC//RQH/ancKYolx8GgrsW6tlgLdGjQZsCAwDBoiXK0SqImUrMNw2+yt9mL7Ujqg5aTNsOQFO18SCzqeDzeHe+OpwtZVqR07Qo+uDcYI5yfnaknQv85mUzPBt747Nwb+2N/IvGe53tIP3gAqLggJcDgv0Jfua8ETk/hBSs2ZbK8FvALFURsCgrv/v7LgTQJac5pBFUe0RLENYVXKeEiCeGtngLfHbtDZPHh4uVvJzXy5E1Ec5HECS2DZsEJEg6HSVawUsAW4rUDFwz5bxwQ+IdbLktSXMMO4pJlYP3Yok559PE0QQHW7u/cetLxeElz9r7CjTJ627JST/NTFIj1lj+vxK3bFaQkGdcLhu2UPQTY4j9ATjIagCUoFyehjp8TScYtR81zGpZU8ACuLD30LAfqod8NJ9ZM05dEID/NG2CF2rLVBxoGcD529pBvkywRAXj+9w3+j4qWmxrdIlMWkvTVOqQcZZg22JDlgq6FeTpWxWlZC73Tj5CVvJOFpClbvSipWkNSnInxlzrm9GtK0D2ktrM9PDrTNYuUFX5+dWntT75Dh0tyOfe4m6HrgnF6A7+MrJ8vqTKJ548NedWPvQyA5JsRPH1WC46qcgHy1OEp5HRlOos9emLQFNUCSbQvuviCT0lgUHCW0UsZE09BuFyUVSjsxjwsx3MTbppwYQs3QfsuaWmPHPSvTGo3QQFxXPvL5YpZsBs1SokVk4tZIRKWk9ReuiWNbetDvZ81GjWKdizaSeSzJ2XthrcJSuaISPJloKdwZLdykHmcMiLklBrYtfCeA1mVigT5vosD8A3RST6neZXJJfI5t68sNIX0bFTKmpl0tVFa+sZIW5AYiq6P2uNZ427+TOlar1WaxQmKvIWPdIPK/0nSSmrecN/1VWg3afTobeFOcRN3OttbqS0VGDYDtVHHZ2TQ5xjzNDIOnSaYF0v7yrCroeVoNhp1J9zjMl/h2jkeetA6mWngjCSpsrAc2Dc4w4vuzA1/WLoEU5st85u7IBz9+Uplqp/kWGLxfOoQMEmvMxL603Nb0b7GF0U66rjq4Gw9SpIFKsTcuMpD2zi1ViqnRQp3wVhKSd7ZAIyTlqsiqZKtghjPgVqOMUvjmMozitcYIyQymbTeMHKlOXUk2xjJjcGUrkiFz8ERDqAJ8XlzWd5DJfiZ+s+begf132Ti+8f67wHgi9R/X7j2u9hgZZLflUGhqA+qQV3+NeFz0pDjJdivRz5ZadylWKkZKDlqmj0V6oqll6NJhPdULbzU8C3JFhFpErVx3VlxUnJhGReeLlFZHlk334IdYY3YNgk8VZvAOoD11SPF99EMvpMvmuGjWXuB35Kwa4tubrhc7klme6uYOaDX79TBKRQ8rnGfFlreMbuv9H7hYZkUgp+K65LSe+oCfCb/Y+af9PO/Pznzjvn/AeBB8z9WxWVMQgqX0tve5EUlVIZcBICV+oKWMtuR7mU3HMqUhklbpgFZRYPyU/UpDsSBBewCg5kMxu0uUKGtPnYDeI/xW0Y/6OLcQVU+5myVP1MVof7OJebmhiQ7NYvf6VWZt7tJmQbfEvBEluv32v77XPxj0E8P+n9j+Rw8ABzj//9S/w11HUVUg6T9Qm/x3NvrnKiA3+9Y6LaIbIToz229brHHr6VyZNcqgLOJpu0XjnW/8JZi8Q7V4KfLSZVqsefQ0TSYuljUZLL/d9gvSiJT77pgwsoS02ndpLrAF0vXPkZD4lfZTWw6EbWYSHjHDWQvgqHLSJn6nNV+DedenauacF2tyLGTtOjaSHuNBc9vmp17dVxjmloQ1ZjrGCp5lCKHXOWc4oznLpWSx65suhvduJPiWuixhS8b2TPTsqnGatv0U9dcLYV2+6YIRv0ORq2d1DLkmbGoSiWiX959u4XsEY5whCMc4V/BP36axFYAIAAA"
}
},
{
Expand Down
8 changes: 4 additions & 4 deletions typegate/tests/e2e/typegraph/typegraphs/deno/complex.ts
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
// Copyright Metatype OÜ, licensed under the Elastic License 2.0.
// SPDX-License-Identifier: Elastic-2.0

import { fx, Policy, t, typegraph } from "@typegraph/sdk/mod.ts";
import { DenoRuntime } from "@typegraph/sdk/runtimes/deno.ts";
import { Auth } from "@typegraph/sdk/params.ts";
import { fx, Policy, t, typegraph } from "@typegraph/sdk/index.js";
import { DenoRuntime } from "@typegraph/sdk/runtimes/deno.js";
import { Auth } from "@typegraph/sdk/params.js";

typegraph(
{
Expand All @@ -25,7 +25,7 @@ typegraph(
maxAgeSec: 120,
},
},
(g) => {
(g: any) => {
const deno = new DenoRuntime();
const pub = Policy.public();

Expand Down