@salesforce/packaging 0.1.8 → 0.1.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -186,7 +186,7 @@ class PackageProfileApi extends kit_1.AsyncCreatable {
186
186
  filterAndGenerateProfilesForManifest(typesArr, excludedDirectories = []) {
187
187
  const profilePaths = this.findAllProfiles(excludedDirectories);
188
188
  // Filter all profiles
189
- typesArr = typesArr.filter((kvp) => kvp.name[0] !== 'Profile');
189
+ typesArr = (typesArr || []).filter((kvp) => kvp.name[0] !== 'Profile');
190
190
  if (profilePaths) {
191
191
  const members = [];
192
192
  profilePaths.forEach((profilePath) => {
@@ -30,6 +30,7 @@ export declare class PackageVersionCreate {
30
30
  * @private
31
31
  */
32
32
  private createPackageVersionCreateRequestFromOptions;
33
+ private verifyHasSource;
33
34
  private cleanGeneratedPackage;
34
35
  private resolveApexTestPermissions;
35
36
  private resolveUnpackagedMetadata;
@@ -70,6 +70,7 @@ class PackageVersionCreate {
70
70
  convertResult.packagePath = outputDirectory;
71
71
  return convertResult;
72
72
  }
73
+ return convertResult;
73
74
  }
74
75
  async validateDependencyValues(dependency) {
75
76
  // If valid 04t package, just return it to be used straight away.
@@ -249,7 +250,8 @@ class PackageVersionCreate {
249
250
  await fs.promises.mkdir(packageVersBlobDirectory, { recursive: true });
250
251
  const settingsGenerator = new scratchOrgSettingsGenerator_1.default({ asDirectory: true });
251
252
  // Copy all the metadata from the workspace to a tmp folder
252
- await this.generateMDFolderForArtifact(mdOptions);
253
+ const componentSet = await this.generateMDFolderForArtifact(mdOptions);
254
+ this.verifyHasSource(componentSet);
253
255
  const packageDescriptorJson = this.packageObject;
254
256
  if (packageDescriptorJson.package) {
255
257
  delete packageDescriptorJson.package;
@@ -305,6 +307,11 @@ class PackageVersionCreate {
305
307
  await this.cleanGeneratedPackage(packageVersMetadataFolder, packageVersProfileFolder, unpackagedMetadataFolder, metadataZipFile, settingsZipFile, packageVersBlobDirectory, packageVersBlobZipFile, unpackagedMetadataZipFile, clientSideInfo, settingsGenerator);
306
308
  return this.createRequestObject(preserveFiles, packageVersTmpRoot, packageVersBlobZipFile);
307
309
  }
310
+ verifyHasSource(componentSet) {
311
+ if (componentSet.converted.length === 0) {
312
+ throw messages.createError('noSourceInRootDirectory', [this.packageObject.path ?? '<unknown>']);
313
+ }
314
+ }
308
315
  async cleanGeneratedPackage(packageVersMetadataFolder, packageVersProfileFolder, unpackagedMetadataFolder, metadataZipFile, settingsZipFile, packageVersBlobDirectory, packageVersBlobZipFile, unpackagedMetadataZipFile, clientSideInfo, settingsGenerator) {
309
316
  // As part of the source convert process, the package.xml has been written into the tmp metadata directory.
310
317
  // The package.xml may need to be manipulated due to processing profiles in the workspace or additional
@@ -312,6 +319,12 @@ class PackageVersionCreate {
312
319
  const currentPackageXml = await fs.promises.readFile(path.join(packageVersMetadataFolder, 'package.xml'), 'utf8');
313
320
  // convert to json
314
321
  const packageJson = await xml2js.parseStringPromise(currentPackageXml);
322
+ if (!packageJson?.Package) {
323
+ throw messages.createError('packageXmlDoesNotContainPackage');
324
+ }
325
+ if (!packageJson?.Package.types) {
326
+ throw messages.createError('packageXmlDoesNotContainPackageTypes');
327
+ }
315
328
  fs.mkdirSync(packageVersMetadataFolder, { recursive: true });
316
329
  fs.mkdirSync(packageVersProfileFolder, { recursive: true });
317
330
  // Apply any necessary exclusions to typesArr.
@@ -122,3 +122,15 @@ Could not find a package in sfdx-project.json file using "path" %s. Add it to th
122
122
  # errorCouldNotFindPackageDir
123
123
 
124
124
  Couldn't find a package directory for package using %s %s. Add it to the packageDirectories section and add the alias to packageAliases with its 0Ho ID.
125
+
126
+ # noSourceInRootDirectory
127
+
128
+ No matching source was found within the package root directory: %s
129
+
130
+ # packageXmlDoesNotContainPackage
131
+
132
+ While preparing package version create request, the calculated package.xml for the package does not contain a <Package> element.
133
+
134
+ # packageXmlDoesNotContainPackageTypes
135
+
136
+ While preparing package version create request, the calculated package.xml for the package does not contain a <Package><types> element.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@salesforce/packaging",
3
- "version": "0.1.8",
3
+ "version": "0.1.10",
4
4
  "description": "packing libraries to Salesforce packaging platform",
5
5
  "main": "lib/exported",
6
6
  "types": "lib/exported.d.ts",
@@ -35,7 +35,7 @@
35
35
  "!lib/**/*.map"
36
36
  ],
37
37
  "dependencies": {
38
- "@oclif/core": "^1.18.0",
38
+ "@oclif/core": "^1.19.1",
39
39
  "@salesforce/core": "^3.31.11",
40
40
  "@salesforce/kit": "^1.7.0",
41
41
  "@salesforce/schemas": "^1.1.3",