Search Unity

Preview packages in use

Discussion in 'Package Manager' started by Paul_Hughes, Sep 6, 2018.

  1. Paul_Hughes

    Paul_Hughes

    Joined:
    Sep 6, 2018
    Posts:
    2
    Hi there,

    very first post on this forum and quite a new Unity game developer, 3/4 months in the making!

    I have a question about the [Preview packges in use] that is attached to my project. I must have added them somehow and forgot about it when starting my project, which I am a month into.

    I'm coming along in my project but was thinking: If I put my game for release up on(android/windows phone etc) when finished will the preview packages in use affect me doing so? As in, is it allowed to be attached to my project upon release of my game? I tried to delete the packages but it's greyed out. I haven't even used them at all. I don't want to finish my game and find out I can't release it due to the Preview packages.

    I guess I need to do some more research on this, but I thought you guys might have a quicker idea ;)

    Thanks for any replys, I hope you all are having fun making games, I don't know why never started doing this a long time ago, as it's great!

    Cheers

    Paul
     
  2. M_R

    M_R

    Joined:
    Apr 15, 2015
    Posts:
    461
    you can remove unused packages from Window -> Package Manager. that also displays which packages are in preview

    there is nothing to prevent releasing a game with preview packages, except that preview packages may be buggy, incomplete and may break between releases (i.e. use at your own risk) (some packages are better than others)
     
    Paul_Hughes likes this.
  3. Paul_Hughes

    Paul_Hughes

    Joined:
    Sep 6, 2018
    Posts:
    2
    Thank you M_R much appreciated, was starting to panick thinking I'd have to start over again. I guess I should have done more research upon building my game first.
     
  4. GregoryFenn

    GregoryFenn

    Joined:
    Feb 13, 2018
    Posts:
    26
    Is there any feedback rating system or dedicated forum where people can rate the bugginess or reliability of preview packages? It feels like a stab-in-the-dark regarding how stable they are. And it's not like the final release versions of unity or packages are 100% bug-free either!
     
  5. Lurking-Ninja

    Lurking-Ninja

    Joined:
    Jan 20, 2015
    Posts:
    4,275
    There is not. Treat all preview packages as they aren't reliable. If you can potentially spend time with it to make it work: use it, if not, don't.

    There is no 100% bug-free software ever.
     
  6. pedro_unity

    pedro_unity

    Unity Technologies

    Joined:
    Jan 16, 2017
    Posts:
    162
    Hello @GregoryFenn, @unity_FK3QRyHF0Wsatg, everyone,

    @LurkingNinjaDev correctly answered the question already, but to add a bit to this:
    • Unity ships with verified packages. These have been heavily tested internally, first with some simple tooling, then automation that tests in isolation and finally in various combinations in the ecosystem. Manual QA intervenes in various stages of this process and validates things that are not easy to automate. These packages are considered safe with the kernel they ship with. As @LurkingNinjaDev put so well, this doesn't mean that something didn't go awry, so there might still be issues, but I can assure you we put a lot of effort and time validating these.
    • As Unity fixes issues and releases beta features, we want to provide our users with these changes as quick as possible, potentially outside of the Unity kernel release cycle, as a preview package. These are to be considered beta quality and while we do run them through tooling/automation runs (and manual testing), they are inherently less stable as they are not curated like the verified packages that ship within the release cycle. They should never crash, hang, or not compile, but they might have jagged edges.
    Bottomline is that your feedback is super important. Packages and the Unity Package Manager are still a young endeavour for us, but one that we think brings value to our users and iteration speed for us. Your feedback, as usual, remains to me, the most important thing.

    Please keep it coming, we're listening!
    Cheers,
    Pedro
     
    Last edited: Jan 11, 2019
  7. stevensrmiller

    stevensrmiller

    Joined:
    Oct 20, 2017
    Posts:
    180
    My Package Manager shows that none of the packages in my project are in preview, yet I get the "PREVIEW PACKAGES IN USE" message.

    Anyone know why?

    upload_2019-4-29_12-53-46.png
     
    ReneBuehling likes this.
  8. Gamezaur

    Gamezaur

    Joined:
    Oct 12, 2016
    Posts:
    5
    Same here in 2019.1.1f. I guess it's a bug of Unity?
     
  9. stevensrmiller

    stevensrmiller

    Joined:
    Oct 20, 2017
    Posts:
    180
    A bug in Unity? Say it ain't so :)!
     
    maximeb_unity likes this.
  10. okcompute_unity

    okcompute_unity

    Unity Technologies

    Joined:
    Jan 16, 2017
    Posts:
    575
    @gamezau @stevensrmiller This is a known issue. The problem here is there a non-preview package (
    Mutliplayer HLAPI
    ) having a dependency on a preview package (
    MonoCecil 0.1.5-preview
    ). The preview package is a transitive dependency. Since the Package Manager UI does not list transitive dependencies, you don't see it in the project tab. But the code showing the [Preview packages in uses] toolbar warning don't care if the package is a transitive or a root project dependencies.

    Basically,
    Mutliplayer HLAPI
    should never have been shipped as a non-preview package since it depends on a preview package. This is a release management mistake.

    Sorry about the confusion.

    Regards,

    Pascal
     
    Last edited: May 9, 2019
    david145 likes this.
  11. APSchmidt

    APSchmidt

    Joined:
    Aug 8, 2016
    Posts:
    2,426
    Hi, Pascal,
    I have a general question related to the packages but I don't want to start a thread about that.

    I have packages installed in my project, how do I know what packages are actually used by this project? Thank you. :)
     
  12. stevensrmiller

    stevensrmiller

    Joined:
    Oct 20, 2017
    Posts:
    180
    Well, that makes it all... clear?:)

    Thanks for the follow-up. As issues go, this one is kind of minor. I do wonder about the general wisdom of migrating to the package manager at this time, but that's water over the dam, I guess.
     
  13. okcompute_unity

    okcompute_unity

    Unity Technologies

    Joined:
    Jan 16, 2017
    Posts:
    575
    It is very hard, if not impossible, to clearly state if a package is used or not. For instance, a C# script in your project could inspect types defined in packages through reflection and use them. It is not impossible but not trivial to figure out. I would say the only way I can think of to achieve what you want is to remove a package you suspect to be unused and see if your project still opens correctly and/or your runtime application still work as expected. I would also recommend you make sure your project is source controlled before doing this type of test. It would be easier to revert your change if the package is really used.

    Hope it answers your question!

    Pascal
     
    APSchmidt likes this.
  14. EmpirisoftNathan

    EmpirisoftNathan

    Joined:
    Sep 6, 2016
    Posts:
    4
    Hi @okcompute_unity

    I agree that it's impossible to detect all use cases, but wouldn't it be rather easy to detect explicit uses of packages as dependencies in scripts?

    I have a long list of preview packages shown, despite not having opened the package manager previously. I don't use beta builds so I have no idea where they've come from!

    Tidying this up via a process of elimination is going be cumbersome...

     
  15. okcompute_unity

    okcompute_unity

    Unity Technologies

    Joined:
    Jan 16, 2017
    Posts:
    575
    Hi @EmpirisoftNathan ,

    The Package Manager UI view you shared list all packages available for your project. These are not exclusively the ones in your project. If you want to only see the packages in your project, click on
    All packages
    and select
    In project
    .

    Did you intentionally share this image instead of the
    In project
    tab?

    Regards,

    Pascal