1382bf8720b23b45fc2950f598540dc0a0ba3ece
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.
This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
This is the main edX platform which consists of LMS and Studio. Installation ------------ Please refer to the following wiki pages in our `configuration repo`_ to install edX: - `edX Developer Stack`_: These instructions are for developers who want to contribute or make changes to the edX source code. - `edX Full Stack`_: Using Vagrant/Virtualbox this will setup all edX services on a single server in a production like configuration. - `edX Ubuntu 16.04 64-bit Installation`_: This will install edX on an existing Ubuntu 16.04 server. .. _configuration repo: https://github.com/edx/configuration .. _edX Developer Stack: https://github.com/edx/devstack .. _edX Full Stack: https://openedx.atlassian.net/wiki/display/OpenOPS/Running+Fullstack .. _edX Ubuntu 16.04 64-bit Installation: https://openedx.atlassian.net/wiki/display/OpenOPS/Native+Open+edX+Ubuntu+16.04+64+bit+Installation License ------- The code in this repository is licensed under version 3 of the AGPL unless otherwise noted. Please see the `LICENSE`_ file for details. .. _LICENSE: https://github.com/edx/edx-platform/blob/master/LICENSE More about Open edX ------------------- See the `Open edX site`_ to learn more about Open edX. You can find information about the edX roadmap, as well as about hosting, extending, and contributing to Open edX. In addition, the Open edX Portal provides product announcements, the Open edX blog, and other rich community resources. .. _Open edX site: https://open.edx.org Documentation ------------- Documentation details can be found in the `docs index.rst`_. .. _docs index.rst: docs/index.rst Getting Help ------------ If you’re having trouble, we have several different mailing lists where you can ask for help: - `openedx-ops`_: everything related to *running* Open edX. This includes installation issues, server management, cost analysis, and so on. - `openedx-translation`_: everything related to *translating* Open edX into other languages. This includes volunteer translators, our internationalization infrastructure, issues related to Transifex, and so on. - `openedx-analytics`_: everything related to *analytics* in Open edX. - `edx-code`_: anything else related to Open edX. This includes feature requests, idea proposals, refactorings, and so on. Our real-time conversations are on Slack. You can request a `Slack invitation`_, then join our `community Slack team`_. .. _openedx-ops: https://groups.google.com/forum/#!forum/openedx-ops .. _openedx-translation: https://groups.google.com/forum/#!forum/openedx-translation .. _openedx-analytics: https://groups.google.com/forum/#!forum/openedx-analytics .. _edx-code: https://groups.google.com/forum/#!forum/edx-code .. _Slack invitation: https://openedx-slack-invite.herokuapp.com/ .. _community Slack team: http://openedx.slack.com/ Issue Tracker ------------- `We use JIRA for our issue tracker`_, not GitHub Issues. To file a bug or request a new feature, please make a free account on our JIRA and create a new issue! If you’re filing a bug, we’d appreciate it if you would follow `our guidelines for filing high-quality, actionable bug reports`_. Thanks!! .. _We use JIRA for our issue tracker: https://openedx.atlassian.net/ .. _our guidelines for filing high-quality, actionable bug reports: https://openedx.atlassian.net/wiki/display/SUST/How+to+File+a+Quality+Bug+Report How to Contribute ----------------- Contributions are very welcome, but for legal reasons, you must submit a signed `individual contributor agreement`_ before we can accept your contribution. See our `CONTRIBUTING`_ file for more information – it also contains guidelines for how to maintain high code quality, which will make your contribution more likely to be accepted. Reporting Security Issues ------------------------- Please do not report security issues in public. Please email security@edx.org. .. _individual contributor agreement: https://open.edx.org/wp-content/uploads/2019/01/individual-contributor-agreement.pdf .. _CONTRIBUTING: https://github.com/edx/edx-platform/blob/master/CONTRIBUTING.rst
Languages
Python
73.7%
JavaScript
15.4%
HTML
7.1%
SCSS
3.2%
CSS
0.5%