diff --git a/package.json b/package.json index aa42ba8da..0034665de 100644 --- a/package.json +++ b/package.json @@ -42,7 +42,7 @@ ], "dependencies": { "@jsforce/jsforce-node": "^3.5.1", - "@salesforce/core": "^8.6.2", + "@salesforce/core": "^8.8.2", "@salesforce/kit": "^3.2.2", "@salesforce/schemas": "^1.9.0", "@salesforce/source-deploy-retrieve": "^12.8.0", diff --git a/src/interfaces/packagingInterfacesAndType.ts b/src/interfaces/packagingInterfacesAndType.ts index ec7d3261d..a4e383d38 100644 --- a/src/interfaces/packagingInterfacesAndType.ts +++ b/src/interfaces/packagingInterfacesAndType.ts @@ -80,6 +80,7 @@ export type PackageVersionCreateRequestResult = { VersionNumber: string | null; CreatedBy: string; ConvertedFromVersionId: string | null; + TotalNumberOfMetadataFiles: number | null; }; export const PackageVersionCreateRequestResultInProgressStatuses = Object.values(Package2VersionStatus).filter( diff --git a/src/interfaces/packagingSObjects.ts b/src/interfaces/packagingSObjects.ts index ade4eafaf..a6b94f354 100644 --- a/src/interfaces/packagingSObjects.ts +++ b/src/interfaces/packagingSObjects.ts @@ -62,6 +62,7 @@ export namespace PackagingSObjects { HasMetadataRemoved: boolean; Language: string; EndToEndBuildDurationInSeconds?: number; + TotalNumberOfMetadataFiles: number; }; export enum Package2VersionStatus { diff --git a/src/package/packageVersionCreateRequest.ts b/src/package/packageVersionCreateRequest.ts index c026cd771..ed9aa449e 100644 --- a/src/package/packageVersionCreateRequest.ts +++ b/src/package/packageVersionCreateRequest.ts @@ -25,6 +25,7 @@ export function getQuery(connection: Connection): string { 'Package2Version.MajorVersion, Package2Version.MinorVersion, Package2Version.PatchVersion, Package2Version.BuildNumber, ' + 'CreatedDate, Package2Version.HasMetadataRemoved, CreatedById, IsConversionRequest, Package2Version.ConvertedFromVersionId ' + (Number(connection.version) > 60.0 ? ', AsyncValidation ' : '') + + (Number(connection.version) > 63.0 ? ', Package2Version.TotalNumberOfMetadataFiles ' : '') + 'FROM Package2VersionCreateRequest ' + '%s' + // WHERE, if applicable 'ORDER BY CreatedDate desc'; @@ -84,6 +85,7 @@ async function query(query: string, connection: Connection): Promise; } & { Package2: Pick; @@ -114,6 +116,8 @@ async function query(query: string, connection: Connection): Promise { function constructQuery(connectionVersion: number, verbose: boolean): string { // Ensure we only include the async validation property for api version of v60.0 or higher. - let queryFields = connectionVersion > 60 ? [...defaultFields, ...default61Fields] : defaultFields; + // TotalNumberOfMetadataFiles is included as query field for api version of v64.0 or higher. + let queryFields = + connectionVersion > 63 + ? [...defaultFields, ...default61Fields, ...default64Fields] + : connectionVersion > 60 + ? [...defaultFields, ...default61Fields] + : defaultFields; verboseFields = connectionVersion > 60 ? [...verboseFields, ...verbose61Fields] : verboseFields; if (verbose) { queryFields = [...queryFields, ...verboseFields]; diff --git a/test/package/packageConvert.test.ts b/test/package/packageConvert.test.ts index 94e810944..d016f393f 100644 --- a/test/package/packageConvert.test.ts +++ b/test/package/packageConvert.test.ts @@ -247,6 +247,7 @@ describe('packageConvert', () => { Status: 'Success', SubscriberPackageVersionId: null, Tag: 'tag', + TotalNumberOfMetadataFiles: null, }; Lifecycle.getInstance().on(PackageEvents.convert.progress, async (data) => { @@ -272,6 +273,7 @@ describe('packageConvert', () => { Status: 'inProgress', SubscriberPackageVersionId: null, Tag: undefined, + TotalNumberOfMetadataFiles: null, }, timeRemaining: { quantity: 2, diff --git a/test/package/packageTest.nut.ts b/test/package/packageTest.nut.ts index 4a16cd623..a3d579dac 100644 --- a/test/package/packageTest.nut.ts +++ b/test/package/packageTest.nut.ts @@ -44,6 +44,7 @@ const VERSION_CREATE_RESPONSE_KEYS = [ 'VersionNumber', 'CreatedBy', 'ConvertedFromVersionId', + 'TotalNumberOfMetadataFiles', ]; // version diff --git a/test/package/packageVersionCreate.test.ts b/test/package/packageVersionCreate.test.ts index 110a4a1d0..8e02cfe1f 100644 --- a/test/package/packageVersionCreate.test.ts +++ b/test/package/packageVersionCreate.test.ts @@ -42,6 +42,7 @@ describe('Package Version Create', () => { 'SubscriberPackageVersionId', 'Tag', 'VersionNumber', + 'TotalNumberOfMetadataFiles', ]; const $$ = instantiateContext(); diff --git a/test/package/packageVersionMetadataRetrieve.test.ts b/test/package/packageVersionMetadataRetrieve.test.ts index d9ae40190..95e945caf 100644 --- a/test/package/packageVersionMetadataRetrieve.test.ts +++ b/test/package/packageVersionMetadataRetrieve.test.ts @@ -6,7 +6,7 @@ */ import path from 'node:path'; import fs from 'node:fs'; -import sinon = require('sinon'); +import * as sinon from 'sinon'; import { instantiateContext, MockTestOrgData, restoreContext, stubContext } from '@salesforce/core/testSetup'; import { assert, expect } from 'chai'; import { Connection, SfProject, SfError } from '@salesforce/core'; diff --git a/test/package/subscriberPackageVersionInstall.test.ts b/test/package/subscriberPackageVersionInstall.test.ts index aed5a3c4d..cfd427949 100644 --- a/test/package/subscriberPackageVersionInstall.test.ts +++ b/test/package/subscriberPackageVersionInstall.test.ts @@ -14,15 +14,11 @@ import { isErrorPackageNotAvailable, waitForPublish, } from '../../src/package/packageInstall'; -import { - PackageEvents, - PackageInstallCreateRequest, - PackageInstallOptions, - PackagingSObjects, -} from '../../src/interfaces'; +import { PackageEvents, PackageInstallCreateRequest, PackageInstallOptions } from '../../src/interfaces'; import { SubscriberPackageVersion } from '../../src/package'; -import PackageInstallRequest = PackagingSObjects.PackageInstallRequest; +import * as PackagingSObjects from '../../src/interfaces/packagingSObjects'; +type PackageInstallRequest = PackagingSObjects.PackagingSObjects.PackageInstallRequest; const myPackageVersion04t = '04t6A0000000X0UQAU'; describe('Package Install', () => { diff --git a/yarn.lock b/yarn.lock index 62614ea94..7b9c2f260 100644 --- a/yarn.lock +++ b/yarn.lock @@ -463,10 +463,10 @@ "@jridgewell/resolve-uri" "^3.1.0" "@jridgewell/sourcemap-codec" "^1.4.14" -"@jsforce/jsforce-node@^3.4.1", "@jsforce/jsforce-node@^3.5.1": - version "3.5.1" - resolved "https://registry.yarnpkg.com/@jsforce/jsforce-node/-/jsforce-node-3.5.1.tgz#f350e8c3897cce42f6b1cdbfc437c1c66aa13dd2" - integrity sha512-P+pfsLL6AddDeBP3iswjlB1+YM4w2ZsWTqunGjMA0/Aj8Jt4gA+XycV+fGEbGzsm6DvSvbZUnyrfkRYNsT9F8Q== +"@jsforce/jsforce-node@^3.5.1", "@jsforce/jsforce-node@^3.6.1": + version "3.6.4" + resolved "https://registry.yarnpkg.com/@jsforce/jsforce-node/-/jsforce-node-3.6.4.tgz#c1055e2064a501633e9d86f6f2fe1b287c6ce9ce" + integrity sha512-9IZL5lFDE1nUnPYnzOleH0xaEE3Sc9sQcLKwx1LQeSyAI/KvnxySadlIpZAdTrJap4hDRFQkXiEFiJ3oFwj/zg== dependencies: "@sindresorhus/is" "^4" base64url "^3.0.1" @@ -477,7 +477,6 @@ https-proxy-agent "^5.0.0" multistream "^3.1.0" node-fetch "^2.6.1" - strip-ansi "^6.0.0" xml2js "^0.6.2" "@nodelib/fs.scandir@2.1.5": @@ -522,12 +521,12 @@ strip-ansi "6.0.1" ts-retry-promise "^0.8.1" -"@salesforce/core@^8.6.1", "@salesforce/core@^8.6.2": - version "8.6.2" - resolved "https://registry.yarnpkg.com/@salesforce/core/-/core-8.6.2.tgz#50120d923504ceb04604b7f03e359386845a9f9d" - integrity sha512-LFzTLnavDeWsZBB7b2iuVz0F6yeuTcJzQxCy5n+rACY2/Lbw6UJDK/bOSt4wlss6fKrkyU1FTHNlUK5ZoBEveg== +"@salesforce/core@^8.6.1", "@salesforce/core@^8.8.2": + version "8.8.2" + resolved "https://registry.yarnpkg.com/@salesforce/core/-/core-8.8.2.tgz#0fc1632cc183b8c62e333f1f884bf3ee0f4aee6e" + integrity sha512-EOH75R2Nr2tg7b3gbyzRNwZPfZ/dZOpmMKmFHKL9oCtUI59+N4IkVljg6dpKYypVKuJJTzjI7T2ibnA8/cluZg== dependencies: - "@jsforce/jsforce-node" "^3.4.1" + "@jsforce/jsforce-node" "^3.6.1" "@salesforce/kit" "^3.2.2" "@salesforce/schemas" "^1.9.0" "@salesforce/ts-types" "^2.0.10"