Before you can validate and publish your package, create a product draft in the Publisher Portal.
To access the Publisher Portal for UPM publishing:
Go to the UPM publishing Publisher Portal through the Cloud Dashboard: 1. Go to the Cloud Dashboard. 1. Select the Products tab. 1. In the search bar, enter Publisher Portal. 1. Select Launch.
You can configure a product to handle single or multiple packages, as follows:
You can start with a single package and add more later.
When planning dependencies, use multiple packages if dependencies are only needed within one product. Dependent packages automatically install their dependencies. However, if a dependency is shared across multiple products, list it as its own separate product to avoid conflicts and project breaks. For more information about package dependencies, refer to Package dependency and resolution.
The following table compares the properties of each product structure:
| Property | Single package product | Multiple package product |
|---|---|---|
| Number of packages | One | Two or more |
| Compatibility | Compatible with multiple Unity versions, render pipelines, or build targets. | Optionally, each package can be compatible with a different Unity version, render pipelineA series of operations that take the contents of a Scene, and displays them on a screen. Unity lets you choose from pre-built render pipelines, or write your own. More info See in Glossary, or build target. |
| Version history | Single version history. | Separate version history for each package. |
| Support dependency | No | Yes |
| Architecture | Monolithic. All features bundled together. | Can include core and optional packages, and package dependencies. |
| Dependencies | Publish a dependency as a single-package product when two or more different products require this dependency. | Publish a dependency as a multi-package product when any package in one product requires this dependency. |
By default the uploaded Unity Editor version is checked for every package uploaded. Additionally, you can list all supported Unity versions that it’s compatible with (major.minor). For build target and render pipeline, setting a specific compatibility is optional.
To create a product draft:
When a product has only one package, the product namespace and package namespace are the same, which follows the naming convention of com.publisher.product. When a product has multiple packages, the product namespace follows the naming convention of com.publisher.product (for example com.unity.assetstore), and the package namespaces follow the naming convention of com.publisher.product.package1 (for example com.unity.assetstore.tools).
The following table describes the information each namespace identifies and its format in a complete UPM namespace:
| Namespace type | Description | Example |
|---|---|---|
| Publisher namespace | The publisher organization. This namespace uses the reverse domain name notation (reverse-DNS) naming convention. For example, the domain example.com has the publisher namespace com.example. |
com.publisher |
| Product namespace | The product. This namespace isn’t visible in the product’s Asset Store listing. | .product |
| Package namespace | The packages that the product contains. Set a package’s namespace only for multi-package products. |
|
| Package technical name | The package technical name combines the publisher namespace, the product namespace, and for multi-package products, the package namespace. The Package’s technical name must match the following:
|
|
Note: The publisher namespace (com.publisher) is set during enrolment to the development membership program. If you want to know more about changing the namespace, contact Unity support.