e45d6043e8
Re-implement page-specific JS in a better way. ## What does this MR do? This rebuilds the way we do page-specific JavaScript assets for a few reasons: - The current implementation does not work with Subresource Integrity (!4808) - The current implementation doesn't allow caching of libraries because each page we hook up with this system will have a separate application.js. Meaning that for every page that uses Ace Editor, we'd have to load Ace Editor plus any GitLab-specific scripts in the same file, making local caching of just Ace Editor impossible. - The current implementation is rather hacky. ## Are there points in the code the reviewer needs to double check? That Sprockets doesn't choke on this when we use precompiled assets. ## What are the relevant issue numbers? #14372 ## Does this MR meet the acceptance criteria? - [x] [CHANGELOG](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CHANGELOG) entry added - [x] [Documentation created/updated](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/development/doc_styleguide.md) - [x] API support added - Tests - [x] Added for this feature/bug - [x] All builds are passing - [x] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CONTRIBUTING.md#style-guides) - [x] Branch has no merge conflicts with `master` (if you do - rebase it please) - [x] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits) cc: @jschatz1 @pavelloz Thanks to @pavelloz for his example implementation which was very useful. See merge request !4883 |
||
---|---|---|
.. | ||
environments | ||
initializers | ||
locales | ||
application.rb | ||
aws.yml.example | ||
boot.rb | ||
database.yml.env | ||
database.yml.mysql | ||
database.yml.postgresql | ||
dependency_decisions.yml | ||
environment.rb | ||
gitlab.teatro.yml | ||
gitlab.yml.example | ||
license_finder.yml | ||
mail_room.yml | ||
newrelic.yml | ||
resque.yml.example | ||
routes.rb | ||
secrets.yml.example | ||
sidekiq.yml.example | ||
unicorn.rb.example | ||
unicorn.rb.example.development |