@salesforce/plugin-deploy-retrieve 3.22.24 → 3.22.25

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.
Files changed (3) hide show
  1. package/README.md +17 -17
  2. package/oclif.manifest.json +603 -603
  3. package/package.json +4 -4
@@ -405,18 +405,16 @@
405
405
  "source:convert:project"
406
406
  ]
407
407
  },
408
- "project:delete:source": {
408
+ "project:deploy:cancel": {
409
409
  "aliases": [
410
- "force:source:delete"
410
+ "deploy:metadata:cancel"
411
411
  ],
412
412
  "args": {},
413
413
  "deprecateAliases": true,
414
- "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 --source-dir.",
414
+ "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.",
415
415
  "examples": [
416
- "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",
417
- "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",
418
- "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",
419
- "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"
416
+ "Cancel a deploy operation using a job ID:\n<%= config.bin %> <%= command.id %> --job-id 0Af0x000017yLUFCA2",
417
+ "Cancel the most recent deploy operation:\n<%= config.bin %> <%= command.id %> --use-most-recent"
420
418
  ],
421
419
  "flags": {
422
420
  "json": {
@@ -434,206 +432,103 @@
434
432
  "multiple": false,
435
433
  "type": "option"
436
434
  },
437
- "api-version": {
438
- "aliases": [
439
- "apiversion"
440
- ],
441
- "deprecateAliases": true,
442
- "description": "Override the api version used for api requests made by this command",
443
- "name": "api-version",
444
- "hasDynamicHelp": false,
445
- "multiple": false,
446
- "type": "option"
447
- },
448
- "loglevel": {
449
- "deprecated": {
450
- "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."
451
- },
452
- "hidden": true,
453
- "name": "loglevel",
454
- "hasDynamicHelp": false,
455
- "multiple": false,
456
- "type": "option"
457
- },
458
435
  "target-org": {
459
- "aliases": [
460
- "targetusername",
461
- "u"
462
- ],
463
436
  "char": "o",
464
- "deprecateAliases": true,
465
437
  "name": "target-org",
466
438
  "noCacheDefault": true,
467
- "required": true,
468
- "summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
439
+ "summary": "Username or alias of the target org.",
469
440
  "hasDynamicHelp": true,
470
441
  "multiple": false,
471
442
  "type": "option"
472
443
  },
473
- "check-only": {
474
- "aliases": [
475
- "checkonly"
444
+ "async": {
445
+ "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\".",
446
+ "exclusive": [
447
+ "wait"
476
448
  ],
477
- "char": "c",
478
- "deprecateAliases": true,
479
- "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 --check-only flag 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.",
480
- "name": "check-only",
481
- "summary": "Validate delete command but don't delete anything from the org or the local project.",
449
+ "name": "async",
450
+ "summary": "Run the command asynchronously.",
482
451
  "allowNo": false,
483
452
  "type": "boolean"
484
453
  },
485
- "wait": {
486
- "char": "w",
487
- "description": "If the command continues to run after the wait period, the CLI returns control of the terminal window to you.",
488
- "name": "wait",
489
- "summary": "Number of minutes to wait for the command to finish.",
490
- "hasDynamicHelp": true,
491
- "multiple": false,
492
- "type": "option"
493
- },
494
- "tests": {
495
- "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\"",
496
- "helpGroup": "Test",
497
- "name": "tests",
498
- "summary": "Apex tests to run when --test-level is RunSpecifiedTests.",
499
- "hasDynamicHelp": false,
500
- "multiple": true,
501
- "type": "option"
502
- },
503
- "test-level": {
504
- "aliases": [
505
- "testlevel"
506
- ],
507
- "char": "l",
508
- "deprecateAliases": true,
509
- "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.",
510
- "helpGroup": "Test",
511
- "name": "test-level",
512
- "summary": "Deployment Apex testing level.",
454
+ "job-id": {
455
+ "char": "i",
456
+ "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.",
457
+ "name": "job-id",
458
+ "summary": "Job ID of the deploy operation you want to cancel.",
513
459
  "hasDynamicHelp": false,
514
460
  "multiple": false,
515
- "options": [
516
- "NoTestRun",
517
- "RunSpecifiedTests",
518
- "RunLocalTests",
519
- "RunAllTestsInOrg"
520
- ],
521
461
  "type": "option"
522
462
  },
523
- "no-prompt": {
524
- "aliases": [
525
- "noprompt"
526
- ],
463
+ "use-most-recent": {
527
464
  "char": "r",
528
- "deprecateAliases": true,
529
- "name": "no-prompt",
530
- "summary": "Don't prompt for delete confirmation.",
465
+ "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.",
466
+ "name": "use-most-recent",
467
+ "summary": "Use the job ID of the most recent deploy operation.",
531
468
  "allowNo": false,
532
469
  "type": "boolean"
533
470
  },
534
- "metadata": {
535
- "char": "m",
536
- "description": "If you specify this flag, don’t specify --source-dir.",
537
- "name": "metadata",
538
- "summary": "Metadata components to delete.",
539
- "delimiter": ",",
540
- "hasDynamicHelp": false,
541
- "multiple": true,
542
- "type": "option"
543
- },
544
- "source-dir": {
545
- "aliases": [
546
- "sourcepath"
547
- ],
548
- "char": "p",
549
- "deprecateAliases": true,
550
- "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 flag, don’t specify --metadata.",
551
- "name": "source-dir",
552
- "summary": "Source file paths to delete.",
553
- "delimiter": ",",
554
- "hasDynamicHelp": false,
555
- "multiple": true,
556
- "type": "option"
557
- },
558
- "track-source": {
559
- "aliases": [
560
- "tracksource"
561
- ],
562
- "char": "t",
563
- "deprecateAliases": true,
471
+ "wait": {
472
+ "char": "w",
473
+ "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\".",
564
474
  "exclusive": [
565
- "check-only"
566
- ],
567
- "name": "track-source",
568
- "summary": "If the delete succeeds, update the source tracking information.",
569
- "allowNo": false,
570
- "type": "boolean"
571
- },
572
- "force-overwrite": {
573
- "aliases": [
574
- "forceoverwrite"
575
- ],
576
- "char": "f",
577
- "dependsOn": [
578
- "track-source"
475
+ "async"
579
476
  ],
580
- "deprecateAliases": true,
581
- "name": "force-overwrite",
582
- "summary": "Ignore conflict warnings and overwrite changes to the org.",
583
- "allowNo": false,
584
- "type": "boolean"
585
- },
586
- "verbose": {
587
- "name": "verbose",
588
- "summary": "Verbose output of the delete result.",
589
- "allowNo": false,
590
- "type": "boolean"
477
+ "name": "wait",
478
+ "summary": "Number of minutes to wait for the command to complete and display results.",
479
+ "hasDynamicHelp": true,
480
+ "helpValue": "<minutes>",
481
+ "multiple": false,
482
+ "type": "option"
591
483
  }
592
484
  },
593
485
  "hasDynamicHelp": true,
594
486
  "hiddenAliases": [],
595
- "id": "project:delete:source",
487
+ "id": "project:deploy:cancel",
596
488
  "pluginAlias": "@salesforce/plugin-deploy-retrieve",
597
489
  "pluginName": "@salesforce/plugin-deploy-retrieve",
598
490
  "pluginType": "core",
599
491
  "strict": true,
600
- "summary": "Delete source from your project and from a non-source-tracked org.",
492
+ "summary": "Cancel a deploy operation.",
601
493
  "enableJsonFlag": true,
602
- "requiresProject": true,
603
494
  "isESM": true,
604
495
  "relativePath": [
605
496
  "lib",
606
497
  "commands",
607
498
  "project",
608
- "delete",
609
- "source.js"
499
+ "deploy",
500
+ "cancel.js"
610
501
  ],
611
502
  "aliasPermutations": [
612
- "force:source:delete",
613
- "source:force:delete",
614
- "source:delete:force",
615
- "force:delete:source",
616
- "delete:force:source",
617
- "delete:source:force"
503
+ "deploy:metadata:cancel",
504
+ "metadata:deploy:cancel",
505
+ "metadata:cancel:deploy",
506
+ "deploy:cancel:metadata",
507
+ "cancel:deploy:metadata",
508
+ "cancel:metadata:deploy"
618
509
  ],
619
510
  "permutations": [
620
- "project:delete:source",
621
- "delete:project:source",
622
- "delete:source:project",
623
- "project:source:delete",
624
- "source:project:delete",
625
- "source:delete:project"
511
+ "project:deploy:cancel",
512
+ "deploy:project:cancel",
513
+ "deploy:cancel:project",
514
+ "project:cancel:deploy",
515
+ "cancel:project:deploy",
516
+ "cancel:deploy:project"
626
517
  ]
627
518
  },
628
- "project:delete:tracking": {
519
+ "project:deploy:preview": {
629
520
  "aliases": [
630
- "force:source:tracking:clear"
521
+ "deploy:metadata:preview"
631
522
  ],
632
523
  "args": {},
633
524
  "deprecateAliases": true,
634
- "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.",
525
+ "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 --source-dir.",
635
526
  "examples": [
636
- "Delete local source tracking for the org with alias \"my-scratch\":\n$ <%= config.bin %> <%= command.id %> --target-org my-scratch"
527
+ "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.",
528
+ "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",
529
+ "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",
530
+ "Preview deployment of a specific Apex class:\n<%= config.bin %> <%= command.id %> --metadata ApexClass:MyApexClass",
531
+ "Preview deployment of all components listed in a manifest:\n<%= config.bin %> <%= command.id %> --manifest path/to/package.xml"
637
532
  ],
638
533
  "flags": {
639
534
  "json": {
@@ -651,34 +546,54 @@
651
546
  "multiple": false,
652
547
  "type": "option"
653
548
  },
654
- "api-version": {
655
- "aliases": [
656
- "apiversion"
549
+ "ignore-conflicts": {
550
+ "char": "c",
551
+ "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.",
552
+ "name": "ignore-conflicts",
553
+ "summary": "Don't display conflicts in preview of the deployment.",
554
+ "allowNo": false,
555
+ "type": "boolean"
556
+ },
557
+ "manifest": {
558
+ "char": "x",
559
+ "description": "All child components are included. If you specify this flag, don’t specify --metadata or --source-dir.",
560
+ "exclusive": [
561
+ "source-dir",
562
+ "metadata"
657
563
  ],
658
- "deprecateAliases": true,
659
- "description": "Override the api version used for api requests made by this command",
660
- "name": "api-version",
564
+ "name": "manifest",
565
+ "summary": "Full file path for manifest (package.xml) of components to preview.",
661
566
  "hasDynamicHelp": false,
662
567
  "multiple": false,
663
568
  "type": "option"
664
569
  },
665
- "loglevel": {
666
- "deprecated": {
667
- "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."
668
- },
669
- "hidden": true,
670
- "name": "loglevel",
570
+ "metadata": {
571
+ "char": "m",
572
+ "exclusive": [
573
+ "manifest",
574
+ "source-dir"
575
+ ],
576
+ "name": "metadata",
577
+ "summary": "Metadata component names to preview.",
671
578
  "hasDynamicHelp": false,
672
- "multiple": false,
579
+ "multiple": true,
673
580
  "type": "option"
674
581
  },
675
- "target-org": {
676
- "aliases": [
677
- "targetusername",
678
- "u"
582
+ "source-dir": {
583
+ "char": "d",
584
+ "description": "The supplied path can be to a single file (in which case the operation is applied to only one file) or to a folder (in which case the operation is applied to all metadata types in the directory and its subdirectories).\n\nIf you specify this flag, don’t specify --metadata or --manifest.",
585
+ "exclusive": [
586
+ "manifest",
587
+ "metadata"
679
588
  ],
589
+ "name": "source-dir",
590
+ "summary": "Path to the local source files to preview.",
591
+ "hasDynamicHelp": false,
592
+ "multiple": true,
593
+ "type": "option"
594
+ },
595
+ "target-org": {
680
596
  "char": "o",
681
- "deprecateAliases": true,
682
597
  "name": "target-org",
683
598
  "noCacheDefault": true,
684
599
  "required": true,
@@ -687,26 +602,21 @@
687
602
  "multiple": false,
688
603
  "type": "option"
689
604
  },
690
- "no-prompt": {
691
- "aliases": [
692
- "noprompt"
693
- ],
694
- "char": "p",
695
- "deprecateAliases": true,
696
- "name": "no-prompt",
697
- "summary": "Don't prompt for source tracking override confirmation.",
605
+ "concise": {
606
+ "name": "concise",
607
+ "summary": "Show only the changes that will be deployed; omits files that are forceignored.",
698
608
  "allowNo": false,
699
609
  "type": "boolean"
700
610
  }
701
611
  },
702
612
  "hasDynamicHelp": true,
703
613
  "hiddenAliases": [],
704
- "id": "project:delete:tracking",
614
+ "id": "project:deploy:preview",
705
615
  "pluginAlias": "@salesforce/plugin-deploy-retrieve",
706
616
  "pluginName": "@salesforce/plugin-deploy-retrieve",
707
617
  "pluginType": "core",
708
618
  "strict": true,
709
- "summary": "Delete all local source tracking information.",
619
+ "summary": "Preview a deployment to see what will deploy to the org, the potential conflicts, and the ignored files.",
710
620
  "enableJsonFlag": true,
711
621
  "requiresProject": true,
712
622
  "isESM": true,
@@ -714,55 +624,36 @@
714
624
  "lib",
715
625
  "commands",
716
626
  "project",
717
- "delete",
718
- "tracking.js"
627
+ "deploy",
628
+ "preview.js"
719
629
  ],
720
630
  "aliasPermutations": [
721
- "force:source:tracking:clear",
722
- "source:force:tracking:clear",
723
- "source:tracking:force:clear",
724
- "source:tracking:clear:force",
725
- "force:tracking:source:clear",
726
- "tracking:force:source:clear",
727
- "tracking:source:force:clear",
728
- "tracking:source:clear:force",
729
- "force:tracking:clear:source",
730
- "tracking:force:clear:source",
731
- "tracking:clear:force:source",
732
- "tracking:clear:source:force",
733
- "force:source:clear:tracking",
734
- "source:force:clear:tracking",
735
- "source:clear:force:tracking",
736
- "source:clear:tracking:force",
737
- "force:clear:source:tracking",
738
- "clear:force:source:tracking",
739
- "clear:source:force:tracking",
740
- "clear:source:tracking:force",
741
- "force:clear:tracking:source",
742
- "clear:force:tracking:source",
743
- "clear:tracking:force:source",
744
- "clear:tracking:source:force"
631
+ "deploy:metadata:preview",
632
+ "metadata:deploy:preview",
633
+ "metadata:preview:deploy",
634
+ "deploy:preview:metadata",
635
+ "preview:deploy:metadata",
636
+ "preview:metadata:deploy"
745
637
  ],
746
638
  "permutations": [
747
- "project:delete:tracking",
748
- "delete:project:tracking",
749
- "delete:tracking:project",
750
- "project:tracking:delete",
751
- "tracking:project:delete",
752
- "tracking:delete:project"
639
+ "project:deploy:preview",
640
+ "deploy:project:preview",
641
+ "deploy:preview:project",
642
+ "project:preview:deploy",
643
+ "preview:project:deploy",
644
+ "preview:deploy:project"
753
645
  ]
754
646
  },
755
- "project:list:ignored": {
647
+ "project:deploy:quick": {
756
648
  "aliases": [
757
- "force:source:ignored:list"
649
+ "deploy:metadata:quick"
758
650
  ],
759
651
  "args": {},
760
652
  "deprecateAliases": true,
761
- "description": "When deploying or retrieving metadata between your local project and an org, you can specify the source files you want to exclude with a .forceignore file. The .forceignore file structure mimics the .gitignore structure. Each line in .forceignore specifies a pattern that corresponds to one or more files. The files typically represent metadata components, but can be any files you want to exclude, such as LWC configuration JSON files or tests.",
653
+ "description": "Before you run this command, first create a validated deployment with the \"<%= config.bin %> project deploy validate\" command, which returns a job ID. Validated deployments haven't been deployed to the org yet; you deploy them with this command. Either pass the job ID to this command or use the --use-most-recent flag to use the job ID of the most recently validated deployment. For the quick deploy to succeed, the associated validated deployment must also have succeeded.\n\nExecuting this quick deploy command takes less time than a standard deploy because it skips running Apex tests. These tests were previously run as part of the validation. Validating first and then running a quick deploy is useful if the deployment to your production org take several hours and you don’t want to risk a failed deploy.\n\nThis command doesn't support source-tracking. The source you deploy overwrites the corresponding metadata in your org. This command doesn’t attempt to merge your source with the versions in your org.\n\nNote: Don't use this command on sandboxes; the command is intended to be used on production orgs. By default, sandboxes don't run tests during a deploy. Use \"<%= config.bin %> project deploy start\" instead.",
762
654
  "examples": [
763
- "List all the files in all package directories that are ignored:\n<%= config.bin %> <%= command.id %>",
764
- "List all the files in a specific directory that are ignored:\n<%= config.bin %> <%= command.id %> --source-dir force-app",
765
- "Check if a particular file is ignored:\n<%= config.bin %> <%= command.id %> --source-dir package.xml"
655
+ "Run a quick deploy to your default org using a job ID:\n<%= config.bin %> <%= command.id %> --job-id 0Af0x000017yLUFCA2",
656
+ "Asynchronously run a quick deploy of the most recently validated deployment to an org with alias \"my-prod-org\":\n<%= config.bin %> <%= command.id %> --async --use-most-recent --target-org my-prod-org"
766
657
  ],
767
658
  "flags": {
768
659
  "json": {
@@ -780,95 +671,30 @@
780
671
  "multiple": false,
781
672
  "type": "option"
782
673
  },
783
- "source-dir": {
784
- "aliases": [
785
- "sourcepath"
674
+ "async": {
675
+ "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\".",
676
+ "exclusive": [
677
+ "wait"
786
678
  ],
787
- "char": "p",
788
- "deprecateAliases": true,
789
- "name": "source-dir",
790
- "summary": "File or directory of files that the command checks for foreceignored files.",
791
- "hasDynamicHelp": false,
792
- "multiple": false,
793
- "type": "option"
794
- }
795
- },
796
- "hasDynamicHelp": false,
797
- "hiddenAliases": [],
798
- "id": "project:list:ignored",
799
- "pluginAlias": "@salesforce/plugin-deploy-retrieve",
800
- "pluginName": "@salesforce/plugin-deploy-retrieve",
801
- "pluginType": "core",
802
- "strict": true,
803
- "summary": "Check your local project package directories for forceignored files.",
804
- "enableJsonFlag": true,
805
- "requiresProject": true,
806
- "isESM": true,
807
- "relativePath": [
808
- "lib",
809
- "commands",
810
- "project",
811
- "list",
812
- "ignored.js"
813
- ],
814
- "aliasPermutations": [
815
- "force:source:ignored:list",
816
- "source:force:ignored:list",
817
- "source:ignored:force:list",
818
- "source:ignored:list:force",
819
- "force:ignored:source:list",
820
- "ignored:force:source:list",
821
- "ignored:source:force:list",
822
- "ignored:source:list:force",
823
- "force:ignored:list:source",
824
- "ignored:force:list:source",
825
- "ignored:list:force:source",
826
- "ignored:list:source:force",
827
- "force:source:list:ignored",
828
- "source:force:list:ignored",
829
- "source:list:force:ignored",
830
- "source:list:ignored:force",
831
- "force:list:source:ignored",
832
- "list:force:source:ignored",
833
- "list:source:force:ignored",
834
- "list:source:ignored:force",
835
- "force:list:ignored:source",
836
- "list:force:ignored:source",
837
- "list:ignored:force:source",
838
- "list:ignored:source:force"
839
- ],
840
- "permutations": [
841
- "project:list:ignored",
842
- "list:project:ignored",
843
- "list:ignored:project",
844
- "project:ignored:list",
845
- "ignored:project:list",
846
- "ignored:list:project"
847
- ]
848
- },
849
- "project:deploy:cancel": {
850
- "aliases": [
851
- "deploy:metadata:cancel"
852
- ],
853
- "args": {},
854
- "deprecateAliases": true,
855
- "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.",
856
- "examples": [
857
- "Cancel a deploy operation using a job ID:\n<%= config.bin %> <%= command.id %> --job-id 0Af0x000017yLUFCA2",
858
- "Cancel the most recent deploy operation:\n<%= config.bin %> <%= command.id %> --use-most-recent"
859
- ],
860
- "flags": {
861
- "json": {
862
- "description": "Format output as json.",
863
- "helpGroup": "GLOBAL",
864
- "name": "json",
679
+ "name": "async",
680
+ "summary": "Run the command asynchronously.",
865
681
  "allowNo": false,
866
682
  "type": "boolean"
867
683
  },
868
- "flags-dir": {
869
- "helpGroup": "GLOBAL",
870
- "name": "flags-dir",
871
- "summary": "Import flag values from a directory.",
684
+ "concise": {
685
+ "exclusive": [
686
+ "verbose"
687
+ ],
688
+ "name": "concise",
689
+ "summary": "Show concise output of the deploy result.",
690
+ "allowNo": false,
691
+ "type": "boolean"
692
+ },
693
+ "job-id": {
694
+ "char": "i",
695
+ "description": "The job ID is valid for 10 days from when you started the validation.",
696
+ "name": "job-id",
697
+ "summary": "Job ID of the deployment you want to quick deploy.",
872
698
  "hasDynamicHelp": false,
873
699
  "multiple": false,
874
700
  "type": "option"
@@ -882,322 +708,55 @@
882
708
  "multiple": false,
883
709
  "type": "option"
884
710
  },
885
- "async": {
886
- "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\".",
887
- "exclusive": [
888
- "wait"
889
- ],
890
- "name": "async",
891
- "summary": "Run the command asynchronously.",
892
- "allowNo": false,
893
- "type": "boolean"
894
- },
895
- "job-id": {
896
- "char": "i",
897
- "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.",
898
- "name": "job-id",
899
- "summary": "Job ID of the deploy operation you want to cancel.",
900
- "hasDynamicHelp": false,
901
- "multiple": false,
902
- "type": "option"
903
- },
904
711
  "use-most-recent": {
905
712
  "char": "r",
906
- "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.",
713
+ "description": "For performance reasons, this flag uses only job IDs that were validated in the past 3 days or less. If your most recent deployment validation was more than 3 days ago, this flag won't find a job ID.",
907
714
  "name": "use-most-recent",
908
- "summary": "Use the job ID of the most recent deploy operation.",
715
+ "summary": "Use the job ID of the most recently validated deployment.",
716
+ "allowNo": false,
717
+ "type": "boolean"
718
+ },
719
+ "verbose": {
720
+ "exclusive": [
721
+ "concise"
722
+ ],
723
+ "name": "verbose",
724
+ "summary": "Show verbose output of the deploy result.",
909
725
  "allowNo": false,
910
726
  "type": "boolean"
911
727
  },
912
728
  "wait": {
913
729
  "char": "w",
914
- "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\".",
730
+ "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, run \"<%= config.bin %> project deploy resume\". To check the status of the deploy, run \"<%= config.bin %> project deploy report\".",
915
731
  "exclusive": [
916
732
  "async"
917
733
  ],
918
734
  "name": "wait",
919
735
  "summary": "Number of minutes to wait for the command to complete and display results.",
736
+ "default": "33 minutes",
920
737
  "hasDynamicHelp": true,
921
738
  "helpValue": "<minutes>",
922
739
  "multiple": false,
923
740
  "type": "option"
741
+ },
742
+ "api-version": {
743
+ "char": "a",
744
+ "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.",
745
+ "name": "api-version",
746
+ "summary": "Target API version for the deploy.",
747
+ "hasDynamicHelp": false,
748
+ "multiple": false,
749
+ "type": "option"
924
750
  }
925
751
  },
926
752
  "hasDynamicHelp": true,
927
753
  "hiddenAliases": [],
928
- "id": "project:deploy:cancel",
754
+ "id": "project:deploy:quick",
929
755
  "pluginAlias": "@salesforce/plugin-deploy-retrieve",
930
756
  "pluginName": "@salesforce/plugin-deploy-retrieve",
931
757
  "pluginType": "core",
932
758
  "strict": true,
933
- "summary": "Cancel a deploy operation.",
934
- "enableJsonFlag": true,
935
- "isESM": true,
936
- "relativePath": [
937
- "lib",
938
- "commands",
939
- "project",
940
- "deploy",
941
- "cancel.js"
942
- ],
943
- "aliasPermutations": [
944
- "deploy:metadata:cancel",
945
- "metadata:deploy:cancel",
946
- "metadata:cancel:deploy",
947
- "deploy:cancel:metadata",
948
- "cancel:deploy:metadata",
949
- "cancel:metadata:deploy"
950
- ],
951
- "permutations": [
952
- "project:deploy:cancel",
953
- "deploy:project:cancel",
954
- "deploy:cancel:project",
955
- "project:cancel:deploy",
956
- "cancel:project:deploy",
957
- "cancel:deploy:project"
958
- ]
959
- },
960
- "project:deploy:preview": {
961
- "aliases": [
962
- "deploy:metadata:preview"
963
- ],
964
- "args": {},
965
- "deprecateAliases": true,
966
- "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 --source-dir.",
967
- "examples": [
968
- "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.",
969
- "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",
970
- "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",
971
- "Preview deployment of a specific Apex class:\n<%= config.bin %> <%= command.id %> --metadata ApexClass:MyApexClass",
972
- "Preview deployment of all components listed in a manifest:\n<%= config.bin %> <%= command.id %> --manifest path/to/package.xml"
973
- ],
974
- "flags": {
975
- "json": {
976
- "description": "Format output as json.",
977
- "helpGroup": "GLOBAL",
978
- "name": "json",
979
- "allowNo": false,
980
- "type": "boolean"
981
- },
982
- "flags-dir": {
983
- "helpGroup": "GLOBAL",
984
- "name": "flags-dir",
985
- "summary": "Import flag values from a directory.",
986
- "hasDynamicHelp": false,
987
- "multiple": false,
988
- "type": "option"
989
- },
990
- "ignore-conflicts": {
991
- "char": "c",
992
- "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.",
993
- "name": "ignore-conflicts",
994
- "summary": "Don't display conflicts in preview of the deployment.",
995
- "allowNo": false,
996
- "type": "boolean"
997
- },
998
- "manifest": {
999
- "char": "x",
1000
- "description": "All child components are included. If you specify this flag, don’t specify --metadata or --source-dir.",
1001
- "exclusive": [
1002
- "source-dir",
1003
- "metadata"
1004
- ],
1005
- "name": "manifest",
1006
- "summary": "Full file path for manifest (package.xml) of components to preview.",
1007
- "hasDynamicHelp": false,
1008
- "multiple": false,
1009
- "type": "option"
1010
- },
1011
- "metadata": {
1012
- "char": "m",
1013
- "exclusive": [
1014
- "manifest",
1015
- "source-dir"
1016
- ],
1017
- "name": "metadata",
1018
- "summary": "Metadata component names to preview.",
1019
- "hasDynamicHelp": false,
1020
- "multiple": true,
1021
- "type": "option"
1022
- },
1023
- "source-dir": {
1024
- "char": "d",
1025
- "description": "The supplied path can be to a single file (in which case the operation is applied to only one file) or to a folder (in which case the operation is applied to all metadata types in the directory and its subdirectories).\n\nIf you specify this flag, don’t specify --metadata or --manifest.",
1026
- "exclusive": [
1027
- "manifest",
1028
- "metadata"
1029
- ],
1030
- "name": "source-dir",
1031
- "summary": "Path to the local source files to preview.",
1032
- "hasDynamicHelp": false,
1033
- "multiple": true,
1034
- "type": "option"
1035
- },
1036
- "target-org": {
1037
- "char": "o",
1038
- "name": "target-org",
1039
- "noCacheDefault": true,
1040
- "required": true,
1041
- "summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
1042
- "hasDynamicHelp": true,
1043
- "multiple": false,
1044
- "type": "option"
1045
- },
1046
- "concise": {
1047
- "name": "concise",
1048
- "summary": "Show only the changes that will be deployed; omits files that are forceignored.",
1049
- "allowNo": false,
1050
- "type": "boolean"
1051
- }
1052
- },
1053
- "hasDynamicHelp": true,
1054
- "hiddenAliases": [],
1055
- "id": "project:deploy:preview",
1056
- "pluginAlias": "@salesforce/plugin-deploy-retrieve",
1057
- "pluginName": "@salesforce/plugin-deploy-retrieve",
1058
- "pluginType": "core",
1059
- "strict": true,
1060
- "summary": "Preview a deployment to see what will deploy to the org, the potential conflicts, and the ignored files.",
1061
- "enableJsonFlag": true,
1062
- "requiresProject": true,
1063
- "isESM": true,
1064
- "relativePath": [
1065
- "lib",
1066
- "commands",
1067
- "project",
1068
- "deploy",
1069
- "preview.js"
1070
- ],
1071
- "aliasPermutations": [
1072
- "deploy:metadata:preview",
1073
- "metadata:deploy:preview",
1074
- "metadata:preview:deploy",
1075
- "deploy:preview:metadata",
1076
- "preview:deploy:metadata",
1077
- "preview:metadata:deploy"
1078
- ],
1079
- "permutations": [
1080
- "project:deploy:preview",
1081
- "deploy:project:preview",
1082
- "deploy:preview:project",
1083
- "project:preview:deploy",
1084
- "preview:project:deploy",
1085
- "preview:deploy:project"
1086
- ]
1087
- },
1088
- "project:deploy:quick": {
1089
- "aliases": [
1090
- "deploy:metadata:quick"
1091
- ],
1092
- "args": {},
1093
- "deprecateAliases": true,
1094
- "description": "Before you run this command, first create a validated deployment with the \"<%= config.bin %> project deploy validate\" command, which returns a job ID. Validated deployments haven't been deployed to the org yet; you deploy them with this command. Either pass the job ID to this command or use the --use-most-recent flag to use the job ID of the most recently validated deployment. For the quick deploy to succeed, the associated validated deployment must also have succeeded.\n\nExecuting this quick deploy command takes less time than a standard deploy because it skips running Apex tests. These tests were previously run as part of the validation. Validating first and then running a quick deploy is useful if the deployment to your production org take several hours and you don’t want to risk a failed deploy.\n\nThis command doesn't support source-tracking. The source you deploy overwrites the corresponding metadata in your org. This command doesn’t attempt to merge your source with the versions in your org.\n\nNote: Don't use this command on sandboxes; the command is intended to be used on production orgs. By default, sandboxes don't run tests during a deploy. Use \"<%= config.bin %> project deploy start\" instead.",
1095
- "examples": [
1096
- "Run a quick deploy to your default org using a job ID:\n<%= config.bin %> <%= command.id %> --job-id 0Af0x000017yLUFCA2",
1097
- "Asynchronously run a quick deploy of the most recently validated deployment to an org with alias \"my-prod-org\":\n<%= config.bin %> <%= command.id %> --async --use-most-recent --target-org my-prod-org"
1098
- ],
1099
- "flags": {
1100
- "json": {
1101
- "description": "Format output as json.",
1102
- "helpGroup": "GLOBAL",
1103
- "name": "json",
1104
- "allowNo": false,
1105
- "type": "boolean"
1106
- },
1107
- "flags-dir": {
1108
- "helpGroup": "GLOBAL",
1109
- "name": "flags-dir",
1110
- "summary": "Import flag values from a directory.",
1111
- "hasDynamicHelp": false,
1112
- "multiple": false,
1113
- "type": "option"
1114
- },
1115
- "async": {
1116
- "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\".",
1117
- "exclusive": [
1118
- "wait"
1119
- ],
1120
- "name": "async",
1121
- "summary": "Run the command asynchronously.",
1122
- "allowNo": false,
1123
- "type": "boolean"
1124
- },
1125
- "concise": {
1126
- "exclusive": [
1127
- "verbose"
1128
- ],
1129
- "name": "concise",
1130
- "summary": "Show concise output of the deploy result.",
1131
- "allowNo": false,
1132
- "type": "boolean"
1133
- },
1134
- "job-id": {
1135
- "char": "i",
1136
- "description": "The job ID is valid for 10 days from when you started the validation.",
1137
- "name": "job-id",
1138
- "summary": "Job ID of the deployment you want to quick deploy.",
1139
- "hasDynamicHelp": false,
1140
- "multiple": false,
1141
- "type": "option"
1142
- },
1143
- "target-org": {
1144
- "char": "o",
1145
- "name": "target-org",
1146
- "noCacheDefault": true,
1147
- "summary": "Username or alias of the target org.",
1148
- "hasDynamicHelp": true,
1149
- "multiple": false,
1150
- "type": "option"
1151
- },
1152
- "use-most-recent": {
1153
- "char": "r",
1154
- "description": "For performance reasons, this flag uses only job IDs that were validated in the past 3 days or less. If your most recent deployment validation was more than 3 days ago, this flag won't find a job ID.",
1155
- "name": "use-most-recent",
1156
- "summary": "Use the job ID of the most recently validated deployment.",
1157
- "allowNo": false,
1158
- "type": "boolean"
1159
- },
1160
- "verbose": {
1161
- "exclusive": [
1162
- "concise"
1163
- ],
1164
- "name": "verbose",
1165
- "summary": "Show verbose output of the deploy result.",
1166
- "allowNo": false,
1167
- "type": "boolean"
1168
- },
1169
- "wait": {
1170
- "char": "w",
1171
- "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, run \"<%= config.bin %> project deploy resume\". To check the status of the deploy, run \"<%= config.bin %> project deploy report\".",
1172
- "exclusive": [
1173
- "async"
1174
- ],
1175
- "name": "wait",
1176
- "summary": "Number of minutes to wait for the command to complete and display results.",
1177
- "default": "33 minutes",
1178
- "hasDynamicHelp": true,
1179
- "helpValue": "<minutes>",
1180
- "multiple": false,
1181
- "type": "option"
1182
- },
1183
- "api-version": {
1184
- "char": "a",
1185
- "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.",
1186
- "name": "api-version",
1187
- "summary": "Target API version for the deploy.",
1188
- "hasDynamicHelp": false,
1189
- "multiple": false,
1190
- "type": "option"
1191
- }
1192
- },
1193
- "hasDynamicHelp": true,
1194
- "hiddenAliases": [],
1195
- "id": "project:deploy:quick",
1196
- "pluginAlias": "@salesforce/plugin-deploy-retrieve",
1197
- "pluginName": "@salesforce/plugin-deploy-retrieve",
1198
- "pluginType": "core",
1199
- "strict": true,
1200
- "summary": "Quickly deploy a validated deployment to an org.",
759
+ "summary": "Quickly deploy a validated deployment to an org.",
1201
760
  "enableJsonFlag": true,
1202
761
  "errorCodes": {
1203
762
  "header": "ERROR CODES",
@@ -2569,6 +2128,447 @@
2569
2128
  "manifest:generate:project"
2570
2129
  ]
2571
2130
  },
2131
+ "project:delete:source": {
2132
+ "aliases": [
2133
+ "force:source:delete"
2134
+ ],
2135
+ "args": {},
2136
+ "deprecateAliases": true,
2137
+ "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 --source-dir.",
2138
+ "examples": [
2139
+ "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",
2140
+ "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",
2141
+ "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",
2142
+ "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"
2143
+ ],
2144
+ "flags": {
2145
+ "json": {
2146
+ "description": "Format output as json.",
2147
+ "helpGroup": "GLOBAL",
2148
+ "name": "json",
2149
+ "allowNo": false,
2150
+ "type": "boolean"
2151
+ },
2152
+ "flags-dir": {
2153
+ "helpGroup": "GLOBAL",
2154
+ "name": "flags-dir",
2155
+ "summary": "Import flag values from a directory.",
2156
+ "hasDynamicHelp": false,
2157
+ "multiple": false,
2158
+ "type": "option"
2159
+ },
2160
+ "api-version": {
2161
+ "aliases": [
2162
+ "apiversion"
2163
+ ],
2164
+ "deprecateAliases": true,
2165
+ "description": "Override the api version used for api requests made by this command",
2166
+ "name": "api-version",
2167
+ "hasDynamicHelp": false,
2168
+ "multiple": false,
2169
+ "type": "option"
2170
+ },
2171
+ "loglevel": {
2172
+ "deprecated": {
2173
+ "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."
2174
+ },
2175
+ "hidden": true,
2176
+ "name": "loglevel",
2177
+ "hasDynamicHelp": false,
2178
+ "multiple": false,
2179
+ "type": "option"
2180
+ },
2181
+ "target-org": {
2182
+ "aliases": [
2183
+ "targetusername",
2184
+ "u"
2185
+ ],
2186
+ "char": "o",
2187
+ "deprecateAliases": true,
2188
+ "name": "target-org",
2189
+ "noCacheDefault": true,
2190
+ "required": true,
2191
+ "summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
2192
+ "hasDynamicHelp": true,
2193
+ "multiple": false,
2194
+ "type": "option"
2195
+ },
2196
+ "check-only": {
2197
+ "aliases": [
2198
+ "checkonly"
2199
+ ],
2200
+ "char": "c",
2201
+ "deprecateAliases": true,
2202
+ "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 --check-only flag 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.",
2203
+ "name": "check-only",
2204
+ "summary": "Validate delete command but don't delete anything from the org or the local project.",
2205
+ "allowNo": false,
2206
+ "type": "boolean"
2207
+ },
2208
+ "wait": {
2209
+ "char": "w",
2210
+ "description": "If the command continues to run after the wait period, the CLI returns control of the terminal window to you.",
2211
+ "name": "wait",
2212
+ "summary": "Number of minutes to wait for the command to finish.",
2213
+ "hasDynamicHelp": true,
2214
+ "multiple": false,
2215
+ "type": "option"
2216
+ },
2217
+ "tests": {
2218
+ "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\"",
2219
+ "helpGroup": "Test",
2220
+ "name": "tests",
2221
+ "summary": "Apex tests to run when --test-level is RunSpecifiedTests.",
2222
+ "hasDynamicHelp": false,
2223
+ "multiple": true,
2224
+ "type": "option"
2225
+ },
2226
+ "test-level": {
2227
+ "aliases": [
2228
+ "testlevel"
2229
+ ],
2230
+ "char": "l",
2231
+ "deprecateAliases": true,
2232
+ "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.",
2233
+ "helpGroup": "Test",
2234
+ "name": "test-level",
2235
+ "summary": "Deployment Apex testing level.",
2236
+ "hasDynamicHelp": false,
2237
+ "multiple": false,
2238
+ "options": [
2239
+ "NoTestRun",
2240
+ "RunSpecifiedTests",
2241
+ "RunLocalTests",
2242
+ "RunAllTestsInOrg"
2243
+ ],
2244
+ "type": "option"
2245
+ },
2246
+ "no-prompt": {
2247
+ "aliases": [
2248
+ "noprompt"
2249
+ ],
2250
+ "char": "r",
2251
+ "deprecateAliases": true,
2252
+ "name": "no-prompt",
2253
+ "summary": "Don't prompt for delete confirmation.",
2254
+ "allowNo": false,
2255
+ "type": "boolean"
2256
+ },
2257
+ "metadata": {
2258
+ "char": "m",
2259
+ "description": "If you specify this flag, don’t specify --source-dir.",
2260
+ "name": "metadata",
2261
+ "summary": "Metadata components to delete.",
2262
+ "delimiter": ",",
2263
+ "hasDynamicHelp": false,
2264
+ "multiple": true,
2265
+ "type": "option"
2266
+ },
2267
+ "source-dir": {
2268
+ "aliases": [
2269
+ "sourcepath"
2270
+ ],
2271
+ "char": "p",
2272
+ "deprecateAliases": true,
2273
+ "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 flag, don’t specify --metadata.",
2274
+ "name": "source-dir",
2275
+ "summary": "Source file paths to delete.",
2276
+ "delimiter": ",",
2277
+ "hasDynamicHelp": false,
2278
+ "multiple": true,
2279
+ "type": "option"
2280
+ },
2281
+ "track-source": {
2282
+ "aliases": [
2283
+ "tracksource"
2284
+ ],
2285
+ "char": "t",
2286
+ "deprecateAliases": true,
2287
+ "exclusive": [
2288
+ "check-only"
2289
+ ],
2290
+ "name": "track-source",
2291
+ "summary": "If the delete succeeds, update the source tracking information.",
2292
+ "allowNo": false,
2293
+ "type": "boolean"
2294
+ },
2295
+ "force-overwrite": {
2296
+ "aliases": [
2297
+ "forceoverwrite"
2298
+ ],
2299
+ "char": "f",
2300
+ "dependsOn": [
2301
+ "track-source"
2302
+ ],
2303
+ "deprecateAliases": true,
2304
+ "name": "force-overwrite",
2305
+ "summary": "Ignore conflict warnings and overwrite changes to the org.",
2306
+ "allowNo": false,
2307
+ "type": "boolean"
2308
+ },
2309
+ "verbose": {
2310
+ "name": "verbose",
2311
+ "summary": "Verbose output of the delete result.",
2312
+ "allowNo": false,
2313
+ "type": "boolean"
2314
+ }
2315
+ },
2316
+ "hasDynamicHelp": true,
2317
+ "hiddenAliases": [],
2318
+ "id": "project:delete:source",
2319
+ "pluginAlias": "@salesforce/plugin-deploy-retrieve",
2320
+ "pluginName": "@salesforce/plugin-deploy-retrieve",
2321
+ "pluginType": "core",
2322
+ "strict": true,
2323
+ "summary": "Delete source from your project and from a non-source-tracked org.",
2324
+ "enableJsonFlag": true,
2325
+ "requiresProject": true,
2326
+ "isESM": true,
2327
+ "relativePath": [
2328
+ "lib",
2329
+ "commands",
2330
+ "project",
2331
+ "delete",
2332
+ "source.js"
2333
+ ],
2334
+ "aliasPermutations": [
2335
+ "force:source:delete",
2336
+ "source:force:delete",
2337
+ "source:delete:force",
2338
+ "force:delete:source",
2339
+ "delete:force:source",
2340
+ "delete:source:force"
2341
+ ],
2342
+ "permutations": [
2343
+ "project:delete:source",
2344
+ "delete:project:source",
2345
+ "delete:source:project",
2346
+ "project:source:delete",
2347
+ "source:project:delete",
2348
+ "source:delete:project"
2349
+ ]
2350
+ },
2351
+ "project:delete:tracking": {
2352
+ "aliases": [
2353
+ "force:source:tracking:clear"
2354
+ ],
2355
+ "args": {},
2356
+ "deprecateAliases": true,
2357
+ "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.",
2358
+ "examples": [
2359
+ "Delete local source tracking for the org with alias \"my-scratch\":\n$ <%= config.bin %> <%= command.id %> --target-org my-scratch"
2360
+ ],
2361
+ "flags": {
2362
+ "json": {
2363
+ "description": "Format output as json.",
2364
+ "helpGroup": "GLOBAL",
2365
+ "name": "json",
2366
+ "allowNo": false,
2367
+ "type": "boolean"
2368
+ },
2369
+ "flags-dir": {
2370
+ "helpGroup": "GLOBAL",
2371
+ "name": "flags-dir",
2372
+ "summary": "Import flag values from a directory.",
2373
+ "hasDynamicHelp": false,
2374
+ "multiple": false,
2375
+ "type": "option"
2376
+ },
2377
+ "api-version": {
2378
+ "aliases": [
2379
+ "apiversion"
2380
+ ],
2381
+ "deprecateAliases": true,
2382
+ "description": "Override the api version used for api requests made by this command",
2383
+ "name": "api-version",
2384
+ "hasDynamicHelp": false,
2385
+ "multiple": false,
2386
+ "type": "option"
2387
+ },
2388
+ "loglevel": {
2389
+ "deprecated": {
2390
+ "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."
2391
+ },
2392
+ "hidden": true,
2393
+ "name": "loglevel",
2394
+ "hasDynamicHelp": false,
2395
+ "multiple": false,
2396
+ "type": "option"
2397
+ },
2398
+ "target-org": {
2399
+ "aliases": [
2400
+ "targetusername",
2401
+ "u"
2402
+ ],
2403
+ "char": "o",
2404
+ "deprecateAliases": true,
2405
+ "name": "target-org",
2406
+ "noCacheDefault": true,
2407
+ "required": true,
2408
+ "summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
2409
+ "hasDynamicHelp": true,
2410
+ "multiple": false,
2411
+ "type": "option"
2412
+ },
2413
+ "no-prompt": {
2414
+ "aliases": [
2415
+ "noprompt"
2416
+ ],
2417
+ "char": "p",
2418
+ "deprecateAliases": true,
2419
+ "name": "no-prompt",
2420
+ "summary": "Don't prompt for source tracking override confirmation.",
2421
+ "allowNo": false,
2422
+ "type": "boolean"
2423
+ }
2424
+ },
2425
+ "hasDynamicHelp": true,
2426
+ "hiddenAliases": [],
2427
+ "id": "project:delete:tracking",
2428
+ "pluginAlias": "@salesforce/plugin-deploy-retrieve",
2429
+ "pluginName": "@salesforce/plugin-deploy-retrieve",
2430
+ "pluginType": "core",
2431
+ "strict": true,
2432
+ "summary": "Delete all local source tracking information.",
2433
+ "enableJsonFlag": true,
2434
+ "requiresProject": true,
2435
+ "isESM": true,
2436
+ "relativePath": [
2437
+ "lib",
2438
+ "commands",
2439
+ "project",
2440
+ "delete",
2441
+ "tracking.js"
2442
+ ],
2443
+ "aliasPermutations": [
2444
+ "force:source:tracking:clear",
2445
+ "source:force:tracking:clear",
2446
+ "source:tracking:force:clear",
2447
+ "source:tracking:clear:force",
2448
+ "force:tracking:source:clear",
2449
+ "tracking:force:source:clear",
2450
+ "tracking:source:force:clear",
2451
+ "tracking:source:clear:force",
2452
+ "force:tracking:clear:source",
2453
+ "tracking:force:clear:source",
2454
+ "tracking:clear:force:source",
2455
+ "tracking:clear:source:force",
2456
+ "force:source:clear:tracking",
2457
+ "source:force:clear:tracking",
2458
+ "source:clear:force:tracking",
2459
+ "source:clear:tracking:force",
2460
+ "force:clear:source:tracking",
2461
+ "clear:force:source:tracking",
2462
+ "clear:source:force:tracking",
2463
+ "clear:source:tracking:force",
2464
+ "force:clear:tracking:source",
2465
+ "clear:force:tracking:source",
2466
+ "clear:tracking:force:source",
2467
+ "clear:tracking:source:force"
2468
+ ],
2469
+ "permutations": [
2470
+ "project:delete:tracking",
2471
+ "delete:project:tracking",
2472
+ "delete:tracking:project",
2473
+ "project:tracking:delete",
2474
+ "tracking:project:delete",
2475
+ "tracking:delete:project"
2476
+ ]
2477
+ },
2478
+ "project:list:ignored": {
2479
+ "aliases": [
2480
+ "force:source:ignored:list"
2481
+ ],
2482
+ "args": {},
2483
+ "deprecateAliases": true,
2484
+ "description": "When deploying or retrieving metadata between your local project and an org, you can specify the source files you want to exclude with a .forceignore file. The .forceignore file structure mimics the .gitignore structure. Each line in .forceignore specifies a pattern that corresponds to one or more files. The files typically represent metadata components, but can be any files you want to exclude, such as LWC configuration JSON files or tests.",
2485
+ "examples": [
2486
+ "List all the files in all package directories that are ignored:\n<%= config.bin %> <%= command.id %>",
2487
+ "List all the files in a specific directory that are ignored:\n<%= config.bin %> <%= command.id %> --source-dir force-app",
2488
+ "Check if a particular file is ignored:\n<%= config.bin %> <%= command.id %> --source-dir package.xml"
2489
+ ],
2490
+ "flags": {
2491
+ "json": {
2492
+ "description": "Format output as json.",
2493
+ "helpGroup": "GLOBAL",
2494
+ "name": "json",
2495
+ "allowNo": false,
2496
+ "type": "boolean"
2497
+ },
2498
+ "flags-dir": {
2499
+ "helpGroup": "GLOBAL",
2500
+ "name": "flags-dir",
2501
+ "summary": "Import flag values from a directory.",
2502
+ "hasDynamicHelp": false,
2503
+ "multiple": false,
2504
+ "type": "option"
2505
+ },
2506
+ "source-dir": {
2507
+ "aliases": [
2508
+ "sourcepath"
2509
+ ],
2510
+ "char": "p",
2511
+ "deprecateAliases": true,
2512
+ "name": "source-dir",
2513
+ "summary": "File or directory of files that the command checks for foreceignored files.",
2514
+ "hasDynamicHelp": false,
2515
+ "multiple": false,
2516
+ "type": "option"
2517
+ }
2518
+ },
2519
+ "hasDynamicHelp": false,
2520
+ "hiddenAliases": [],
2521
+ "id": "project:list:ignored",
2522
+ "pluginAlias": "@salesforce/plugin-deploy-retrieve",
2523
+ "pluginName": "@salesforce/plugin-deploy-retrieve",
2524
+ "pluginType": "core",
2525
+ "strict": true,
2526
+ "summary": "Check your local project package directories for forceignored files.",
2527
+ "enableJsonFlag": true,
2528
+ "requiresProject": true,
2529
+ "isESM": true,
2530
+ "relativePath": [
2531
+ "lib",
2532
+ "commands",
2533
+ "project",
2534
+ "list",
2535
+ "ignored.js"
2536
+ ],
2537
+ "aliasPermutations": [
2538
+ "force:source:ignored:list",
2539
+ "source:force:ignored:list",
2540
+ "source:ignored:force:list",
2541
+ "source:ignored:list:force",
2542
+ "force:ignored:source:list",
2543
+ "ignored:force:source:list",
2544
+ "ignored:source:force:list",
2545
+ "ignored:source:list:force",
2546
+ "force:ignored:list:source",
2547
+ "ignored:force:list:source",
2548
+ "ignored:list:force:source",
2549
+ "ignored:list:source:force",
2550
+ "force:source:list:ignored",
2551
+ "source:force:list:ignored",
2552
+ "source:list:force:ignored",
2553
+ "source:list:ignored:force",
2554
+ "force:list:source:ignored",
2555
+ "list:force:source:ignored",
2556
+ "list:source:force:ignored",
2557
+ "list:source:ignored:force",
2558
+ "force:list:ignored:source",
2559
+ "list:force:ignored:source",
2560
+ "list:ignored:force:source",
2561
+ "list:ignored:source:force"
2562
+ ],
2563
+ "permutations": [
2564
+ "project:list:ignored",
2565
+ "list:project:ignored",
2566
+ "list:ignored:project",
2567
+ "project:ignored:list",
2568
+ "ignored:project:list",
2569
+ "ignored:list:project"
2570
+ ]
2571
+ },
2572
2572
  "project:reset:tracking": {
2573
2573
  "aliases": [
2574
2574
  "force:source:tracking:reset"
@@ -3051,5 +3051,5 @@
3051
3051
  ]
3052
3052
  }
3053
3053
  },
3054
- "version": "3.22.24"
3054
+ "version": "3.22.25"
3055
3055
  }