Let's cure HISE of Alzheimer's
-
HISE's behavior oddly reminds me of the final months of my late grandpa. Before he suddenly passed of the dumbest little infeksh you could get because his immune system forgot that it had to turn on due to Alzheimer's, grandpa was talking all kinds of stuff but mostly repeating himself, and they mostly get it right in the movies.
Right now HISE:
- forgets what tabs you had open when you closed the preset
- forgets what project you were working on when you closed it (instead remembering whatever project you loaded, which is problematic when working with multiple instances and you just wanna check out something in an older project)
- forgets how far down you scrolled (what line of code you were at) in a subscript as soon as you leave it (switch from on init to on note, and back again)
- forgets how many floating windows you had floating around, where they were and what they were showing
- on crash, forgets which MIDI devices you had enabled
If I forgot something, feel free to add :beaming_face_with_smiling_eyes:
-
@aaronventure said in Let's cure HISE of Alzheimer's:
forgets what project you were working on when you closed it
instead remembering whatever project you loaded
Who's got alzheimers? :p
on crash, forgets which MIDI devices you had enabled
I noticed that the selected MIDI channel in HISE's settings is always reset when reopening HISE.
-
Who's got alzheimers? :p
Ah shit you got me, that's just selective short term memory. :face_with_tongue: I do hope my point got across nonetheless.
-
forgets what tabs you had open when you closed the preset
Yeah, I gave up on this issue. If you want to enjoy reading how this problem completely destroyed my confidence in the ability of solving software bugs, go here:
https://forum.hise.audio/topic/6091/bug-hydra-tabs/2?_=1694590689571
forgets what project you were working on when you closed it (instead remembering whatever project you loaded, which is problematic when working with multiple instances and you just wanna check out something in an older project)
Don't work with multiple instances. There are tons of persistent settings that are stored when you close HISE to be restored the next time and this entire concept crumbles as soon as you use more than one instance of HISE.
forgets how far down you scrolled (what line of code you were at) in a subscript as soon as you leave it (switch from on init to on note, and back again)
There is a concept of navigation history for the code editor, but for some reason it doesn't work when you switch between the callbacks. I'll take a look.
on crash, forgets which MIDI devices you had enabled
See above, if it crashes it won't be able to store anything, so just don't make it crash :)
-
@Christoph-Hart said in Let's cure HISE of Alzheimer's:
Don't work with multiple instances. There are tons of persistent settings that are stored when you close HISE to be restored the next time and this entire concept crumbles as soon as you use more than one instance of HISE.
This gave me an idea and I just tried running it sandboxed and then it works as expected. None of the changes get out, the current project still remains the current project.
But yeah, they are to get restored the next time you run HISE but if the flow is:
- Open main project
- Open old project to check something
- Close old project
- Eventually close main project
Then it's still the main project stuff that gets to stay saved on top once I go to sleep, no?
Anyway, sandboxing works, plus looking at the files directly is also always an option, but sometimes you need to see it all in the interface.
@Christoph-Hart said in Let's cure HISE of Alzheimer's:
Yeah, I gave up on this issue. If you want to enjoy reading how this problem completely destroyed my confidence in the ability of solving software bugs, go here:
https://forum.hise.audio/topic/6091/bug-hydra-tabs/2?_=1694590689571
What a ride. Almost felt like watching Captain America, only the writing was better. It's been a while since then, you sure you don't wanna give it another thought? There are clearly some mechanisms in HISE that are behaving correctly on this front, for example double clicking an error line in the console that points to a different script will correctly open that script at that set line. So there's a working "openTargetScript" function in there. Can't closing HISE save stuff like
- number of tabs open
- tab 1 had combobox item 0 line 56
- tab 2 had combobox item 9 line 89
Then after doing the initial on init pass (where it pulls in all the include external scripts), it executes that same function the console uses to send me to the correct script and line when I fuck something up.?
@Christoph-Hart said in Let's cure HISE of Alzheimer's:
There is a concept of navigation history for the code editor, but for some reason it doesn't work when you switch between the callbacks. I'll take a look.
Maybe because it's all technically one file? More findings:
- works for external scripts, but only if you click on the line. it doesn't care about the "last line drawn" or something like that, even though that's still (I'm assuming) being saved somewhere to feed the code preview slider (binoculars icon).
- doesn't work for the base/internal script, even if you go from init to external script and directly back to init
@Christoph-Hart said in Let's cure HISE of Alzheimer's:
so just don't make it crash :)
No, if it crashes in a project that I had previously closed (successfully), on next restart, the MIDI device that was enabled won't be loaded.
-
@aaronventure said in Let's cure HISE of Alzheimer's:
Can't closing HISE save stuff like
number of tabs open
tab 1 had combobox item 0 line 56
tab 2 had combobox item 9 line 89I meant saving these things in a preset, not when closing HISE.