Newer Version Available
Build and Release Your App
Based on your adoption readiness, review this table for your recommended options:
| Adoption Readiness | Customers and Non-ISV Partners | ISV Partners |
|---|---|---|
| Ready to adopt a package-based development model | 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 Unlocked Packages (Generally Available) and Second-Generation Managed Packages (Beta). |
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 Unlocked Packages (Generally Available) and Second-Generation Managed Packages (Beta) |
| Not ready for a package-based development model | Change sets, or org development via Salesforce CLI For more information, see Build and Release Your App with Metadata API. |
N/A |