Skip to content

build(client): Move eslint-config-fluid to client release group#25806

Merged
tylerbutler merged 76 commits intomainfrom
eslint-config-client-merge
Nov 5, 2025
Merged

build(client): Move eslint-config-fluid to client release group#25806
tylerbutler merged 76 commits intomainfrom
eslint-config-client-merge

Conversation

@tylerbutler
Copy link
Member

@tylerbutler tylerbutler commented Nov 3, 2025

Description

This change moves the eslint-config-fluid package into the client release group and makes it private.

Changes:

  • Moved @fluidframework/eslint-config-fluid to the client release group
  • Updated the package version and mark it private
  • Updated all references across the repository to use the workspace dependency

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.

Thinking about pipelines: seems like having the pipeline for eslint-config-fluid run while the package is now part of the client release group isn't causing issues and it only built that one... but I expected to see the package also built in the build - client pipeline and I don't see evidence that that happened. Is it because the package still has its own pnpm-workspace.yaml file? That one and the lockfile in the same folder feel like they should go away temporarily, and if the package starts getting built in build-client, I'd probably suggest updating the yaml for eslint-config-fluid's pipeline to disable it.

# Conflicts:
#	azure/packages/azure-local-service/package.json
#	azure/packages/azure-service-utils/package.json
#	examples/apps/ai-collab/package.json
#	examples/apps/blobs/package.json
#	examples/apps/collaborative-textarea/package.json
#	examples/apps/contact-collection/package.json
#	examples/apps/data-object-grid/package.json
#	examples/apps/presence-tracker/package.json
#	examples/apps/staging/package.json
#	examples/apps/task-selection/package.json
#	examples/apps/tree-cli-app/package.json
#	examples/apps/tree-comparison/package.json
#	examples/benchmarks/bubblebench/baseline/package.json
#	examples/benchmarks/bubblebench/common/package.json
#	examples/benchmarks/bubblebench/experimental-tree/package.json
#	examples/benchmarks/bubblebench/ot/package.json
#	examples/benchmarks/bubblebench/shared-tree/package.json
#	examples/benchmarks/odspsnapshotfetch-perftestapp/package.json
#	examples/benchmarks/tablebench/package.json
#	examples/client-logger/app-insights-logger/package.json
#	examples/data-objects/canvas/package.json
#	examples/data-objects/clicker/package.json
#	examples/data-objects/codemirror/package.json
#	examples/data-objects/diceroller/package.json
#	examples/data-objects/inventory-app/package.json
#	examples/data-objects/monaco/package.json
#	examples/data-objects/multiview/constellation-model/package.json
#	examples/data-objects/multiview/constellation-view/package.json
#	examples/data-objects/multiview/container/package.json
#	examples/data-objects/multiview/coordinate-model/package.json
#	examples/data-objects/multiview/interface/package.json
#	examples/data-objects/multiview/plot-coordinate-view/package.json
#	examples/data-objects/multiview/slider-coordinate-view/package.json
#	examples/data-objects/multiview/triangle-view/package.json
#	examples/data-objects/prosemirror/package.json
#	examples/data-objects/smde/package.json
#	examples/data-objects/table-document/package.json
#	examples/data-objects/table-tree/package.json
#	examples/data-objects/todo/package.json
#	examples/data-objects/webflow/package.json
#	examples/external-data/package.json
#	examples/service-clients/azure-client/external-controller/package.json
#	examples/service-clients/azure-client/todo-list/package.json
#	examples/service-clients/odsp-client/shared-tree-demo/package.json
#	examples/utils/bundle-size-tests/package.json
#	examples/utils/example-driver/package.json
#	examples/utils/example-utils/package.json
#	examples/utils/example-webpack-integration/package.json
#	examples/utils/import-testing/package.json
#	examples/utils/migration-tools/package.json
#	examples/utils/webpack-fluid-loader/package.json
#	examples/version-migration/live-schema-upgrade/package.json
#	examples/version-migration/same-container/package.json
#	examples/version-migration/separate-container/package.json
#	examples/version-migration/tree-shim/package.json
#	examples/view-integration/container-views/package.json
#	examples/view-integration/external-views/package.json
#	examples/view-integration/view-framework-sampler/package.json
#	experimental/PropertyDDS/packages/property-common/package.json
#	experimental/PropertyDDS/packages/property-dds/package.json
#	experimental/dds/ot/ot/package.json
#	experimental/dds/ot/sharejs/json1/package.json
#	experimental/dds/sequence-deprecated/package.json
#	experimental/dds/tree/package.json
#	experimental/framework/data-objects/package.json
#	experimental/framework/last-edited/package.json
#	package.json
#	packages/common/client-utils/package.json
#	packages/common/container-definitions/package.json
#	packages/common/core-interfaces/package.json
#	packages/common/core-interfaces/src/test/brandedType.spec.ts
#	packages/common/core-utils/package.json
#	packages/common/driver-definitions/package.json
#	packages/dds/cell/package.json
#	packages/dds/counter/package.json
#	packages/dds/ink/package.json
#	packages/dds/legacy-dds/package.json
#	packages/dds/map/package.json
#	packages/dds/matrix/package.json
#	packages/dds/merge-tree/package.json
#	packages/dds/ordered-collection/package.json
#	packages/dds/pact-map/package.json
#	packages/dds/register-collection/package.json
#	packages/dds/sequence/package.json
#	packages/dds/shared-object-base/package.json
#	packages/dds/shared-summary-block/package.json
#	packages/dds/task-manager/package.json
#	packages/dds/test-dds-utils/package.json
#	packages/dds/tree/package.json
#	packages/drivers/debugger/package.json
#	packages/drivers/driver-base/package.json
#	packages/drivers/driver-web-cache/package.json
#	packages/drivers/file-driver/package.json
#	packages/drivers/local-driver/package.json
#	packages/drivers/odsp-driver-definitions/package.json
#	packages/drivers/odsp-driver/package.json
#	packages/drivers/odsp-urlResolver/package.json
#	packages/drivers/replay-driver/package.json
#	packages/drivers/routerlicious-driver/package.json
#	packages/drivers/routerlicious-urlResolver/package.json
#	packages/drivers/tinylicious-driver/package.json
#	packages/framework/agent-scheduler/package.json
#	packages/framework/ai-collab/package.json
#	packages/framework/aqueduct/package.json
#	packages/framework/attributor/package.json
#	packages/framework/data-object-base/package.json
#	packages/framework/dds-interceptions/package.json
#	packages/framework/fluid-framework/package.json
#	packages/framework/fluid-static/package.json
#	packages/framework/oldest-client-observer/package.json
#	packages/framework/presence/package.json
#	packages/framework/react/package.json
#	packages/framework/request-handler/package.json
#	packages/framework/synthesize/package.json
#	packages/framework/tree-agent-langchain/package.json
#	packages/framework/tree-agent-ses/package.json
#	packages/framework/tree-agent/package.json
#	packages/framework/undo-redo/package.json
#	packages/loader/container-loader/package.json
#	packages/loader/driver-utils/package.json
#	packages/loader/test-loader-utils/package.json
#	packages/runtime/container-runtime-definitions/package.json
#	packages/runtime/container-runtime/package.json
#	packages/runtime/datastore-definitions/package.json
#	packages/runtime/datastore/package.json
#	packages/runtime/id-compressor/package.json
#	packages/runtime/runtime-definitions/package.json
#	packages/runtime/runtime-utils/package.json
#	packages/runtime/test-runtime-utils/package.json
#	packages/service-clients/azure-client/package.json
#	packages/service-clients/end-to-end-tests/azure-client/package.json
#	packages/service-clients/end-to-end-tests/odsp-client/package.json
#	packages/service-clients/odsp-client/package.json
#	packages/service-clients/tinylicious-client/package.json
#	packages/test/functional-tests/package.json
#	packages/test/local-server-stress-tests/package.json
#	packages/test/local-server-tests/package.json
#	packages/test/mocha-test-setup/package.json
#	packages/test/snapshots/package.json
#	packages/test/stochastic-test-utils/package.json
#	packages/test/test-driver-definitions/package.json
#	packages/test/test-drivers/package.json
#	packages/test/test-end-to-end-tests/package.json
#	packages/test/test-pairwise-generator/package.json
#	packages/test/test-service-load/package.json
#	packages/test/test-utils/package.json
#	packages/test/test-version-utils/package.json
#	packages/tools/changelog-generator-wrapper/package.json
#	packages/tools/devtools/devtools-browser-extension/package.json
#	packages/tools/devtools/devtools-core/package.json
#	packages/tools/devtools/devtools-test-app/package.json
#	packages/tools/devtools/devtools-view/package.json
#	packages/tools/devtools/devtools/package.json
#	packages/tools/fetch-tool/package.json
#	packages/tools/fluid-runner/package.json
#	packages/tools/replay-tool/package.json
#	packages/utils/odsp-doclib-utils/package.json
#	packages/utils/telemetry-utils/package.json
#	packages/utils/tool-utils/package.json
#	pnpm-lock.yaml
@tylerbutler
Copy link
Member Author

but I expected to see the package also built in the build - client pipeline and I don't see evidence that that happened. Is it because the package still has its own pnpm-workspace.yaml file?

Fixed in latest. The problem is that fluid-build has some hardcoded expectations around "tsc" as a task name. I just added a task that calls the build task and we're back in business.

@alexvy86
Copy link
Contributor

alexvy86 commented Nov 5, 2025

Another thing I realized we probably need: update the yaml for the build-client pipeline to trigger on changes to common/build/eslint-config-fluid; otherwise as we make changes there, the pipeline won't run.

@tylerbutler
Copy link
Member Author

/azp run Build - api-markdown-documenter,Build - benchmark-tool,Build - build-common,Build - build-tools,Build - common-utils,Build - eslint-config-fluid,Build - eslint-plugin-fluid

@azure-pipelines
Copy link

Azure Pipelines successfully started running 2 pipeline(s).

@github-actions
Copy link
Contributor

github-actions bot commented Nov 5, 2025

🔗 Found some broken links! 💔

Run a link check locally to find them. See
https://github.com/microsoft/FluidFramework/wiki/Checking-for-broken-links-in-the-documentation for more information.

linkcheck output


> fluid-framework-docs-site@0.0.0 ci:check-links /home/runner/work/FluidFramework/FluidFramework/docs
> start-server-and-test "npm run serve -- --no-open" 3000 check-links

1: starting server using command "npm run serve -- --no-open"
and when url "[ 'http://127.0.0.1:3000' ]" is responding with HTTP status code 200
running tests using command "npm run check-links"


> fluid-framework-docs-site@0.0.0 serve
> docusaurus serve --no-open

[SUCCESS] Serving "build" directory at: http://localhost:3000/

> fluid-framework-docs-site@0.0.0 check-links
> linkcheck http://localhost:3000 --skip-file skipped-urls.txt

 ELIFECYCLE  Command failed with exit code 1.

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.

LGTM

@tylerbutler tylerbutler merged commit 4854dc1 into main Nov 5, 2025
58 checks passed
@tylerbutler tylerbutler deleted the eslint-config-client-merge branch November 5, 2025 23:13
alexvy86 added a commit that referenced this pull request Nov 6, 2025
anthony-murphy-agent pushed a commit to anthony-murphy-agent/FluidFramework that referenced this pull request Jan 14, 2026
…osoft#25806)

## Description

This change moves the `eslint-config-fluid` package into the client
release group and makes it private.

### Changes:
- Moved `@fluidframework/eslint-config-fluid` to the client release
group
- Updated the package version and mark it private
- Updated all references across the repository to use the workspace
dependency
tylerbutler added a commit to tylerbutler/FluidFramework that referenced this pull request Feb 12, 2026
Reverses the temporary move of eslint-config-fluid into the client
release group (PR microsoft#25806). The package is now an independent workspace
again at version 9.0.0.

- Set version to 9.0.0, removed private flag and typeValidation
- Removed from root pnpm-workspace.yaml
- Root package.json uses link: protocol with pnpm override + postinstall
- Updated 154 client packages from workspace:~ to ~9.0.0
- Re-enabled syncpack version consistency check
- Re-enabled taskPack in eslint-config-fluid pipeline
- Removed temporary npm-private-packages policy exclusion
- Removed eslint-config-fluid path excludes from build-client pipeline
tylerbutler added a commit to tylerbutler/FluidFramework that referenced this pull request Feb 23, 2026
Reverses the temporary move of eslint-config-fluid into the client
release group (PR microsoft#25806). The package is now an independent workspace
again at version 9.0.0.

- Set version to 9.0.0, removed private flag and typeValidation
- Removed from root pnpm-workspace.yaml
- Root package.json uses link: protocol with pnpm override + postinstall
- Updated 154 client packages from workspace:~ to ~9.0.0
- Re-enabled syncpack version consistency check
- Re-enabled taskPack in eslint-config-fluid pipeline
- Removed temporary npm-private-packages policy exclusion
- Removed eslint-config-fluid path excludes from build-client pipeline
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area: build Build related issues area: dds: propertydds area: dds: sharedstring area: dds: tree area: dds Issues related to distributed data structures area: dev experience Improving the experience of devs building on top of fluid area: driver Driver related issues area: examples Changes that focus on our examples area: framework Framework is a tag for issues involving the developer framework. Eg Aqueduct area: loader Loader related issues area: odsp-driver area: runtime Runtime related issues area: tests Tests to add, test infrastructure improvements, etc base: main PRs targeted against main branch dependencies Pull requests that update a dependency file

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants