From 1b6c1df4a51afa26d2f370d19c6084c32566f004 Mon Sep 17 00:00:00 2001 From: Michael Belousov Date: Tue, 15 Aug 2023 14:45:02 -0400 Subject: [PATCH 01/12] Code trim behaviors (#5861) Co-authored-by: Michael Belousov Co-authored-by: Paul Connelly <22944042+pmconne@users.noreply.github.com> (cherry picked from commit 0965603d0dd2f67d75d998052eb59a6c955937ef) --- common/api/core-backend.api.md | 3 ++ core/backend/src/IModelDb.ts | 12 ++++++ core/backend/src/test/imodel/IModel.test.ts | 41 ++++++++++++++++++++- 3 files changed, 55 insertions(+), 1 deletion(-) diff --git a/common/api/core-backend.api.md b/common/api/core-backend.api.md index 22177bcc2199..b9b3107cefd7 100644 --- a/common/api/core-backend.api.md +++ b/common/api/core-backend.api.md @@ -2905,6 +2905,9 @@ export abstract class IModelDb extends IModel { // @internal (undocumented) protected _codeService?: CodeService; get codeSpecs(): CodeSpecs; + // @beta + get codeValueBehavior(): "exact" | "trim-unicode-whitespace"; + set codeValueBehavior(newBehavior: "exact" | "trim-unicode-whitespace"); computeProjectExtents(options?: ComputeProjectExtentsOptions): ComputedProjectExtents; constructEntity(props: P): T; containsClass(classFullName: string): boolean; diff --git a/core/backend/src/IModelDb.ts b/core/backend/src/IModelDb.ts index ea6a25c72de1..09df170926da 100644 --- a/core/backend/src/IModelDb.ts +++ b/core/backend/src/IModelDb.ts @@ -1338,6 +1338,18 @@ export abstract class IModelDb extends IModel { } }); } + + /** + * Controls how [Code]($common)s are copied from this iModel into another iModel, to work around problems with iModels created by older connectors. The [imodel-transformer](https://github.com/iTwin/imodel-transformer) sets this appropriately on your behalf - you should never need to set or interrogate this property yourself. + * @public + */ + public get codeValueBehavior(): "exact" | "trim-unicode-whitespace" { + return this.nativeDb.getCodeValueBehavior(); + } + + public set codeValueBehavior(newBehavior: "exact" | "trim-unicode-whitespace") { + this.nativeDb.setCodeValueBehavior(newBehavior); + } } /** @public */ diff --git a/core/backend/src/test/imodel/IModel.test.ts b/core/backend/src/test/imodel/IModel.test.ts index 9fdb352ba7aa..551f397df11d 100644 --- a/core/backend/src/test/imodel/IModel.test.ts +++ b/core/backend/src/test/imodel/IModel.test.ts @@ -9,7 +9,7 @@ import * as sinon from "sinon"; import { DbResult, Guid, GuidString, Id64, Id64String, Logger, OpenMode, ProcessDetector, using } from "@itwin/core-bentley"; import { AxisAlignedBox3d, BisCodeSpec, BriefcaseIdValue, ChangesetIdWithIndex, Code, CodeScopeSpec, CodeSpec, ColorByName, ColorDef, DefinitionElementProps, - DisplayStyleProps, DisplayStyleSettings, DisplayStyleSettingsProps, EcefLocation, EntityMetaData, EntityProps, FilePropertyProps, + DisplayStyleProps, DisplayStyleSettings, DisplayStyleSettingsProps, EcefLocation, ElementProps, EntityMetaData, EntityProps, FilePropertyProps, FontMap, FontType, GeoCoordinatesRequestProps, GeoCoordStatus, GeographicCRS, GeographicCRSProps, GeometricElementProps, GeometryParams, GeometryStreamBuilder, ImageSourceFormat, IModel, IModelCoordinatesRequestProps, IModelError, IModelStatus, LightLocationProps, MapImageryProps, PhysicalElementProps, PointWithStatus, PrimitiveTypeCode, RelatedElement, RenderMode, SchemaState, SpatialViewDefinitionProps, SubCategoryAppearance, SubjectProps, TextureMapping, @@ -2781,4 +2781,43 @@ describe("iModel", () => { assert.isUndefined(subject4.federationGuid); // should not have changed }); + + it('should allow untrimmed codes when using "exact" codeValueBehavior', () => { + const imodelPath = IModelTestUtils.prepareOutputFile("IModel", "codeValueBehavior.bim"); + const imodel = SnapshotDb.createEmpty(imodelPath, { rootSubject: { name: "codeValueBehaviors" } }); + + const getNumberedCodeValAndProps = (n: number) => { + const trimmedCodeVal = `CodeValue${n}`; + const untrimmedCodeVal = `${trimmedCodeVal}\xa0`; + const spec = imodel.codeSpecs.getByName(SpatialCategory.getCodeSpecName()).id; + const props: ElementProps = { + // the [[Code]] class still (as it always has) trims unicode space, so avoid it + code: { spec, scope: IModelDb.dictionaryId, value: untrimmedCodeVal }, + model: IModelDb.dictionaryId, + classFullName: SpatialCategory.classFullName, + }; + return { trimmedCodeVal, untrimmedCodeVal, props }; + }; + + expect(imodel.codeValueBehavior).to.equal("trim-unicode-whitespace"); + + const code1 = getNumberedCodeValAndProps(1); + const categ1Id = imodel.elements.insertElement(code1.props); + const categ1 = imodel.elements.getElementJson({ id: categ1Id }); + expect(categ1.code.value).to.equal(code1.trimmedCodeVal); + + imodel.codeValueBehavior = "exact"; + const code2 = getNumberedCodeValAndProps(2); + const categ2Id = imodel.elements.insertElement(code2.props); + const categ2 = imodel.elements.getElementJson({ id: categ2Id }); + expect(categ2.code.value).to.equal(code2.untrimmedCodeVal); + + imodel.codeValueBehavior = "trim-unicode-whitespace"; + const code3 = getNumberedCodeValAndProps(3); + const categ3Id = imodel.elements.insertElement(code3.props); + const categ3 = imodel.elements.getElement({ id: categ3Id }); + expect(categ3.code.value).to.equal(code3.trimmedCodeVal); + + imodel.close(); + }); }); From 9032c287ae01e77debae9e7f762b90c3addd6150 Mon Sep 17 00:00:00 2001 From: Michael Belousov Date: Thu, 17 Aug 2023 12:35:34 -0400 Subject: [PATCH 02/12] remove new APIs from backport --- core/backend/src/IModelDb.ts | 12 ------------ core/backend/src/test/imodel/IModel.test.ts | 6 +++--- 2 files changed, 3 insertions(+), 15 deletions(-) diff --git a/core/backend/src/IModelDb.ts b/core/backend/src/IModelDb.ts index 09df170926da..ea6a25c72de1 100644 --- a/core/backend/src/IModelDb.ts +++ b/core/backend/src/IModelDb.ts @@ -1338,18 +1338,6 @@ export abstract class IModelDb extends IModel { } }); } - - /** - * Controls how [Code]($common)s are copied from this iModel into another iModel, to work around problems with iModels created by older connectors. The [imodel-transformer](https://github.com/iTwin/imodel-transformer) sets this appropriately on your behalf - you should never need to set or interrogate this property yourself. - * @public - */ - public get codeValueBehavior(): "exact" | "trim-unicode-whitespace" { - return this.nativeDb.getCodeValueBehavior(); - } - - public set codeValueBehavior(newBehavior: "exact" | "trim-unicode-whitespace") { - this.nativeDb.setCodeValueBehavior(newBehavior); - } } /** @public */ diff --git a/core/backend/src/test/imodel/IModel.test.ts b/core/backend/src/test/imodel/IModel.test.ts index 551f397df11d..133def1e0934 100644 --- a/core/backend/src/test/imodel/IModel.test.ts +++ b/core/backend/src/test/imodel/IModel.test.ts @@ -2799,20 +2799,20 @@ describe("iModel", () => { return { trimmedCodeVal, untrimmedCodeVal, props }; }; - expect(imodel.codeValueBehavior).to.equal("trim-unicode-whitespace"); + expect(imodel.nativeDb.getCodeValueBehavior()).to.equal("trim-unicode-whitespace"); const code1 = getNumberedCodeValAndProps(1); const categ1Id = imodel.elements.insertElement(code1.props); const categ1 = imodel.elements.getElementJson({ id: categ1Id }); expect(categ1.code.value).to.equal(code1.trimmedCodeVal); - imodel.codeValueBehavior = "exact"; + imodel.nativeDb.setCodeValueBehavior("exact"); const code2 = getNumberedCodeValAndProps(2); const categ2Id = imodel.elements.insertElement(code2.props); const categ2 = imodel.elements.getElementJson({ id: categ2Id }); expect(categ2.code.value).to.equal(code2.untrimmedCodeVal); - imodel.codeValueBehavior = "trim-unicode-whitespace"; + imodel.nativeDb.setCodeValueBehavior("trim-unicode-whitespace"); const code3 = getNumberedCodeValAndProps(3); const categ3Id = imodel.elements.insertElement(code3.props); const categ3 = imodel.elements.getElement({ id: categ3Id }); From a25d6f28ece9cdc4ff37ffd922904b047347265d Mon Sep 17 00:00:00 2001 From: Michael Belousov Date: Thu, 17 Aug 2023 12:40:43 -0400 Subject: [PATCH 03/12] Revert "remove new APIs from backport" This reverts commit 9032c287ae01e77debae9e7f762b90c3addd6150. --- core/backend/src/IModelDb.ts | 12 ++++++++++++ core/backend/src/test/imodel/IModel.test.ts | 6 +++--- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/core/backend/src/IModelDb.ts b/core/backend/src/IModelDb.ts index ea6a25c72de1..09df170926da 100644 --- a/core/backend/src/IModelDb.ts +++ b/core/backend/src/IModelDb.ts @@ -1338,6 +1338,18 @@ export abstract class IModelDb extends IModel { } }); } + + /** + * Controls how [Code]($common)s are copied from this iModel into another iModel, to work around problems with iModels created by older connectors. The [imodel-transformer](https://github.com/iTwin/imodel-transformer) sets this appropriately on your behalf - you should never need to set or interrogate this property yourself. + * @public + */ + public get codeValueBehavior(): "exact" | "trim-unicode-whitespace" { + return this.nativeDb.getCodeValueBehavior(); + } + + public set codeValueBehavior(newBehavior: "exact" | "trim-unicode-whitespace") { + this.nativeDb.setCodeValueBehavior(newBehavior); + } } /** @public */ diff --git a/core/backend/src/test/imodel/IModel.test.ts b/core/backend/src/test/imodel/IModel.test.ts index 133def1e0934..551f397df11d 100644 --- a/core/backend/src/test/imodel/IModel.test.ts +++ b/core/backend/src/test/imodel/IModel.test.ts @@ -2799,20 +2799,20 @@ describe("iModel", () => { return { trimmedCodeVal, untrimmedCodeVal, props }; }; - expect(imodel.nativeDb.getCodeValueBehavior()).to.equal("trim-unicode-whitespace"); + expect(imodel.codeValueBehavior).to.equal("trim-unicode-whitespace"); const code1 = getNumberedCodeValAndProps(1); const categ1Id = imodel.elements.insertElement(code1.props); const categ1 = imodel.elements.getElementJson({ id: categ1Id }); expect(categ1.code.value).to.equal(code1.trimmedCodeVal); - imodel.nativeDb.setCodeValueBehavior("exact"); + imodel.codeValueBehavior = "exact"; const code2 = getNumberedCodeValAndProps(2); const categ2Id = imodel.elements.insertElement(code2.props); const categ2 = imodel.elements.getElementJson({ id: categ2Id }); expect(categ2.code.value).to.equal(code2.untrimmedCodeVal); - imodel.nativeDb.setCodeValueBehavior("trim-unicode-whitespace"); + imodel.codeValueBehavior = "trim-unicode-whitespace"; const code3 = getNumberedCodeValAndProps(3); const categ3Id = imodel.elements.insertElement(code3.props); const categ3 = imodel.elements.getElement({ id: categ3Id }); From 832ff681f7cd2b228c000883a3ed10127607f535 Mon Sep 17 00:00:00 2001 From: Michael Belousov Date: Thu, 17 Aug 2023 12:44:15 -0400 Subject: [PATCH 04/12] internalize new api --- core/backend/src/IModelDb.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/backend/src/IModelDb.ts b/core/backend/src/IModelDb.ts index 09df170926da..dfb7026c4852 100644 --- a/core/backend/src/IModelDb.ts +++ b/core/backend/src/IModelDb.ts @@ -1341,7 +1341,7 @@ export abstract class IModelDb extends IModel { /** * Controls how [Code]($common)s are copied from this iModel into another iModel, to work around problems with iModels created by older connectors. The [imodel-transformer](https://github.com/iTwin/imodel-transformer) sets this appropriately on your behalf - you should never need to set or interrogate this property yourself. - * @public + * @internal */ public get codeValueBehavior(): "exact" | "trim-unicode-whitespace" { return this.nativeDb.getCodeValueBehavior(); From 80aab6829a4866aba2fe0e3bca17eb128df869f3 Mon Sep 17 00:00:00 2001 From: Michael Belousov Date: Thu, 17 Aug 2023 12:46:16 -0400 Subject: [PATCH 05/12] rush change --- ...gify-bp-release-4.1.x-pr-5861_2023-08-17-16-46.json | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 common/changes/@itwin/core-backend/mergify-bp-release-4.1.x-pr-5861_2023-08-17-16-46.json diff --git a/common/changes/@itwin/core-backend/mergify-bp-release-4.1.x-pr-5861_2023-08-17-16-46.json b/common/changes/@itwin/core-backend/mergify-bp-release-4.1.x-pr-5861_2023-08-17-16-46.json new file mode 100644 index 000000000000..233a56c6e311 --- /dev/null +++ b/common/changes/@itwin/core-backend/mergify-bp-release-4.1.x-pr-5861_2023-08-17-16-46.json @@ -0,0 +1,10 @@ +{ + "changes": [ + { + "packageName": "@itwin/core-backend", + "comment": "backport codeValueBehavior API as internal", + "type": "none" + } + ], + "packageName": "@itwin/core-backend" +} \ No newline at end of file From 0c3320ac96011d366c0636e1eb6a7637a4fcf5b6 Mon Sep 17 00:00:00 2001 From: Michael Belousov Date: Thu, 17 Aug 2023 12:46:58 -0400 Subject: [PATCH 06/12] re-extract api --- common/api/core-backend.api.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/common/api/core-backend.api.md b/common/api/core-backend.api.md index b9b3107cefd7..b7cffd852cb6 100644 --- a/common/api/core-backend.api.md +++ b/common/api/core-backend.api.md @@ -2905,7 +2905,7 @@ export abstract class IModelDb extends IModel { // @internal (undocumented) protected _codeService?: CodeService; get codeSpecs(): CodeSpecs; - // @beta + // @internal get codeValueBehavior(): "exact" | "trim-unicode-whitespace"; set codeValueBehavior(newBehavior: "exact" | "trim-unicode-whitespace"); computeProjectExtents(options?: ComputeProjectExtentsOptions): ComputedProjectExtents; From d1ecf143ef9d1cbfeffe1dbc954df87660302761 Mon Sep 17 00:00:00 2001 From: Arun George <11051042+aruniverse@users.noreply.github.com> Date: Thu, 17 Aug 2023 12:49:43 -0400 Subject: [PATCH 07/12] Update common/changes/@itwin/core-backend/mergify-bp-release-4.1.x-pr-5861_2023-08-17-16-46.json --- .../mergify-bp-release-4.1.x-pr-5861_2023-08-17-16-46.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/common/changes/@itwin/core-backend/mergify-bp-release-4.1.x-pr-5861_2023-08-17-16-46.json b/common/changes/@itwin/core-backend/mergify-bp-release-4.1.x-pr-5861_2023-08-17-16-46.json index 233a56c6e311..9dd0e2174273 100644 --- a/common/changes/@itwin/core-backend/mergify-bp-release-4.1.x-pr-5861_2023-08-17-16-46.json +++ b/common/changes/@itwin/core-backend/mergify-bp-release-4.1.x-pr-5861_2023-08-17-16-46.json @@ -2,7 +2,7 @@ "changes": [ { "packageName": "@itwin/core-backend", - "comment": "backport codeValueBehavior API as internal", + "comment": "add `internal` `codeValueBehavior` API ", "type": "none" } ], From addbc2aafa9b899c89fef9cf0527cab0813f1f7a Mon Sep 17 00:00:00 2001 From: Nam Le <50554904+hl662@users.noreply.github.com> Date: Mon, 14 Aug 2023 19:14:01 -0400 Subject: [PATCH 08/12] Fix OOM in linux CI due to vite memory usage (#5852) Co-authored-by: Michael Belousov --- common/config/azure-pipelines/templates/core-build.yaml | 9 +++++++++ test-apps/display-performance-test-app/vite.config.ts | 2 +- test-apps/display-test-app/vite.config.ts | 2 +- 3 files changed, 11 insertions(+), 2 deletions(-) diff --git a/common/config/azure-pipelines/templates/core-build.yaml b/common/config/azure-pipelines/templates/core-build.yaml index ed9ca69b730f..a1766424af0d 100644 --- a/common/config/azure-pipelines/templates/core-build.yaml +++ b/common/config/azure-pipelines/templates/core-build.yaml @@ -82,6 +82,15 @@ steps: env: RUSH_BUILD_CACHE_CREDENTIAL: $(RushBuildCacheSAS) RUSH_BUILD_CACHE_ENABLED: ${{parameters.rushBuildCacheEnabled}} + condition: and(succeeded(), ne(variables['Agent.OS'], 'Linux')) + # TEMP: build on linux but with 50% CPU saturation to prevent OOM + - script: node common/scripts/install-run-rush.js build -v -p '50%' + displayName: rush build + workingDirectory: ${{ parameters.workingDir }} + env: + RUSH_BUILD_CACHE_CREDENTIAL: $(RushBuildCacheSAS) + RUSH_BUILD_CACHE_ENABLED: ${{parameters.rushBuildCacheEnabled}} + condition: and(succeeded(), eq(variables['Agent.OS'], 'Linux')) - script: npm run ios:all workingDirectory: test-apps/display-test-app diff --git a/test-apps/display-performance-test-app/vite.config.ts b/test-apps/display-performance-test-app/vite.config.ts index bba5507640d6..614f7fc9bd65 100644 --- a/test-apps/display-performance-test-app/vite.config.ts +++ b/test-apps/display-performance-test-app/vite.config.ts @@ -49,7 +49,7 @@ export default defineConfig(() => { publicDir: ".static-assets", build: { outDir: "./lib", - sourcemap: "inline", // append to the resulting output file + sourcemap: process.env.CI ? false : "inline", // append to the resulting output file if not running in CI. minify: false, // disable compaction of source code target: browserslistToEsbuild(), // for browserslist in package.json commonjsOptions: { diff --git a/test-apps/display-test-app/vite.config.ts b/test-apps/display-test-app/vite.config.ts index bba5507640d6..614f7fc9bd65 100644 --- a/test-apps/display-test-app/vite.config.ts +++ b/test-apps/display-test-app/vite.config.ts @@ -49,7 +49,7 @@ export default defineConfig(() => { publicDir: ".static-assets", build: { outDir: "./lib", - sourcemap: "inline", // append to the resulting output file + sourcemap: process.env.CI ? false : "inline", // append to the resulting output file if not running in CI. minify: false, // disable compaction of source code target: browserslistToEsbuild(), // for browserslist in package.json commonjsOptions: { From 76562e27974beda825463ed61ddc19e9f272fe4f Mon Sep 17 00:00:00 2001 From: Michael Belousov Date: Thu, 17 Aug 2023 14:13:25 -0400 Subject: [PATCH 09/12] cherry-pick VITE_CI part of #5870 to prevent OOM --- .../config/azure-pipelines/templates/core-build.yaml | 10 +--------- test-apps/display-test-app/vite.config.ts | 3 ++- 2 files changed, 3 insertions(+), 10 deletions(-) diff --git a/common/config/azure-pipelines/templates/core-build.yaml b/common/config/azure-pipelines/templates/core-build.yaml index a1766424af0d..71b1ff3c73a1 100644 --- a/common/config/azure-pipelines/templates/core-build.yaml +++ b/common/config/azure-pipelines/templates/core-build.yaml @@ -82,15 +82,7 @@ steps: env: RUSH_BUILD_CACHE_CREDENTIAL: $(RushBuildCacheSAS) RUSH_BUILD_CACHE_ENABLED: ${{parameters.rushBuildCacheEnabled}} - condition: and(succeeded(), ne(variables['Agent.OS'], 'Linux')) - # TEMP: build on linux but with 50% CPU saturation to prevent OOM - - script: node common/scripts/install-run-rush.js build -v -p '50%' - displayName: rush build - workingDirectory: ${{ parameters.workingDir }} - env: - RUSH_BUILD_CACHE_CREDENTIAL: $(RushBuildCacheSAS) - RUSH_BUILD_CACHE_ENABLED: ${{parameters.rushBuildCacheEnabled}} - condition: and(succeeded(), eq(variables['Agent.OS'], 'Linux')) + VITE_CI: true - script: npm run ios:all workingDirectory: test-apps/display-test-app diff --git a/test-apps/display-test-app/vite.config.ts b/test-apps/display-test-app/vite.config.ts index 614f7fc9bd65..231d4051ae41 100644 --- a/test-apps/display-test-app/vite.config.ts +++ b/test-apps/display-test-app/vite.config.ts @@ -47,9 +47,10 @@ export default defineConfig(() => { }, envPrefix: "IMJS_", publicDir: ".static-assets", + logLevel: process.env.VITE_CI ? "error" : "warn", build: { outDir: "./lib", - sourcemap: process.env.CI ? false : "inline", // append to the resulting output file if not running in CI. + sourcemap: !!process.env.VITE_CI, // append to the resulting output file if not running in CI. minify: false, // disable compaction of source code target: browserslistToEsbuild(), // for browserslist in package.json commonjsOptions: { From 7a2b7c6219dcd002208e0414021453bfbfb67ce4 Mon Sep 17 00:00:00 2001 From: Michael Belousov Date: Thu, 17 Aug 2023 14:16:56 -0400 Subject: [PATCH 10/12] fix using old CI variable that doesn't exist in az pipelines --- test-apps/display-performance-test-app/vite.config.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test-apps/display-performance-test-app/vite.config.ts b/test-apps/display-performance-test-app/vite.config.ts index 614f7fc9bd65..9212da159e8f 100644 --- a/test-apps/display-performance-test-app/vite.config.ts +++ b/test-apps/display-performance-test-app/vite.config.ts @@ -49,7 +49,7 @@ export default defineConfig(() => { publicDir: ".static-assets", build: { outDir: "./lib", - sourcemap: process.env.CI ? false : "inline", // append to the resulting output file if not running in CI. + sourcemap: !!process.env.VITE_CI, minify: false, // disable compaction of source code target: browserslistToEsbuild(), // for browserslist in package.json commonjsOptions: { From c0f29ff7629379f2a088c31ce1fec41df31ceea6 Mon Sep 17 00:00:00 2001 From: Michael Belousov Date: Thu, 17 Aug 2023 19:06:40 -0400 Subject: [PATCH 11/12] update new addon --- core/backend/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/backend/package.json b/core/backend/package.json index 6d5b3d17280a..575b699d3539 100644 --- a/core/backend/package.json +++ b/core/backend/package.json @@ -90,7 +90,7 @@ "webpack": "^5.76.0" }, "dependencies": { - "@bentley/imodeljs-native": "4.1.8", + "@bentley/imodeljs-native": "4.1.9", "@itwin/cloud-agnostic-core": "^2.0.0", "@itwin/core-telemetry": "workspace:*", "@itwin/object-storage-azure": "^2.0.0", From 76abfb0f365022aec78b23b5cce59436c779842e Mon Sep 17 00:00:00 2001 From: Michael Belousov Date: Fri, 18 Aug 2023 08:07:58 -0400 Subject: [PATCH 12/12] rush update --- common/config/rush/pnpm-lock.yaml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/common/config/rush/pnpm-lock.yaml b/common/config/rush/pnpm-lock.yaml index 24fe41e08339..8d3cff886bb7 100644 --- a/common/config/rush/pnpm-lock.yaml +++ b/common/config/rush/pnpm-lock.yaml @@ -7,7 +7,7 @@ importers: ../../core/backend: specifiers: - '@bentley/imodeljs-native': 4.1.8 + '@bentley/imodeljs-native': 4.1.9 '@itwin/build-tools': workspace:* '@itwin/cloud-agnostic-core': ^2.0.0 '@itwin/core-bentley': workspace:* @@ -52,7 +52,7 @@ importers: webpack: ^5.76.0 ws: ^7.5.3 dependencies: - '@bentley/imodeljs-native': 4.1.8 + '@bentley/imodeljs-native': 4.1.9 '@itwin/cloud-agnostic-core': 2.0.0_scz6qrwecfbbxg4vskopkl3a7u '@itwin/core-telemetry': link:../telemetry '@itwin/object-storage-azure': 2.0.0_scz6qrwecfbbxg4vskopkl3a7u @@ -3726,8 +3726,8 @@ packages: resolution: {integrity: sha512-IIs1wDcY2oZ8tJ3EZRw0U51M+0ZL3MvwoDYYmhUXaa9/UZqpFoOyLBGaxjirQteWXqTIMm3mFvmC+Nbn1ok4Iw==} dev: false - /@bentley/imodeljs-native/4.1.8: - resolution: {integrity: sha512-ASRPdlNCHGbIv56sR3hqB23a5akzvrBvnY+JsQkfdMI9slfUDcswtP4vlU+XZo/OMVIr4cODJKS68xIIeDRCOw==} + /@bentley/imodeljs-native/4.1.9: + resolution: {integrity: sha512-Ym675wTR7ck6/BiAZeaiXiubgNk/N5jU1dvhldfYP+gOVoKaGT4sSqGZRxIlvB00pINytW4RI7OYDhgz1RT39A==} requiresBuild: true dev: false