Irev-Dev / cadhub

We're out to raise awareness and put CodeCAD on the map. The success of CadHub can be measured by the amount it promotes the use of CodeCAD within the mechanical/manufacturing industry and the strength the CadHub community.
https://cadhub.xyz
GNU General Public License v3.0
319 stars 60 forks source link

Move worker into webpack build #495

Closed Irev-Dev closed 3 years ago

Irev-Dev commented 3 years ago

@hrgdavor This is the initial work to get the working into the build process, I would like to keep working later on this. Like you said because this was proof of concept code that you had copied from previous work, it would be good to trim down dead code not relevant to this use case (e.g. canvas stuff). I removed some that I was confident but my goal atm was just to get it out of the public asset folder atm.

As part of it being moved out of the public folder, suddenly the linter recognised the file as code it could format so this is a much better diff https://github.com/Irev-Dev/cadhub/commit/22da074965354fd7ec23e6b59473a06485832bd4


The jscad worker code was hosted as a static asset, making it odd javascript where we have to be conscious of what javascript features we can use and if it will work on older browsers, plus it can't be typescript like the rest of the codebase.

Since redwood 0.36 we using webpack 5 should make loading workers easy https://webpack.js.org/guides/web-workers/ But I had trouble with this (see: https://community.redwoodjs.com/t/has-anyone-tried-workers-with-webpack-5-rw0-36-x/2394) and instead used the webpack 4 loader without any issues

This issue relates to #411 , and is a checklist item on #444 Resolves #494

Irev-Dev commented 3 years ago

Thanks @hrgdavor