build(client): Move eslint-config-fluid to client release group#25806
build(client): Move eslint-config-fluid to client release group#25806tylerbutler merged 76 commits intomainfrom
Conversation
Updates the import-x/order rule configuration to match FluidFramework codebase conventions: - Internal @fluid* packages come before external npm packages - Groups: builtin → internal → external → parent → sibling → index - pathGroups maps all @fluid* scopes to internal group - newlines-between: always enforces blank lines between groups Fixes 27 files that were missing newlines between internal and external import groups. Source: https://github.com/antfu/eslint-plugin-import-x/blob/master/docs/rules/order.md
alexvy86
left a comment
There was a problem hiding this comment.
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
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. |
|
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. |
|
/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 successfully started running 2 pipeline(s). |
|
🔗 Found some broken links! 💔 Run a link check locally to find them. See linkcheck output |
…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
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
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
Description
This change moves the
eslint-config-fluidpackage into the client release group and makes it private.Changes:
@fluidframework/eslint-config-fluidto the client release group