1. 17 Apr, 2017 1 commit
  2. 16 Apr, 2017 1 commit
    • Restricting Credentials CORS access · 67846232
      After reading more on CORS (and sleeping!) I have finally corrected CORS
      for static files, restricting access to our knwon hosts. Our initial
      implementation was almost correct. It simply lacked the protocol—HTTP,
      HTTPS—on the regex.
      
      In my late-night push to just be done with this, I failed to go back to
      "first principles" and actually understand CORS, choosing to rely on
      various online "solutions". This lead to the unnecessary headers seen in
      previous commits. Since we only care about GET requests for fonts, we
      only need the single header. There is no need to handle preflight
      OPTIONS requests because we aren't making such requests.
      
      LEARNER-568
      Clinton Blackburn committed
  3. 14 Apr, 2017 5 commits
  4. 13 Apr, 2017 8 commits
  5. 12 Apr, 2017 12 commits
  6. 11 Apr, 2017 4 commits
  7. 10 Apr, 2017 1 commit
  8. 07 Apr, 2017 7 commits
  9. 06 Apr, 2017 1 commit
    • Disable app preload in gunicorn for LMS & Studio. · 30b924d5
      Since the earliest days of edX, we've run gunicorn with preload_app as
      True. This was primarily because the first handful of courses were using
      the XMLModuleStore, which was extremely slow to initialize because it
      had to read entire courses from disk and load them into memory at
      startup.
      
      XMLModuleStore courses stopped being created with the introduction of
      Studio, and we've long since removed them from edx.org. Note: This
      should not be confused with importing courses that are authored in XML.
      XMLModuleStore courses are courses who use the disk instead of Mongo
      for content persistence, and require a server restart for content edits
      to show.
      
      This commit sets things back to how Django is more commonly deployed
      with gunicorn. It will make server startup time somewhat more expensive
      because each worker process does init work, but it should make it
      easier to safely enable features like database connection pooling
      without having to worry about shared resources.
      
      [PERF-305]
      David Ormsbee committed