mirror of
https://github.com/simstudioai/sim.git
synced 2026-09-24 15:45:35 +08:00
* chore(typescript): upgrade to TypeScript 7 (native Go compiler) Bumps typescript to ^7.0.2 across every workspace package. Full bun run type-check/lint/build/test all pass; apps/sim's type-check (the one needing an 8GB heap bump) drops from ~55s to ~7s wall time. Migration fixes required by TS7's stricter defaults: - baseUrl removed: drop it from 5 tsconfigs (paths already resolved relative to tsconfig dir, so behavior is unchanged) and prefix the one bare (non-relative) paths entry each in apps/sim and apps/realtime with './' - moduleResolution=node10 removed: switch packages/cli and packages/ts-sdk to "bundler", matching the rest of the monorepo - types now defaults to [] instead of auto-including every @types/* package: add "types": ["node"] to the shared base tsconfig (this is fundamentally a Node monorepo, so this restores prior behavior in one place instead of duplicating it per-package), add explicit @types/node deps to packages that now rely on it transitively via @sim/db/@sim/logger, and add "declare module '*.css'" to the two packages with plain (non-module) CSS side-effect imports that TS7's stricter checker now flags - packages/logger's isomorphic `typeof window` check no longer needs DOM lib in every consumer: replaced with `'window' in globalThis` - packages/testing and apps/realtime's fetch/DOM mocks need DOM lib where they're compiled, since they model the browser Fetch API - the `typescript` npm package no longer exports the classic Compiler API from its main entry (moved to unstable/ast subpaths); apps/sim's Function-block route used it at runtime to strip import statements from user code, so that one call site now uses Microsoft's official transition package, @typescript/typescript6 - Next.js 16.2.6's own TypeScript-detection heuristic hardcodes a path TS7 no longer ships, and its auto-install fallback assumes npm/pnpm; added @typescript/native-preview as a devDependency to apps/sim and apps/docs so Next detects a valid native compiler instead of trying (and failing) to auto-install one Not merging yet: TS 7.0.2 published today and is still inside this repo's bunfig.toml minimumReleaseAge (7-day) supply-chain gate, so `bun install` will fail for everyone until 2026-07-15. Opening this now to get it through review; hold the actual merge until then. * fix(typescript): address Greptile review findings on TS7 upgrade - packages/logger: 'window' in globalThis treats a shim that leaves globalThis.window explicitly undefined as browser-only, silently dropping production server logs. Restore the original typeof !== 'undefined' semantics via an inline cast instead, so it stays correct without requiring DOM lib in every consumer. - packages/ts-sdk, packages/cli: both are tsc-built, published as Node ESM (package.json "type": "module" with an "exports" map). "moduleResolution": "bundler" is too permissive for that target - it accepts import patterns (e.g. extensionless relative imports) that Node's actual ESM resolver rejects at runtime. Switch both to "module"/"moduleResolution": "nodenext", the correct pairing for a published Node ESM package. Verified real tsc builds (not just --noEmit) still succeed for both. * chore(bunfig): temporarily disable minimumReleaseAge gate for TS7 install TS 7.0.2 published today, still inside the 7-day gate. Lowering to 0 to unblock this merge; will restore to 604800 in an immediate follow-up commit right after merging.
59 lines
1.6 KiB
JSON
59 lines
1.6 KiB
JSON
{
|
|
"name": "docs",
|
|
"version": "0.0.0",
|
|
"private": true,
|
|
"license": "Apache-2.0",
|
|
"scripts": {
|
|
"dev": "next dev --port 3001",
|
|
"build": "fumadocs-mdx && NODE_OPTIONS='--max-old-space-size=8192' next build",
|
|
"start": "next start",
|
|
"postinstall": "fumadocs-mdx",
|
|
"type-check": "tsc --noEmit",
|
|
"lint": "biome check --write --unsafe .",
|
|
"lint:check": "biome check .",
|
|
"format": "biome format --write .",
|
|
"format:check": "biome format ."
|
|
},
|
|
"dependencies": {
|
|
"@ai-sdk/openai": "2.0.107",
|
|
"@ai-sdk/react": "2.0.205",
|
|
"@sim/db": "workspace:*",
|
|
"@sim/emcn": "workspace:*",
|
|
"@sim/workflow-renderer": "workspace:*",
|
|
"@vercel/og": "^0.6.5",
|
|
"ai": "5.0.203",
|
|
"class-variance-authority": "^0.7.1",
|
|
"clsx": "^2.1.1",
|
|
"drizzle-orm": "^0.45.2",
|
|
"fumadocs-core": "16.8.5",
|
|
"fumadocs-mdx": "14.3.2",
|
|
"fumadocs-openapi": "10.8.1",
|
|
"fumadocs-ui": "16.8.5",
|
|
"lucide-react": "^0.511.0",
|
|
"next": "16.2.6",
|
|
"next-themes": "^0.4.6",
|
|
"postgres": "^3.4.5",
|
|
"react": "19.2.4",
|
|
"react-dom": "19.2.4",
|
|
"remark-breaks": "^4.0.0",
|
|
"shiki": "4.0.0",
|
|
"streamdown": "2.5.0",
|
|
"tailwind-merge": "^3.0.2",
|
|
"reactflow": "^11.11.4",
|
|
"framer-motion": "^12.5.0",
|
|
"zod": "^4.3.6"
|
|
},
|
|
"devDependencies": {
|
|
"@sim/tsconfig": "workspace:*",
|
|
"@tailwindcss/postcss": "^4.0.12",
|
|
"@types/mdx": "^2.0.13",
|
|
"@types/node": "^22.14.1",
|
|
"@types/react": "^19.1.2",
|
|
"@types/react-dom": "^19.0.4",
|
|
"@typescript/native-preview": "7.0.0-dev.20260707.2",
|
|
"postcss": "^8.5.3",
|
|
"tailwindcss": "^4.0.12",
|
|
"typescript": "^7.0.2"
|
|
}
|
|
}
|