Security News
Research
Data Theft Repackaged: A Case Study in Malicious Wrapper Packages on npm
The Socket Research Team breaks down a malicious wrapper package that uses obfuscation to harvest credentials and exfiltrate sensitive data.
edx-event-routing-backends
Advanced tools
|pypi-badge| |ci-badge| |codecov-badge| |doc-badge| |pyversions-badge| |license-badge|
Various backends for retransmitting edX LMS events to external services.
event-routing-backends contains plugins for the event-tracking
_ app that is installed as a part of edx-platform. It provides a backend that can take events and re-transmit them to external services. It also provides some new processers that can convert edx-platform events into other formats.
Currently work to support xAPI and Caliper event formats is in progress.
See OEP 26
_ for background; the xAPI and Caliper subdocuments in particular include a specification of how LMS events will be translated to the format of the respective protocols.
.. _event-tracking: https://github.com/openedx/event-tracking .. _OEP 26: https://open-edx-proposals.readthedocs.io/en/latest/oep-0026-arch-realtime-events.html
Documentation for this repo is published to Read the Docs <https://event-routing-backends.readthedocs.io/en/latest/>
_
The code in this repository is licensed under the AGPL 3.0 unless otherwise noted.
Please see LICENSE.txt <LICENSE.txt>
_ for details.
Contributions are very welcome.
Please read How To Contribute <https://github.com/openedx/.github/blob/master/CONTRIBUTING.md>
__ for details.
should be followed for all Open edX projects.
The pull request description template should be automatically applied if you are creating a pull request from GitHub. Otherwise you
can find it at PULL_REQUEST_TEMPLATE.md <.github/PULL_REQUEST_TEMPLATE.md>
_.
The issue report template should be automatically applied if you are creating an issue on GitHub as well. Otherwise you
can find it at ISSUE_TEMPLATE.md <.github/ISSUE_TEMPLATE.md>
_.
Please do not report security issues in public. Please email security@openedx.org.
If you're having trouble, we have discussion forums at https://discuss.openedx.org where you can connect with others in the community.
Our real-time conversations are on Slack. You can request a Slack invitation
, then join our community Slack workspace
.
For more information about these options, see the Getting Help <https://openedx.org/getting-help>
__ page.
.. _Slack invitation: https://openedx.org/slack .. _community Slack workspace: https://openedx.slack.com/
.. |pypi-badge| image:: https://img.shields.io/pypi/v/event-routing-backends.svg :target: https://pypi.python.org/pypi/event-routing-backends/ :alt: PyPI
.. |ci-badge| image:: https://github.com/openedx/event-routing-backends/workflows/Python%20CI/badge.svg?branch=master :target: https://github.com/openedx/event-routing-backends/actions?query=workflow%3A%22Python+CI%22 :alt: CI
.. |codecov-badge| image:: https://codecov.io/github/edx/event-routing-backends/coverage.svg?branch=master :target: https://codecov.io/github/edx/event-routing-backends?branch=master :alt: Codecov
.. |doc-badge| image:: https://readthedocs.org/projects/event-routing-backends/badge/?version=latest :target: https://event-routing-backends.readthedocs.io/en/latest/ :alt: Documentation
.. |pyversions-badge| image:: https://img.shields.io/pypi/pyversions/event-routing-backends.svg :target: https://pypi.python.org/pypi/event-routing-backends/ :alt: Supported Python versions
.. |license-badge| image:: https://img.shields.io/github/license/edx/event-routing-backends.svg :target: https://github.com/openedx/event-routing-backends/blob/master/LICENSE.txt :alt: License
.. All enhancements and patches to event_routing_backends will be documented in this file. It adheres to the structure of https://keepachangelog.com/ , but in reStructuredText instead of Markdown (for ease of incorporation into Sphinx documentation and the PyPI description).
This project adheres to Semantic Versioning (https://semver.org/).
.. There should always be an "Unreleased" section for changes pending release.
[9.3.2]
[9.3.0]
[9.2.1]
[9.2.0]
[9.1.0]
[9.0.1]
[9.0.0]
* **BREAKING CHANGE**: Use a single entry point for all event routing backends.
which allows to easily switch bettwen celery and the event bus for the backends.
[8.3.0]
* Allow to use any configured engine to replay tracking logs
[8.2.0]
* Add support for batching for EventsRouter.
[8.1.2]
* Add grade.now_* events to the xAPI supported events list.
[8.1.1]
* Dinamically get the xblock version from the event.
[8.1.0]
[8.0.0]
* **BREAKING CHANGE**: Add transformer argument to openedx dynamic filter.
[7.2.0]
[7.1.0]
* Add support for openedx-filter that basically allows to extend or change the standard behavior
[7.0.2]
Ensure lists of answers in problem_check are properly serialized to JSON so they can be parsed downstream
Note: Old events cannot be updated, the log must be replayed (if possible).
[7.0.1]
* Do not send events for unknown courses
[7.0.0]
[6.2.0]
* Add support for completion events
[6.1.0]
[6.0.0]
* Do not send events for unknown users
[5.5.6]
djfernet
with django-fernet-fields-v2
[5.4.0]
* Add support for the ``edx.course.enrollment.mode_changed`` event
[5.3.1]
[5.3.0]
* Use proper externalId types XAPI and CALIPER instead of LTI
* Make user identifier in xAPI events configurable
* Switch from ``edx-sphinx-theme`` to ``sphinx-book-theme`` since the former is
deprecated
* Make id of xAPI statements idempotent
[5.2.2]
[5.2.1]
* Added `video_complete` event to xAPI backend and fixed broken links in documentation
[5.2.0]
[4.1.1]
* Switched from jsonfield2 to jsonfield as the earlier one has archived and merged back in the latter one.
[4.1.0]
[4.0.1]
* Change a noisy INFO log message in ``TransformerRegistry.register()`` to DEBUG and fix two logging typos.
[4.0.0]
CaliperEnvelopProcessor
to CaliperEnvelopeProcessor
and rename module accordingly (typo fix)[3.0.2]
* Added more directions for local testing
* changed how event data is enveloped for caliper events
* changed url to point from http://purl.imsglobal.org/ctx/caliper/v1p1 to http://purl.imsglobal.org/ctx/caliper/v1p2
[3.0.1]
This tag is a re-release of version 3.0.0. (Failed to bump internal version, though.)
[3.0.0]
* **Breaking change**: Caliper and xAPI processors will reject events unless the ``CALIPER_EVENTS_ENABLED`` and ``XAPI_EVENTS_ENABLED`` Django settings are enabled, respectively.
[2.0.0]
(no changelog recorded)
[1.0.0] - 2020-11-09
* Dropped support for Python 3.5
[0.2.0] - 2020-11-06
[0.1.0] - 2020-09-22
* First release on PyPI.
FAQs
Various backends for receiving edX LMS events.
We found that edx-event-routing-backends demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Research
The Socket Research Team breaks down a malicious wrapper package that uses obfuscation to harvest credentials and exfiltrate sensitive data.
Research
Security News
Attackers used a malicious npm package typosquatting a popular ESLint plugin to steal sensitive data, execute commands, and exploit developer systems.
Security News
The Ultralytics' PyPI Package was compromised four times in one weekend through GitHub Actions cache poisoning and failure to rotate previously compromised API tokens.