Skip to content

build(client): update to build-tools 0.64 release#26733

Open
jason-ha wants to merge 2 commits intomicrosoft:mainfrom
jason-ha:build/client-update-build-tools-to-0.64
Open

build(client): update to build-tools 0.64 release#26733
jason-ha wants to merge 2 commits intomicrosoft:mainfrom
jason-ha:build/client-update-build-tools-to-0.64

Conversation

@jason-ha
Copy link
Contributor

@jason-ha jason-ha commented Mar 16, 2026

pnpm-workspace.yaml:

  • update build-tools packages
  • add enough internal packages to bypass minimum release age
  • remove syncpack bypass that is no longer needed

package.json_s:

  • update CommonJS flub generate entrypoints calls to keep using require condition for resolution. (ESM version's now use import condition per build-tools support.)

type tests (per running flub generate typetests):

  • now uses selected package exports (including self) rather than always using /internal or ../../index.ts.
  • header also corrected to reflect actual command.

pnpm-workspace.yaml:
- update build-tools packages
- add enough internal packages to bypass minimum release age
- remove syncpack bypass that is no longer needed

package.json_s:
- update CommonJS `flub generate entrypoints` calls to keep using `require` condition for resolution. (ESM version's now use `import` condition per build-tools support.)

type tests (per running `flub generate typetests`):
- now uses selected package exports (including self) rather than always using `/internal` or `../../index.ts`.
- header also corrected to reflect actual command.

pnpm-lock.yaml:
- build-tools package updates
- remove examples/benchmarks/odspsnapshotfetch-perftestapp entry that was removed in microsoft#26681
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Updates the repo’s client build configuration to consume the @fluid-tools/* / @fluidframework/* build-tools 0.64.x release, aligning generated entrypoints and type-test baselines with the new build-tools behaviors.

Changes:

  • Bump build-tools catalog versions to ^0.64.0 and update the lockfile accordingly.
  • Update flub generate entrypoints CommonJS scripts to force require-condition resolution.
  • Regenerate type-test “previous” validation files to import via package export entrypoints (e.g. legacy, alpha, beta, internal) instead of relative paths and /internal defaults.

Reviewed changes

Copilot reviewed 121 out of 122 changed files in this pull request and generated no comments.

Show a summary per file
File Description
pnpm-workspace.yaml Bumps build-tools catalog to 0.64.x and adjusts minimum release age exclusions.
pnpm-lock.yaml Updates resolved build-tools versions and removes stale importer entry from a removed package.
packages/utils/tool-utils/src/test/types/validateToolUtilsPrevious.generated.ts Regenerated typetest imports to use package export entrypoints.
packages/utils/tool-utils/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/utils/telemetry-utils/src/test/types/validateTelemetryUtilsPrevious.generated.ts Regenerated typetest imports to use legacy export entrypoint.
packages/utils/telemetry-utils/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/utils/odsp-doclib-utils/src/test/types/validateOdspDoclibUtilsPrevious.generated.ts Regenerated typetest imports to use legacy export entrypoint.
packages/utils/odsp-doclib-utils/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/tools/fluid-runner/src/test/types/validateFluidRunnerPrevious.generated.ts Regenerated typetest imports to use legacy export entrypoint.
packages/tools/fluid-runner/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/tools/devtools/devtools/src/test/types/validateDevtoolsPrevious.generated.ts Regenerated typetest imports to use alpha export entrypoint.
packages/tools/devtools/devtools/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/tools/devtools/devtools-core/src/test/types/validateDevtoolsCorePrevious.generated.ts Regenerated typetest imports to use alpha export entrypoint.
packages/tools/devtools/devtools-core/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/test/test-utils/src/test/types/validateTestUtilsPrevious.generated.ts Regenerated typetest imports to use legacy export entrypoint.
packages/test/test-utils/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/service-clients/tinylicious-client/src/test/types/validateTinyliciousClientPrevious.generated.ts Regenerated typetest imports to use beta export entrypoint.
packages/service-clients/tinylicious-client/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/service-clients/odsp-client/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/service-clients/azure-client/src/test/types/validateAzureClientPrevious.generated.ts Regenerated typetest imports to use legacy export entrypoint.
packages/service-clients/azure-client/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/runtime/test-runtime-utils/src/test/types/validateTestRuntimeUtilsPrevious.generated.ts Regenerated typetest imports to use legacy export entrypoint.
packages/runtime/test-runtime-utils/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/runtime/runtime-utils/src/test/types/validateRuntimeUtilsPrevious.generated.ts Regenerated typetest imports to use legacy export entrypoint.
packages/runtime/runtime-utils/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/runtime/runtime-definitions/src/test/types/validateRuntimeDefinitionsPrevious.generated.ts Regenerated typetest imports to use legacy export entrypoint.
packages/runtime/runtime-definitions/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/runtime/id-compressor/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/runtime/datastore/src/test/types/validateDatastorePrevious.generated.ts Regenerated typetest imports to use legacy export entrypoint.
packages/runtime/datastore/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/runtime/datastore-definitions/src/test/types/validateDatastoreDefinitionsPrevious.generated.ts Regenerated typetest imports to use legacy export entrypoint.
packages/runtime/datastore-definitions/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/runtime/container-runtime/src/test/types/validateContainerRuntimePrevious.generated.ts Regenerated typetest imports to use legacy export entrypoint.
packages/runtime/container-runtime/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/runtime/container-runtime-definitions/src/test/types/validateContainerRuntimeDefinitionsPrevious.generated.ts Regenerated typetest imports to use legacy export entrypoint.
packages/runtime/container-runtime-definitions/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/loader/driver-utils/src/test/types/validateDriverUtilsPrevious.generated.ts Regenerated typetest imports to use legacy export entrypoint.
packages/loader/driver-utils/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/loader/container-loader/src/test/types/validateContainerLoaderPrevious.generated.ts Regenerated typetest imports to use legacy export entrypoint.
packages/loader/container-loader/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/framework/undo-redo/src/test/types/validateUndoRedoPrevious.generated.ts Regenerated typetest imports to use internal export entrypoint.
packages/framework/undo-redo/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/framework/tree-agent/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/framework/tree-agent-ses/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/framework/tree-agent-langchain/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/framework/synthesize/src/test/types/validateSynthesizePrevious.generated.ts Regenerated typetest imports to use legacy export entrypoint.
packages/framework/synthesize/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/framework/request-handler/src/test/types/validateRequestHandlerPrevious.generated.ts Regenerated typetest imports to use legacy export entrypoint.
packages/framework/request-handler/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/framework/presence/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/framework/oldest-client-observer/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/framework/fluid-static/src/test/types/validateFluidStaticPrevious.generated.ts Regenerated typetest imports to use package root export.
packages/framework/fluid-static/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/framework/fluid-framework/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/framework/client-logger/fluid-telemetry/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/framework/client-logger/app-insights-logger/src/test/types/validateAppInsightsLoggerPrevious.generated.ts Regenerated typetest imports to use internal export entrypoint.
packages/framework/client-logger/app-insights-logger/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/framework/aqueduct/src/test/types/validateAqueductPrevious.generated.ts Regenerated typetest imports to use legacy export entrypoint.
packages/framework/aqueduct/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/framework/agent-scheduler/src/test/types/validateAgentSchedulerPrevious.generated.ts Regenerated typetest imports to use legacy export entrypoint.
packages/framework/agent-scheduler/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/drivers/tinylicious-driver/src/test/types/validateTinyliciousDriverPrevious.generated.ts Regenerated typetest imports to use internal export entrypoint.
packages/drivers/tinylicious-driver/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/drivers/routerlicious-urlResolver/src/test/types/validateRouterliciousUrlresolverPrevious.generated.ts Regenerated typetest imports to use internal export entrypoint.
packages/drivers/routerlicious-urlResolver/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/drivers/routerlicious-driver/src/test/types/validateRouterliciousDriverPrevious.generated.ts Regenerated typetest imports to use legacy export entrypoint.
packages/drivers/routerlicious-driver/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/drivers/replay-driver/src/test/types/validateReplayDriverPrevious.generated.ts Regenerated typetest imports to use internal export entrypoint.
packages/drivers/replay-driver/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/drivers/odsp-urlResolver/src/test/types/validateOdspUrlresolverPrevious.generated.ts Regenerated typetest imports to use internal export entrypoint.
packages/drivers/odsp-urlResolver/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/drivers/odsp-driver/src/test/types/validateOdspDriverPrevious.generated.ts Regenerated typetest imports to use legacy export entrypoint.
packages/drivers/odsp-driver/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/drivers/odsp-driver-definitions/src/test/types/validateOdspDriverDefinitionsPrevious.generated.ts Regenerated typetest imports to use legacy export entrypoint.
packages/drivers/odsp-driver-definitions/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/drivers/local-driver/src/test/types/validateLocalDriverPrevious.generated.ts Regenerated typetest imports to use legacy export entrypoint.
packages/drivers/local-driver/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/drivers/file-driver/src/test/types/validateFileDriverPrevious.generated.ts Regenerated typetest imports to use internal export entrypoint.
packages/drivers/file-driver/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/drivers/driver-web-cache/src/test/types/validateDriverWebCachePrevious.generated.ts Regenerated typetest imports to use legacy export entrypoint.
packages/drivers/driver-web-cache/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/drivers/driver-base/src/test/types/validateDriverBasePrevious.generated.ts Regenerated typetest imports to use internal export entrypoint.
packages/drivers/driver-base/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/drivers/debugger/src/test/types/validateDebuggerPrevious.generated.ts Regenerated typetest imports to use legacy export entrypoint.
packages/drivers/debugger/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/dds/tree/src/test/types/validateTreePrevious.generated.ts Regenerated typetest imports to use package root export.
packages/dds/tree/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/dds/task-manager/src/test/types/validateTaskManagerPrevious.generated.ts Regenerated typetest imports to use legacy export entrypoint.
packages/dds/task-manager/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/dds/shared-summary-block/src/test/types/validateSharedSummaryBlockPrevious.generated.ts Regenerated typetest imports to use legacy export entrypoint.
packages/dds/shared-summary-block/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/dds/shared-object-base/src/test/types/validateSharedObjectBasePrevious.generated.ts Regenerated typetest imports to use legacy export entrypoint.
packages/dds/shared-object-base/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/dds/sequence/src/test/types/validateSequencePrevious.generated.ts Regenerated typetest imports to use legacy export entrypoint.
packages/dds/sequence/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/dds/register-collection/src/test/types/validateRegisterCollectionPrevious.generated.ts Regenerated typetest imports to use legacy export entrypoint.
packages/dds/register-collection/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/dds/ordered-collection/src/test/types/validateOrderedCollectionPrevious.generated.ts Regenerated typetest imports to use legacy export entrypoint.
packages/dds/ordered-collection/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/dds/merge-tree/src/test/types/validateMergeTreePrevious.generated.ts Regenerated typetest imports to use legacy export entrypoint.
packages/dds/merge-tree/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/dds/matrix/src/test/types/validateMatrixPrevious.generated.ts Regenerated typetest imports to use legacy export entrypoint.
packages/dds/matrix/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/dds/map/src/test/types/validateMapPrevious.generated.ts Regenerated typetest imports to use legacy export entrypoint.
packages/dds/map/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/dds/legacy-dds/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/dds/counter/src/test/types/validateCounterPrevious.generated.ts Regenerated typetest imports to use legacy export entrypoint.
packages/dds/counter/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/dds/cell/src/test/types/validateCellPrevious.generated.ts Regenerated typetest imports to use internal export entrypoint.
packages/dds/cell/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/common/driver-definitions/src/test/types/validateDriverDefinitionsPrevious.generated.ts Regenerated typetest imports to use package root export.
packages/common/driver-definitions/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/common/core-utils/src/test/types/validateCoreUtilsPrevious.generated.ts Regenerated typetest imports to use legacy export entrypoint.
packages/common/core-utils/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/common/core-interfaces/src/test/types/validateCoreInterfacesPrevious.generated.ts Regenerated typetest imports to use legacy export entrypoint.
packages/common/core-interfaces/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/common/container-definitions/src/test/types/validateContainerDefinitionsPrevious.generated.ts Regenerated typetest imports to use legacy export entrypoint.
packages/common/container-definitions/package.json Forces CommonJS entrypoint generation to use require resolution condition.
packages/common/client-utils/src/test/types/validateClientUtilsPrevious.generated.ts Regenerated typetest imports to use package root export.
examples/utils/migration-tools/package.json Forces CommonJS entrypoint generation to use require resolution condition.
azure/packages/azure-service-utils/src/test/types/validateAzureServiceUtilsPrevious.generated.ts Regenerated typetest imports to use legacy export entrypoint.
azure/packages/azure-service-utils/package.json Forces CommonJS entrypoint generation to use require resolution condition.

You can also share your feedback on Copilot code review. Take the survey.

Copy link
Contributor

@alexvy86 alexvy86 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The bit about the export that type tests use seems like a fix, at least because it matches the declared intention better, but leaves me a bit uneasy. Like we might be mistakenly losing type test coverage somewhere. But since it matches the export declared in package.json, I think move forward and fix that if we encounter instances where we set it to the wrong thing.

@jason-ha
Copy link
Contributor Author

The bit about the export that type tests use seems like a fix, at least because it matches the declared intention better, but leaves me a bit uneasy. Like we might be mistakenly losing type test coverage somewhere. But since it matches the export declared in package.json, I think move forward and fix that if we encounter instances where we set it to the wrong thing.

See #26440 for type test generation change details. Summary and extra explaination:
Before type test gen would read types from specific package export like /legacy to generate content. But it would always use /internal for the old import statement and ../../index.ts for current. The type tests themselves should be unaffected by the tooling change (I didn't see any content change).
But the imports are now much better. The new pattern for example supports packages that don't export /internal (leaf packages never have a need for that). Also doesn't limit type tests to use ../../index.ts. For the protocol compatibility workstream, the plan is to type test an alternate export like /internal/protocol.

@jason-ha
Copy link
Contributor Author

/azp run

@azure-pipelines
Copy link

You have several pipelines (over 10) configured to build pull requests in this repository. Specify which pipelines you would like to run by using /azp run [pipelines] command. You can specify multiple pipelines using a comma separated list.

@jason-ha jason-ha enabled auto-merge (squash) March 16, 2026 18:56
@jason-ha jason-ha disabled auto-merge March 16, 2026 19:05
@jason-ha
Copy link
Contributor Author

There will be a conflict with #26522. As that is a release blocker, this PR will be held until that merges.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants