The GitHub Actions job "Scheduled verify release calendar" on airflow.git/main has failed. Run started by GitHub user potiuk (triggered by potiuk).
Head commit for run: 1b902cc409915eb074e283ac042ed84665540d7c / Jason(Zhe-You) Liu <[email protected]> Add TypeScript SDK API reference docs with TypeDoc (#70812) * Add TypeScript SDK API reference docs via sphinx-js * Render flattened TSDoc link tags as inline code Wrapping the referenced identifier in backticks makes it render as an inline literal and keeps sphinxcontrib-spelling from treating the identifier as prose, so the build no longer fails on names like getVariableOrThrow and the spelling wordlist stays clean. * Build priority docs packages fully even in spellcheck-only mode Packages whose inventory cannot be fetched (typically brand-new docs packages not yet published) are built first precisely so that their objects.inv exists for every other package's intersphinx mapping. The Sphinx spelling builder never writes objects.inv, so a spellcheck-only pre-build left the inventory missing, every other package failed inventory resolution, and the retry logic rebuilt the whole docs set in up to three additional full passes - the --spellcheck-only CI job ran 2h27m while the equivalent --docs-only job finished in 32m. * Reword TaskContext.signal TSDoc to avoid non-dictionary word "abortable" is not in the spellcheck dictionary and docs prose should not need a wordlist entry for a phrasing that can simply be avoided. * Resolve the ts-sdk version in publish-docs when no stable.txt is staged publish-docs resolves every package's version up front via get_package_version_possibly_from_stable_txt, which knew nothing about ts-sdk, so the "Publish documentation and validate versions" CI job failed with "Unsupported package: ts-sdk". Fall back to the version in ts-sdk/package.json the same way task-sdk falls back to its source version, matching what DocsPublisher already does. * Build the TypeScript SDK API reference with TypeDoc instead of sphinx-js sphinx-js held the docs toolchain back to TypeDoc 0.25 and TypeScript 5.4 — several majors behind the TypeScript 6 the SDK itself is built with — and its comment renderer could not represent TSDoc inline tags, so a bundled TypeDoc plugin had to flatten every `{@link}` into literal text just to keep the build from crashing. Both the version cap and the workaround existed only to bridge TypeScript into Sphinx. Rendering with TypeDoc directly removes that bridge. The toolchain tracks the same TypeScript the SDK compiles with, the reference is no longer squeezed through a hand-maintained RST mirror of the public API that had to be updated whenever an export changed, and cross-references resolve natively. This follows the precedent already set by the Java SDK, whose Javadoc is built with Dokka rather than Sphinx and staged into the same publish pipeline. The package root is the only entry point given to TypeDoc. It already re-exports everything `./coordinator` exposes, so listing both produced two navigation sections that documented one API between them, with no symbol unique to either. Dropping the Python dependency also releases the constraint it dragged in: sphinx-js required cattrs < 25, which had pinned the whole workspace back from cattrs 26.1.0 to 24.1.3. The lock file returns to what main resolves. * Publish the TypeScript SDK API reference automatically The reference could be built but never published on its own. Three pieces were missing relative to the Java SDK, whose Javadoc already runs this path end to end. `ts-sdk` was absent from NON_SHORT_NAME_PACKAGES, so the S3 publisher treated it as a provider short name and expanded it to a provider distribution that does not exist, rather than publishing it as a top-level package. Nothing built the reference on a pull request. A break in the docs toolchain or the documented sources would therefore only surface during a release, which is the worst moment to discover it. The new job gates on its own selective-check output rather than reusing the ts-sdk test trigger: that group deliberately ignores Markdown, because a README edit should not run the SDK test suite, but the landing page is Markdown and the reference is generated from the sources, so the docs build has to react to both. Finally, the release procedure was undocumented, leaving no way for a release manager to know the docs need a separate, deliberate publish — providers-only publish waves intentionally skip the SDKs. * Fix TypeDoc build failing to resolve esbuild and @msgpack/msgpack The docs tsconfig included every file under ts-sdk/src/ as a program root, which pulled in cli/pack.ts — a CLI-only module unreachable from the public API that needs the optional esbuild peer dependency the isolated docs toolchain never installs. Rooting the program at the entry point instead lets TypeScript's own import graph decide what belongs in the type-checked program, so unreachable internal modules are no longer swept in. @msgpack/msgpack is different: coordinator/frames.ts is a real transitive dependency of the public startCoordinator export (via comm-channel.ts), so type-checking it needs the package installed, not excluded. * Fix @msgpack/msgpack still unresolved in a genuinely clean docs install The previous fix added @msgpack/msgpack to ts-sdk/docs/package.json, but that alone can't work: Node's module resolution walks node_modules ancestors of the *importing file* (ts-sdk/src/coordinator/frames.ts), and ts-sdk/docs/ is a sibling of ts-sdk/src/, never an ancestor. The fix only appeared to succeed locally because ts-sdk/node_modules already existed from an unrelated pnpm install and was picked up by that ancestor walk — a genuinely fresh checkout (matching CI, and reported here) has no such directory. Redirect the bare specifier with a `paths` entry instead, pointing at where npm actually installs the package for this toolchain. A path substitution to the package's directory doesn't trigger its package.json main/types resolution under node16/nodenext module resolution (verified with --traceResolution), so the path names the concrete declaration file the package's own `types` field already points to. * Restore import statements in TypeScript SDK doc examples * Address TypeScript SDK docs review feedback Keeps selective-checks accurate for the new ts-sdk docs build (tsconfig.json and package.json changes now trigger it, and docs-only package.json/lock changes no longer trigger the unrelated supervisor-schema check), fixes the alphabetical ordering of the new run-ts-sdk-docs row, simplifies the @msgpack/msgpack path mapping to resolve through its package.json instead of a hardcoded internal path, wraps the long tsconfig.json comment, and aligns the README's cancellation section wording with task.ts's TSDoc. Report URL: https://github.com/apache/airflow/actions/runs/31570096529 With regards, GitHub Actions via GitBox --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
