-
Notifications
You must be signed in to change notification settings - Fork 37
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Regression: Save no longer works #47
Comments
No idea what it has to do with JavaScript. I've seen regressions in every programming language ever. In any case it should be fixed. You probably need to clear your cache. |
oh wow, that was extremely fast! thank you so much!
moving/deleting functions without updating every caller causes compilation errors in statically-typed early-binding languages so it's essentially impossible to miss these broken call sites, but in javascript, the program runs correctly until the broken code is executed, making it very easy to miss these types of regressions when moving stuff around. |
addressing the commit message:
when html5bytebeat plays the song, it gets upsampled using nearest-neighbor sampling. when it exports a song, it outputs audio exactly as generated and at the song's sample rate, leaving upsampling up to the playback applications, which often try to use something like libsamplerate or speex to resample the audio - these unfortunately filter the high frequencies out so it sounds muffled and soft. if it's an issue, you could make html5bytebeat upsample to 44.1kHz during export, or you could leave it as-is and just ask users to change their playback settings |
anyway, again, thank you so much, greggman!! |
And yet statically typed languages still have regressions all the time. I work in C++ and Rust and the same types of bugs still happen often. Someone makes a change and it breaks something that was workkng. |
i literally never said regressions don't happen in other languages. i'm talking about this specific bug, where you move a function and forget to update one of the call sites. |
all i was saying was that forgetting to update |
really sorry for the misunderstanding. anyway, i've tested production under a bunch of different cases and the feature seems to be completely functional again, working just like before 🎉 thank you again greggman, you're a legend! |
exporting bytebeat songs used to work, but it had been broken at some point and now crashes.
calls are made to
ByteBeatNode.createContext
andByteBeatNode.createStack
inindex.js
. whileByteBeatNode
exists and these functions exist inside the prototype, debugger reports that the functions are undefined at the exception site, which is unsurprising because they are instance functions being called like static functions.another call is made to
getSampleForTime
fromByteBeatNode
, which appears to have been removed in b28f455, so this may also crash.The text was updated successfully, but these errors were encountered: