mirror of
https://github.com/windmill-labs/windmill.git
synced 2026-08-18 16:02:10 +00:00
220cd35cf7
* feat: support $f/ and $u/ import path aliases for scripts $f/ and $u/ are local-friendly aliases for the absolute workspace import paths /f/ and /u/. Unlike the /-prefixed form (which local tools treat as a filesystem-root path), the $-prefixed form is a bare specifier that can be remapped via tsconfig paths / Deno import maps, so the same import resolves on the Windmill worker and in a local editor. - worker: recognize $f//$u/ in the Deno import map and both Bun loaders - dep-map/parser: normalize $f/->f/, $u/->u/ for lockgen + dep tracking - cli: emit $f/$u path aliases in generated tsconfig.json / deno.json - frontend: ATA + Monaco paths resolve $f//$u/ type hints in the editor Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> * feat(cli): split generated tsconfig into managed + user file with refresh command Mirror the AGENTS.cli.md/AGENTS.md prompts model for the IDE tsconfig so the recommended settings can evolve without ever clobbering user customizations: - tsconfig.wmill.json: wmill-managed, always refreshed, holds recommended compilerOptions incl. the $f/$u path aliases (Deno: import_map.wmill.json) - tsconfig.json: user-owned, created once, just extends the managed file; warn (never auto-edit) when an existing one doesn't reference it - add 'wmill refresh tsconfig'; init generates it unconditionally (no longer gated behind resource-type namespace / a bound workspace) - regenerate CLI guidance docs for the new subcommand Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> * fix(cli): address PR review on $f/ tsconfig generation - handle existing deno.jsonc so we don't shadow it with a new deno.json (P1 identified by cubic) - fix the bun-types hint that pointed users at the managed do-not-edit tsconfig.wmill.json; tell them to install + re-run 'wmill refresh tsconfig' - document the .ts-extension-only local-resolution limitation (cross-flavor .bun.ts/.deno.ts/.fetch.ts scripts won't resolve in a local editor) Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> * feat(cli): warn when a project's tsconfig isn't wired to tsconfig.wmill.json Mirror the prompts freshness check for the managed tsconfig so users with an existing setup actually discover they're missing $f//$u/ resolution: - embed a version hash in tsconfig.wmill.json (excludes the env-dependent bun-types 'types' entry so it doesn't false-positive) - add warnIfTsconfigStale to the main.ts freshness hook, gated identically to the prompts check (skips init/refresh/help/version). When a tsconfig.json exists it warns one line (stderr) if the managed file is missing, not referenced via extends, or out of date; silent for non-TS projects. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> * refactor(cli): make tsconfig setup equivalent to prompts (auto-wire + stale-only) Unify the two managed-file systems so they behave identically: - auto-wire an existing unlinked tsconfig.json/deno.json on init/refresh (add extends / importMap; merge into an array extends), instead of only warning. Parses JSON and falls back to a warning when it can't round-trip (JSONC comments, or a conflicting deno imports/importMap) — never corrupts. - narrow warnIfTsconfigStale to stale-only, gated on the managed file existing, exactly like warnIfPromptsStale: it no longer nags about a missing or unlinked tsconfig.json, so a deliberately-custom/unlinked setup stays silent and a not-yet-initialized project isn't bothered. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> * fix(cli): place tsconfig.wmill.json first in extends to preserve user base config Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> * feat(cli): migrate legacy tsconfig and require consent for custom configs Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> * refactor(cli): align prompts wiring to the same consent model Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> * chore(cli): bump windmill-parser-wasm-ts to 1.714.0 for $f/ $u/ aliases Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> * fix(worker): resolve $f/ and $u/ in deno lock generation Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> * test: narrow relative-imports lock-gen guard to deno import-map failure Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> * chore(cli): sync bun.lock with windmill-parser-wasm-ts 1.714.0 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> * fix(cli): warn when a custom tsconfig's paths would shadow $f/ $u/ aliases Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
56 lines
1.7 KiB
JSON
56 lines
1.7 KiB
JSON
{
|
|
"name": "wmill-dev",
|
|
"private": true,
|
|
"type": "module",
|
|
"bin": {
|
|
"wmill": "src/main.ts"
|
|
},
|
|
"scripts": {
|
|
"dev": "bun run src/main.ts",
|
|
"build": "./build.sh",
|
|
"test": "bun test test/",
|
|
"test:unit": "UNIT_ONLY=1 bun test test/*_unit*",
|
|
"check": "bunx tsc --noEmit",
|
|
"gen-client": "./gen_wm_client.sh && ./windmill-utils-internal/gen_wm_client.sh"
|
|
},
|
|
"dependencies": {
|
|
"@cliffy/ansi": "npm:@jsr/cliffy__ansi@1.0.0",
|
|
"@cliffy/command": "npm:@jsr/cliffy__command@1.0.0",
|
|
"@cliffy/prompt": "npm:@jsr/cliffy__prompt@1.0.0",
|
|
"@cliffy/table": "npm:@jsr/cliffy__table@1.0.0",
|
|
"@windmill-labs/shared-utils": "^1.0.12",
|
|
"diff": "^5.2.0",
|
|
"esbuild": "0.28.0",
|
|
"get-port": "7.1.0",
|
|
"jszip": "3.8.0",
|
|
"minimatch": "^10.0.0",
|
|
"open": "^10.0.0",
|
|
"pg-gateway": "0.3.0-beta.4",
|
|
"svelte": "^5.45.2",
|
|
"tar-stream": "^3.1.7",
|
|
"windmill-parser-wasm-csharp": "1.510.1",
|
|
"windmill-parser-wasm-go": "1.510.1",
|
|
"windmill-parser-wasm-java": "1.510.1",
|
|
"windmill-parser-wasm-nu": "1.510.1",
|
|
"windmill-parser-wasm-php": "1.647.1",
|
|
"windmill-parser-wasm-py": "1.693.1",
|
|
"windmill-parser-wasm-py-imports": "1.693.1",
|
|
"windmill-parser-wasm-regex": "1.692.0",
|
|
"windmill-parser-wasm-ruby": "1.526.1",
|
|
"windmill-parser-wasm-rust": "1.647.1",
|
|
"windmill-parser-wasm-ts": "1.714.0",
|
|
"windmill-parser-wasm-yaml": "1.593.0",
|
|
"windmill-yaml-validator": "1.1.1",
|
|
"ws": "8.18.0",
|
|
"yaml": "^2.7.0"
|
|
},
|
|
"devDependencies": {
|
|
"@types/bun": "^1.3.9",
|
|
"@types/diff": "^5.2.3",
|
|
"@types/node": "^22.0.0",
|
|
"@types/tar-stream": "^3.1.4",
|
|
"@types/ws": "^8.5.0",
|
|
"typescript": "^5.7.0"
|
|
}
|
|
}
|