Skip to content
Snippets Groups Projects
  1. Nov 04, 2020
    • Kyle McCormick's avatar
      Use full names for lms.djangoapps imports (#25401) · d1a775d3
      Kyle McCormick authored
      * Use full LMS imports paths in LMS settings and urls modules
      * Use full LMS import paths in Studio settings and urls modules
      * Import from lms.djangoapps.badges instead of badges
      * Import from lms.djangoapps.branding instead of branding
      * Import from lms.djangoapps.bulk_email instead of bulk_email
      * Import from lms.djangoapps.bulk_enroll instead of bulk_enroll
      * Import from lms.djangoapps.ccx instead of ccx
      * Import from lms.djangoapps.course_api instead of course_api
      * Import from lms.djangoapps.course_blocks instead of course_blocks
      * Import from lms.djangoapps.course_wiki instead of course_wiki
      * Import from lms.djangoapps.courseware instead of courseware
      * Import from lms.djangoapps.dashboard instead of dashboard
      * Import from lms.djangoapps.discussion import discussion
      * Import from lms.djangoapps.email_marketing instead of email_marketing
      * Import from lms.djangoapps.experiments instead of experiments
      * Import from lms.djangoapps.gating instead of gating
      * Import from lms.djangoapps.grades instead of grades
      * Import from lms.djangoapps.instructor_analytics instead of instructor_analytics
      * Import form lms.djangoapps.lms_xblock instead of lms_xblock
      * Import from lms.djangoapps.lti_provider instead of lti_provider
      * Import from lms.djangoapps.mobile_api instead of mobile_api
      * Import from lms.djangoapps.rss_proxy instead of rss_proxy
      * Import from lms.djangoapps.static_template_view instead of static_template_view
      * Import from lms.djangoapps.survey instead of survey
      * Import from lms.djangoapps.verify_student instead of verify_student
      * Stop suppressing EdxPlatformDeprecatedImportWarnings
  2. Oct 29, 2020
  3. Oct 23, 2020
  4. Oct 14, 2020
  5. Sep 23, 2020
  6. Sep 22, 2020
  7. Sep 18, 2020
  8. Aug 20, 2020
  9. Aug 12, 2020
  10. Aug 06, 2020
  11. Jul 24, 2020
  12. Jun 30, 2020
  13. Jun 10, 2020
  14. May 01, 2020
  15. Apr 23, 2020
  16. Apr 09, 2020
  17. Apr 08, 2020
  18. Mar 04, 2020
  19. Feb 21, 2020
  20. Feb 19, 2020
  21. 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
  22. Dec 30, 2019
  23. 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
  24. Dec 19, 2019
  25. 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
  26. Oct 29, 2019
  27. Sep 25, 2019
  28. 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
  29. Sep 17, 2019
  30. 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
  31. Aug 30, 2019
  32. Aug 16, 2019
  33. Aug 02, 2019
  34. Jul 19, 2019
  35. Jul 02, 2019
  36. Jun 28, 2019
  37. Jun 25, 2019
Loading