Skip to content

Remove @itwin/presentation-testing package#1328

Merged
grigasp merged 5 commits into
masterfrom
testing/remove-package
May 5, 2026
Merged

Remove @itwin/presentation-testing package#1328
grigasp merged 5 commits into
masterfrom
testing/remove-package

Conversation

@grigasp

@grigasp grigasp commented May 5, 2026

Copy link
Copy Markdown
Member

Part of #1320. Needs to wait for iTwin/itwinjs-core#9258.

At first I was thinking to keep it and just exclude from our release pipelines, but then we'd have to keep maintaining it - reacting to deprecations, dependency bumps, etc. So ended up removing it completely. If a patch is needed for some reason, we can do that from a branch.

Copilot AI review requested due to automatic review settings May 5, 2026 12:17
@grigasp grigasp requested a review from a team as a code owner May 5, 2026 12:17
@changeset-bot

changeset-bot Bot commented May 5, 2026

Copy link
Copy Markdown

⚠️ No Changeset found

Latest commit: 325b881

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Unified selection benchmark

Benchmark suite Current: 325b881 Previous: cffc069 Deviation Status
compute selection for 50k elements 354 ms 344 ms 2.91% 〰️
compute selection for 50k elements (P95 of main thread blocks) 32 ms 31 ms 3.23% 〰️
compute parent selection for 50k elements 349 ms 346 ms 0.87% 〰️
compute parent selection for 50k elements (P95 of main thread blocks) 31 ms 32 ms -3.13% 〰️
compute top ancestor selection for 50k elements 590 ms 553 ms 6.69% 〰️
compute top ancestor selection for 50k elements (P95 of main thread blocks) 0 ms 0 ms 0% 🟰
compute category selection for 50k elements 102 ms 104 ms -1.92% 〰️
compute category selection for 50k elements (P95 of main thread blocks) 0 ms 0 ms 0% 🟰
compute model selection for 50k elements 82 ms 74 ms 10.81% 〰️
compute model selection for 50k elements (P95 of main thread blocks) 0 ms 0 ms 0% 🟰
compute functional selection for 50k 3D elements 422 ms 410 ms 2.93% 〰️
compute functional selection for 50k 3D elements (P95 of main thread blocks) 31 ms 31 ms 0% 🟰
compute parent functional selection for 50k 3D elements 468 ms 434 ms 7.83% 〰️
compute parent functional selection for 50k 3D elements (P95 of main thread blocks) 31 ms 31 ms 0% 🟰
compute top ancestor functional selection for 50k 3D elements 1238 ms 1163 ms 6.45% 〰️
compute top ancestor functional selection for 50k 3D elements (P95 of main thread blocks) 0 ms 0 ms 0% 🟰
compute functional selection for 50k 2D elements 3140 ms 2926 ms 7.31% 〰️
compute functional selection for 50k 2D elements (P95 of main thread blocks) 0 ms 0 ms 0% 🟰
compute parent functional selection for 50k 2D elements 3156 ms 2835 ms 11.32% 🚨
compute parent functional selection for 50k 2D elements (P95 of main thread blocks) 0 ms 0 ms 0% 🟰
compute top ancestor functional selection for 50k 2D elements 3121 ms 2922 ms 6.81% 〰️
compute top ancestor functional selection for 50k 2D elements (P95 of main thread blocks) 0 ms 0 ms 0% 🟰
hilite 50k elements 1243 ms 1160 ms 7.16% 〰️
hilite 50k elements (P95 of main thread blocks) 61 ms 51 ms 19.61% 〰️
hilite 50k group elements 251 ms 238 ms 5.46% 〰️
hilite 50k group elements (P95 of main thread blocks) 35 ms 35 ms 0% 🟰
hilite 1k subjects 45065 ms 48071 ms -6.25% 〰️
hilite 1k subjects (P95 of main thread blocks) 23 ms 28 ms -17.86% 〰️
hilite 50k subcategories 300 ms 315 ms -4.76% 〰️
hilite 50k subcategories (P95 of main thread blocks) 41 ms 40 ms 2.50% 〰️
hilite 50k functional 3D elements 28719 ms 26812 ms 7.11% 〰️
hilite 50k functional 3D elements (P95 of main thread blocks) 41 ms 42 ms -2.38% 〰️
hilite 50k functional 2D elements 6488 ms 6000 ms 8.13% 〰️
hilite 50k functional 2D elements (P95 of main thread blocks) 36 ms 32 ms 12.50% 〰️

This comment was automatically generated by workflow using github-action-benchmark.

@grigasp grigasp linked an issue May 5, 2026 that may be closed by this pull request
6 tasks

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Hierarchies benchmark

Benchmark suite Current: 325b881 Previous: cffc069 Deviation Status
filtering filters with 50000 paths 8715 ms 6536 ms 33.34% 🚨
filtering filters with 50000 paths (P95 of main thread blocks) 241 ms 182 ms 32.42% 🚨
hide if no children required to finalize root, w/o children 51141 ms 28058 ms 82.27% 🚨
hide if no children required to finalize root, w/o children (P95 of main thread blocks) 44 ms 25 ms 76% 〰️
hide if no children required to finalize root, w/ children 207 ms 135 ms 53.33% 🚨
hide if no children required to finalize root, w/ children (P95 of main thread blocks) 0 ms 0 ms 0% 🟰
models tree initial (Baytown) 104 ms 63 ms 65.08% 〰️
models tree initial (Baytown) (P95 of main thread blocks) 31 ms 0 ms 3100% 〰️
models tree full (Baytown) 7540 ms 5708 ms 32.10% 🚨
models tree full (Baytown) (P95 of main thread blocks) 91 ms 67 ms 35.82% 〰️
models tree creates initial filtered view for 50k target items 2335 ms 1695 ms 37.76% 🚨
models tree creates initial filtered view for 50k target items (P95 of main thread blocks) 253 ms 34 ms 644.12% 🚨
grouping by label 15727 ms 11564 ms 36.00% 🚨
grouping by label (P95 of main thread blocks) 60 ms 54 ms 11.11% 〰️
grouping by class 15331 ms 11439 ms 34.02% 🚨
grouping by class (P95 of main thread blocks) 46 ms 42 ms 9.52% 〰️
grouping by property 15870 ms 12263 ms 29.41% 🚨
grouping by property (P95 of main thread blocks) 64 ms 57 ms 12.28% 〰️
grouping by base class (10 classes) 13306 ms 10349 ms 28.57% 🚨
grouping by base class (10 classes) (P95 of main thread blocks) 122 ms 99 ms 23.23% 〰️
grouping by multiple attributes 27208 ms 24710 ms 10.11% 🚨
grouping by multiple attributes (P95 of main thread blocks) 44 ms 75 ms -41.33% 〰️
flat 50k elements list 9537 ms 3564 ms 167.59% 🚨
flat 50k elements list (P95 of main thread blocks) 100 ms 51 ms 96.08% 〰️

This comment was automatically generated by workflow using github-action-benchmark.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Removes the deprecated @itwin/presentation-testing package from the monorepo (per issue #1320 deprecation plan), and updates CI/regression tooling to stop building/packing it.

Changes:

  • Deleted packages/testing (source, tests, configs, API reports, and package metadata) and removed its lockfile importer entries.
  • Updated regression scripts and GitHub Actions workflow to stop building/packing @itwin/presentation-testing.
  • Updated contributor and Azure docs pipeline configuration to remove references to the deleted package paths.

Reviewed changes

Copilot reviewed 32 out of 33 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
scripts/regression/fixDependencies.js Stops applying dependency adjustments for the removed @itwin/presentation-testing package.
pnpm-lock.yaml Removes the packages/testing importer and associated locked dependencies.
packages/testing/vitest.config.ts Deleted as part of removing the testing package.
packages/testing/tsconfig.json Deleted as part of removing the testing package.
packages/testing/tsconfig.esm.json Deleted as part of removing the testing package.
packages/testing/tsconfig.cjs.json Deleted as part of removing the testing package.
packages/testing/src/test/Utils.ts Deleted as part of removing the testing package.
packages/testing/src/test/RulesetTesting.test.ts Deleted as part of removing the testing package.
packages/testing/src/test/IModelUtilities.test.ts Deleted as part of removing the testing package.
packages/testing/src/test/IModelBuilderImpl.test.ts Deleted as part of removing the testing package.
packages/testing/src/test/HierarchyBuilder.test.ts Deleted as part of removing the testing package.
packages/testing/src/test/Helpers.test.ts Deleted as part of removing the testing package.
packages/testing/src/test/FilenameUtils.test.ts Deleted as part of removing the testing package.
packages/testing/src/test/ContentBuilder.test.ts Deleted as part of removing the testing package.
packages/testing/src/test/snapshots/HierarchyBuilder.test.ts.snap Deleted snapshot tied to removed tests.
packages/testing/src/presentation-testing/IModelUtilities.ts Deleted package implementation code.
packages/testing/src/presentation-testing/IModelBuilderImpl.ts Deleted package implementation code.
packages/testing/src/presentation-testing/HierarchyBuilder.ts Deleted package implementation code.
packages/testing/src/presentation-testing/Helpers.ts Deleted package implementation code.
packages/testing/src/presentation-testing/FilenameUtils.ts Deleted package implementation code.
packages/testing/src/presentation-testing/ContentBuilder.ts Deleted package implementation code.
packages/testing/src/presentation-testing.ts Deleted package entrypoint exports.
packages/testing/README.md Deleted package README.
packages/testing/package.json Deleted package manifest to remove it from the workspace.
packages/testing/LICENSE.md Deleted package-local license file.
packages/testing/eslint.config.cjs Deleted package-local lint config.
packages/testing/CHANGELOG.md Deleted package changelog.
packages/testing/api/presentation-testing.exports.csv Deleted generated API exports report.
packages/testing/api/presentation-testing.api.md Deleted generated API report.
packages/testing/.npmignore Deleted package publish ignore rules.
CONTRIBUTING.md Removes instructions to pack presentation-testing during local regression workflow.
.github/workflows/regression.yml Stops building/packing @itwin/presentation-testing in regression CI.
.azure-pipelines/generate-docs.yaml Removes package/testing and related removed paths from docs-change detection list.
Files not reviewed (1)
  • pnpm-lock.yaml: Language not supported

Comment thread CONTRIBUTING.md
@grigasp grigasp enabled auto-merge (squash) May 5, 2026 13:15
@grigasp grigasp merged commit eae7d8b into master May 5, 2026
19 checks passed
@grigasp grigasp deleted the testing/remove-package branch May 5, 2026 17:39
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.

presentation-testing: Deprecation plan

3 participants