2017-12-14 Meeting Notes

Date

 Goals


TimeItemWhoNotes
10 minStatusEveryone

Bootstrap in LMS legacy pagesAlasdair Swan (Deactivated)

Micro-RCAs: Bootstrap/Popper, Paragon semantic release


Grid thingsRoya R (Deactivated)




Notes

Bootstrap/Popper

  • Dashboard(?) was broken in production.
    • It worked locally (because the optimizer doesn't run locally). It's not super clear how to run the optimizer locally.
      • Bootstrap depends on Popper.js. LMS bundles its code using RequireJS optimizer. RequireJS optimizer doesn't play well with Bootstrap
        • Bootstrap's exports don't play well with Require
  • Document how to run the optimizer locally
  • Make sure to always test on stage
  • Kill Require with fire

Paragon Release

  • A cascading release dependency did not merge in time for the Friday release.
    • Semantic Release didn't kick out a Paragon release after a merge to master.
      • Original thought: Travis setting debouncing master merge builds
      • Travis was failing due to an unknown commit hash
        • Ari accidentally published a development version to npm, which was blocking releases
          • It's hard to install dev builds locally
          • Potential solutions:
            • Install from git hash
              • npm install script to build post install (what if it gets committed??)
                • Remove when publishing?
                • Script could look for an env var?
              • remove ignored directories from gitignore, check them into the development branch (this could also get committed??)
              • Auto-publish development version on every commit
                • also kind of dangerous

Bootstrap

  • Enterprise new UI stuff
    • Header, footer, grid system should be consistent
      • Change header and footer everywhere??
      • Grid mixins throughout legacy code
    • Implement grids on a per-component basis?
    • Forcibly scope the Bad Old Rules?
      • Step one: put legacy class at document root
      • Incrementally scope the rules
      • Once all rules are scoped, move legacy to middle of page
      • Header and footer get Bootstrap, legacy gets Bad Old CSS
      • Legacy reset will need to un-reset Bootstrap reset
  • Header and footer are inconsistent
    • LMS
    • Ecom
    • Marketing
    • Studio
    • How to fix?
      1. Make all headers use edx-bootstrap
      2. Define shared header styles in edx-bootstrap
      3. Shared header/footer npm package(s)

Action Items