@salesforce/plugin-deploy-retrieve 3.2.35 → 3.3.0

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.
@@ -19,6 +19,14 @@
19
19
  "allowNo": false,
20
20
  "type": "boolean"
21
21
  },
22
+ "flags-dir": {
23
+ "helpGroup": "GLOBAL",
24
+ "name": "flags-dir",
25
+ "summary": "Import flag values from a directory.",
26
+ "hasDynamicHelp": false,
27
+ "multiple": false,
28
+ "type": "option"
29
+ },
22
30
  "api-version": {
23
31
  "aliases": [
24
32
  "apiversion"
@@ -160,6 +168,14 @@
160
168
  "allowNo": false,
161
169
  "type": "boolean"
162
170
  },
171
+ "flags-dir": {
172
+ "helpGroup": "GLOBAL",
173
+ "name": "flags-dir",
174
+ "summary": "Import flag values from a directory.",
175
+ "hasDynamicHelp": false,
176
+ "multiple": false,
177
+ "type": "option"
178
+ },
163
179
  "api-version": {
164
180
  "aliases": [
165
181
  "apiversion"
@@ -202,7 +218,7 @@
202
218
  "deprecateAliases": true,
203
219
  "name": "output-dir",
204
220
  "summary": "Output directory to store the Metadata API–formatted files in.",
205
- "default": "metadataPackage_1710885805080",
221
+ "default": "metadataPackage_1711142855338",
206
222
  "hasDynamicHelp": false,
207
223
  "multiple": false,
208
224
  "type": "option"
@@ -295,16 +311,18 @@
295
311
  "source:convert:project"
296
312
  ]
297
313
  },
298
- "project:deploy:cancel": {
314
+ "project:delete:source": {
299
315
  "aliases": [
300
- "deploy:metadata:cancel"
316
+ "force:source:delete"
301
317
  ],
302
318
  "args": {},
303
319
  "deprecateAliases": true,
304
- "description": "Use this command to cancel a deploy operation that hasn't yet completed in the org. Deploy operations include standard deploys, quick deploys, deploy validations, and deploy cancellations.\n\nRun this command by either passing it a job ID or specifying the --use-most-recent flag to use the job ID of the most recent deploy operation.",
320
+ "description": "Use this command to delete components from orgs that don’t have source tracking. To remove deleted items from orgs that have source tracking enabled, \"<%= config.bin %> project deploy start\".\n\nWhen you run this command, both the local source file and the metadata component in the org are deleted.\n\nTo delete multiple metadata components, either set multiple --metadata <name> flags or a single --metadata flag with multiple names separated by spaces. Enclose names that contain spaces in one set of double quotes. The same syntax applies to --manifest and --source-dir.",
305
321
  "examples": [
306
- "Cancel a deploy operation using a job ID:\n<%= config.bin %> <%= command.id %> --job-id 0Af0x000017yLUFCA2",
307
- "Cancel the most recent deploy operation:\n<%= config.bin %> <%= command.id %> --use-most-recent"
322
+ "Delete all local Apex source files and all Apex classes from the org with alias \"my-scratch\":\n<%= config.bin %> <%= command.id %> --metadata ApexClass --target-org my-scratch",
323
+ "Delete a specific Apex class and a Profile that has a space in it from your default org; don't prompt for confirmation:\n<%= config.bin %> <%= command.id %> --metadata ApexClass:MyFabulousApexClass --metadata \"Profile: My Profile\" --no-prompt",
324
+ "Run the tests that aren’t in any managed packages as part of the deletion; if the delete succeeds, and the org has source-tracking enabled, update the source tracking information:\n<%= config.bin %> <%= command.id %> --metadata ApexClass --test-level RunLocalTests --track-source",
325
+ "Delete the Apex source files in a directory and the corresponding components from your default org:\n<%= config.bin %> <%= command.id %> --source-dir force-app/main/default/classes"
308
326
  ],
309
327
  "flags": {
310
328
  "json": {
@@ -314,94 +332,214 @@
314
332
  "allowNo": false,
315
333
  "type": "boolean"
316
334
  },
317
- "async": {
318
- "description": "The command immediately returns the control of the terminal to you. This way, you can continue to use the CLI. To resume watching the cancellation, run \"<%= config.bin %> project deploy resume\". To check the status of the cancellation, run \"<%= config.bin %> project deploy report\".",
319
- "exclusive": [
320
- "wait"
335
+ "flags-dir": {
336
+ "helpGroup": "GLOBAL",
337
+ "name": "flags-dir",
338
+ "summary": "Import flag values from a directory.",
339
+ "hasDynamicHelp": false,
340
+ "multiple": false,
341
+ "type": "option"
342
+ },
343
+ "api-version": {
344
+ "aliases": [
345
+ "apiversion"
321
346
  ],
322
- "name": "async",
323
- "summary": "Run the command asynchronously.",
324
- "allowNo": false,
325
- "type": "boolean"
347
+ "deprecateAliases": true,
348
+ "description": "Override the api version used for api requests made by this command",
349
+ "name": "api-version",
350
+ "hasDynamicHelp": false,
351
+ "multiple": false,
352
+ "type": "option"
326
353
  },
327
- "job-id": {
328
- "char": "i",
329
- "description": "These commands return a job ID if they time out or you specified the --async flag:\n\n- <%= config.bin %> project deploy start\n- <%= config.bin %> project deploy validate\n- <%= config.bin %> project deploy quick\n- <%= config.bin %> project deploy cancel\n\nThe job ID is valid for 10 days from when you started the deploy operation.",
330
- "name": "job-id",
331
- "summary": "Job ID of the deploy operation you want to cancel.",
354
+ "loglevel": {
355
+ "deprecated": {
356
+ "message": "The loglevel flag is no longer in use on this command. You may use it without error, but it will be ignored.\nSet the log level using the `SFDX_LOG_LEVEL` environment variable."
357
+ },
358
+ "hidden": true,
359
+ "name": "loglevel",
332
360
  "hasDynamicHelp": false,
333
361
  "multiple": false,
334
362
  "type": "option"
335
363
  },
336
- "use-most-recent": {
337
- "char": "r",
338
- "description": "For performance reasons, this flag uses job IDs for deploy operations that started only in the past 3 days or less. If your most recent deploy operations was more than 3 days ago, this flag won't find a job ID.",
339
- "name": "use-most-recent",
340
- "summary": "Use the job ID of the most recent deploy operation.",
364
+ "target-org": {
365
+ "aliases": [
366
+ "targetusername",
367
+ "u"
368
+ ],
369
+ "char": "o",
370
+ "deprecateAliases": true,
371
+ "name": "target-org",
372
+ "noCacheDefault": true,
373
+ "required": true,
374
+ "summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
375
+ "hasDynamicHelp": true,
376
+ "multiple": false,
377
+ "type": "option"
378
+ },
379
+ "check-only": {
380
+ "aliases": [
381
+ "checkonly"
382
+ ],
383
+ "char": "c",
384
+ "deprecateAliases": true,
385
+ "description": "IMPORTANT: Where possible, we changed noninclusive terms to align with our company value of Equality. We maintained certain terms to avoid any effect on customer implementations.\n\nValidates the deleted metadata and runs all Apex tests, but prevents the deletion from being saved to the org.\n\nIf you change a field type from Master-Detail to Lookup or vice versa, that change isn’t supported when using the --chec-konly parameter to test a deletion (validation). This kind of change isn’t supported for test deletions to avoid the risk of data loss or corruption. If a change that isn’t supported for test deletions is included in a deletion package, the test deletion fails and issues an error.\n\nIf your deletion package changes a field type from Master-Detail to Lookup or vice versa, you can still validate the changes prior to deploying to Production by performing a full deletion to another test Sandbox. A full deletion includes a validation of the changes as part of the deletion process.\n\nNote: A Metadata API deletion that includes Master-Detail relationships deletes all detail records in the Recycle Bin in the following cases.\n\n 1. For a deletion with a new Master-Detail field, soft delete (send to the Recycle Bin) all detail records before proceeding to delete the Master-Detail field, or the deletion fails. During the deletion, detail records are permanently deleted from the Recycle Bin and cannot be recovered.\n\n 2. For a deletion that converts a Lookup field relationship to a Master-Detail relationship, detail records must reference a master record or be soft-deleted (sent to the Recycle Bin) for the deletion to succeed. However, a successful deletion permanently deletes any detail records in the Recycle Bin.",
386
+ "name": "check-only",
387
+ "summary": "Validate delete command but don't delete anything from the org or the local project.",
341
388
  "allowNo": false,
342
389
  "type": "boolean"
343
390
  },
344
391
  "wait": {
345
392
  "char": "w",
346
- "description": "If the command continues to run after the wait period, the CLI returns control of the terminal window to you. To resume watching the cancellation, run \"<%= config.bin %> project deploy resume\". To check the status of the cancellation, run \"<%= config.bin %> project deploy report\".",
347
- "exclusive": [
348
- "async"
349
- ],
393
+ "description": "If the command continues to run after the wait period, the CLI returns control of the terminal window to you.",
350
394
  "name": "wait",
351
- "summary": "Number of minutes to wait for the command to complete and display results.",
395
+ "summary": "Number of minutes to wait for the command to finish.",
396
+ "hasDynamicHelp": true,
397
+ "multiple": false,
398
+ "type": "option"
399
+ },
400
+ "tests": {
401
+ "description": "If a test name contains a space, enclose it in double quotes.\nFor multiple test names, use one of the following formats:\n\n- Repeat the flag for multiple test names: --tests Test1 --tests Test2 --tests \"Test With Space\"\n- Separate the test names with spaces: --tests Test1 Test2 \"Test With Space\"",
402
+ "helpGroup": "Test",
403
+ "name": "tests",
404
+ "summary": "Apex tests to run when --test-level is RunSpecifiedTests.",
405
+ "hasDynamicHelp": false,
406
+ "multiple": true,
407
+ "type": "option"
408
+ },
409
+ "test-level": {
410
+ "aliases": [
411
+ "testlevel"
412
+ ],
413
+ "char": "l",
414
+ "deprecateAliases": true,
415
+ "description": "Valid values are:\n\n- NoTestRun — No tests are run. This test level applies only to deployments to development environments, such as sandbox, Developer Edition, or trial orgs. This test level is the default for development environments.\n\n- RunSpecifiedTests — Runs only the tests that you specify with the --tests flag. Code coverage requirements differ from the default coverage requirements when using this test level. Executed tests must comprise a minimum of 75% code coverage for each class and trigger in the deployment package. This coverage is computed for each class and trigger individually and is different than the overall coverage percentage.\n\n- RunLocalTests — All tests in your org are run, except the ones that originate from installed managed and unlocked packages. This test level is the default for production deployments that include Apex classes or triggers.\n\n- RunAllTestsInOrg — All tests in your org are run, including tests of managed packages.\n\nIf you don’t specify a test level, the default behavior depends on the contents of your deployment package and target org. For more information, see “Running Tests in a Deployment” in the Metadata API Developer Guide.",
416
+ "helpGroup": "Test",
417
+ "name": "test-level",
418
+ "summary": "Deployment Apex testing level.",
352
419
  "hasDynamicHelp": false,
353
- "helpValue": "<minutes>",
354
420
  "multiple": false,
421
+ "options": [
422
+ "NoTestRun",
423
+ "RunSpecifiedTests",
424
+ "RunLocalTests",
425
+ "RunAllTestsInOrg"
426
+ ],
427
+ "type": "option"
428
+ },
429
+ "no-prompt": {
430
+ "aliases": [
431
+ "noprompt"
432
+ ],
433
+ "char": "r",
434
+ "deprecateAliases": true,
435
+ "name": "no-prompt",
436
+ "summary": "Don't prompt for delete confirmation.",
437
+ "allowNo": false,
438
+ "type": "boolean"
439
+ },
440
+ "metadata": {
441
+ "char": "m",
442
+ "description": "If you specify this parameter, don’t specify --source-dir.",
443
+ "name": "metadata",
444
+ "summary": "Metadata components to delete.",
445
+ "delimiter": ",",
446
+ "hasDynamicHelp": false,
447
+ "multiple": true,
448
+ "type": "option"
449
+ },
450
+ "source-dir": {
451
+ "aliases": [
452
+ "sourcepath"
453
+ ],
454
+ "char": "p",
455
+ "deprecateAliases": true,
456
+ "description": "The supplied paths can be a single file (in which case the operation is applied to only one file) or a folder (in which case the operation is applied to all metadata types in the directory and its sub-directories).\n\nIf you specify this parameter, don’t specify --metadata.",
457
+ "name": "source-dir",
458
+ "summary": "Source file paths to delete.",
459
+ "delimiter": ",",
460
+ "hasDynamicHelp": false,
461
+ "multiple": true,
355
462
  "type": "option"
463
+ },
464
+ "track-source": {
465
+ "aliases": [
466
+ "tracksource"
467
+ ],
468
+ "char": "t",
469
+ "deprecateAliases": true,
470
+ "exclusive": [
471
+ "check-only"
472
+ ],
473
+ "name": "track-source",
474
+ "summary": "If the delete succeeds, update the source tracking information.",
475
+ "allowNo": false,
476
+ "type": "boolean"
477
+ },
478
+ "force-overwrite": {
479
+ "aliases": [
480
+ "forceoverwrite"
481
+ ],
482
+ "char": "f",
483
+ "dependsOn": [
484
+ "track-source"
485
+ ],
486
+ "deprecateAliases": true,
487
+ "name": "force-overwrite",
488
+ "summary": "Ignore conflict warnings and overwrite changes to the org.",
489
+ "allowNo": false,
490
+ "type": "boolean"
491
+ },
492
+ "verbose": {
493
+ "name": "verbose",
494
+ "summary": "Verbose output of the delete result.",
495
+ "allowNo": false,
496
+ "type": "boolean"
356
497
  }
357
498
  },
358
- "hasDynamicHelp": false,
499
+ "hasDynamicHelp": true,
359
500
  "hiddenAliases": [],
360
- "id": "project:deploy:cancel",
501
+ "id": "project:delete:source",
361
502
  "pluginAlias": "@salesforce/plugin-deploy-retrieve",
362
503
  "pluginName": "@salesforce/plugin-deploy-retrieve",
363
504
  "pluginType": "core",
364
505
  "strict": true,
365
- "summary": "Cancel a deploy operation.",
506
+ "summary": "Delete source from your project and from a non-source-tracked org.",
366
507
  "enableJsonFlag": true,
508
+ "requiresProject": true,
367
509
  "isESM": true,
368
510
  "relativePath": [
369
511
  "lib",
370
512
  "commands",
371
513
  "project",
372
- "deploy",
373
- "cancel.js"
514
+ "delete",
515
+ "source.js"
374
516
  ],
375
517
  "aliasPermutations": [
376
- "deploy:metadata:cancel",
377
- "metadata:deploy:cancel",
378
- "metadata:cancel:deploy",
379
- "deploy:cancel:metadata",
380
- "cancel:deploy:metadata",
381
- "cancel:metadata:deploy"
518
+ "force:source:delete",
519
+ "source:force:delete",
520
+ "source:delete:force",
521
+ "force:delete:source",
522
+ "delete:force:source",
523
+ "delete:source:force"
382
524
  ],
383
525
  "permutations": [
384
- "project:deploy:cancel",
385
- "deploy:project:cancel",
386
- "deploy:cancel:project",
387
- "project:cancel:deploy",
388
- "cancel:project:deploy",
389
- "cancel:deploy:project"
526
+ "project:delete:source",
527
+ "delete:project:source",
528
+ "delete:source:project",
529
+ "project:source:delete",
530
+ "source:project:delete",
531
+ "source:delete:project"
390
532
  ]
391
533
  },
392
- "project:deploy:preview": {
534
+ "project:delete:tracking": {
393
535
  "aliases": [
394
- "deploy:metadata:preview"
536
+ "force:source:tracking:clear"
395
537
  ],
396
538
  "args": {},
397
539
  "deprecateAliases": true,
398
- "description": "You must run this command from within a project.\n\nThe command outputs a table that describes what will happen if you run the \"<%= config.bin %> project deploy start\" command. The table lists the metadata components that will be deployed and deleted. The table also lists the current conflicts between files in your local project and components in the org. Finally, the table lists the files that won't be deployed because they're included in your .forceignore file.\n\nIf your org allows source tracking, then this command displays potential conflicts between the org and your local project. Some orgs, such as production org, never allow source tracking. Source tracking is enabled by default on scratch and sandbox orgs; you can disable source tracking when you create the orgs by specifying the --no-track-source flag on the \"<%= config.bin %> org create scratch|sandbox\" commands.\n\nTo preview the deployment of multiple metadata components, either set multiple --metadata <name> flags or a single --metadata flag with multiple names separated by spaces. Enclose names that contain spaces in one set of double quotes. The same syntax applies to --manifest and --source-dir.",
540
+ "description": "WARNING: This command deletes or overwrites all existing source tracking files. Use with extreme caution.\n\nDeletes all local source tracking information. When you next run 'project deploy preview', Salesforce CLI displays all local and remote files as changed, and any files with the same name are listed as conflicts.",
399
541
  "examples": [
400
- "NOTE: The commands to preview a deployment and actually deploy it use similar flags. We provide a few preview examples here, but see the help for \"<%= config.bin %> project deploy start\" for more examples that you can adapt for previewing.",
401
- "Preview the deployment of source files in a directory, such as force-app, to your default org:\n<%= config.bin %> <%= command.id %> --source-dir force-app",
402
- "Preview the deployment of all Apex classes to an org with alias \"my-scratch\":\n<%= config.bin %> <%= command.id %> --metadata ApexClass --target-org my-scratch",
403
- "Preview deployment of a specific Apex class:\n<%= config.bin %> <%= command.id %> --metadata ApexClass:MyApexClass",
404
- "Preview deployment of all components listed in a manifest:\n<%= config.bin %> <%= command.id %> --manifest path/to/package.xml"
542
+ "Delete local source tracking for the org with alias \"my-scratch\":\n$ <%= config.bin %> <%= command.id %> --target-org my-scratch"
405
543
  ],
406
544
  "flags": {
407
545
  "json": {
@@ -411,28 +549,269 @@
411
549
  "allowNo": false,
412
550
  "type": "boolean"
413
551
  },
414
- "ignore-conflicts": {
415
- "char": "c",
416
- "description": "This flag applies only to orgs that allow source tracking. It has no effect on orgs that don't allow it, such as production orgs.",
417
- "name": "ignore-conflicts",
418
- "summary": "Don't display conflicts in preview of the deployment.",
419
- "allowNo": false,
420
- "type": "boolean"
421
- },
422
- "manifest": {
423
- "char": "x",
424
- "description": "All child components are included. If you specify this flag, don’t specify --metadata or --source-dir.",
425
- "exclusive": [
426
- "source-dir",
427
- "metadata"
428
- ],
429
- "name": "manifest",
430
- "summary": "Full file path for manifest (package.xml) of components to preview.",
552
+ "flags-dir": {
553
+ "helpGroup": "GLOBAL",
554
+ "name": "flags-dir",
555
+ "summary": "Import flag values from a directory.",
431
556
  "hasDynamicHelp": false,
432
557
  "multiple": false,
433
558
  "type": "option"
434
559
  },
435
- "metadata": {
560
+ "api-version": {
561
+ "aliases": [
562
+ "apiversion"
563
+ ],
564
+ "deprecateAliases": true,
565
+ "description": "Override the api version used for api requests made by this command",
566
+ "name": "api-version",
567
+ "hasDynamicHelp": false,
568
+ "multiple": false,
569
+ "type": "option"
570
+ },
571
+ "loglevel": {
572
+ "deprecated": {
573
+ "message": "The loglevel flag is no longer in use on this command. You may use it without error, but it will be ignored.\nSet the log level using the `SFDX_LOG_LEVEL` environment variable."
574
+ },
575
+ "hidden": true,
576
+ "name": "loglevel",
577
+ "hasDynamicHelp": false,
578
+ "multiple": false,
579
+ "type": "option"
580
+ },
581
+ "target-org": {
582
+ "aliases": [
583
+ "targetusername",
584
+ "u"
585
+ ],
586
+ "char": "o",
587
+ "deprecateAliases": true,
588
+ "name": "target-org",
589
+ "noCacheDefault": true,
590
+ "required": true,
591
+ "summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
592
+ "hasDynamicHelp": true,
593
+ "multiple": false,
594
+ "type": "option"
595
+ },
596
+ "no-prompt": {
597
+ "aliases": [
598
+ "noprompt"
599
+ ],
600
+ "char": "p",
601
+ "deprecateAliases": true,
602
+ "name": "no-prompt",
603
+ "summary": "Don't prompt for source tracking override confirmation.",
604
+ "allowNo": false,
605
+ "type": "boolean"
606
+ }
607
+ },
608
+ "hasDynamicHelp": true,
609
+ "hiddenAliases": [],
610
+ "id": "project:delete:tracking",
611
+ "pluginAlias": "@salesforce/plugin-deploy-retrieve",
612
+ "pluginName": "@salesforce/plugin-deploy-retrieve",
613
+ "pluginType": "core",
614
+ "strict": true,
615
+ "summary": "Delete all local source tracking information.",
616
+ "enableJsonFlag": true,
617
+ "requiresProject": true,
618
+ "isESM": true,
619
+ "relativePath": [
620
+ "lib",
621
+ "commands",
622
+ "project",
623
+ "delete",
624
+ "tracking.js"
625
+ ],
626
+ "aliasPermutations": [
627
+ "force:source:tracking:clear",
628
+ "source:force:tracking:clear",
629
+ "source:tracking:force:clear",
630
+ "source:tracking:clear:force",
631
+ "force:tracking:source:clear",
632
+ "tracking:force:source:clear",
633
+ "tracking:source:force:clear",
634
+ "tracking:source:clear:force",
635
+ "force:tracking:clear:source",
636
+ "tracking:force:clear:source",
637
+ "tracking:clear:force:source",
638
+ "tracking:clear:source:force",
639
+ "force:source:clear:tracking",
640
+ "source:force:clear:tracking",
641
+ "source:clear:force:tracking",
642
+ "source:clear:tracking:force",
643
+ "force:clear:source:tracking",
644
+ "clear:force:source:tracking",
645
+ "clear:source:force:tracking",
646
+ "clear:source:tracking:force",
647
+ "force:clear:tracking:source",
648
+ "clear:force:tracking:source",
649
+ "clear:tracking:force:source",
650
+ "clear:tracking:source:force"
651
+ ],
652
+ "permutations": [
653
+ "project:delete:tracking",
654
+ "delete:project:tracking",
655
+ "delete:tracking:project",
656
+ "project:tracking:delete",
657
+ "tracking:project:delete",
658
+ "tracking:delete:project"
659
+ ]
660
+ },
661
+ "project:deploy:cancel": {
662
+ "aliases": [
663
+ "deploy:metadata:cancel"
664
+ ],
665
+ "args": {},
666
+ "deprecateAliases": true,
667
+ "description": "Use this command to cancel a deploy operation that hasn't yet completed in the org. Deploy operations include standard deploys, quick deploys, deploy validations, and deploy cancellations.\n\nRun this command by either passing it a job ID or specifying the --use-most-recent flag to use the job ID of the most recent deploy operation.",
668
+ "examples": [
669
+ "Cancel a deploy operation using a job ID:\n<%= config.bin %> <%= command.id %> --job-id 0Af0x000017yLUFCA2",
670
+ "Cancel the most recent deploy operation:\n<%= config.bin %> <%= command.id %> --use-most-recent"
671
+ ],
672
+ "flags": {
673
+ "json": {
674
+ "description": "Format output as json.",
675
+ "helpGroup": "GLOBAL",
676
+ "name": "json",
677
+ "allowNo": false,
678
+ "type": "boolean"
679
+ },
680
+ "flags-dir": {
681
+ "helpGroup": "GLOBAL",
682
+ "name": "flags-dir",
683
+ "summary": "Import flag values from a directory.",
684
+ "hasDynamicHelp": false,
685
+ "multiple": false,
686
+ "type": "option"
687
+ },
688
+ "async": {
689
+ "description": "The command immediately returns the control of the terminal to you. This way, you can continue to use the CLI. To resume watching the cancellation, run \"<%= config.bin %> project deploy resume\". To check the status of the cancellation, run \"<%= config.bin %> project deploy report\".",
690
+ "exclusive": [
691
+ "wait"
692
+ ],
693
+ "name": "async",
694
+ "summary": "Run the command asynchronously.",
695
+ "allowNo": false,
696
+ "type": "boolean"
697
+ },
698
+ "job-id": {
699
+ "char": "i",
700
+ "description": "These commands return a job ID if they time out or you specified the --async flag:\n\n- <%= config.bin %> project deploy start\n- <%= config.bin %> project deploy validate\n- <%= config.bin %> project deploy quick\n- <%= config.bin %> project deploy cancel\n\nThe job ID is valid for 10 days from when you started the deploy operation.",
701
+ "name": "job-id",
702
+ "summary": "Job ID of the deploy operation you want to cancel.",
703
+ "hasDynamicHelp": false,
704
+ "multiple": false,
705
+ "type": "option"
706
+ },
707
+ "use-most-recent": {
708
+ "char": "r",
709
+ "description": "For performance reasons, this flag uses job IDs for deploy operations that started only in the past 3 days or less. If your most recent deploy operations was more than 3 days ago, this flag won't find a job ID.",
710
+ "name": "use-most-recent",
711
+ "summary": "Use the job ID of the most recent deploy operation.",
712
+ "allowNo": false,
713
+ "type": "boolean"
714
+ },
715
+ "wait": {
716
+ "char": "w",
717
+ "description": "If the command continues to run after the wait period, the CLI returns control of the terminal window to you. To resume watching the cancellation, run \"<%= config.bin %> project deploy resume\". To check the status of the cancellation, run \"<%= config.bin %> project deploy report\".",
718
+ "exclusive": [
719
+ "async"
720
+ ],
721
+ "name": "wait",
722
+ "summary": "Number of minutes to wait for the command to complete and display results.",
723
+ "hasDynamicHelp": true,
724
+ "helpValue": "<minutes>",
725
+ "multiple": false,
726
+ "type": "option"
727
+ }
728
+ },
729
+ "hasDynamicHelp": true,
730
+ "hiddenAliases": [],
731
+ "id": "project:deploy:cancel",
732
+ "pluginAlias": "@salesforce/plugin-deploy-retrieve",
733
+ "pluginName": "@salesforce/plugin-deploy-retrieve",
734
+ "pluginType": "core",
735
+ "strict": true,
736
+ "summary": "Cancel a deploy operation.",
737
+ "enableJsonFlag": true,
738
+ "isESM": true,
739
+ "relativePath": [
740
+ "lib",
741
+ "commands",
742
+ "project",
743
+ "deploy",
744
+ "cancel.js"
745
+ ],
746
+ "aliasPermutations": [
747
+ "deploy:metadata:cancel",
748
+ "metadata:deploy:cancel",
749
+ "metadata:cancel:deploy",
750
+ "deploy:cancel:metadata",
751
+ "cancel:deploy:metadata",
752
+ "cancel:metadata:deploy"
753
+ ],
754
+ "permutations": [
755
+ "project:deploy:cancel",
756
+ "deploy:project:cancel",
757
+ "deploy:cancel:project",
758
+ "project:cancel:deploy",
759
+ "cancel:project:deploy",
760
+ "cancel:deploy:project"
761
+ ]
762
+ },
763
+ "project:deploy:preview": {
764
+ "aliases": [
765
+ "deploy:metadata:preview"
766
+ ],
767
+ "args": {},
768
+ "deprecateAliases": true,
769
+ "description": "You must run this command from within a project.\n\nThe command outputs a table that describes what will happen if you run the \"<%= config.bin %> project deploy start\" command. The table lists the metadata components that will be deployed and deleted. The table also lists the current conflicts between files in your local project and components in the org. Finally, the table lists the files that won't be deployed because they're included in your .forceignore file.\n\nIf your org allows source tracking, then this command displays potential conflicts between the org and your local project. Some orgs, such as production org, never allow source tracking. Source tracking is enabled by default on scratch and sandbox orgs; you can disable source tracking when you create the orgs by specifying the --no-track-source flag on the \"<%= config.bin %> org create scratch|sandbox\" commands.\n\nTo preview the deployment of multiple metadata components, either set multiple --metadata <name> flags or a single --metadata flag with multiple names separated by spaces. Enclose names that contain spaces in one set of double quotes. The same syntax applies to --manifest and --source-dir.",
770
+ "examples": [
771
+ "NOTE: The commands to preview a deployment and actually deploy it use similar flags. We provide a few preview examples here, but see the help for \"<%= config.bin %> project deploy start\" for more examples that you can adapt for previewing.",
772
+ "Preview the deployment of source files in a directory, such as force-app, to your default org:\n<%= config.bin %> <%= command.id %> --source-dir force-app",
773
+ "Preview the deployment of all Apex classes to an org with alias \"my-scratch\":\n<%= config.bin %> <%= command.id %> --metadata ApexClass --target-org my-scratch",
774
+ "Preview deployment of a specific Apex class:\n<%= config.bin %> <%= command.id %> --metadata ApexClass:MyApexClass",
775
+ "Preview deployment of all components listed in a manifest:\n<%= config.bin %> <%= command.id %> --manifest path/to/package.xml"
776
+ ],
777
+ "flags": {
778
+ "json": {
779
+ "description": "Format output as json.",
780
+ "helpGroup": "GLOBAL",
781
+ "name": "json",
782
+ "allowNo": false,
783
+ "type": "boolean"
784
+ },
785
+ "flags-dir": {
786
+ "helpGroup": "GLOBAL",
787
+ "name": "flags-dir",
788
+ "summary": "Import flag values from a directory.",
789
+ "hasDynamicHelp": false,
790
+ "multiple": false,
791
+ "type": "option"
792
+ },
793
+ "ignore-conflicts": {
794
+ "char": "c",
795
+ "description": "This flag applies only to orgs that allow source tracking. It has no effect on orgs that don't allow it, such as production orgs.",
796
+ "name": "ignore-conflicts",
797
+ "summary": "Don't display conflicts in preview of the deployment.",
798
+ "allowNo": false,
799
+ "type": "boolean"
800
+ },
801
+ "manifest": {
802
+ "char": "x",
803
+ "description": "All child components are included. If you specify this flag, don’t specify --metadata or --source-dir.",
804
+ "exclusive": [
805
+ "source-dir",
806
+ "metadata"
807
+ ],
808
+ "name": "manifest",
809
+ "summary": "Full file path for manifest (package.xml) of components to preview.",
810
+ "hasDynamicHelp": false,
811
+ "multiple": false,
812
+ "type": "option"
813
+ },
814
+ "metadata": {
436
815
  "char": "m",
437
816
  "exclusive": [
438
817
  "manifest",
@@ -529,6 +908,14 @@
529
908
  "allowNo": false,
530
909
  "type": "boolean"
531
910
  },
911
+ "flags-dir": {
912
+ "helpGroup": "GLOBAL",
913
+ "name": "flags-dir",
914
+ "summary": "Import flag values from a directory.",
915
+ "hasDynamicHelp": false,
916
+ "multiple": false,
917
+ "type": "option"
918
+ },
532
919
  "async": {
533
920
  "description": "The command immediately returns the control of the terminal to you. This way, you can continue to use the CLI. To resume watching the deploy, run \"<%= config.bin %> project deploy resume\". To check the status of the deploy, run \"<%= config.bin %> project deploy report\".",
534
921
  "exclusive": [
@@ -592,11 +979,8 @@
592
979
  ],
593
980
  "name": "wait",
594
981
  "summary": "Number of minutes to wait for the command to complete and display results.",
595
- "default": {
596
- "quantity": 33,
597
- "unit": 0
598
- },
599
- "hasDynamicHelp": false,
982
+ "default": "33 minutes",
983
+ "hasDynamicHelp": true,
600
984
  "helpValue": "<minutes>",
601
985
  "multiple": false,
602
986
  "type": "option"
@@ -698,6 +1082,14 @@
698
1082
  "allowNo": false,
699
1083
  "type": "boolean"
700
1084
  },
1085
+ "flags-dir": {
1086
+ "helpGroup": "GLOBAL",
1087
+ "name": "flags-dir",
1088
+ "summary": "Import flag values from a directory.",
1089
+ "hasDynamicHelp": false,
1090
+ "multiple": false,
1091
+ "type": "option"
1092
+ },
701
1093
  "target-org": {
702
1094
  "char": "o",
703
1095
  "description": "Overrides your default org.",
@@ -776,7 +1168,7 @@
776
1168
  "description": "If the command continues to run after the wait period, the CLI returns control of the terminal window to you and returns the job ID. To resume the deployment, run \"<%= config.bin %> project deploy resume\". To check the status of the deployment, run \"<%= config.bin %> project deploy report\".",
777
1169
  "name": "wait",
778
1170
  "summary": "Number of minutes to wait for command to complete and display results.",
779
- "hasDynamicHelp": false,
1171
+ "hasDynamicHelp": true,
780
1172
  "helpValue": "<minutes>",
781
1173
  "multiple": false,
782
1174
  "type": "option"
@@ -835,6 +1227,14 @@
835
1227
  "allowNo": false,
836
1228
  "type": "boolean"
837
1229
  },
1230
+ "flags-dir": {
1231
+ "helpGroup": "GLOBAL",
1232
+ "name": "flags-dir",
1233
+ "summary": "Import flag values from a directory.",
1234
+ "hasDynamicHelp": false,
1235
+ "multiple": false,
1236
+ "type": "option"
1237
+ },
838
1238
  "concise": {
839
1239
  "exclusive": [
840
1240
  "verbose"
@@ -875,7 +1275,7 @@
875
1275
  "description": "If the command continues to run after the wait period, the CLI returns control of the terminal window to you. To resume watching the deploy operation, run this command again. To check the status of the deploy operation, run \"<%= config.bin %> project deploy report\".",
876
1276
  "name": "wait",
877
1277
  "summary": "Number of minutes to wait for the command to complete and display results.",
878
- "hasDynamicHelp": false,
1278
+ "hasDynamicHelp": true,
879
1279
  "helpValue": "<minutes>",
880
1280
  "multiple": false,
881
1281
  "type": "option"
@@ -927,7 +1327,7 @@
927
1327
  "type": "option"
928
1328
  }
929
1329
  },
930
- "hasDynamicHelp": false,
1330
+ "hasDynamicHelp": true,
931
1331
  "hiddenAliases": [],
932
1332
  "id": "project:deploy:resume",
933
1333
  "pluginAlias": "@salesforce/plugin-deploy-retrieve",
@@ -1030,6 +1430,14 @@
1030
1430
  "allowNo": false,
1031
1431
  "type": "boolean"
1032
1432
  },
1433
+ "flags-dir": {
1434
+ "helpGroup": "GLOBAL",
1435
+ "name": "flags-dir",
1436
+ "summary": "Import flag values from a directory.",
1437
+ "hasDynamicHelp": false,
1438
+ "multiple": false,
1439
+ "type": "option"
1440
+ },
1033
1441
  "api-version": {
1034
1442
  "char": "a",
1035
1443
  "description": "Use this flag to override the default API version with the API version of your package.xml file. The default API version is the latest version supported by the CLI.",
@@ -1209,11 +1617,7 @@
1209
1617
  ],
1210
1618
  "name": "wait",
1211
1619
  "summary": "Number of minutes to wait for command to complete and display results.",
1212
- "default": {
1213
- "quantity": 33,
1214
- "unit": 0
1215
- },
1216
- "hasDynamicHelp": false,
1620
+ "hasDynamicHelp": true,
1217
1621
  "helpValue": "<minutes>",
1218
1622
  "multiple": false,
1219
1623
  "type": "option"
@@ -1417,6 +1821,14 @@
1417
1821
  "allowNo": false,
1418
1822
  "type": "boolean"
1419
1823
  },
1824
+ "flags-dir": {
1825
+ "helpGroup": "GLOBAL",
1826
+ "name": "flags-dir",
1827
+ "summary": "Import flag values from a directory.",
1828
+ "hasDynamicHelp": false,
1829
+ "multiple": false,
1830
+ "type": "option"
1831
+ },
1420
1832
  "api-version": {
1421
1833
  "char": "a",
1422
1834
  "description": "Use this flag to override the default API version with the API version of your package.xml file. The default API version is the latest version supported by the CLI.",
@@ -1540,537 +1952,198 @@
1540
1952
  "description": "If the command continues to run after the wait period, the CLI returns control of the terminal window to you and returns the job ID. To resume watching the validation, run \"<%= config.bin %> project deploy resume\". To check the status of the validation, run \"<%= config.bin %> project deploy report\".",
1541
1953
  "name": "wait",
1542
1954
  "summary": "Number of minutes to wait for the command to complete and display results.",
1543
- "default": {
1544
- "quantity": 33,
1545
- "unit": 0
1546
- },
1547
- "hasDynamicHelp": false,
1548
- "helpValue": "<minutes>",
1549
- "multiple": false,
1550
- "type": "option"
1551
- },
1552
- "ignore-warnings": {
1553
- "char": "g",
1554
- "description": "If you specify this flag, and a warning occurs, the success status of the deployment is set to true. If you don't specify this flag, and a warning occurs, then the success status is set to false, and the warning is treated like an error.\n\nThis flag is useful in a CI environment and your deployment includes destructive changes; if you try to delete a component that doesn't exist in the org, you get a warning. In this case, to ensure that the command returns a success value of true, specify this flag.",
1555
- "name": "ignore-warnings",
1556
- "summary": "Ignore warnings and allow a deployment to complete successfully.",
1557
- "allowNo": false,
1558
- "type": "boolean"
1559
- },
1560
- "coverage-formatters": {
1561
- "description": "For multiple formatters, repeat the flag for each formatter.\n--coverage-formatters lcov --coverage-formatters clover",
1562
- "helpGroup": "Test",
1563
- "name": "coverage-formatters",
1564
- "summary": "Format of the code coverage results.",
1565
- "hasDynamicHelp": false,
1566
- "multiple": true,
1567
- "options": [
1568
- "clover",
1569
- "cobertura",
1570
- "html-spa",
1571
- "html",
1572
- "json",
1573
- "json-summary",
1574
- "lcovonly",
1575
- "none",
1576
- "teamcity",
1577
- "text",
1578
- "text-summary"
1579
- ],
1580
- "type": "option"
1581
- },
1582
- "junit": {
1583
- "helpGroup": "Test",
1584
- "name": "junit",
1585
- "summary": "Output JUnit test results.",
1586
- "allowNo": false,
1587
- "type": "boolean"
1588
- },
1589
- "results-dir": {
1590
- "helpGroup": "Test",
1591
- "name": "results-dir",
1592
- "relationships": [
1593
- {
1594
- "type": "some",
1595
- "flags": [
1596
- "coverage-formatters",
1597
- "junit"
1598
- ]
1599
- }
1600
- ],
1601
- "summary": "Output directory for code coverage and JUnit results; defaults to the deploy ID.",
1602
- "hasDynamicHelp": false,
1603
- "multiple": false,
1604
- "type": "option"
1605
- },
1606
- "purge-on-delete": {
1607
- "dependsOn": [
1608
- "manifest"
1609
- ],
1610
- "helpGroup": "Delete",
1611
- "name": "purge-on-delete",
1612
- "relationships": [
1613
- {
1614
- "type": "some",
1615
- "flags": [
1616
- "pre-destructive-changes",
1617
- "post-destructive-changes"
1618
- ]
1619
- }
1620
- ],
1621
- "summary": "Specify that deleted components in the destructive changes manifest file are immediately eligible for deletion rather than being stored in the Recycle Bin.",
1622
- "allowNo": false,
1623
- "type": "boolean"
1624
- },
1625
- "pre-destructive-changes": {
1626
- "dependsOn": [
1627
- "manifest"
1628
- ],
1629
- "helpGroup": "Delete",
1630
- "name": "pre-destructive-changes",
1631
- "summary": "File path for a manifest (destructiveChangesPre.xml) of components to delete before the deploy",
1632
- "hasDynamicHelp": false,
1633
- "multiple": false,
1634
- "type": "option"
1635
- },
1636
- "post-destructive-changes": {
1637
- "dependsOn": [
1638
- "manifest"
1639
- ],
1640
- "helpGroup": "Delete",
1641
- "name": "post-destructive-changes",
1642
- "summary": "File path for a manifest (destructiveChangesPost.xml) of components to delete after the deploy.",
1643
- "hasDynamicHelp": false,
1644
- "multiple": false,
1645
- "type": "option"
1646
- }
1647
- },
1648
- "hasDynamicHelp": true,
1649
- "hiddenAliases": [],
1650
- "id": "project:deploy:validate",
1651
- "pluginAlias": "@salesforce/plugin-deploy-retrieve",
1652
- "pluginName": "@salesforce/plugin-deploy-retrieve",
1653
- "pluginType": "core",
1654
- "strict": true,
1655
- "summary": "Validate a metadata deployment without actually executing it.",
1656
- "enableJsonFlag": true,
1657
- "configurationVariablesSection": {
1658
- "header": "CONFIGURATION VARIABLES",
1659
- "body": [
1660
- {
1661
- "name": "target-org",
1662
- "description": "Username or alias of the org that all commands run against by default. (sf only)"
1663
- },
1664
- {
1665
- "name": "org-api-version",
1666
- "description": "API version of your project. Default: API version of your Dev Hub org."
1667
- }
1668
- ]
1669
- },
1670
- "envVariablesSection": {
1671
- "header": "ENVIRONMENT VARIABLES",
1672
- "body": [
1673
- {
1674
- "name": "SF_TARGET_ORG",
1675
- "description": "Username or alias of your default org. Overrides the target-org configuration variable."
1676
- },
1677
- {
1678
- "name": "SF_USE_PROGRESS_BAR",
1679
- "description": "Set to false to disable the progress bar when running the metadata deploy command."
1680
- }
1681
- ]
1682
- },
1683
- "errorCodes": {
1684
- "header": "ERROR CODES",
1685
- "body": [
1686
- {
1687
- "name": "Succeeded (0)",
1688
- "description": "The deploy succeeded."
1689
- },
1690
- {
1691
- "name": "Canceled (1)",
1692
- "description": "The deploy was canceled."
1693
- },
1694
- {
1695
- "name": "Failed (1)",
1696
- "description": "The deploy failed."
1697
- },
1698
- {
1699
- "name": "SucceededPartial (68)",
1700
- "description": "The deploy partially succeeded."
1701
- },
1702
- {
1703
- "name": "InProgress (69)",
1704
- "description": "The deploy is in progress."
1705
- },
1706
- {
1707
- "name": "Pending (69)",
1708
- "description": "The deploy is pending."
1709
- },
1710
- {
1711
- "name": "Canceling (69)",
1712
- "description": "The deploy is being canceled."
1713
- }
1714
- ]
1715
- },
1716
- "isESM": true,
1717
- "relativePath": [
1718
- "lib",
1719
- "commands",
1720
- "project",
1721
- "deploy",
1722
- "validate.js"
1723
- ],
1724
- "aliasPermutations": [
1725
- "deploy:metadata:validate",
1726
- "metadata:deploy:validate",
1727
- "metadata:validate:deploy",
1728
- "deploy:validate:metadata",
1729
- "validate:deploy:metadata",
1730
- "validate:metadata:deploy"
1731
- ],
1732
- "permutations": [
1733
- "project:deploy:validate",
1734
- "deploy:project:validate",
1735
- "deploy:validate:project",
1736
- "project:validate:deploy",
1737
- "validate:project:deploy",
1738
- "validate:deploy:project"
1739
- ]
1740
- },
1741
- "project:delete:source": {
1742
- "aliases": [
1743
- "force:source:delete"
1744
- ],
1745
- "args": {},
1746
- "deprecateAliases": true,
1747
- "description": "Use this command to delete components from orgs that don’t have source tracking. To remove deleted items from orgs that have source tracking enabled, \"<%= config.bin %> project deploy start\".\n\nWhen you run this command, both the local source file and the metadata component in the org are deleted.\n\nTo delete multiple metadata components, either set multiple --metadata <name> flags or a single --metadata flag with multiple names separated by spaces. Enclose names that contain spaces in one set of double quotes. The same syntax applies to --manifest and --source-dir.",
1748
- "examples": [
1749
- "Delete all local Apex source files and all Apex classes from the org with alias \"my-scratch\":\n<%= config.bin %> <%= command.id %> --metadata ApexClass --target-org my-scratch",
1750
- "Delete a specific Apex class and a Profile that has a space in it from your default org; don't prompt for confirmation:\n<%= config.bin %> <%= command.id %> --metadata ApexClass:MyFabulousApexClass --metadata \"Profile: My Profile\" --no-prompt",
1751
- "Run the tests that aren’t in any managed packages as part of the deletion; if the delete succeeds, and the org has source-tracking enabled, update the source tracking information:\n<%= config.bin %> <%= command.id %> --metadata ApexClass --test-level RunLocalTests --track-source",
1752
- "Delete the Apex source files in a directory and the corresponding components from your default org:\n<%= config.bin %> <%= command.id %> --source-dir force-app/main/default/classes"
1753
- ],
1754
- "flags": {
1755
- "json": {
1756
- "description": "Format output as json.",
1757
- "helpGroup": "GLOBAL",
1758
- "name": "json",
1759
- "allowNo": false,
1760
- "type": "boolean"
1761
- },
1762
- "api-version": {
1763
- "aliases": [
1764
- "apiversion"
1765
- ],
1766
- "deprecateAliases": true,
1767
- "description": "Override the api version used for api requests made by this command",
1768
- "name": "api-version",
1769
- "hasDynamicHelp": false,
1770
- "multiple": false,
1771
- "type": "option"
1772
- },
1773
- "loglevel": {
1774
- "deprecated": {
1775
- "message": "The loglevel flag is no longer in use on this command. You may use it without error, but it will be ignored.\nSet the log level using the `SFDX_LOG_LEVEL` environment variable."
1776
- },
1777
- "hidden": true,
1778
- "name": "loglevel",
1779
- "hasDynamicHelp": false,
1780
- "multiple": false,
1781
- "type": "option"
1782
- },
1783
- "target-org": {
1784
- "aliases": [
1785
- "targetusername",
1786
- "u"
1787
- ],
1788
- "char": "o",
1789
- "deprecateAliases": true,
1790
- "name": "target-org",
1791
- "noCacheDefault": true,
1792
- "required": true,
1793
- "summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
1794
- "hasDynamicHelp": true,
1795
- "multiple": false,
1796
- "type": "option"
1797
- },
1798
- "check-only": {
1799
- "aliases": [
1800
- "checkonly"
1801
- ],
1802
- "char": "c",
1803
- "deprecateAliases": true,
1804
- "description": "IMPORTANT: Where possible, we changed noninclusive terms to align with our company value of Equality. We maintained certain terms to avoid any effect on customer implementations.\n\nValidates the deleted metadata and runs all Apex tests, but prevents the deletion from being saved to the org.\n\nIf you change a field type from Master-Detail to Lookup or vice versa, that change isn’t supported when using the --chec-konly parameter to test a deletion (validation). This kind of change isn’t supported for test deletions to avoid the risk of data loss or corruption. If a change that isn’t supported for test deletions is included in a deletion package, the test deletion fails and issues an error.\n\nIf your deletion package changes a field type from Master-Detail to Lookup or vice versa, you can still validate the changes prior to deploying to Production by performing a full deletion to another test Sandbox. A full deletion includes a validation of the changes as part of the deletion process.\n\nNote: A Metadata API deletion that includes Master-Detail relationships deletes all detail records in the Recycle Bin in the following cases.\n\n 1. For a deletion with a new Master-Detail field, soft delete (send to the Recycle Bin) all detail records before proceeding to delete the Master-Detail field, or the deletion fails. During the deletion, detail records are permanently deleted from the Recycle Bin and cannot be recovered.\n\n 2. For a deletion that converts a Lookup field relationship to a Master-Detail relationship, detail records must reference a master record or be soft-deleted (sent to the Recycle Bin) for the deletion to succeed. However, a successful deletion permanently deletes any detail records in the Recycle Bin.",
1805
- "name": "check-only",
1806
- "summary": "Validate delete command but don't delete anything from the org or the local project.",
1807
- "allowNo": false,
1808
- "type": "boolean"
1809
- },
1810
- "wait": {
1811
- "char": "w",
1812
- "description": "If the command continues to run after the wait period, the CLI returns control of the terminal window to you.",
1813
- "name": "wait",
1814
- "summary": "Number of minutes to wait for the command to finish.",
1815
- "default": {
1816
- "quantity": 33,
1817
- "unit": 0
1818
- },
1819
- "hasDynamicHelp": false,
1820
- "multiple": false,
1821
- "type": "option"
1822
- },
1823
- "tests": {
1824
- "description": "If a test name contains a space, enclose it in double quotes.\nFor multiple test names, use one of the following formats:\n\n- Repeat the flag for multiple test names: --tests Test1 --tests Test2 --tests \"Test With Space\"\n- Separate the test names with spaces: --tests Test1 Test2 \"Test With Space\"",
1825
- "helpGroup": "Test",
1826
- "name": "tests",
1827
- "summary": "Apex tests to run when --test-level is RunSpecifiedTests.",
1828
- "hasDynamicHelp": false,
1829
- "multiple": true,
1830
- "type": "option"
1831
- },
1832
- "test-level": {
1833
- "aliases": [
1834
- "testlevel"
1835
- ],
1836
- "char": "l",
1837
- "deprecateAliases": true,
1838
- "description": "Valid values are:\n\n- NoTestRun — No tests are run. This test level applies only to deployments to development environments, such as sandbox, Developer Edition, or trial orgs. This test level is the default for development environments.\n\n- RunSpecifiedTests — Runs only the tests that you specify with the --tests flag. Code coverage requirements differ from the default coverage requirements when using this test level. Executed tests must comprise a minimum of 75% code coverage for each class and trigger in the deployment package. This coverage is computed for each class and trigger individually and is different than the overall coverage percentage.\n\n- RunLocalTests — All tests in your org are run, except the ones that originate from installed managed and unlocked packages. This test level is the default for production deployments that include Apex classes or triggers.\n\n- RunAllTestsInOrg — All tests in your org are run, including tests of managed packages.\n\nIf you don’t specify a test level, the default behavior depends on the contents of your deployment package and target org. For more information, see “Running Tests in a Deployment” in the Metadata API Developer Guide.",
1839
- "helpGroup": "Test",
1840
- "name": "test-level",
1841
- "summary": "Deployment Apex testing level.",
1842
- "hasDynamicHelp": false,
1843
- "multiple": false,
1844
- "options": [
1845
- "NoTestRun",
1846
- "RunSpecifiedTests",
1847
- "RunLocalTests",
1848
- "RunAllTestsInOrg"
1849
- ],
1850
- "type": "option"
1851
- },
1852
- "no-prompt": {
1853
- "aliases": [
1854
- "noprompt"
1855
- ],
1856
- "char": "r",
1857
- "deprecateAliases": true,
1858
- "name": "no-prompt",
1859
- "summary": "Don't prompt for delete confirmation.",
1860
- "allowNo": false,
1861
- "type": "boolean"
1862
- },
1863
- "metadata": {
1864
- "char": "m",
1865
- "description": "If you specify this parameter, don’t specify --source-dir.",
1866
- "name": "metadata",
1867
- "summary": "Metadata components to delete.",
1868
- "delimiter": ",",
1869
- "hasDynamicHelp": false,
1870
- "multiple": true,
1871
- "type": "option"
1872
- },
1873
- "source-dir": {
1874
- "aliases": [
1875
- "sourcepath"
1876
- ],
1877
- "char": "p",
1878
- "deprecateAliases": true,
1879
- "description": "The supplied paths can be a single file (in which case the operation is applied to only one file) or a folder (in which case the operation is applied to all metadata types in the directory and its sub-directories).\n\nIf you specify this parameter, don’t specify --metadata.",
1880
- "name": "source-dir",
1881
- "summary": "Source file paths to delete.",
1882
- "delimiter": ",",
1883
- "hasDynamicHelp": false,
1884
- "multiple": true,
1885
- "type": "option"
1886
- },
1887
- "track-source": {
1888
- "aliases": [
1889
- "tracksource"
1890
- ],
1891
- "char": "t",
1892
- "deprecateAliases": true,
1893
- "exclusive": [
1894
- "check-only"
1895
- ],
1896
- "name": "track-source",
1897
- "summary": "If the delete succeeds, update the source tracking information.",
1898
- "allowNo": false,
1899
- "type": "boolean"
1900
- },
1901
- "force-overwrite": {
1902
- "aliases": [
1903
- "forceoverwrite"
1904
- ],
1905
- "char": "f",
1906
- "dependsOn": [
1907
- "track-source"
1908
- ],
1909
- "deprecateAliases": true,
1910
- "name": "force-overwrite",
1911
- "summary": "Ignore conflict warnings and overwrite changes to the org.",
1912
- "allowNo": false,
1913
- "type": "boolean"
1914
- },
1915
- "verbose": {
1916
- "name": "verbose",
1917
- "summary": "Verbose output of the delete result.",
1918
- "allowNo": false,
1919
- "type": "boolean"
1920
- }
1921
- },
1922
- "hasDynamicHelp": true,
1923
- "hiddenAliases": [],
1924
- "id": "project:delete:source",
1925
- "pluginAlias": "@salesforce/plugin-deploy-retrieve",
1926
- "pluginName": "@salesforce/plugin-deploy-retrieve",
1927
- "pluginType": "core",
1928
- "strict": true,
1929
- "summary": "Delete source from your project and from a non-source-tracked org.",
1930
- "enableJsonFlag": true,
1931
- "requiresProject": true,
1932
- "isESM": true,
1933
- "relativePath": [
1934
- "lib",
1935
- "commands",
1936
- "project",
1937
- "delete",
1938
- "source.js"
1939
- ],
1940
- "aliasPermutations": [
1941
- "force:source:delete",
1942
- "source:force:delete",
1943
- "source:delete:force",
1944
- "force:delete:source",
1945
- "delete:force:source",
1946
- "delete:source:force"
1947
- ],
1948
- "permutations": [
1949
- "project:delete:source",
1950
- "delete:project:source",
1951
- "delete:source:project",
1952
- "project:source:delete",
1953
- "source:project:delete",
1954
- "source:delete:project"
1955
- ]
1956
- },
1957
- "project:delete:tracking": {
1958
- "aliases": [
1959
- "force:source:tracking:clear"
1960
- ],
1961
- "args": {},
1962
- "deprecateAliases": true,
1963
- "description": "WARNING: This command deletes or overwrites all existing source tracking files. Use with extreme caution.\n\nDeletes all local source tracking information. When you next run 'project deploy preview', Salesforce CLI displays all local and remote files as changed, and any files with the same name are listed as conflicts.",
1964
- "examples": [
1965
- "Delete local source tracking for the org with alias \"my-scratch\":\n$ <%= config.bin %> <%= command.id %> --target-org my-scratch"
1966
- ],
1967
- "flags": {
1968
- "json": {
1969
- "description": "Format output as json.",
1970
- "helpGroup": "GLOBAL",
1971
- "name": "json",
1955
+ "hasDynamicHelp": true,
1956
+ "helpValue": "<minutes>",
1957
+ "multiple": false,
1958
+ "type": "option"
1959
+ },
1960
+ "ignore-warnings": {
1961
+ "char": "g",
1962
+ "description": "If you specify this flag, and a warning occurs, the success status of the deployment is set to true. If you don't specify this flag, and a warning occurs, then the success status is set to false, and the warning is treated like an error.\n\nThis flag is useful in a CI environment and your deployment includes destructive changes; if you try to delete a component that doesn't exist in the org, you get a warning. In this case, to ensure that the command returns a success value of true, specify this flag.",
1963
+ "name": "ignore-warnings",
1964
+ "summary": "Ignore warnings and allow a deployment to complete successfully.",
1972
1965
  "allowNo": false,
1973
1966
  "type": "boolean"
1974
1967
  },
1975
- "api-version": {
1976
- "aliases": [
1977
- "apiversion"
1978
- ],
1979
- "deprecateAliases": true,
1980
- "description": "Override the api version used for api requests made by this command",
1981
- "name": "api-version",
1968
+ "coverage-formatters": {
1969
+ "description": "For multiple formatters, repeat the flag for each formatter.\n--coverage-formatters lcov --coverage-formatters clover",
1970
+ "helpGroup": "Test",
1971
+ "name": "coverage-formatters",
1972
+ "summary": "Format of the code coverage results.",
1982
1973
  "hasDynamicHelp": false,
1983
- "multiple": false,
1974
+ "multiple": true,
1975
+ "options": [
1976
+ "clover",
1977
+ "cobertura",
1978
+ "html-spa",
1979
+ "html",
1980
+ "json",
1981
+ "json-summary",
1982
+ "lcovonly",
1983
+ "none",
1984
+ "teamcity",
1985
+ "text",
1986
+ "text-summary"
1987
+ ],
1984
1988
  "type": "option"
1985
1989
  },
1986
- "loglevel": {
1987
- "deprecated": {
1988
- "message": "The loglevel flag is no longer in use on this command. You may use it without error, but it will be ignored.\nSet the log level using the `SFDX_LOG_LEVEL` environment variable."
1989
- },
1990
- "hidden": true,
1991
- "name": "loglevel",
1990
+ "junit": {
1991
+ "helpGroup": "Test",
1992
+ "name": "junit",
1993
+ "summary": "Output JUnit test results.",
1994
+ "allowNo": false,
1995
+ "type": "boolean"
1996
+ },
1997
+ "results-dir": {
1998
+ "helpGroup": "Test",
1999
+ "name": "results-dir",
2000
+ "relationships": [
2001
+ {
2002
+ "type": "some",
2003
+ "flags": [
2004
+ "coverage-formatters",
2005
+ "junit"
2006
+ ]
2007
+ }
2008
+ ],
2009
+ "summary": "Output directory for code coverage and JUnit results; defaults to the deploy ID.",
1992
2010
  "hasDynamicHelp": false,
1993
2011
  "multiple": false,
1994
2012
  "type": "option"
1995
2013
  },
1996
- "target-org": {
1997
- "aliases": [
1998
- "targetusername",
1999
- "u"
2014
+ "purge-on-delete": {
2015
+ "dependsOn": [
2016
+ "manifest"
2000
2017
  ],
2001
- "char": "o",
2002
- "deprecateAliases": true,
2003
- "name": "target-org",
2004
- "noCacheDefault": true,
2005
- "required": true,
2006
- "summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
2007
- "hasDynamicHelp": true,
2018
+ "helpGroup": "Delete",
2019
+ "name": "purge-on-delete",
2020
+ "relationships": [
2021
+ {
2022
+ "type": "some",
2023
+ "flags": [
2024
+ "pre-destructive-changes",
2025
+ "post-destructive-changes"
2026
+ ]
2027
+ }
2028
+ ],
2029
+ "summary": "Specify that deleted components in the destructive changes manifest file are immediately eligible for deletion rather than being stored in the Recycle Bin.",
2030
+ "allowNo": false,
2031
+ "type": "boolean"
2032
+ },
2033
+ "pre-destructive-changes": {
2034
+ "dependsOn": [
2035
+ "manifest"
2036
+ ],
2037
+ "helpGroup": "Delete",
2038
+ "name": "pre-destructive-changes",
2039
+ "summary": "File path for a manifest (destructiveChangesPre.xml) of components to delete before the deploy",
2040
+ "hasDynamicHelp": false,
2008
2041
  "multiple": false,
2009
2042
  "type": "option"
2010
2043
  },
2011
- "no-prompt": {
2012
- "aliases": [
2013
- "noprompt"
2044
+ "post-destructive-changes": {
2045
+ "dependsOn": [
2046
+ "manifest"
2014
2047
  ],
2015
- "char": "p",
2016
- "deprecateAliases": true,
2017
- "name": "no-prompt",
2018
- "summary": "Don't prompt for source tracking override confirmation.",
2019
- "allowNo": false,
2020
- "type": "boolean"
2048
+ "helpGroup": "Delete",
2049
+ "name": "post-destructive-changes",
2050
+ "summary": "File path for a manifest (destructiveChangesPost.xml) of components to delete after the deploy.",
2051
+ "hasDynamicHelp": false,
2052
+ "multiple": false,
2053
+ "type": "option"
2021
2054
  }
2022
2055
  },
2023
2056
  "hasDynamicHelp": true,
2024
2057
  "hiddenAliases": [],
2025
- "id": "project:delete:tracking",
2058
+ "id": "project:deploy:validate",
2026
2059
  "pluginAlias": "@salesforce/plugin-deploy-retrieve",
2027
2060
  "pluginName": "@salesforce/plugin-deploy-retrieve",
2028
2061
  "pluginType": "core",
2029
2062
  "strict": true,
2030
- "summary": "Delete all local source tracking information.",
2063
+ "summary": "Validate a metadata deployment without actually executing it.",
2031
2064
  "enableJsonFlag": true,
2032
- "requiresProject": true,
2065
+ "configurationVariablesSection": {
2066
+ "header": "CONFIGURATION VARIABLES",
2067
+ "body": [
2068
+ {
2069
+ "name": "target-org",
2070
+ "description": "Username or alias of the org that all commands run against by default. (sf only)"
2071
+ },
2072
+ {
2073
+ "name": "org-api-version",
2074
+ "description": "API version of your project. Default: API version of your Dev Hub org."
2075
+ }
2076
+ ]
2077
+ },
2078
+ "envVariablesSection": {
2079
+ "header": "ENVIRONMENT VARIABLES",
2080
+ "body": [
2081
+ {
2082
+ "name": "SF_TARGET_ORG",
2083
+ "description": "Username or alias of your default org. Overrides the target-org configuration variable."
2084
+ },
2085
+ {
2086
+ "name": "SF_USE_PROGRESS_BAR",
2087
+ "description": "Set to false to disable the progress bar when running the metadata deploy command."
2088
+ }
2089
+ ]
2090
+ },
2091
+ "errorCodes": {
2092
+ "header": "ERROR CODES",
2093
+ "body": [
2094
+ {
2095
+ "name": "Succeeded (0)",
2096
+ "description": "The deploy succeeded."
2097
+ },
2098
+ {
2099
+ "name": "Canceled (1)",
2100
+ "description": "The deploy was canceled."
2101
+ },
2102
+ {
2103
+ "name": "Failed (1)",
2104
+ "description": "The deploy failed."
2105
+ },
2106
+ {
2107
+ "name": "SucceededPartial (68)",
2108
+ "description": "The deploy partially succeeded."
2109
+ },
2110
+ {
2111
+ "name": "InProgress (69)",
2112
+ "description": "The deploy is in progress."
2113
+ },
2114
+ {
2115
+ "name": "Pending (69)",
2116
+ "description": "The deploy is pending."
2117
+ },
2118
+ {
2119
+ "name": "Canceling (69)",
2120
+ "description": "The deploy is being canceled."
2121
+ }
2122
+ ]
2123
+ },
2033
2124
  "isESM": true,
2034
2125
  "relativePath": [
2035
2126
  "lib",
2036
2127
  "commands",
2037
2128
  "project",
2038
- "delete",
2039
- "tracking.js"
2129
+ "deploy",
2130
+ "validate.js"
2040
2131
  ],
2041
2132
  "aliasPermutations": [
2042
- "force:source:tracking:clear",
2043
- "source:force:tracking:clear",
2044
- "source:tracking:force:clear",
2045
- "source:tracking:clear:force",
2046
- "force:tracking:source:clear",
2047
- "tracking:force:source:clear",
2048
- "tracking:source:force:clear",
2049
- "tracking:source:clear:force",
2050
- "force:tracking:clear:source",
2051
- "tracking:force:clear:source",
2052
- "tracking:clear:force:source",
2053
- "tracking:clear:source:force",
2054
- "force:source:clear:tracking",
2055
- "source:force:clear:tracking",
2056
- "source:clear:force:tracking",
2057
- "source:clear:tracking:force",
2058
- "force:clear:source:tracking",
2059
- "clear:force:source:tracking",
2060
- "clear:source:force:tracking",
2061
- "clear:source:tracking:force",
2062
- "force:clear:tracking:source",
2063
- "clear:force:tracking:source",
2064
- "clear:tracking:force:source",
2065
- "clear:tracking:source:force"
2133
+ "deploy:metadata:validate",
2134
+ "metadata:deploy:validate",
2135
+ "metadata:validate:deploy",
2136
+ "deploy:validate:metadata",
2137
+ "validate:deploy:metadata",
2138
+ "validate:metadata:deploy"
2066
2139
  ],
2067
2140
  "permutations": [
2068
- "project:delete:tracking",
2069
- "delete:project:tracking",
2070
- "delete:tracking:project",
2071
- "project:tracking:delete",
2072
- "tracking:project:delete",
2073
- "tracking:delete:project"
2141
+ "project:deploy:validate",
2142
+ "deploy:project:validate",
2143
+ "deploy:validate:project",
2144
+ "project:validate:deploy",
2145
+ "validate:project:deploy",
2146
+ "validate:deploy:project"
2074
2147
  ]
2075
2148
  },
2076
2149
  "project:generate:manifest": {
@@ -2094,6 +2167,14 @@
2094
2167
  "allowNo": false,
2095
2168
  "type": "boolean"
2096
2169
  },
2170
+ "flags-dir": {
2171
+ "helpGroup": "GLOBAL",
2172
+ "name": "flags-dir",
2173
+ "summary": "Import flag values from a directory.",
2174
+ "hasDynamicHelp": false,
2175
+ "multiple": false,
2176
+ "type": "option"
2177
+ },
2097
2178
  "api-version": {
2098
2179
  "aliases": [
2099
2180
  "apiversion"
@@ -2291,6 +2372,14 @@
2291
2372
  "allowNo": false,
2292
2373
  "type": "boolean"
2293
2374
  },
2375
+ "flags-dir": {
2376
+ "helpGroup": "GLOBAL",
2377
+ "name": "flags-dir",
2378
+ "summary": "Import flag values from a directory.",
2379
+ "hasDynamicHelp": false,
2380
+ "multiple": false,
2381
+ "type": "option"
2382
+ },
2294
2383
  "source-dir": {
2295
2384
  "aliases": [
2296
2385
  "sourcepath"
@@ -2376,6 +2465,14 @@
2376
2465
  "allowNo": false,
2377
2466
  "type": "boolean"
2378
2467
  },
2468
+ "flags-dir": {
2469
+ "helpGroup": "GLOBAL",
2470
+ "name": "flags-dir",
2471
+ "summary": "Import flag values from a directory.",
2472
+ "hasDynamicHelp": false,
2473
+ "multiple": false,
2474
+ "type": "option"
2475
+ },
2379
2476
  "target-org": {
2380
2477
  "aliases": [
2381
2478
  "targetusername",
@@ -2504,6 +2601,14 @@
2504
2601
  "allowNo": false,
2505
2602
  "type": "boolean"
2506
2603
  },
2604
+ "flags-dir": {
2605
+ "helpGroup": "GLOBAL",
2606
+ "name": "flags-dir",
2607
+ "summary": "Import flag values from a directory.",
2608
+ "hasDynamicHelp": false,
2609
+ "multiple": false,
2610
+ "type": "option"
2611
+ },
2507
2612
  "ignore-conflicts": {
2508
2613
  "char": "c",
2509
2614
  "description": "This flag applies only to orgs that allow source tracking. It has no effect on orgs that don't allow it, such as production orgs.",
@@ -2594,6 +2699,14 @@
2594
2699
  "allowNo": false,
2595
2700
  "type": "boolean"
2596
2701
  },
2702
+ "flags-dir": {
2703
+ "helpGroup": "GLOBAL",
2704
+ "name": "flags-dir",
2705
+ "summary": "Import flag values from a directory.",
2706
+ "hasDynamicHelp": false,
2707
+ "multiple": false,
2708
+ "type": "option"
2709
+ },
2597
2710
  "api-version": {
2598
2711
  "char": "a",
2599
2712
  "description": "Use this flag to override the default API version, which is the latest version supported the CLI, with the API version in your package.xml file.",
@@ -2722,11 +2835,8 @@
2722
2835
  "description": "If the command continues to run after the wait period, the CLI returns control of the terminal window to you.",
2723
2836
  "name": "wait",
2724
2837
  "summary": "Number of minutes to wait for the command to complete and display results to the terminal window.",
2725
- "default": {
2726
- "quantity": 33,
2727
- "unit": 0
2728
- },
2729
- "hasDynamicHelp": false,
2838
+ "default": "33 minutes",
2839
+ "hasDynamicHelp": true,
2730
2840
  "multiple": false,
2731
2841
  "type": "option"
2732
2842
  },
@@ -2816,5 +2926,5 @@
2816
2926
  ]
2817
2927
  }
2818
2928
  },
2819
- "version": "3.2.35"
2929
+ "version": "3.3.0"
2820
2930
  }