Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

Official Visibility changes for preview packages in 2020.1

Discussion in 'Package Manager' started by LeonhardP, Jun 12, 2020.

Thread Status:
Not open for further replies.
  1. LeonhardP

    LeonhardP

    Unity Technologies

    Joined:
    Jul 4, 2016
    Posts:
    3,132
    We recently went through our package list to identify preview packages that are further from the verification stage, just dependencies of other packages or not under active development. In Unity 2020.1 and later versions, these preview packages won’t be listed in the Package Manager.

    However, if you’ve already installed these preview packages, they won’t be removed – you can continue to use them, and they will still show available updates in the "in-project" filter of the Package Manager UI. Also, they will remain available in the production registry. You can still add them by editing your project manifest, or by typing in the package name under Add package from git URL in the Package Manager.



    For more details on the reasoning behind these changes, have a look at this blog post.

    Please join our Betas & Experimental Features forum if you're interested in giving us feedback on these packages or want to discuss their roadmaps.

    Here's a full list of packages that will no longer be visible in Package Manager:

    com.ptc.vuforia.engine
    com.unity.2d.entities
    com.unity.ai.planner
    com.unity.aovrecorder
    com.unity.assetbundlebrowser
    com.unity.assetgraph
    com.unity.barracuda
    com.unity.barracuda.burst
    com.unity.build-report-inspector
    com.unity.cloud.userreporting
    com.unity.collections
    com.unity.connect.share
    com.unity.dots.editor
    com.unity.entities
    com.unity.film-tv.toolbox
    com.unity.google.resonance.audio
    com.unity.immediate-window
    com.unity.mathematics
    com.unity.meshsync
    com.unity.multiplayer-hlapi
    com.unity.package-manager-doctools
    com.unity.package-manager-ui
    com.unity.package-validation-suite
    com.unity.physics
    com.unity.platforms
    com.unity.platforms.android
    com.unity.platforms.linux
    com.unity.platforms.macos
    com.unity.platforms.web
    com.unity.platforms.windows
    com.unity.playablegraph-visualizer
    com.unity.render-pipelines.lightweight
    com.unity.rendering.hybrid
    com.unity.renderstreaming
    com.unity.scene-template
    com.unity.simulation.client
    com.unity.simulation.core
    com.unity.simulation.capture
    com.unity.simulation.games
    com.unity.standardevents
    com.unity.streaming-image-sequence
    com.unity.test-framework.performance
    com.unity.tiny.all
    com.unity.transport
    com.unity.upm.develop
    com.unity.vectorgraphics
    com.unity.webrtc
    com.unity.xr.googlevr.android
    com.unity.xr.googlevr.ios
    com.unity.xr.legacyinputhelpers
    com.unity.xr.oculus.android
    com.unity.xr.oculus.standalone
    com.unity.xr.openvr.standalone
    com.unity.xr.arsubsystems
    com.unity.xr.interactionsubsystems
    com.unity.xr.windowsmr.metro
     
    Last edited: Jul 15, 2020
  2. capyvara

    capyvara

    Joined:
    Mar 11, 2010
    Posts:
    80
    Why not hiding them from the main view but still allow searching? It's clear from other packaging hosting solutions that a plain list won't scale.

    How will we discover these packages?
     
  3. Ghat-Smith

    Ghat-Smith

    Joined:
    Aug 16, 2016
    Posts:
    48
    I agree with @capyvara, and I'm not convinced by the idea of getting updated from a newsletter.
    Why not just create a new category (called "Experimental Packages" or something else) to make a distinction with Preview Packages ?
     
  4. brunocoimbra

    brunocoimbra

    Joined:
    Sep 2, 2015
    Posts:
    679
    Just showing my support for that idea, that makes things way clearer about whether or not it is an "experimental" package or a "preview" (closer to released state) package.

    But I have one question/request: for installed "experimental" packages, will it still show when there is an update for it? This is extremely helpful as many of those packages (including Entities one) does not have a dedicated thread for new releases announcement (so I, and probably many more people, rely on the Packages Manager to know when there is a new version to try).
     
  5. ImpossibleRobert

    ImpossibleRobert

    Joined:
    Oct 10, 2013
    Posts:
    521
    Wow I use multiple of these and wonder now a bit. Thanks about the transparency. One feedback to the editorcoroutines: I use it permanently and would just slap a version 1 label on it to be honest. I never had a single issue.
     
    MartinTilo likes this.
  6. JesOb

    JesOb

    Joined:
    Sep 3, 2012
    Posts:
    1,106
    Please consider to replace blamed preview label with worldwide used stage labels (alpha, beta, rc) so we will know how far package from release

    And please add prototype label for packages in list above and option in package manager to see them, not your "great" idea to manually modify manifest
     
    Last edited: Jun 25, 2020
    MehO, enricostara, transat and 8 others like this.
  7. andybak

    andybak

    Joined:
    Jan 14, 2017
    Posts:
    569
    That's a fairly important distinction you just glossed over.

    It would be nice to say which ones are abandoned and which ones might just take a while longer to mature.

    The other problem here is what happens when you add a new package to this list? Where's the single canonical URL I can visit to see all the packages that are available but currently hidden?
     
  8. LeonhardP

    LeonhardP

    Unity Technologies

    Joined:
    Jul 4, 2016
    Posts:
    3,132
    We’re working on a solution to make experimental packages from developers that are actively looking for feedback discoverable from a single source. This source will be outside of the Editor to minimize the risk of confusing users about the nature of these packages.

    Yes, if the package was added manually to a project, updates will still be available from the “in-project” filter in the PackMan UI.
     
  9. Favo-Yang

    Favo-Yang

    Joined:
    Apr 4, 2011
    Posts:
    464
    @LeonhardP, thanks for the information. How you achieve this? By introducing a new field to the package.json or it's something magical happens inside the UPM.
     
  10. Ghat-Smith

    Ghat-Smith

    Joined:
    Aug 16, 2016
    Posts:
    48
    Don't want to reject this idea without knowing precisely what solution you plan to offer, but at the moment I can't see any good reason to not take advantage of the package manager. Why spend time to create another tool or scatter packages informations in different places ?

    About the risk of confusion, what about addding a "Show experimental packages" (or "Show prototype packages") inside the Advanced menu of the package, disabled by default, and each time user enable it you display a dialogue pop up explaining precisely the nature of these packages and asking a validation from the user. You think it wouldn't be enough ?
     
    dan_ginovker, jashan, dejaime and 8 others like this.
  11. Hyp-X

    Hyp-X

    Joined:
    Jun 24, 2015
    Posts:
    432
    So basically DOTS is not coming in 2020.

    IIRC, it was promised in the Unite Roadmap talk to come out of preview this year.
    Now it is removed from the package manager...
     
  12. Xtro

    Xtro

    Joined:
    Apr 17, 2013
    Posts:
    604
    I totally understand the need to do this and I support this decision. No sarcasm. I don't wanna see not-ready-to-use packages in the manager which confuses me and others working with me. Like AAA games need to be ready to play on release day without major bugs, Unity packages must be included in the Unity experience when they are "almost" ready.
     
    Edy likes this.
  13. MaskedMouse

    MaskedMouse

    Joined:
    Jul 8, 2014
    Posts:
    1,091
    For most of the packages I kind of get why they're being hidden from the package manager but I did not expect to see
    com.unity.vectorgraphics
    in the list. I've been using it without many troubles throughout Unity 2018 & 2019. Vector Graphics are used in the UI Builder as well.
    Is this because there is no development going on in this package?
    I consider this package as quite usable but also a must for crisp UI on any resolution which SVG is designed for.

    Having to edit the manifest manually to add these packages is a step backwards. I'd rather be able to see these not ready packages as being marked as something else than preview. Like "Experimental" or "Alpha"
     
  14. Mariusz_H

    Mariusz_H

    Joined:
    May 4, 2018
    Posts:
    18
    So, no DOTS in 2020 LTS?!

     
  15. Actually, this decision infuriates me. This is why we can't have nice things. Always the bending over backwards for the lowest possible common denominators.

    Because of a handful of people cannot decide for themselves to use or not use clearly tagged packages we cannot have them accessible in the editor by default.

    Thank you people, I hope you know who you are. :(

    I'm seriously pissed off by this.
     
  16. desertGhost_

    desertGhost_

    Joined:
    Apr 12, 2018
    Posts:
    259
    Better package filters would be a better solution than removing packages from the package manager.

    There is a massive difference between a package coming in year or two or three and those that are not being developed anymore. People using packages that are no longer being developed should be made aware of this in a clear way.

    It would be much clearer if packages being developed were rated as prototype, alpha, and beta rather than preview. The packages that are no longer developed should be marked as obsolete or deprecated and removed from the package manager and the package repository after giving people using them time to transition to a suitable replacement.
     
  17. Grimreaper358

    Grimreaper358

    Joined:
    Apr 8, 2013
    Posts:
    789
    This was already the case and people still enabled it and then got angry/frustrated that the preview packages aren't finished, stable, or working as they thought it should. In 2020.1 and 2020.2 they added extra steps to enable preview packages. Maybe that's not enough and this other solution will help
     
  18. rsodre

    rsodre

    Joined:
    May 9, 2012
    Posts:
    229
    Not helping anybody!
    I really hope Unity reconsider and undo this.

    Having modal warnings/confirmation every time we try to install, and flags to display preview and abandoned would be good enough.

    Someone suggested color codes (green for verified, yellow for preview, red for abandoned), I support that.
     
  19. JesOb

    JesOb

    Joined:
    Sep 3, 2012
    Posts:
    1,106
    This is why preview is not good spelling. It do not have understandable meaning. Prototype is mutch better. And if Unity add alpha, beta, rc and release stages like for UnityEngine itself then community will be notified than package even not reach alpha state yet.

    For now we have many packages labeled as preview that is actually in beta or rc state.
    We have use Entities package that is maximum in alpha stage and have no problems with it at all.

    The only good thing from Unity I see is idea to label packages plans to support nearest future LTS. But solution for this label is ugly. I think good way for this can be just separate field in manifest with planned release date or release Unity Version
     
    Orimay and noyogiisMYusername like this.
  20. BonneCW

    BonneCW

    Joined:
    Jan 22, 2017
    Posts:
    123
    Wouldn't it be so much easier to just add an "Show experimental packages" checkbox somewhere (maybe even hidden so just people that know what they're doing edit it and no beginner can accidentally activate it) or - even easier - display a warning like "This is an experimental package with a high chance to change in future and break your project. Are you sure you want to install it?" that has to be actively accepted before installation.

    Removing it from the Package Manager is no good idea imo and will slow me down. I don't want to check some other sources when it should be right where it is now. And I use quite a few of the packages like DOTS, Hybrid Renderer and what belongs to them.

    @LeonhardP If that's really what you're going to do, will the packages then at least be updateable via Package Manager when they're already added to the manifest? Otherwise this change will really suck and is a major inconvenience.
     
    Orimay and NotaNaN like this.
  21. andybak

    andybak

    Joined:
    Jan 14, 2017
    Posts:
    569
    Why add the qualifier "that are actively looking for feedback"? Why not list all packages that are hidden in the package manager?

    If you want to actively deprecate some then say so. You imply that there will be packages that are a) hidden from the store b) hidden from your off-app list. Surely that's as close to deprecated as you can get!
     
    MadeFromPolygons likes this.
  22. andybak

    andybak

    Joined:
    Jan 14, 2017
    Posts:
    569
    The problem was caused by multiple definitions of the word "experimental". Unity had hobby projects that had been mostly abandoned mixed together with packages that were part of a major strategic initiative.

    However I think this is an overreaction and a way of avoiding clear communication about each package's prospects and status.
     
    ShiftedClock, transat and Ghat-Smith like this.
  23. brunocoimbra

    brunocoimbra

    Joined:
    Sep 2, 2015
    Posts:
    679
     
  24. andybak

    andybak

    Joined:
    Jan 14, 2017
    Posts:
    569
    On a certain level I'm already using package manager like this. I browse Github repos for interesting stuff and often the install instructions are just "add the Git url manually to your manifest" There's already repos on the Unity account I use this way.

    But what bothers me about this is the lack of clarity over why packages have been demoted in this way and what future plans there are for each one.
     
  25. brunocoimbra

    brunocoimbra

    Joined:
    Sep 2, 2015
    Posts:
    679
    Have been following the DOTS forum has been a long time and I can confirm that the issue is not due the word "preview" neither due to the lack of clear communication. The issue is that a lot of people just see those packages in the package manager and downloads it right away without even reading the landing page of the documentation (which becomes the main issue of a lot of help requested in the forums, even though there are pinned posts too with the documentation link).

    Well, even for packages not in the package manager (like the DOTS VS) I see people complaining about the instability, even though it is stated clearly as far from production-ready. So I agree with the idea of making those packages not accessible directly from the editor, but also would like another way to find those or at least get notified when a new package/new version is available to try.
     
  26. MadeFromPolygons

    MadeFromPolygons

    Joined:
    Oct 5, 2013
    Posts:
    3,967
    This would have been a lot simpler if:

    1. you dropped the nonsense naming and called alpha, beta etc what it is for packages
    2. stopped marketing unfinished or outright abandonned packages in unite talks, videos etc
    3. stopped pushing DOTS like it will fix and save the world when really its for certain things and certainly not ready for majority of uses and is in serious flux all the time


    Ultimately doesnt matter, developers who want access to these can manually add them to a manifest but it still seems like a weird way of doing things.

    Just admitting "these X packages are no longer developed BTW" would have been nice too, right now people still dont know what is what on that list.
     
  27. Peter77

    Peter77

    QA Jesus

    Joined:
    Jun 12, 2013
    Posts:
    6,590
    I agree with Alpha, Beta and RC labels. Unity uses them in other areas already, so users should be able to understand and these are standard terminology in software development.

    However, I would use "Experimental" rather than "Prototype". Mostly because "Experimental" is used in several Unity areas already, but also because other engines use "Experimental". So we all speak one language when we jump between engines.

     
  28. desertGhost_

    desertGhost_

    Joined:
    Apr 12, 2018
    Posts:
    259
    I just noticed that some of the packages that listed as being hidden from the package manager are listed as verified packages in the 2020.1:

    com.unity.assetbundlebrowser
    com.unity.editorcoroutines
    com.unity.mathematics
    com.unity.multiplayer-hlapi -- obsolete
    com.unity.render-pipelines.lightweight -- replaced with URP
    com.unity.test-framework
    com.unity.xr.arcore
    com.unity.xr.arkit
    com.unity.xr.arkit-face-tracking
    com.unity.xr.legacyinputhelpers
    com.unity.xr.oculus
    com.unity.xr.windowsmr
    com.unity.xr.magicleap
    com.unity.xr.arsubsystems
    com.unity.xr.interactionsubsystems

    Are these no longer under active development? Why are they in both categories?
     
  29. charlesb_rm

    charlesb_rm

    Joined:
    Jan 18, 2017
    Posts:
    485
    Some of them are dependency packages, some are not meant to be directly instantiated in the project, unless you know exactly what you are doing.
     
  30. angrypenguin

    angrypenguin

    Joined:
    Dec 29, 2011
    Posts:
    15,617
    What? Why?

    The Package Manager already has the ability to add external sources. What is the benefit of ignoring that and fragmenting things further with yet another way to get stuff?

    I propose that instead the default Assets/Packages/manifest.json have an optional line:
    Code (csharp):
    1. "com.unity.modules.experimental": "1.0.0"
    People who want to use that stuff can add it to the Package Manager and then access it in the unified approach you're trying to standardise.
     
  31. ShilohGames

    ShilohGames

    Joined:
    Mar 24, 2014
    Posts:
    3,015
    I would prefer better wording instead of simply hiding the preview packages. For example, use words like pre-alpha, alpha, beta, release candidate, etc. The word "preview" could mean nearly anything. If Unity added more details, I would know to treat "pre-alpha preview" differently than "release candidate preview".
     
  32. charlesb_rm

    charlesb_rm

    Joined:
    Jan 18, 2017
    Posts:
    485
    All the packages that were available will still be, with the only difference that they will need to be added manually. We are looking into ways to make it easier for experienced users to use these packages. For now, you can use the "Add package from git URL..." option and just type in the package name (e.g. com.unity.mathematics) and it will instantiate the latest available package from the production repository.
     
  33. brunocoimbra

    brunocoimbra

    Joined:
    Sep 2, 2015
    Posts:
    679
    That is great news, I didn't know it was possible at all.
     
    dan_ginovker and charlesb_rm like this.
  34. ShilohGames

    ShilohGames

    Joined:
    Mar 24, 2014
    Posts:
    3,015
    Why not just leave the packages where they already are but label them better? For example, instead of calling all of those packages "preview", you could use more descriptive words like pre-alpha, alpha, beta, release candidate, etc.
     
    addent and charlesb_rm like this.
  35. ShilohGames

    ShilohGames

    Joined:
    Mar 24, 2014
    Posts:
    3,015
    Also, it would help game developers if we knew the status of various packages. This list indicates that Unity will be hiding some DOTS, networking, and XR packages. Some transparency about the actual status of each package would help more than hiding packages. For example, does Unity consider DOTS to be pre-alpha, alpha, beta, release candidate, or something else? This would be very helpful when deciding whether or not to use DOTS in game projects. Simply calling it "preview" does not give game developers enough information.

    With VR, Unity 2019.4 has some text saying we should switch to the XR packages because other VR packages (Oculus Desktop and OpenVR) are getting removed in Unity 2020. However, this thread indicates the XR packages are being removed in Unity 2020. That is inconsistent. What is the real status of those packages? Which VR/XR package should be used by game developers in Unity 2019 and 2020? In my own testing with Unity 2019.4, the Oculus Desktop package seemed stable, and the XR packages seemed completely busted.
     
  36. Rallix

    Rallix

    Joined:
    Mar 17, 2016
    Posts:
    139
    Yes, but since they'll now be hidden, it'll be difficult to discover these packages in the first place if you didn't know about them before.
    A lot of them work perfectly fine and can be pretty useful. I've been using editor coroutines for a while, but if they were hidden, and I couldn't see them in the package list, I'd spend some time working on a sub-par approach, not knowing there's already a perfectly fine solution at our disposal.
    The new input system also worked more or less fine a year before it went out of the 'preview' phase.

    Will users have to regularly browse Unity's git repository to discover these packages?

    I'm also for better labelling – while still being able to see the full list of experimental packages in Unity somewhere.
     
  37. rsodre

    rsodre

    Joined:
    May 9, 2012
    Posts:
    229
    Another difference is that we can't just see and follow the removed packages status and history unless we ADD it to the project.

    It's good to be able to browe packages to see what's on the horizon and the progress of it all.
     
  38. NotaNaN

    NotaNaN

    Joined:
    Dec 14, 2018
    Posts:
    325
    EXACTLY.



    Honestly, this is just appalling.

    Unity... You are going backwards.
    You know how racing games usually have that "turn around" warning / notification?
    GET ONE.
    Because you seriously need it.

    If you continue with this terrible decision, you will have essentially slapped everyone using one of the listed packages above in the face.
    Not to mention you won't actually be solving the problem. All you did was just move it far, far away. But it's still there.

    Instead of making people's lives harder (seriously though... How did you even consider this as a "solution"?), how about you pick three (count 'em Unity, THREE) amazing ideas from this thread -- integrate them -- and then pat yourself on the back for a job well done, and we all act like this never happened.

    Capeesh?
     
    Last edited: Jun 27, 2020
  39. neoshaman

    neoshaman

    Joined:
    Feb 11, 2011
    Posts:
    6,493
    They pick the current idea from another thread, they did go overboard though. Basically they are trying to stabilize the workflow for people who aren't tinkerer and got suck due to bad signaling. SO they move away the package into a place where the tinkerer would go on their own, BUT tinkerer like the ease of use, so they aren't please by the new workflow imposed on them, many have pointed they just need a sort of toggle somewhere BUT stay inside the editor.

    They probably should focus on that, have a switch tuck in an obscure place, which is easy to toggle once you learn about it, and still come with many signal to tell you are in a special unsafe mode.
     
  40. SecondCobra

    SecondCobra

    Joined:
    Jan 25, 2017
    Posts:
    31
    For the love of god no!

    Sure, remove the packages that are no longer under development, it makes sense we don't want to start using them, but just move preview packages to another tab or leave it like it is. This just makes it harder to go find preview packages!
     
    arkano22, JasonBricco and rsodre like this.
  41. AcidArrow

    AcidArrow

    Joined:
    May 20, 2010
    Posts:
    11,631
    If the people you're thanking are not all Unity employees, then there's something wrong with your logic.
     
  42. sinjinn

    sinjinn

    Joined:
    Mar 31, 2019
    Posts:
    149
    I personally don't see the big deal. I just had to press a plus button and type in the package name. That's not much. I preffered the old way, but this way it does draw more of a line in the sand, and maybe it will push package developers to get it over the line and become legit. And maybe it gives more clarity to users, that some of this stuff is going to require some effort and patience.
     
  43. desertGhost_

    desertGhost_

    Joined:
    Apr 12, 2018
    Posts:
    259
    I agree with you that adding it manually is not a big deal. It is an effective way to make sure that advanced users (who are willing to deal with breaking changes and bugs) are the ones testing / using these packages. That being said I think Unity needs to clarify which packages are in active development and which are not. Additionally an improved labeling scheme on these packages in the package manager (even if they have to be added manually) would go a long way in clearing up what the status of a package is.

    I think that adding a experimental section to Unity Hub that contains these packages (and a way to add them to one of your projects) would be a fine place to manage these packages. This section would not appear unless a user enabled a check box buried in the Unity Hub settings under the advanced tab. This would also allow Unity to include DOTS templates in the package manager for advanced users.
     
    JesOb, NotaNaN and sinjinn like this.
  44. neoshaman

    neoshaman

    Joined:
    Feb 11, 2011
    Posts:
    6,493
    There is also a discovery problem, where do you have the LIST of all assets and follow their news? peaking the package manager was a shorthand.
     
  45. sinjinn

    sinjinn

    Joined:
    Mar 31, 2019
    Posts:
    149
    Fair point. They do seem to be indicating that they will develop some kind of system for the cool beta users to keep up to date with this stuff. Then of course these beta packages could be considered a sort of entities.

    What is concerning me now is that in the 2D Animation package, do i have to use Photoshop, or not, because they make a pretty BIG deal about this PSB format, but this is not the right forum for that.
     
  46. chmodseven

    chmodseven

    Joined:
    Jul 20, 2012
    Posts:
    116
    Or just have a "Show deprecated packages" option similar to the existing "Show preview packages", under Advanced and defaulted to off. And like someone mentioned above, hit it up with some red warning colours and dire looking fonts or something to emphasise the point.

    It's ridiculous of Unity to go to these overly cumbersome efforts to hide packages and make them harder for experienced devs to find and include just because of a few imbeciles who couldn't read the "preview" label and got themselves in a muddle. It's as ludicrous a state of affairs as how every coffee container these days has to have "WARNING: CONTENTS HOT" labels on them, in case - y'know - some potentially litigious cafe customer somehow wasn't aware of what might get spilled on their pants.
     
  47. Hyp-X

    Hyp-X

    Joined:
    Jun 24, 2015
    Posts:
    432
    I don't know if you noticed, but that "Show preview packages" option is also gone...

    upload_2020-6-28_14-28-7.png
     
    Walter_Hulsebos likes this.
  48. JoNax97

    JoNax97

    Joined:
    Feb 4, 2016
    Posts:
    611
    It's not gone, it's been moved to the project settings window
     
  49. chmodseven

    chmodseven

    Joined:
    Jul 20, 2012
    Posts:
    116
    Yep I did see that. A change for the worse IMO.
     
  50. jjejj87

    jjejj87

    Joined:
    Feb 2, 2013
    Posts:
    1,115
    Keep shooting yourself in the foot Unity.
     
    jmgek, MrCool92, enhawk and 8 others like this.
Thread Status:
Not open for further replies.