Skip to content

Commit ae706e5

Browse files
authored
Merge pull request #719 from forcedotcom/mahanteshnp27/W-17599215/Add-TotalNumberOfMetadataFiles-Field
W-17599215: add totalnumberofmetadatafiles field
2 parents 844649d + 9ddbce9 commit ae706e5

11 files changed

+34
-20
lines changed

package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@
4242
],
4343
"dependencies": {
4444
"@jsforce/jsforce-node": "^3.5.1",
45-
"@salesforce/core": "^8.6.2",
45+
"@salesforce/core": "^8.8.2",
4646
"@salesforce/kit": "^3.2.2",
4747
"@salesforce/schemas": "^1.9.0",
4848
"@salesforce/source-deploy-retrieve": "^12.8.0",

src/interfaces/packagingInterfacesAndType.ts

+1
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,7 @@ export type PackageVersionCreateRequestResult = {
8080
VersionNumber: string | null;
8181
CreatedBy: string;
8282
ConvertedFromVersionId: string | null;
83+
TotalNumberOfMetadataFiles: number | null;
8384
};
8485

8586
export const PackageVersionCreateRequestResultInProgressStatuses = Object.values(Package2VersionStatus).filter(

src/interfaces/packagingSObjects.ts

+1
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,7 @@ export namespace PackagingSObjects {
6262
HasMetadataRemoved: boolean;
6363
Language: string;
6464
EndToEndBuildDurationInSeconds?: number;
65+
TotalNumberOfMetadataFiles: number;
6566
};
6667

6768
export enum Package2VersionStatus {

src/package/packageVersionCreateRequest.ts

+4
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ export function getQuery(connection: Connection): string {
2525
'Package2Version.MajorVersion, Package2Version.MinorVersion, Package2Version.PatchVersion, Package2Version.BuildNumber, ' +
2626
'CreatedDate, Package2Version.HasMetadataRemoved, CreatedById, IsConversionRequest, Package2Version.ConvertedFromVersionId ' +
2727
(Number(connection.version) > 60.0 ? ', AsyncValidation ' : '') +
28+
(Number(connection.version) > 63.0 ? ', Package2Version.TotalNumberOfMetadataFiles ' : '') +
2829
'FROM Package2VersionCreateRequest ' +
2930
'%s' + // WHERE, if applicable
3031
'ORDER BY CreatedDate desc';
@@ -84,6 +85,7 @@ async function query(query: string, connection: Connection): Promise<PackageVers
8485
| 'MinorVersion'
8586
| 'PatchVersion'
8687
| 'BuildNumber'
88+
| 'TotalNumberOfMetadataFiles'
8789
>;
8890
} & {
8991
Package2: Pick<PackagingSObjects.Package2, 'Name'>;
@@ -114,6 +116,8 @@ async function query(query: string, connection: Connection): Promise<PackageVers
114116
record.Package2Version != null ? record.Package2Version.HasPassedCodeCoverageCheck : null,
115117
CreatedBy: record.CreatedById,
116118
ConvertedFromVersionId: convertedFromVersionMessage(record.Status, record.Package2Version?.ConvertedFromVersionId),
119+
TotalNumberOfMetadataFiles:
120+
record.Package2Version != null ? record.Package2Version.TotalNumberOfMetadataFiles : null,
117121
}));
118122
}
119123

src/package/packageVersionReport.ts

+10-1
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,9 @@ let verboseFields = ['SubscriberPackageVersion.Dependencies', 'CodeCoveragePerce
4343
// Ensure we only include the async validation property for api version of v60.0 or higher.
4444
const default61Fields = ['ValidatedAsync'];
4545

46+
// Add fields here that are available only api version of v64.0 or higher.
47+
const default64Fields = ['TotalNumberOfMetadataFiles'];
48+
4649
const verbose61Fields = ['EndToEndBuildDurationInSeconds'];
4750

4851
const DEFAULT_ORDER_BY_FIELDS = 'Package2Id, Branch, MajorVersion, MinorVersion, PatchVersion, BuildNumber';
@@ -57,7 +60,13 @@ const getLogger = (): Logger => {
5760

5861
function constructQuery(connectionVersion: number, verbose: boolean): string {
5962
// Ensure we only include the async validation property for api version of v60.0 or higher.
60-
let queryFields = connectionVersion > 60 ? [...defaultFields, ...default61Fields] : defaultFields;
63+
// TotalNumberOfMetadataFiles is included as query field for api version of v64.0 or higher.
64+
let queryFields =
65+
connectionVersion > 63
66+
? [...defaultFields, ...default61Fields, ...default64Fields]
67+
: connectionVersion > 60
68+
? [...defaultFields, ...default61Fields]
69+
: defaultFields;
6170
verboseFields = connectionVersion > 60 ? [...verboseFields, ...verbose61Fields] : verboseFields;
6271
if (verbose) {
6372
queryFields = [...queryFields, ...verboseFields];

test/package/packageConvert.test.ts

+2
Original file line numberDiff line numberDiff line change
@@ -247,6 +247,7 @@ describe('packageConvert', () => {
247247
Status: 'Success',
248248
SubscriberPackageVersionId: null,
249249
Tag: 'tag',
250+
TotalNumberOfMetadataFiles: null,
250251
};
251252

252253
Lifecycle.getInstance().on(PackageEvents.convert.progress, async (data) => {
@@ -272,6 +273,7 @@ describe('packageConvert', () => {
272273
Status: 'inProgress',
273274
SubscriberPackageVersionId: null,
274275
Tag: undefined,
276+
TotalNumberOfMetadataFiles: null,
275277
},
276278
timeRemaining: {
277279
quantity: 2,

test/package/packageTest.nut.ts

+1
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,7 @@ const VERSION_CREATE_RESPONSE_KEYS = [
4444
'VersionNumber',
4545
'CreatedBy',
4646
'ConvertedFromVersionId',
47+
'TotalNumberOfMetadataFiles',
4748
];
4849

4950
// version

test/package/packageVersionCreate.test.ts

+1
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@ describe('Package Version Create', () => {
4242
'SubscriberPackageVersionId',
4343
'Tag',
4444
'VersionNumber',
45+
'TotalNumberOfMetadataFiles',
4546
];
4647

4748
const $$ = instantiateContext();

test/package/packageVersionMetadataRetrieve.test.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
*/
77
import path from 'node:path';
88
import fs from 'node:fs';
9-
import sinon = require('sinon');
9+
import * as sinon from 'sinon';
1010
import { instantiateContext, MockTestOrgData, restoreContext, stubContext } from '@salesforce/core/testSetup';
1111
import { assert, expect } from 'chai';
1212
import { Connection, SfProject, SfError } from '@salesforce/core';

test/package/subscriberPackageVersionInstall.test.ts

+3-7
Original file line numberDiff line numberDiff line change
@@ -14,15 +14,11 @@ import {
1414
isErrorPackageNotAvailable,
1515
waitForPublish,
1616
} from '../../src/package/packageInstall';
17-
import {
18-
PackageEvents,
19-
PackageInstallCreateRequest,
20-
PackageInstallOptions,
21-
PackagingSObjects,
22-
} from '../../src/interfaces';
17+
import { PackageEvents, PackageInstallCreateRequest, PackageInstallOptions } from '../../src/interfaces';
2318
import { SubscriberPackageVersion } from '../../src/package';
24-
import PackageInstallRequest = PackagingSObjects.PackageInstallRequest;
19+
import * as PackagingSObjects from '../../src/interfaces/packagingSObjects';
2520

21+
type PackageInstallRequest = PackagingSObjects.PackagingSObjects.PackageInstallRequest;
2622
const myPackageVersion04t = '04t6A0000000X0UQAU';
2723

2824
describe('Package Install', () => {

yarn.lock

+9-10
Original file line numberDiff line numberDiff line change
@@ -463,10 +463,10 @@
463463
"@jridgewell/resolve-uri" "^3.1.0"
464464
"@jridgewell/sourcemap-codec" "^1.4.14"
465465

466-
"@jsforce/jsforce-node@^3.4.1", "@jsforce/jsforce-node@^3.5.1":
467-
version "3.5.1"
468-
resolved "https://registry.yarnpkg.com/@jsforce/jsforce-node/-/jsforce-node-3.5.1.tgz#f350e8c3897cce42f6b1cdbfc437c1c66aa13dd2"
469-
integrity sha512-P+pfsLL6AddDeBP3iswjlB1+YM4w2ZsWTqunGjMA0/Aj8Jt4gA+XycV+fGEbGzsm6DvSvbZUnyrfkRYNsT9F8Q==
466+
"@jsforce/jsforce-node@^3.5.1", "@jsforce/jsforce-node@^3.6.1":
467+
version "3.6.4"
468+
resolved "https://registry.yarnpkg.com/@jsforce/jsforce-node/-/jsforce-node-3.6.4.tgz#c1055e2064a501633e9d86f6f2fe1b287c6ce9ce"
469+
integrity sha512-9IZL5lFDE1nUnPYnzOleH0xaEE3Sc9sQcLKwx1LQeSyAI/KvnxySadlIpZAdTrJap4hDRFQkXiEFiJ3oFwj/zg==
470470
dependencies:
471471
"@sindresorhus/is" "^4"
472472
base64url "^3.0.1"
@@ -477,7 +477,6 @@
477477
https-proxy-agent "^5.0.0"
478478
multistream "^3.1.0"
479479
node-fetch "^2.6.1"
480-
strip-ansi "^6.0.0"
481480
xml2js "^0.6.2"
482481

483482
"@nodelib/fs.scandir@2.1.5":
@@ -522,12 +521,12 @@
522521
strip-ansi "6.0.1"
523522
ts-retry-promise "^0.8.1"
524523

525-
"@salesforce/core@^8.6.1", "@salesforce/core@^8.6.2":
526-
version "8.6.2"
527-
resolved "https://registry.yarnpkg.com/@salesforce/core/-/core-8.6.2.tgz#50120d923504ceb04604b7f03e359386845a9f9d"
528-
integrity sha512-LFzTLnavDeWsZBB7b2iuVz0F6yeuTcJzQxCy5n+rACY2/Lbw6UJDK/bOSt4wlss6fKrkyU1FTHNlUK5ZoBEveg==
524+
"@salesforce/core@^8.6.1", "@salesforce/core@^8.8.2":
525+
version "8.8.2"
526+
resolved "https://registry.yarnpkg.com/@salesforce/core/-/core-8.8.2.tgz#0fc1632cc183b8c62e333f1f884bf3ee0f4aee6e"
527+
integrity sha512-EOH75R2Nr2tg7b3gbyzRNwZPfZ/dZOpmMKmFHKL9oCtUI59+N4IkVljg6dpKYypVKuJJTzjI7T2ibnA8/cluZg==
529528
dependencies:
530-
"@jsforce/jsforce-node" "^3.4.1"
529+
"@jsforce/jsforce-node" "^3.6.1"
531530
"@salesforce/kit" "^3.2.2"
532531
"@salesforce/schemas" "^1.9.0"
533532
"@salesforce/ts-types" "^2.0.10"

0 commit comments

Comments
 (0)