* feat: tests for copying units in content_staging app
* chore: convert old tests to pytest style
* feat: make pasting units work (in Studio backend API)
* refactor: make XmlMixin.parse_xml more like standard XBlock behavior
* feat: System defined taxonomies
* style: models.py moved to models/base.py
* feat: New Content System defined models
* style: Lint and migration
* fix: Fix migration error
* chore: Rebase and compile requirements
* refactor: adds ContentTaxonomyMixin for use when creating content system taxonomies
Pulls the ContentTaxonomy-specific logic into a mixin class to bring
the Content-specific logic into other Taxonony subclasses.
* fix: Tests
* test: System defined model validations
* fix: Move language taxonomy creation to openedx-learning
* style: Rename of OrganizationSystemDefinedTaxonomy
* style: nits
* chore: Update openedx-learning dependency
---------
Co-authored-by: Jillian Vogel <jill@opencraft.com>
This takes into account the extra files that are usually required when
copying problems containing JSInputs. Static files such as additional
CSS and JS files needed to interact and style the problem.
* refactor: moves is_content_creator
from cms.djangoapps.contentstore.helpers to common.djangoapps.student.auth
* feat: adds content tagging app
Adds models and APIs to support tagging content objects (e.g. XBlocks,
content libraries) by content authors. Content tags can be thought of as
"name:value" fields, though underneath they are a bit more complicated.
* adds dependency on openedx-learning<=0.1.0
* adds tagging app to LMS and CMS
* adds content tagging models, api, rules, admin, and tests.
* content taxonomies and tags can be maintained per organization by
content creators for that organization.
* chore: typing + fixes for content_staging
* chore: typing + fixes for learning_sequences
* chore: typing + fixes for content_libraries
* chore: typing + fixes for new XBlock runtime
* feat: type hinting more code with mypy
This re-applies commit 36cc415 with handling an invalid context_key in the
`PartitionService`. It can happen when rendering a `LibraryContentBlock` in
Studio because this service is initialized by the modulestore when validating
an XBlock to gather its error messages in the `studio_xblock_wrapper`.
* get rid of six.text_type(s)
* get rid of six.b()
* get rid of six.string_types
* get rid of six.PY2/six.PY3
* get rid of six.iteritems() and six.viewvalues()
* Revert "feat: remove `field-data` service from runtime initialization"
This reverts commit 6c435bb68c.
* Revert "feat: remove field data binding from the runtime"
This reverts commit 5f46ea52cd.
This adds the ability to get a list of detailed courses based on their
keys provided in the newly added `keys` query param in the `GET /courses/v1/courses/`
endpoint.
* feat: add non_editable for core notifications
* test: add test case for non_editable in core notification
* refactor: remove breakpoint from test cases