Search Unity

The Package Manager is a modular system and API designed to speed up your workflows and optimize the size of your runtime by offering Unity-developed features as optional packages. 

This move away from a monolithic architecture where every feature used to be embedded as part of the core editor gives you the power to customize your development environment to be purposeful and performant.

We’ve continued to invest in improving the Package Manager experience over the years, and we want to share upcoming changes you’ll see in the 2021.1 Tech Stream release.

We heard you loud and clear about how lack of clarity around package readiness, supported packages and quality concerns affected your workflows. By ensuring that packages are clearly labeled and categorized you will be able to identify what are supported vs pre-release easily and quickly. Hopefully these changes can give insight into how a package moves through each phase and what to expect in each ultimately winding up with the gold standard for packages in Unity.

What does this mean?

Packages are getting a new categorization labeled either “Released” or “Pre-release” in the editor. Experimental packages (the third category) will not show up UNLESS they have been manually installed. With one glance and you’ll be able to tell what will be the optimal package for your project via visual icons.

Experimental

The Experimental phase contains exploratory and cutting-edge packages. They have not been tested for production, and they are not necessarily part of any roadmap. While individuals or teams might offer direct support to users for Experimental packages, they are not maintained by official Unity support channels. Experimental packages can be deprecated without being released. 

Given the potential risk associated with using Experimental packages in production projects, they will not be discoverable in the Editor’s Package Manager, however you can find information about ongoing Experimental packages in the forum and through Unity beta communications, where you can also find instructions on how to add them to your test projects and discuss them with the developers.

The following summarizes each phase of this new lifecycle.

Pre-release

Pre-release packages are actively being developed and need feedback from early adopters. It is expected that those packages will stabilize and reach the Released phase by the next Unity LTS (long term support) release of the year. Pre-release packages are officially supported by Unity and are part of the roadmap. To discover these packages in Package Manager, you need to enable this option in the Project Settings. Information about these packages will also be shared in Unity beta communications.

“Experimental” and “Pre-release” will no longer be discoverable by default in the Package Manager, however they will still be available to you. Your feedback on these early versions of packages is invaluable to us and is a critical part of the package lifecycle process. We’re building out a dedicated forum and a webpage to keep you up-to-date and communicate all the latest available Experimental and Pre-release packages, and we will share details in our beta communications as well.

Released

Released packages are the equivalent of the Verified phase of the previous lifecycle. They constitute the default discovery experience in the Package Manager window, ensuring that all packages discovered in the Package Manager by default are fully validated by Unity and safe to use in production projects.

What this means is that releases are tested, validated and you know it meets our team’s rigid release standards. Create with confidence.

You can find information about specific Released and Release Candidate packages in the Unity Manual.

FAQ

What happened to packages that were previously available as Preview?

All Preview packages will be classified as Experimental in Unity 2021.1. Teams at Unity will promote these packages to Pre-release state when they are on track to become Released by the next LTS release of Unity and they are heading towards a set of stable APIs.

Packages can remain in the Experimental stage for an indefinite amount of time. They are unsupported and might not ever be Released.

 

How can Experimental packages be discovered or tested?

You will be able to learn about Experimental packages through beta-related communications and in the forum. These packages are high risk and intended only for testing purposes. They will typically be announced for product feedback or specific testing needs.

 

How will deprecated packages be announced?

Information about Experimental packages will be shared in a package’s dedicated forum thread. 

Released packages that are being deprecated will be announced publicly as part of the general communications.

 

Which Unity versions use which lifecycle?

Unity 2018 to Unity 2020: Lifecycle v1 (Preview, Verified phases)

Unity 2021 and newer: Lifecycle v2 (Experimental, Pre-release, Released phases)

 

How can newer versions of Released packages be discovered and tested?

Newer versions of the packages will be released in the Pre-release stage, which is discoverable if you have enabled this option in Project Settings.

 

Where can I find non-released packages that are now not visible?

If the packages don’t get to the Pre-release state, we can’t guarantee their availability or support. We recommend that you visit their forum threads to learn about the status so we can help you find an answer.

We look forward to hearing from you about the new Package Manager experience and appreciate all the feedback so far that has enabled us to bring this to you! For any questions or comments, head over to the forums

18 replies on “A new Package Manager experience in Unity 2021.1”

“[Experimental packages] have not been tested for production, and they are not necessarily part of any roadmap. […] Pre-release packages are officially supported by Unity and are part of the roadmap.”

Where can we find this mythical roadmap of upcoming features?

I’ve definitely seen this exact blog post before. Since I can’t seem to find it again among the older entries I’m guessing this was just pulled to the front for relevance since 2021.1 was just released?

Although it seems the orignal comments were lost?

For the love of the god, add the option to show experimental packages in Package manager.
It’s so annoying looking for the package, just to realize I have to go to forums to find the correct URL.

I get it, it’s experimental, it can get deleted without notice, fine. It has been said million times on million places.
There are big warnings all over the Unity. Just let me use it easily.

God, yes. Totally agree with this. Just put a checkbox to show Experimental packages next to the “Enable Pre-Release packages” and when ticked, pop up a disclaimer with a big red exclamation mark.

Having to scour the web for mythical package identifiers, which are often outdated, is a really bad user experience. On top of that, it undermines the potential for the Unity package manager to be the single source of truth with everything relating to packages, including Package discovery.

Lastly, aligning the new naming of package lifecycle with NuGet could be familiar to more developers.

Not providing a button to toggle experimental packages and requiring a url to be entered feels like an overreaction to people complaining about experimental/preview packages not being ready etc.

I can figure out eventually how to find the url, I think, and enter it but why are you wasting my time in this way? Just add a toggle experimental button and provide a severe warning dialogue or similar saying ‘proceed at your own risk’ or whatever.

Yes, this seems like the best way.

The Unity Package Manager is used by coders and developers. We’re not Google Chrome users who happened to bump into the developer console. Still, it’s good to have warnings, but make it to where a power user can use Package Manager to have the best experience if they so choose.

The main benefit of independent modular package system is that you can develop and deliver them individually. But as I can see their lifecycle is still tied up with Unity releases. So we get the complication without the actual benefit, is that right?

Wait. So you still deliver, support, and are fine with us using pre-release packages…. but you’re making them harder for us to find… just because? This makes absolutely no sense whatsoever.

The editor tells us in bright yellow letters that we’re using prerelease packages, they are labeled as prerelease packages, and they have a prefix telling us that the versions are prerelease packages. We get it – we know they are prerelease packages.

Hi, Please note that Pre-release packages are still discoverable on the Package manager by enabling the option in Project Settings, packages in Experimental can be added by “add package by name” and information about those in the Beta forum and communications

It would be nice if you’d let the community know that the package manager is completely broken in many versions of Unity, requiring people to manually delete the cache folder before updating packages. As an asset store publisher of about 30 assets which get regularly updated, it’s incredibly frustrating to have to have a 10 minute conversation about the package manager every time a user comes to me claiming that something isn’t working because they can’t update their assets. Further, since the package manager shows that the asset is updated (When it isn’t), half of them argue with you about having the latest when they don’t.

It’s not my responsibility to tell each of your five million users about this issue personally, and Unity has chosen to burn the trust of it’s publisher community and users by pretending that this is not an issue.Bug’s happen- I get that, but the ripple effects of this not being communicated to end users is wasting everyone else’s time.

At least maintain a list of all your preview packages and make that easily accessible. Or make it a toggleable option to show them in the package manager. I love looking to unity preview packages, and this is just going to make looking through them and offering feedback a lot more annoying.

Hi Scion
We are keeping track of the Experimental and Pre-release packages here: https://forum.unity.com/forums/experimental-pre-release-packages.549/ also we will be highlighting some of those as part of the Beta initiative like this example: https://blogs.unity3d.com/2021/03/10/in-editor-tutorials-available-to-try-in-unity-2021-1/ . Please also note that all Pre-release packages can be discovered directly in the Package Manager by enabling the option in Project settings

That list is only a part of the experimental packages exist even today. How can we trust you to maintain a list of packages if you leave out half of them even at the start?

Maintaining a list manually is an inherently bad idea. Package manager does a better job at it. When the team publishes a version of their package it becomes available. End of story.

Leave a Reply

Your email address will not be published. Required fields are marked *