mirror of
https://github.com/callstack/agent-device.git
synced 2026-09-14 20:06:34 +08:00
cd0cd16a9e
* build: migrate the library build from rslib to tsdown (Rolldown) Replace the Rspack-based rslib build with tsdown, the Rolldown-based library bundler from the Vite toolchain family, so bundling, testing (Vitest/Vite), linting (oxlint), and formatting (oxfmt) all run on the same OXC/Rolldown stack. Outcome vs the rslib baseline (size-report): - build time: ~53s -> ~2s - JS raw +16.2 kB (+1.1%), JS gzip +2.7 kB (+0.6%) - the residual gap is OXC vs SWC minifier tightness, not chunking - npm tarball -3.0 kB - CLI --version startup ~3 ms faster; --help within the +/-5 ms measurement noise of interleaved A/B runs Chunk-merging experiments (single shared group, entries-aware groups, small-module groups) all regressed either total size or --help startup (a merged shared chunk adds +140 ms), so the default Rolldown split graph is kept. Custom codeSplitting groups also currently trip a rolldown-plugin-dts bug that re-emits type-only imports as runtime imports. Declarations still bundle per entry via tsgo; dist layout, entry names, and the internal/ worker/daemon entry resolution contract are unchanged. @microsoft/api-extractor was only consumed by rslib dts bundling and is removed together with @rslib/core. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01FqeW8sA2ZnvnftdvpCqFMS * ci: only cache the pnpm store when setup installs dependencies The layering-guard job uses setup-node-pnpm with install-deps: false, so it never creates a pnpm store. setup-node's post-job cache save then fails with a path validation error whenever the lockfile hash misses the cache - which any lockfile-changing PR does. Gate the cache on install-deps so no-install jobs skip pnpm store caching entirely. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01FqeW8sA2ZnvnftdvpCqFMS --------- Co-authored-by: Claude <noreply@anthropic.com>
106 lines
3.0 KiB
JSON
106 lines
3.0 KiB
JSON
{
|
|
"$schema": "https://raw.githubusercontent.com/fallow-rs/fallow/main/schema.json",
|
|
"entry": [
|
|
"tsdown.config.ts",
|
|
"src/sdk/index.ts",
|
|
"src/sdk/io.ts",
|
|
"src/sdk/artifacts.ts",
|
|
"src/sdk/metro.ts",
|
|
"src/sdk/remote-config.ts",
|
|
"src/sdk/install-source.ts",
|
|
"src/sdk/android-adb.ts",
|
|
"src/sdk/contracts.ts",
|
|
"src/sdk/selectors.ts",
|
|
"src/sdk/finders.ts",
|
|
"src/bin.ts",
|
|
"src/client/companion-tunnel.ts",
|
|
"src/daemon.ts",
|
|
"src/utils/png-worker.ts",
|
|
"scripts/patch-xcuitest-runner-icon.ts",
|
|
"scripts/runner-request-count/run.ts",
|
|
"src/utils/update-check-entry.ts",
|
|
"test/scripts/metro-prepare-packaged-smoke.mjs",
|
|
"test/integration/*.test.ts",
|
|
"website/docs/404.mdx",
|
|
"website/rspress.config.ts"
|
|
],
|
|
"ignorePatterns": [
|
|
"examples/test-app/**",
|
|
"scripts/perf/**",
|
|
"scripts/layering/**",
|
|
"apple-runner/AgentDeviceRunner/AgentDeviceRunnerUITests.xctestplan",
|
|
"scripts/write-xcuitest-cache-metadata.mjs"
|
|
],
|
|
"ignoreDependencies": ["@theme"],
|
|
"ignoreExports": [
|
|
{
|
|
"file": "src/__tests__/test-utils/index.ts",
|
|
"exports": ["*"]
|
|
},
|
|
{
|
|
"file": "src/__tests__/test-utils/device-fixtures.ts",
|
|
"exports": ["LINUX_DEVICE", "ANDROID_TV_DEVICE", "TVOS_SIMULATOR"]
|
|
},
|
|
{
|
|
"file": "src/__tests__/test-utils/mocked-binaries.ts",
|
|
"exports": ["withMockedXcrun"]
|
|
},
|
|
{
|
|
"file": "src/daemon/app-log.ts",
|
|
"exports": ["readRecentAndroidLogcatForPackage"]
|
|
},
|
|
{
|
|
"file": "src/platforms/android/app-lifecycle.ts",
|
|
"exports": [
|
|
"parseAndroidForegroundApp",
|
|
"parseAndroidLaunchablePackages",
|
|
"parseAndroidUserInstalledPackages",
|
|
"installAndroidInstallablePath"
|
|
]
|
|
},
|
|
{
|
|
"file": "src/platforms/android/index.ts",
|
|
"exports": ["installAndroidInstallablePath"]
|
|
},
|
|
{
|
|
"file": "src/platforms/apple/core/apps.ts",
|
|
"exports": ["listSimulatorApps", "uninstallIosApp"]
|
|
},
|
|
{
|
|
"file": "src/platforms/apple/core/runner/runner-contract.ts",
|
|
"exports": ["resolveRunnerEarlyExitHint"]
|
|
},
|
|
{
|
|
"file": "src/platforms/apple/core/runner/runner-session.ts",
|
|
"exports": ["stopAllIosRunnerSessions"]
|
|
},
|
|
{
|
|
"file": "src/platforms/apple/core/runner/runner-xctestrun.ts",
|
|
"exports": [
|
|
"resolveRunnerBuildDestination",
|
|
"resolveRunnerAppBundleId",
|
|
"resolveRunnerSigningBuildSettings",
|
|
"resolveRunnerBundleBuildSettings",
|
|
"assertSafeDerivedCleanup"
|
|
]
|
|
},
|
|
{
|
|
"file": "src/cloud-webdriver.ts",
|
|
"exports": ["CLOUD_WEBDRIVER_PROVIDERS"]
|
|
}
|
|
],
|
|
"usedClassMembers": ["name", "listActiveLeases", "delete", "values", "elapsedMs", "isExpired"],
|
|
"rules": {
|
|
"unused-types": "off",
|
|
"duplicate-exports": "off"
|
|
},
|
|
"production": {
|
|
"dupes": true
|
|
},
|
|
"publicPackages": ["agent-device"],
|
|
"audit": {
|
|
"deadCodeBaseline": "fallow-baselines/dead-code.json",
|
|
"healthBaseline": "fallow-baselines/health.json"
|
|
}
|
|
}
|