-
Notifications
You must be signed in to change notification settings - Fork 302
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
Improve Build System #871
Comments
Thanks to @hyperupcall for looking into this. Let me start by saying this is not an area that I have any real knowledge. OED planned to look into optimizations after v1.0 so it is a fine time to consider this. I have been concerned about the initial load time of OED and would like to get that down so reducing the bundle size would definitely help. Here are my general thoughts and maybe others can chime in:
Just for the record, I have thought about reducing the amount of data sent. I did this in export by reducing the name size used to identify items. We can also consider a long-standing question of what data to transfer when it is requested (currently we transfer all graphic types). These will not impact initial loading but could impact the speed when selections are made. It is unclear they will make much of a difference so more performance monitoring is needed to know. Finally, the DB queries could be optimized but the impact needs to be assessed. None of this impacts the idea above and I think they should move forward independently. |
Sounds good 👍 . I also think a slightly delay in loading for the non-primary page is a good tradeoff as well.
For sure, I'll also provide some numbers showing the improvements so we know how much the new ideas work.
If I understand your comment correctly, I don't think this has much of an impact, since for production, the names are ran through a terser
👍 |
I say give it a go and see how it works.
Sounds great.
That makes sense as I tested in development. Good to know this and I might change the names back but they are only for export so not too important. That is really slow for raw data and nice that a developer can do it quicker for testing. Thanks for taking this on and I look forward to seeing the result. |
Is your feature request related to a problem? Please describe.
Looking through the build system files, I noticed a few things:
babel.config.json
and ababel
key inpackage.json
, butbabel-loader
currently isn't being activated for any files (JavaScript is ran throughts-loader
)resolve.fallback
of the Webpack config, polyfills forbuffer
,assert
,stream
, etc. are specified (withNodePolyfillPlugin
)These issues can potentially cause broken code (code that hasn't been transpiled by Babel) to be shipped to browsers, or cause slow loading times.
Describe the solution you'd like
To make improvements, I suggest the following:
node_modules/
resolve.fallback
andNodePolyfillPlugin
It might also be useful to clarify if Babel should be used or not. And if so, what browsers and versions of browsers should be supported (I checked the website and found a mention of "all major web browsers"). And once we decide that, then to enable Babel, if applicable.
Describe alternatives you've considered
Leaving the Webpack configuration as it is
Additional context
I'd totally be down making a PR implementing this if it is desired
The text was updated successfully, but these errors were encountered: