Search Unity

HOT RELOAD - Edit Code Without Compiling!

Discussion in 'Assets and Asset Store' started by reese015, Jan 23, 2023.

  1. eterlan

    eterlan

    Joined:
    Sep 29, 2018
    Posts:
    177
    Can't agree more, it's definitely the best one in the market. I recommand it to everyone in my office. Thank you so much! Do you have some donation page?
     
    akuno likes this.
  2. Koara92

    Koara92

    Joined:
    Nov 9, 2014
    Posts:
    100
    We don't right now, but it's something we're probably going to add at some point so I'll let you know when we do!
     
  3. Koara92

    Koara92

    Joined:
    Nov 9, 2014
    Posts:
    100
    We just got a PayPal donation link in case you were still interested: https://www.paypal.com/donate/?hosted_button_id=3FD53F5TNFPGW

    Thanks!
     
    IgorBoyko and eterlan like this.
  4. eterlan

    eterlan

    Joined:
    Sep 29, 2018
    Posts:
    177
  5. Koara92

    Koara92

    Joined:
    Nov 9, 2014
    Posts:
    100
    That's unfortunate

    The next best option would be cryptocurrency. If you have BTC or ETH, we could provide you with an address if you're involved in that space.

    If not, we're already very appreciative of people talking about Hot Reload and sharing it with friends/coworkers/etc so that word spreads!
     
    eterlan likes this.
  6. eterlan

    eterlan

    Joined:
    Sep 29, 2018
    Posts:
    177
    noop.. Well that makes me feel better haha.
     
    Koara92 likes this.
  7. CINICGames

    CINICGames

    Joined:
    Aug 4, 2013
    Posts:
    7
    Hi, I've installed Hot Reload via Package Manager. I have no issue on my local PC, but if I pull my change from a different machine, I get the following error:

    An error occurred while resolving packages:
    Project has invalid dependencies:
    com.singularitygroup.hotreload: Could not clone [https://gitlab.hotreload.net/root/hot-reload-releases.git]. Make sure [fd9a2ed705407e0d3c1fe10a8727ddb103c788a8] is a valid branch name, tag or full commit hash on the remote registry.


    Any ideas on how to fix it?
     
  8. Koara92

    Koara92

    Joined:
    Nov 9, 2014
    Posts:
    100
    Hi there! Does the other machine have git installed?
     
  9. reese015

    reese015

    Joined:
    Nov 29, 2014
    Posts:
    34
    Hey everyone!

    We just released version 1.9.2.

    Fixes:
    • Fixed a regression where adding / removing method parameters would not hot reload the code
    • Fixed a regression where adding / removing the parameter modifiers "in", "out" and "ref" would not hot reload the code
    • Fixed a regression where adding a generic parameter to a non generic method would not hot reload the code
    • Fixed a regression where adding / removing the "static" modifier to a method would not hot reload the code
    • Fixed a regression where changing the return type of a method would not hot reload the code
    • Fixed issue where Hot Reload would apply code changes after a domain reload even though Unity recompiled
    • Removed on-device feature temporarily while we work on making it more polished, robust, and production ready

    In other exciting news, with this build, we are now on the Unity Asset Store as a Unity Verified Solution! You can find a link to the asset here: https://assetstore.unity.com/packages/tools/utilities/hot-reload-edit-code-without-compiling-250972

    If you've been using Hot Reload and like the product, we would greatly appreciate if you could leave a review!

    Thanks again for all the support!
     
    andreiagmu likes this.
  10. CINICGames

    CINICGames

    Joined:
    Aug 4, 2013
    Posts:
    7
    Yep, the other machine has git installed. I've fixed the issue using the .unitypackage instead.
     
  11. reese015

    reese015

    Joined:
    Nov 29, 2014
    Posts:
    34
    Hey everyone!

    We just released version 1.9.3.

    Improvements:
    • Added a button in the Hot Reload Window for users that have issues with Auto Refresh. This will redirect to the troubleshooting section of our website to help them deal with potential issues
    Fixes:
    • Fixed an issue where IDE's would still auto refresh on script changes, even though Auto Refresh was disabled in the preferences
     
    andreiagmu likes this.
  12. TroyDraws

    TroyDraws

    Joined:
    Apr 29, 2017
    Posts:
    13
    Hey I just wanted to ask about something strange on the Asset Store page, which contradicts a lot of the feedback in this thread.

    Some reviews that complain about crashes and freezes:
    - "frequent crashing in my rather small project" by ethrilww
    - "it just crashed Unity" by logicalcucker
    - "I tried out Hot Reload but its keeps freezing before my game updates. Its still faster to iterate the old way." by katarinamagdelinic1

    All of these reviews were posted on April 5th 2023.
    https://assetstore.unity.com/packag...ad-edit-code-without-compiling-250972#reviews

    Would like to hear feedback from the community - is anyone experiencing crashes they can attribute to the Hot Reload plugin? The team has put a lot of effort into stability, so it's surprising to see three (rather strange) reviews complaining about this.
     
  13. TurtleDev

    TurtleDev

    Joined:
    Apr 4, 2023
    Posts:
    2
    For me it worked fine at first in my testing project, but when trying to use it for a larger project it would frequently crash or just stop working altogether. I might use the tool for game jams in the future if they manage to fix the virus error (you get a false positive by your antivirus). I would also appreciate if we don't have to make an account at hot reload's website
     
  14. Koara92

    Koara92

    Joined:
    Nov 9, 2014
    Posts:
    100
    Would you mind sharing a video or example of any crashes? Any logs in the Hot Reload console, or the Unity console?

    It would be interesting to know what these issues are, as Hot Reload works fine with our project of 2M+ lines of code, as well as some other massive projects by larger AAA/Indie studios.
     
  15. TurtleDev

    TurtleDev

    Joined:
    Apr 4, 2023
    Posts:
    2
    Hi! Thanks for your response. I've uninstalled the asset since I last tested it but if I try it again for a game jam project I'll save the logs. I'm not sure if the lines of code matters either, it could be some specific components that I'm using that doesn't clash well. I don't know about AAA studios either, I'm not trying to claim that my project is more complex then yours or theirs but for some reason it didn't work well for me! Anyways thanks for your response, I assume you're one of the developers?
     
  16. Koara92

    Koara92

    Joined:
    Nov 9, 2014
    Posts:
    100
    Yes, I'm one of the developers on the Hot Reload team.

    No worries! We would be happy to help you work through some of your issues if you end up trying it again. If you do happen to try it again and run into any issues, please let us know (either here or through the contact form on our website) and we'd be happy to help. We are trying to sort out everyone's issues over time, and major issues get highest priority - especially when it's a seriously blocking issue like you suggested.
     
  17. bagman69

    bagman69

    Joined:
    Apr 12, 2023
    Posts:
    1
    It would help if your tool wasn't such a black box. The virus "false" positives don't give much confidence, and flagging by AV literally prevents usage of the tool in many cases which causes users to turn away.
    Why is your tool being flagged by anti-virus software?
    Why does your tool execute git.exe?
    How do we know your tool isn't uploading our code to your servers?

    You require downloading a 265mb executable and some other smaller executables in addition to the Unity Package, what all is in that? There's no transparency.
     
    andreiagmu likes this.
  18. Koara92

    Koara92

    Joined:
    Nov 9, 2014
    Posts:
    100
    Why is your tool being flagged by anti-virus software?

    Here's the result of the scan we ran in-house: https://s3.eu-central-1.amazonaws.c.../ShareX/jan/2023/02/mbam_WR4sLuoC1hL4MTHm.png

    Why your particular antivirus flags it is hard to tell. Dev software frequently gets flagged though (see answers from other users in this thread).

    In addition, we're a Unity Verified Solution, which means the Unity team specifically tested and vetted the package.

    Why does your tool execute git.exe?

    When you switch branches (which might result in 1000s of file changes), we have specific optimizations to keep things running smoothly. If you're interesting in buying a license and this is very important to you, we can make it configurable so this doesn't happen.

    How do we know your tool isn't uploading our code to your servers?

    You can attach a packet debugger and inspect every single request, none of it in includes any code (we have no reason to do so, as everything runs locally, hence why we ship the large binary). In addition, we're a Unity Verified Solution, so the Unity Engineers testing the solution have been very thorough.

    You require downloading a 265mb executable and some other smaller executables in addition to the Unity Package, what all is in that?

    As per the Unity Verified Solution guidelines, we must download executables instead of shipping it with the package. The executable contains the compiler part of Hot Reload, similar to for example Visual Studio's .exe (which is 20GB or more). More details on this are outlined in the documentation on our website.

    One of the main reasons we decided to go through the effort of becoming a Unity Verified Solution was to provide an extra vote of confidence for the product. The process involved a rigorous testing and vetting of the solution by Unity engineers. Despite the fact that it has been independently verified by Unity engineers, it would also make objectively no sense for us to include malware or anything remotely malicious in the application.

    Lastly, I do want to point out to others that you created your account yesterday and immediately left this comment. I do hope the concerns mentioned are genuine and that I helped alleviate them, but I am skeptical of the authenticity of them as this thread already had a troll group spam post, requiring a Unity mod to clean up dozens of messages, some of them with plausible deniability like "is this malware?", "It's probably uploading my code...", even though the posters were afterwards confirmed trolls.
     
  19. eterlan

    eterlan

    Joined:
    Sep 29, 2018
    Posts:
    177
    I don't have crash problem so far, so.. I guess there are some difference between asset store version and the gitlab one?
     
  20. Liam2349

    Liam2349

    Joined:
    Mar 10, 2016
    Posts:
    80
    I am running 1.5.2 at the moment and I did upload two executables to VirusTotal.

    For watchman.exe, nothing was detected: https://www.virustotal.com/gui/file/35cb0b501fe0d95698220a554b932cece19a3d7acf2b5aca979c391d565dabf3

    For watchman-wait.exe, two vendors stated malicious: https://www.virustotal.com/gui/file/bdac8eb6f9487fae0ecd925b827f5b3c94de701684c7713ad28959d17d46c6ad

    For me that registers clean, because it's not uncommon for a few lesser known vendors to do that. Looks like they are machine learning scores.

    I would only have a great concern if Kaspersky detected positive, because they have a very low false positive rate. I also treat Malwarebytes detections as serious, and Microsoft Defender. Anything else I find unimportant unless e.g. half of them detect positive, but that's just my opinion.

    I also just uploaded CodePatcherCLI.exe from "%LOCALAPPDATA%\singularitygroup-hotreload\executables_1-5-2": https://www.virustotal.com/gui/file...mY2Q2YTczNWJlNjFmMzdkYTExZmU6MTY4MTY5ODU4Ng==

    This one is found clean.

    Anyway, these files seem ok to me.
     
    PencilBow, andreiagmu and Koara92 like this.
  21. reese015

    reese015

    Joined:
    Nov 29, 2014
    Posts:
    34
    Hey everyone!

    We just released version 1.9.4.

    Improvements:
    • Added ability to redeem promocodes via the Hot Reload window
    • Added button to rate the Asset Store package after 5 days of using the Hot Reload via the Asset Store
    Fixes:
    • Fixed edge case where certain code changes involving assembly reference dependencies would sometimes cause Hot Reload to fail

    This version was just submitted to the Asset Store as well, and it should be live there in a few days or so.
     
    andreiagmu likes this.
  22. Jamez0r

    Jamez0r

    Joined:
    Jul 29, 2019
    Posts:
    205
    Hello Hot Reload team!

    I started using Hot Reload when you guys first released it, and it was working great with no issues so I hadn't updated it to a new version. I have been getting the "A Native Collection has not been disposed, resulting in a memory leak. Allocated from: Unity.Collections.NativeArray`1:.ctor(Byte[], Allocator)" error when I run the game in the Editor, but I had just been ignoring it. Unfortunately I just got the error while switching scenes while the game was running, which caused the game to Error-Pause, so I figured its time for me to update to a new version. I am currently using version 1.1.8.

    Could you answer 2 questions for me?

    1) If I update to the newest version, will that fix the 'Native Collection' error?

    2) What would be the best way for me to update to the newest version? Can I simply update in the Package Manager? I see that you guys are now in the Unity Asset Store, so if you suggest another way to update just let me know. I'll be glad to leave a good review!

    Thanks!
     
  23. Koara92

    Koara92

    Joined:
    Nov 9, 2014
    Posts:
    100
    Hi there!

    1. Yes, this issue is fixed in the latest version of Hot Reload.
    2. The answer to this depends on how you installed it. If you used the git url, then you can update it by going through the installation steps again on our website. If you used the Unity package, then it might be easiest to just delete the package and then download + import the latest package from our website or the Unity Asset Store. Given that you would like to leave a nice review (which we very much appreciate!), I would probably recommend installing through the Unity Asset Store like most people are doing nowadays. Before doing so it's probably best to delete the old package just to be safe though.

    Hope this answers your questions!
     
    Jamez0r likes this.
  24. Uncle_John

    Uncle_John

    Joined:
    Oct 7, 2017
    Posts:
    8
    Hello,

    Cool asset but I'm getting an error after importing.

    Anyone know how can I resolve this?

    Thank you in advance!

    Error Message:

    Failed to find entry-points:
    Mono.Cecil.AssemblyResolutionException: Failed to resolve assembly: 'SingularityGroup.HotReload.RuntimeDependencies, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'
     
  25. theforgot3n1

    theforgot3n1

    Joined:
    Sep 26, 2018
    Posts:
    205
    This is a great asset. I just have a few requests that I think would dramatically increase the ease of use. Hotreload spits out warnings when it cannot recompile certain changes. This could be done better with big clear visualizations of:
    1. whether hotreload is running,
    2. whether all changes are recompiled,
    3. a list showing what changes are successfully recompiled and which aren't

    This would be hugely helpful <3
    Great asset even if it's kind of hard to uunderstand at the moment.
     
  26. Koara92

    Koara92

    Joined:
    Nov 9, 2014
    Posts:
    100
    Hello!

    I believe that this is Unity's Assembly Updater tool trying to analyze the SingularityGroup.HotReload.RuntimeDependencies dll. It assumes that the dll is supposed to have an entry point.

    This shouldn't break anything though; it's just an annoying console log.

    We can check to see if this is something we can resolve on our end or not. In the meantime though, you should still be able to run Hot Reload without issues. If not, please let me know what other issues you're running into!
     
  27. Koara92

    Koara92

    Joined:
    Nov 9, 2014
    Posts:
    100
    Thank you for the feedback! I will pass it along to the team.
     
  28. Uncle_John

    Uncle_John

    Joined:
    Oct 7, 2017
    Posts:
    8
    Hey thanks!

    I kept going in my project and it disappeared. Haha
    I saw it do the same thing to another asset so I don’t think it is Hot Reload.

    Thanks for the help and Hot Reload works great and is awesome!

    Thank you!
     
  29. Koara92

    Koara92

    Joined:
    Nov 9, 2014
    Posts:
    100
    Awesome, glad to hear it's working well for you! If you have any questions or run into any issues, don't hesitate to reach out!
     
  30. Flayff

    Flayff

    Joined:
    Mar 17, 2020
    Posts:
    1
    Thanks for providing this asset for free for personal uses. Truly a life saver as a student, as I need to work with many Assets to actually create something in our short timeframes :D.

    I sadly have an issue, which makes this Assets close to unusable for me. Maybe its my own stupidity, dunno:

    When changing anything in a script and saving, the hot reload server notifies with "detected change in ...". (No notification afterwards).

    When starting to play, it works for ~3s really great and suddenyl it starts compiling _everything_ (like the manual ctrl+r) during playmode. Which obvisouly breaks everything. Restarting play mode works then, but the timesaver is now a minus timesaver. I could manual recompile everything with ctrl r everytime before starting, but that would kinda render the benefits zero. I thought "maybe these are the unsupported changes" but adding a space in a method is already enough for this to happen.

    Can anyone here help me out maybe?
     
  31. Koara92

    Koara92

    Joined:
    Nov 9, 2014
    Posts:
    100
    Hello! What Unity version are you using?
     
  32. akuno

    akuno

    Joined:
    Dec 14, 2015
    Posts:
    88
    Amazing asset
     
    Koara92 likes this.
  33. eterlan

    eterlan

    Joined:
    Sep 29, 2018
    Posts:
    177
    @Koara92 Hey! How's going? Just wondering are you guys still work on this? Are there any date about adding the new field ? Not urging, just very excited about that feature;)
     
  34. Chunikus

    Chunikus

    Joined:
    Sep 5, 2020
    Posts:
    28
    Hey good people of hot reload i know fields hot reloading will be added in the future updates. But in the meantime could there be auto recompile option if field was added/removed in any class? Or at least log a warning in the console.

    I often waste time debugging, cause field is not there it won't even give you null errors, so i just forget i made this change and wonder what's breaking my code... it's really annoying :)


    Best of luck!
     
  35. digital_artisan

    digital_artisan

    Joined:
    Mar 27, 2020
    Posts:
    3
    Thanks for making this great (and much needed tool)! However I am now getting a problem as of recently:

    Code (CSharp):
    1. NullReferenceException: Object reference not set to an instance of an object
    2. SingularityGroup.HotReload..‏‬‭‍‏‭‫‪‬‫‫‫‬‎‌‎‬‭‭‫‮‌‪‎‮[].Invoke () (at <1df268d06cc14c1f95a22523584f83ec>:0)
    3. SingularityGroup.HotReload.RuntimeDependencies.OnDestroyEventProxy.OnDestroy ()
    Got this error after getting a nullpointer in an on destroy call and I now have it every time I run the app (no matter what code changes I make). Any idea what could be wrong?
     
  36. Koara92

    Koara92

    Joined:
    Nov 9, 2014
    Posts:
    100
    Hello! Yes, we are still actively working on this! However, right now the focus is largely on trying to improve all of the uninteresting stuff - marketing, sales, user acquisition, pricing, etc.

    Despite that though, we still have plans to get to the new field support when we are better positioned to do so. So, to answer your question more concretely, yes we are still working on this, but I do not yet have any rough ETA for new field support.

    Thank you for the feedback! We have had this request before, and are considering it. Unfortunately though, it is a non-trivial feature to implement in a way that works well and is robust, so it likely won't come before new field support. Sorry about that!

    Thanks for the report! It seems like you aren't the only one with this issue, as we also had another couple of similar reports. We'll look into this and try to get it fixed asap.
     
  37. Koara92

    Koara92

    Joined:
    Nov 9, 2014
    Posts:
    100
    If possible, would you happen to recall what exact steps you took to create this issue? It would be helpful in allowing us to reproduce it.
     
  38. reese015

    reese015

    Joined:
    Nov 29, 2014
    Posts:
    34
    Hey everyone!

    We just released version 1.10.0.

    Features:
    • The on-device feature is back and is now stable and ready to be used
    • Standalone on-device functionality (Windows/MacOS/Linux) is now supported
    Improvements:
    • Replaced QR code with IP input field for connecting to specific network

    This is currently a BETA release, as we are still working on improving it in several regards. If you do use the on-device feature, please let us know if you run into any issues!

    Thanks!
     
    Last edited: May 2, 2023
  39. Liam2349

    Liam2349

    Joined:
    Mar 10, 2016
    Posts:
    80
    Hi, does anyone know why I am getting this error when trying to activate in the Settings tab?

    [HotReload] Licensing failed with exception TrialLicenseExpiredException: Trial period for the device has expired: 2023-03-09T00:00:00.000Z.

    Hot Reload suddenly stopped working, I've tried reinstalling twice and I keep getting this error, which I think is why my changes are not being detected.
     
  40. Koara92

    Koara92

    Joined:
    Nov 9, 2014
    Posts:
    100
    Hey, could you send me a message here and let me know what email address you're using in Hot Reload? It would also be helpful to know if you're using Unity Personal, Plus, Pro, or Enterprise.
     
    Liam2349 likes this.
  41. reese015

    reese015

    Joined:
    Nov 29, 2014
    Posts:
    34
    Hey everyone!

    We just released version 1.10.1.

    Fixes:
    • To ensure all methods of the player build can be hot reloaded and users don't run into unexpected issues, require code stripping to be disabled for development builds that have Hot Reload enabled (on-device)
     
  42. GamerXP

    GamerXP

    Joined:
    Mar 22, 2014
    Posts:
    78
    Not sure if it was requested, but can we have an option to disable auto-refresh when you enable Hot Reload, then revert it back to original value when you disable it?
    Doing it manually every time I want to enable Hot Reload is pretty annoying.
     
  43. reese015

    reese015

    Joined:
    Nov 29, 2014
    Posts:
    34
    Hey everyone!

    We just released version 1.10.2.

    Fixes:
    • Added fix so that code from the Hot Reload package is only included in development player builds
     
  44. Liam2349

    Liam2349

    Joined:
    Mar 10, 2016
    Posts:
    80
    Just want to post here to say that they got me back up and running after a few hours (when I noticed) with a server side change, so thanks! There may be some bug with my account.
     
  45. PencilBow

    PencilBow

    Joined:
    Jun 23, 2017
    Posts:
    132
    Hey everyone!

    We just released versions 1.10.3 & 1.10.4.

    Improvements:
    • Added warning that clarifies that unity event methods added at runtime have limitations when new scenes get loaded.

    Fixes:
    • Fixed an issue with removing unity event methods added at runtime.
    • Unity Personal/Plus users can now buy a perpetual license, including through the Asset Store. The perpetual license is also considerably cheaper than the previous subscription mode
     
  46. PencilBow

    PencilBow

    Joined:
    Jun 23, 2017
    Posts:
    132

    Hi, GamerXP!

    Thank you for reaching out to us with your suggestion regarding Hot Reload compatibility with Unity's auto-refresh. We appreciate your feedback and want to let you know that improving this compatibility is one of our highest priorities on the roadmap.

    Regarding your specific suggestion, it is also planned to be included in one of the next releases, together with other improvements.
     
    GamerXP likes this.
  47. PencilBow

    PencilBow

    Joined:
    Jun 23, 2017
    Posts:
    132
    Hey, digital_artisan!

    We've suspected that the issue you've ran into (and couple of other users as well) was caused by underlying limitation with not being able to remove unity event methods that were added at runtime causing "zombie" unity events to fire which is likely to run into nullref exceptions.

    We've addressed this specific issue in our most recent release (1.10.4) and hope that this resolved exceptions that you've ran into! Please upgrade to the latest version and if the issue persists or you find any other problem, please let us know so we can make improvements to our tool.
     
  48. Liam2349

    Liam2349

    Joined:
    Mar 10, 2016
    Posts:
    80
    Hi, so it looks like it's no longer free for indie use. If this is the case, I left a donation a couple of days ago - can this applied as a discount to my purchase of the asset?

    Or maybe it is still free for indies? Personally I think it's probably not a bad idea to charge some fee, but I'm not a business expert.
     
  49. PencilBow

    PencilBow

    Joined:
    Jun 23, 2017
    Posts:
    132
    Hey. You can keep using the asset for free, especially since you already downloaded it. If you do want to purchase it at any time (which we'd much appreciate, it helps support development), we'll gladly give you a discount for your donation, just send us an email at contact@hotreload.net
     
  50. digital_artisan

    digital_artisan

    Joined:
    Mar 27, 2020
    Posts:
    3
    Hey guys, sorry for the late reply. I noticed that indeed a component was added to every object where I was getting the exception (IPointerEnterProxy or something along those lines).

    It look like you guys fixed it, thanks so much!
     
    PencilBow likes this.