Search Unity

Is it worth updating Unity every week?

Discussion in 'General Discussion' started by Lordscales91, Dec 8, 2018.

  1. Lordscales91

    Lordscales91

    Joined:
    Sep 30, 2018
    Posts:
    12
    Hi, I've been working on a game for a month or so. I'm doing it on my free time, which is not much by the way. On top of that, these weekly updates are slowing me down even more, because as you know, it takes a while to download and install the new version. Then, when launching your project with the new version for the first time, the assets need to be re-imported, which takes a few minutes as well.

    So, I've been wondering. Is it worth updating Unity so frequently? Or... Should I just stick with the currently installed version until finishing the game? (Unless there is some critical security patch or something like that)
     
  2. It is something you should decide. Do you expect any future feature you want to actually use in Unity? Then probably it worth the time to update. If you don't expect any features in the future, update to the latest LTS when it comes and stick with it (update only when bugs getting fixed and you need the fix)

    In other words: don't try to live on the bleeding edge just for the sake of being there. Evaluate if you will need anything out of those precious minutes you're spending on updates. Unity has a fairly okay road map, you can decide if you will need anything on it.
     
  3. orb

    orb

    Joined:
    Nov 24, 2010
    Posts:
    3,037
    Read the patch notes. Does the patch fix anything that matters to you? OK, get it. If it's only fixes for a platform you don't use you can skip it.
     
    Socrates likes this.
  4. newjerseyrunner

    newjerseyrunner

    Joined:
    Jul 20, 2017
    Posts:
    966
    It is very common in the software engineering world to stick with one version for a long period of time. Lots of engineers susbscribe to the policy of “if it ain’t broke, don’t fix it.” The bigger the company, the more they tend to lag behind.

    You’re losing more than just your downloading time. You’re throwing away any quality assurance time that you’ve put in so far because you have to retest everything when you make a change to something as fundamental as your engine.
     
  5. Murgilod

    Murgilod

    Joined:
    Nov 12, 2013
    Posts:
    10,142
    No.

    Unless an update fixes a specific problem you are having, you should avoid updating mid-dev as much as possible. Even if it fixes a problem you're having, make sure you test on a special testing branch of the project.
     
    angrypenguin and Kiwasi like this.
  6. kburkhart84

    kburkhart84

    Joined:
    Apr 28, 2012
    Posts:
    910
    I stick onto my version of "bleeding edge." I'll take the major versions, and maybe one of the incrementals every now and then, but that's it. It's just me though, the downloads happen quick on my internet connection, though the re-import sucks still, but I like having those new features sometimes. I'll be all over this next one when it gets released.
     
  7. Antypodish

    Antypodish

    Joined:
    Apr 29, 2014
    Posts:
    10,770
    Personally I update periodically. but not every week.
    Maybe every month, or 2, if release has been committed.

    Then I update my project, if that is required.
    But that is only because, I need ensure compatibility with one of latest feature.

    Otherwise no. Don't update every week. Better wait for stable version.
     
  8. Deleted User

    Deleted User

    Guest

    I update every time I get the "new version available" pop up window mainly because for now I'm working on tutorials, old ones, created with Unity 4 and I want to see how things are going. I would be more cautious if it was my personal project.

    The only thing I never do is installing the patches, I always use the versions that have a name that finishes "xf1". :)
     
    crodriguez likes this.
  9. AndersMalmgren

    AndersMalmgren

    Joined:
    Aug 31, 2014
    Posts:
    5,358
    We have 3 branches. Release branch which holds the version thats published to Steam, here we fix critical bugs that are discovered in production or found in dev and than cherry picked to Release branch and then released. Currently this branch is at 2017.3.1. Then we have the master branch or the dev branch, this has all the latest and greates changes, here we use latest LTS version which is 2017.4.17 currently. And lastly we have the migration branch, this one we keep in sync with dev branch and test and fix compatibility with moving to latest Unity, currently this branch is at 2018.2.19

    I love Unity Hub. before the Hub it was a pain
     
    Last edited: Dec 9, 2018
  10. orb

    orb

    Joined:
    Nov 24, 2010
    Posts:
    3,037
    If you've got something in production only patch releases to your current revision are relevant to you, maybe. Switching whole revisions or major releases is crazy. If you're getting close to release, DON'T SWITCH UNITY VERSION AT ALL! Just look at how much even revisions changed in the 5.x line - that was truly a time of turmoil :)

    But patch releases are generally harmless. Know the difference between a bug fix update and an upgrade.
     
    crodriguez and Kiwasi like this.
  11. Deleted User

    Deleted User

    Guest

    Or do it but make a solid backup of your project before, in case you need to come back to it. Then see if the changes introduced by the new version fit your project, if everything works fine, and ultimately decide if you want to carry on with the new version. :)
     
  12. orb

    orb

    Joined:
    Nov 24, 2010
    Posts:
    3,037
    There's no "or". You have a build slave doing that for you anyway, so you can leap to a more recent edition when the stars are right :)
     
    Kiwasi likes this.
  13. JamesArndt

    JamesArndt

    Joined:
    Dec 1, 2009
    Posts:
    2,932
    I always wondered how this will be sustainable in the long term. They've gone with these yearly versions, and by 2025 we'll have about 7 major versions, with multiple patch and incremental versions each year. We're looking at having 20+ versions of Unity out in the wild. How on earth will that be a good scenario for the end user? You may say, well everyone will be on the latest versions from the later years, but that's overlooking what folks end up doing. You end up scouring forums looking for that one Unity version that doesn't' have a deal-breaking physics bug, memory regression, UI memory leak, etc. So folks end up bouncing around to older versions with some increment number valuing to them...and sometimes they go quite a few versions back to keep support for something they need. Heck I know quite a few people working on projects in 5.6. I do realize the LTS system is a way to negate some of this.
     
    Ippokratis likes this.
  14. Antypodish

    Antypodish

    Joined:
    Apr 29, 2014
    Posts:
    10,770
    Apparently only this year is packed with mini patches. Next year supposedly will be less of them. Other than previews.
     
  15. orb

    orb

    Joined:
    Nov 24, 2010
    Posts:
    3,037
    LTS with bug fix releases is supposed to be the way to maintain stability from now on. So the LTS gets <year>.<number>.<number>p<number> releases which are generally considered safe, and have been through QA. They change no features, just fix what's already there. Pretty easy to follow and understand.
     
    angrypenguin and Kiwasi like this.
  16. Lordscales91

    Lordscales91

    Joined:
    Sep 30, 2018
    Posts:
    12
    Thanks to everyone for your tips. I think I will stick with the current version until the next LTS, and then jump from LTS to LTS with optionally some updates in the middle if they are relevant (like bugfixes which affect the project).

    PD: Is there an option to tell the Editor to check only LTS upgrades ignoring minor patches? Otherwise I would have to check it manually.
     
  17. orb

    orb

    Joined:
    Nov 24, 2010
    Posts:
    3,037
    I think I saw mentioned somewhere that LTS releases only look for updates to that LTS release, not new major versions. This might apply to other Unity major releases too, because of how much can change from 2018.2 to 2018.3, for example. And since LTS means long-term support it would inform users of patches to bugs in that LTS release. It would be pointless to call it LTS if it didn't have long-term support ;)
     
  18. Kiwasi

    Kiwasi

    Joined:
    Dec 5, 2013
    Posts:
    16,860
    Definitely not. I only upgrade if a new feature is essential. For the rest of the time I try to remain on the LTS version.
     
  19. Player7

    Player7

    Joined:
    Oct 21, 2015
    Posts:
    1,533
    this is the worst part.. and the stupid thing about it to me, is it even necessary with most the updates? I could understand if they changed some texture/shader type settings.. but every update?
     
  20. AndersMalmgren

    AndersMalmgren

    Joined:
    Aug 31, 2014
    Posts:
    5,358
    If you don't have a branch on latest version you are completly clueless about the effort it will take to migrate the day you need to for whatever reason
     
  21. andyz

    andyz

    Joined:
    Jan 5, 2010
    Posts:
    2,269
    I ignore many updates unless need a fix but the release notes can be annoying, like:

    Android: Fixed crash on Android 9. (1102065)

    With no link to bug, so what does that mean?! Perhaps if my app crashes at any time on Android I should update...
     
    JamesArndt likes this.
  22. Kiwasi

    Kiwasi

    Joined:
    Dec 5, 2013
    Posts:
    16,860
    Is this knowledge really worth the effort?
     
  23. AndersMalmgren

    AndersMalmgren

    Joined:
    Aug 31, 2014
    Posts:
    5,358
    We started our game on 5.2, it would have been a very outdated game if we stayed there. We have used a bunch of the features that came in newer versions, like single pass rendering etc.

    Its better to make continuous small upgrades, than one large big one when you are forced to move to a new unity version.
     
    Willbkool_FPCS likes this.
  24. angrypenguin

    angrypenguin

    Joined:
    Dec 29, 2011
    Posts:
    15,620
    You're doing a VR project, so I can understand why you might feel "forced". With some mobile projects you could eventually be forced when old versions stop supporting new devices or OSes, though doesn't happen especially often and you'll have plenty of lead time.

    Other than that... when would a project be "forced" to move to a new version? I think @Kiwasi's question is a pertinent one. Unless I had plenty of automated testing I don't know that I'd bother maintaining this.
     
  25. AndersMalmgren

    AndersMalmgren

    Joined:
    Aug 31, 2014
    Posts:
    5,358
    Games takes several years to develop if you didn't continuesly update then the game would be outdated when it released. Sure since 5 we got PBR but we got correct mixed mode lighting first in 5.6 and it was basicly still in preview until 2017. Things like that.

    I hope there is no one that does not have automated tests that would be as crazy as not using versioning
     
  26. Joe-Censored

    Joe-Censored

    Joined:
    Mar 26, 2013
    Posts:
    11,847
    Any new version of Unity, or really any piece of software that goes into your project, incurs risk. The risk may not be laid out in the patch notes. This can take the form of bugs inadvertently added in the new version, undocumented changes, or exposure of bugs in your own design. You should generally avoid risk if you would not derive benefit.

    If you have a team or automation infrastructure you can continually test against new Unity versions, but if you're just one person I'd recommend periodically making small jumps if early in development, instead of taking every new version. When you get closer to your game's release you freeze on a specific Unity version. After you do a Unity upgrade make sure to do a full QA pass over your game looking for new issues. After you release your game then consider moving to new Unity versions again as you start working on some expansion, new content, etc.
     
  27. Kiwasi

    Kiwasi

    Joined:
    Dec 5, 2013
    Posts:
    16,860
    Sure. But once or twice a year is enough to keep things up to date. The OP was referencing doing upgrades every week.
     
  28. angrypenguin

    angrypenguin

    Joined:
    Dec 29, 2011
    Posts:
    15,620
    This is why I disagree with doing it every week. A full QA pass on a large game for a small team could take more than that week.

    And for the vast majority of my projects the vast majority of Unity updates don't give any benefit. Yours are different. So are other peoples'.

    Not saying there's a right answer. I'm saying it's a spectrum, and everyone needs to pick a spot on it for themselves.
     
    Lurking-Ninja and Joe-Censored like this.
  29. Joe-Censored

    Joe-Censored

    Joined:
    Mar 26, 2013
    Posts:
    11,847
    Yeah in my largely solo project I've been upping Unity versions about once every 4 or more months, with a plan to freeze on some version of 2018.4 prior to release. I've caught several unexpected issues on each upgrade with the after upgrade testing.
     
  30. Just start to read support forums if you don't do that yet. There are a ton of posts written in panic that "Unity broke my project", "it will cost me X time" or "it will cost me Y money" or "Z number of users reporting issues with my build". After they updated their project without properly QA-d it. On the surface, most of the time it worked, but with some "exotic" circumstances, it suddenly failed. A lingering Windows 8.1 problem is the latest if I'm not mistaken.

    Update only if you really use one or more new features and prepare to the blood and tears.
     
    Last edited by a moderator: Dec 11, 2018
    Antypodish likes this.
  31. AndersMalmgren

    AndersMalmgren

    Joined:
    Aug 31, 2014
    Posts:
    5,358
    I didn't say you update every week to production we are still on 2017.3.1 in production you do it in Dev branch and migration branch . It's a continues effort in those branches . You always do a big regression run before each new release to production anyway plus a S*** ton of tests during Dev time , even prototype versions to Steam for the community to play etc
     
  32. ttermeer-reboundcg

    ttermeer-reboundcg

    Joined:
    Jul 12, 2017
    Posts:
    62
    It depends on how big your project is. The bigger the project, the higher the risk is.
    We have been stuck on 2017.1.3 because 2017.2 contained bugs with third party plugins and 2017.3 broke our prefabs and 3d system. Even minor patch on 2017.1 have broken our game with issue like button callbacks.

    LTS is the way to go. Unfortunately it has come a bit too late for most of us.
     
  33. Ryiah

    Ryiah

    Joined:
    Oct 11, 2012
    Posts:
    21,151
    Current group I'm with migrated from Unity 5.6 to Unity 2018.2. It was completely painless.
     
  34. AndersMalmgren

    AndersMalmgren

    Joined:
    Aug 31, 2014
    Posts:
    5,358
    Yeah, 5.5 to 5.6 was not fun though, but 5.6 > has worked flawless for us. We never released on 5.6 because of it, released on 2017.2 instead

    edit: Somethings did broke though, like in < 2018 Invariant culture was used but in 2018 client culture is used by default