Skip to content
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

Bundle all the things (elimination of require) #5173

Merged
merged 49 commits into from Dec 19, 2017

Conversation

Projects
None yet
3 participants
@dannon
Copy link
Member

dannon commented Dec 8, 2017

Elimination of require() based resource loading. This pushes all application entrypoints from the core application (many legacy, which we'll continue to transition into the base application as they are rewritten) into a globally exposed (on old pages) bundleEntries object.

This dramatically speeds up time-to-rendered of most non-modern pages (especially once the extended bundle is cached, but in most cases even before that).

We still use local define/require for the client app, but I'll refactor that in a separate PR (this doesn't do any async individual file loading, which is what I'm primarily trying to eliminate here). I also need to go through external client plugins (/config -- webhooks, IEs, viz) and remove require. Then we can eliminate the gulp fork of the build pipeline and move forward with vue across the application, html loaders, etc.

dannon added some commits Dec 5, 2017

WYM needs this global space, this fixes the loaders in a better way (…
…for us) than the export loaders. Compatibility fix for the ~8 year old wymeditor. We should look into newer options.
History view and view-edit bundling into extended UI. Refactored some…
… of the bootstrapping. We really need a Galaxy singleton for logging/etc.
Use bundles for dataset/display; we really probably want to get rid o…
…f dataset/display_by_username_and_slug, because 1) there is no slug, and 2) username isn't used...

@dannon dannon changed the title Bundle all the things Bundle all the things (elimination of require) Dec 8, 2017

dannon added some commits Dec 11, 2017

Remove SampleDataset and RequestType references from display_common; …
…this prevents any use of this mako currently.
Package GalaxyApp in extended bundle for bootstrapping outside the pr…
…imary entrypoints; TODO: Refactor this to be import-based and keep a singleton

@galaxybot galaxybot added this to the 18.01 milestone Dec 19, 2017

@guerler guerler merged commit e589f1e into galaxyproject:dev Dec 19, 2017

6 checks passed

api test Build finished. 336 tests run, 4 skipped, 0 failed.
Details
continuous-integration/travis-ci/pr The Travis CI build passed
Details
framework test Build finished. 165 tests run, 0 skipped, 0 failed.
Details
integration test Build finished. 60 tests run, 0 skipped, 0 failed.
Details
selenium test Build finished. 117 tests run, 4 skipped, 0 failed.
Details
toolshed test Build finished. 577 tests run, 0 skipped, 0 failed.
Details
@dannon

This comment has been minimized.

Copy link
Member Author

dannon commented Dec 19, 2017

Thanks @guerler!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.