Skip to content
Snippets Groups Projects
  1. Feb 21, 2020
  2. Feb 19, 2020
  3. Jan 26, 2020
    • Aarif's avatar
      BOM-1141 · 8cc86d3a
      Aarif authored
      Updating the django-rate-limit requirement.
      updated the django-ratelimit to use unreleased version that supports Django 2.2
      8cc86d3a
  4. Dec 30, 2019
  5. Dec 20, 2019
    • Braden MacDonald's avatar
      Support anonymous users in the Blockstore-based XBlock runtime · f31dc198
      Braden MacDonald authored
      Implementation details:
      * Anonymous users are assigned a unique ID (like 
        `anon42c08f9996194e2a9339`) which gets stored in the django session.
        `block.scope_ids.user_id` and `block.runtime.anonymous_student_id`
        will both return this value.
      * User state for anonymous users is stored in the django cache and
        automatically expires as the cache gets pruned. Because user state is
        stored, anonymous users can use interactive blocks like capa problems.
      * There is no mechanism for upgrading to a registered account and
        keeping user state since the user state store for anonymous users
        (EphemeralKeyValueStore) is completely different than the one for
        registered users (DjangoKeyValueStore/"CSM"), and has no "list all
        keys" functionality.
      * "User State Summary" field values are shared among [recently active]
        anonymous users but are not shared with registered users.
      * Anonymous users can only access the `public_view` of XBlocks, not the
        regular `student_view`.
      f31dc198
  6. Dec 19, 2019
  7. Dec 04, 2019
    • Robert Raposa's avatar
      remove studio signin and signup pages · 2202545a
      Robert Raposa authored
      This completes the work started in https://github.com/edx/edx-platform/pull/19453
      to use the LMS login and registration for Studio, rather than Studio
      providing its own implementation.
      
      LMS login/registration are being used for the following reasons:
      1. LMS logistration properly handles all SSO integrations.
      2. A single logistration is simpler to maintain and understand.
      3. Allows Studio to work more like all other IDAs that use LMS
      logistration.
      
      The original switch to use LMS logistration for Studio also added the
      toggle `DISABLE_STUDIO_SSO_OVER_LMS` to provide the community some
      additional time for switching. This commit removes this toggle, which
      at this point means all deployments will use the LMS logistration.
      
      This change requires sharing cookies across LMS and Studio. Should that
      prove to be a problem for certain Open edX instances, there are
      discussions of possible alternative solutions.
      See https://github.com/edx/edx-platform/pull/19845#issuecomment-559154256
      
      Detailed changes:
      * Fix some Studio links that still went to old Studio signin and signup.
      * Remove DISABLE_STUDIO_SSO_OVER_LMS feature toggle.
      * Remove old studio signin and signup pages and templates.
      * Fix url name "login", which had different meanings for Studio and LMS.
      * Use the following settings: LOGIN_URL, FRONTEND_LOGIN_URL,
      FRONTEND_LOGOUT_URL, and FRONTEND_REGISTER_URL.
      * Redirect /signin and /signup to the LMS logistration.
      * Add custom metric `uses_pattern_library`.
      * Add custom metric `student_activate_account`.
      * Add Django Settings to allow /signin, /signup, and /login_post to be
      disabled once ready.
      
      This work also relates to ARCH-218 and DEPR-6.
      
      ARCH-1253
      2202545a
  8. Oct 29, 2019
  9. Sep 25, 2019
  10. Sep 18, 2019
    • Braden MacDonald's avatar
      Save user state for Blockstore XBlocks in CSM, clean up CSM a bit (#21630) · 1382bf87
      Braden MacDonald authored
      This commit introduces the changes needed for XBlocks in Blockstore to save
      their user state into CSM. Before this commit, all student state for Blockstore
      blocks was ephemeral (in-process dict store).
      
      Notes:
      
      * The main risk factor of this PR is that it adds non-course keys to the
        course_id field in CSM. If any code (like analytics?) reads course keys
        directly out of CSM and doesn't have graceful handling for key types it
        doesn't recognize, it could cause an issue. With the included changes to
        opaque-keys, calling CourseKey.from_string(...) on these values will raise
        InvalidKeyError since they're not CourseKeys. (But calling
        LearningContextKey.from_string(...) will work for both course and library
        keys.)
      * This commit introduces a slight regression for the Studio view of XBlocks in
        Blockstore content libraries: their state is now lost from request to request.
        I have a follow up PR to give them a proper studio-appropriate state store,
        but I want to review it separately so it doesn't hold up this PR and we can
        test this PR on its own.
      1382bf87
  11. Sep 17, 2019
  12. Sep 06, 2019
    • Feanil Patel's avatar
      Set a default value for PROCTORING_SETTINGS · 486e25bd
      Feanil Patel authored
      The proctoring app assumes that this setting exists and so we get an
      attribute error at runtime if it doesn't.  In python 2 this was not an
      issue but because of the change in how exceptions are handle for getting
      attributes, it's a problem in python 3.
      
      The correct thing to do would be to fix this in the proctoring app so
      that it checks for the existence of its value before using it but that's
      a longer cycle to make/deploy that change so doing this as a stopgap to
      get past it.
      486e25bd
  13. Aug 30, 2019
  14. Aug 16, 2019
  15. Aug 02, 2019
  16. Jul 19, 2019
  17. Jul 02, 2019
  18. Jun 28, 2019
  19. Jun 25, 2019
  20. May 09, 2019
    • Christopher Pappas's avatar
      ENT-1887 | Adding logic for new business marketing footer url construction,... · 4c5ca6d0
      Christopher Pappas authored
      ENT-1887 | Adding logic for new business marketing footer url construction, while maintaining backwards compatibility
      
      Fixing quality test
      
      Testsing out a default value for the sake of jenkins tests. will revert
      
      Fix footer test from being flaky
      
      Moving an import statement
      
      ran isort. adding a test. fixing 1 quality issue
      
      Quality cleanups
      
      Attempting more quality fixes
      
      adding back in config variable name for default value
      
      Adding ENTERPRISE_MARKETING_FOOTER_QUERY_PARAMS to common settings
      
      Changing marketing_url logic to only concatenate enterprise url to root if the enterprise url is relative (starts with a /)
      
      quality fixes
      4c5ca6d0
  21. May 07, 2019
  22. Apr 18, 2019
  23. Mar 28, 2019
  24. Mar 14, 2019
  25. Mar 02, 2019
  26. Feb 13, 2019
  27. Dec 21, 2018
  28. Dec 13, 2018
  29. Nov 05, 2018
  30. Oct 31, 2018
    • Alex Dusenbery's avatar
    • Robert Raposa's avatar
      Remove JWT_COOKIES_FLAG. · 53239bdf
      Robert Raposa authored
      The JWT_COOKIES_FLAG was a temporary flag used for rollout of the new
      JWT cookies. These are live in Production, so we are removing the flag.
      
      Without this flag, we set JWT cookies during login. However, this
      requires an oAuth Client that isn't always available during unit tests.
      We introduced a feature flag that is only used for unit tests to
      disable setting the JWT cookies. The code explains a bit more why this
      solution was selected over adding the oauth client to the database.
      
      ARCH-247
      53239bdf
  31. Oct 10, 2018
  32. Oct 01, 2018
  33. Aug 14, 2018
  34. Jul 30, 2018
  35. Jun 28, 2018
Loading