Page MenuHomePhabricator

Use webpack for server compiling and remove server hacks
Closed, ResolvedPublic

Description

Use webpack on server & get rid of server hacks (cp files and ignore-styles)

Remove if it doesn’t make sense after implementation.

  • Reasons to pack the server:
    • CSS and SVG import issue
    • SVG optimization pipeline
    • Fewer files to distribute
    • Environment configurations can be baked in as wanted
    • Nice tool for watching development changes without restarting the world (right now the server restarts for every change in common which is normally where changes happen and life sucks)
    • What works in the client works in the server and vice versa
  • And reasons against: Webpack is complicated

ac

  • Compilation for the server in development happens with webpack and the watch mode works
  • Compilation for the server in production happens with webpack
  • Tests still work fine

Event Timeline

Change 391283 had a related patch set uploaded (by Niedzielski; owner: Sniedzielski):
[marvin@master] Chore: replace clean script with Webpack plugin

https://gerrit.wikimedia.org/r/391283

Change 391284 had a related patch set uploaded (by Niedzielski; owner: Sniedzielski):
[marvin@master] Chore: don't restart client on server changes

https://gerrit.wikimedia.org/r/391284

Change 391285 had a related patch set uploaded (by Niedzielski; owner: Sniedzielski):
[marvin@master] Chore: use Uglify version with ES6 support

https://gerrit.wikimedia.org/r/391285

Change 391363 had a related patch set uploaded (by Niedzielski; owner: Sniedzielski):
[marvin@master] Chore: replace IgnorePlugin usage with non_webpack_require

https://gerrit.wikimedia.org/r/391363

Change 391467 had a related patch set uploaded (by Niedzielski; owner: Sniedzielski):
[marvin@master] WIP: use Webpack for server production builds

https://gerrit.wikimedia.org/r/391467

Change 391283 merged by jenkins-bot:
[marvin@master] Chore: replace clean script with Webpack plugin

https://gerrit.wikimedia.org/r/391283

Change 391284 merged by jenkins-bot:
[marvin@master] Chore: don't restart client on server changes

https://gerrit.wikimedia.org/r/391284

Change 391285 merged by jenkins-bot:
[marvin@master] Chore: use Uglify version with ES6 support

https://gerrit.wikimedia.org/r/391285

Change 391363 abandoned by Niedzielski:
Chore: replace IgnorePlugin usage with non_webpack_require

https://gerrit.wikimedia.org/r/391363

Change 391750 had a related patch set uploaded (by Niedzielski; owner: Sniedzielski):
[marvin@master] Chore: move Webpack client config to subdirectory

https://gerrit.wikimedia.org/r/391750

Change 391750 merged by jenkins-bot:
[marvin@master] Chore: move Webpack client config to subdirectory

https://gerrit.wikimedia.org/r/391750

Change 391467 merged by jenkins-bot:
[marvin@master] Chore: use Webpack for server production builds

https://gerrit.wikimedia.org/r/391467