This PR enforces the use of javascript modules so that issue #378 no longer occurs.
I'm happy to refactor how we add the anonymous function for creating a javascript module. Right now, I include the open tag in the sjcl.js file, and the close tag in the footer.js file. I can also envision other approaches like using echo "}(sjcl));" >> in the makefile to introduce the close tags necessary for making sjcl a javascript module (this would save us the extra footer.js file)
I also added an additional test to ensure that issue #378 is solved, and all other defined tests pass.
Fundamentally, though, I'm not sure why the special code compression included with this library exists--I believe there are now ways to package code for npm without custom compression, and this could make for a cleaner module approach than concatenating all core/ files. Moreover, this would get rid of the u and t minimized function names that causing issue #378 in the first place.
This PR enforces the use of javascript modules so that issue #378 no longer occurs.
I'm happy to refactor how we add the anonymous function for creating a javascript module. Right now, I include the open tag in the sjcl.js file, and the close tag in the footer.js file. I can also envision other approaches like using
echo "}(sjcl));" >>
in the makefile to introduce the close tags necessary for making sjcl a javascript module (this would save us the extra footer.js file)I also added an additional test to ensure that issue #378 is solved, and all other defined tests pass.
Fundamentally, though, I'm not sure why the special code compression included with this library exists--I believe there are now ways to package code for npm without custom compression, and this could make for a cleaner module approach than concatenating all
core/
files. Moreover, this would get rid of theu
andt
minimized function names that causing issue #378 in the first place.