[services] Implement dynamic JS/TS cron service detection#16333
[services] Implement dynamic JS/TS cron service detection#16333dnwpark wants to merge 4 commits into
Conversation
🦋 Changeset detectedLatest commit: 999fcdc The changes in this PR will be included in the next version bump. This PR includes changesets to release 4 packages
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
🧪 Unit Test StrategyComparing: Strategy: Affected packages only ✅ Only testing packages that have been modified or depend on modified packages. Affected packages - 4 (9%)
Unaffected packages - 39 (91%)
Results
This comment is automatically generated based on the affected testing strategy |
📦 CLI Tarball ReadyThe Vercel CLI tarball for this PR is now available! Quick TestYou can test this PR's CLI directly by running: npx https://vercel-lmj8rgme0.vercel.sh/tarballs/vercel.tgz --helpUse in vercel.jsonTo use this CLI version in your project builds, add to your {
"build": {
"env": {
"VERCEL_CLI_VERSION": "vercel@https://vercel-lmj8rgme0.vercel.sh/tarballs/vercel.tgz"
}
}
}Python Runtime WheelA Python Workers WheelA This comment is automatically generated |
1bb1300 to
e470983
Compare
Materializes an in-memory Files map (typically rolldown's `write: false` output) onto disk under workPath so the bundle can be `import()`ed. Caller owns cleanup of the returned path. Resequence-Id: g1-c1
d57f12d to
5de7299
Compare
Implements detectDynamicCrons: import the bundled entrypoint via
pathToFileURL, call its default export, validate the returned
{handler, schedule} entries (non-empty strings, allowed-chars handler,
no duplicates, handler must resolve to a function export), and return
BackendsCronEntry entries pointing at the dispatcher.
Resequence-Id: g2-c1
5de7299 to
999fcdc
Compare
Followup to #16302 and #16310. Part of a breakdown of #16201.
Detects dynamic crons during the build step:
stageBundleOnDisk{handler, schedule}entrieshandlerfield must name a valid function exportNote: this PR does not actually connect the detection to the build system yet.