Newer Version Available
Build and Release Your App
Based on your adoption readiness, review this table for your recommended options:
Ready To Create Packages to Deliver Apps
| Customers and Non-ISV Partners | ISV Partners |
|---|---|
| Unlocked package An unlocked package is for customers who want to organize metadata into a package and deploy the metadata (via packages) to different orgs. Unlocked packages were previously called developer-controlled packages. For more information, see Second-Generation Managed Packages. |
First-Generation
(1GP) managed package If you are an ISV that develops apps and lists them on AppExchange, Salesforce recommends managed packages. Second-Generation (2GP) managed packages are in beta, and many ISVs are testing them in their internal development stages. However, we recommend that you continue using 1GP managed packages for customer distribution until 2GP is generally available. 2GP doesn’t yet include certain key parity features with managed packages, such as push upgrades, LMA, ability to list on AppExchange, and patch versions. For more information on 1GP managed packages, see First-Generation Managed Packages. For more information on 2GP managed packages, see Second-Generation Managed Packages |
| Change sets, or org development via Salesforce CLI | N/A |
Not Ready for Package Development
If you or your team isn’t ready for package development, you can continue to use change sets, or try to the org development model, where you deploy changes using Salesforce CLI. For more information, see Build and Release Your App with Metadata API.