ralph-malph

View on PyPIReverse Dependencies (2)

4.2.0 ralph_malph-4.2.0-py2.py3-none-any.whl

Wheel Details

Project: ralph-malph
Version: 4.2.0
Filename: ralph_malph-4.2.0-py2.py3-none-any.whl
Download: [link]
Size: 198876
MD5: bba663a6e05b845d39b329bb72bdc2c3
SHA256: c092d1ee64901ce47b4aad6b267676bba8e97d79491713b536be3015c355ac8f
Uploaded: 2024-04-08 15:42:07 +0000

dist-info

METADATA

Metadata-Version: 2.1
Name: ralph-malph
Version: 4.2.0
Summary: Ralph, the ultimate Learning Record Store (and more!) for your learning analytics.
Author-Email: "Open FUN (France Université Numérique)" <fun.dev[at]fun-mooc.fr>
Project-Url: Homepage, https://openfun.github.io/ralph/
Project-Url: Bug Tracker, https://github.com/openfun/ralph/issues
Project-Url: Changelog, https://github.com/openfun/ralph/blob/main/CHANGELOG.md
Project-Url: Repository, https://github.com/openfun/ralph
License: MIT License Copyright (c) 2020-present France Université Numérique Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Keywords: LRS,Analytics,xAPI,Open edX
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Natural Language :: English
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Requires-Python: >=3.8
Requires-Dist: importlib-metadata (<8.0,>=7.0.1)
Requires-Dist: langcodes (>=3.2.0)
Requires-Dist: pydantic[dotenv,email] (<2.0,>=1.10.0)
Requires-Dist: rfc3987 (>=1.3.0)
Requires-Dist: clickhouse-connect[numpy,pandas] (<0.6); extra == "backend-clickhouse"
Requires-Dist: python-dateutil (>=2.8.2); extra == "backend-clickhouse"
Requires-Dist: elasticsearch[async] (>=8.0.0); extra == "backend-es"
Requires-Dist: ovh (>=1.0.0); extra == "backend-ldp"
Requires-Dist: requests (>=2.0.0); extra == "backend-ldp"
Requires-Dist: httpx (<0.25.0); extra == "backend-lrs"
Requires-Dist: motor[srv] (>=3.3.0); extra == "backend-mongo"
Requires-Dist: pymongo[srv] (>=4.0.0); extra == "backend-mongo"
Requires-Dist: python-dateutil (>=2.8.2); extra == "backend-mongo"
Requires-Dist: boto3 (>=1.24.70); extra == "backend-s3"
Requires-Dist: botocore (>=1.27.71); extra == "backend-s3"
Requires-Dist: requests-toolbelt (>=1.0.0); extra == "backend-s3"
Requires-Dist: python-keystoneclient (>=5.0.0); extra == "backend-swift"
Requires-Dist: python-swiftclient (>=4.0.0); extra == "backend-swift"
Requires-Dist: websockets (>=10.3); extra == "backend-ws"
Requires-Dist: ralph-malph[backend-clickhouse,backend-es,backend-ldp,backend-lrs,backend-mongo,backend-s3,backend-swift]; extra == "backends"
Requires-Dist: twine (==5.0.0); extra == "ci"
Requires-Dist: bcrypt (>=4.0.0); extra == "cli"
Requires-Dist: click (>=8.1.0); extra == "cli"
Requires-Dist: click-option-group (>=0.5.0); extra == "cli"
Requires-Dist: sentry-sdk[fastapi] (>=1.9.0); extra == "cli"
Requires-Dist: anyio (<4.3.1); extra == "dev"
Requires-Dist: black (==24.3.0); extra == "dev"
Requires-Dist: cryptography (==42.0.5); extra == "dev"
Requires-Dist: factory-boy (==3.3.0); extra == "dev"
Requires-Dist: hypothesis (<6.92.0); extra == "dev"
Requires-Dist: logging-gelf (==0.0.32); extra == "dev"
Requires-Dist: mike (==2.0.0); extra == "dev"
Requires-Dist: mkdocs (==1.5.3); extra == "dev"
Requires-Dist: mkdocs-click (==0.8.1); extra == "dev"
Requires-Dist: mkdocs-material (==9.5.17); extra == "dev"
Requires-Dist: mkdocstrings[python-legacy] (==0.24.3); extra == "dev"
Requires-Dist: moto (==5.0.5); extra == "dev"
Requires-Dist: mypy (==1.9.0); extra == "dev"
Requires-Dist: neoteroi-mkdocs (==1.0.5); extra == "dev"
Requires-Dist: pyfakefs (==5.4.0); extra == "dev"
Requires-Dist: pymdown-extensions (==10.7.1); extra == "dev"
Requires-Dist: pytest (<8.0.0); extra == "dev"
Requires-Dist: pytest-cov (==5.0.0); extra == "dev"
Requires-Dist: pytest-httpx (<0.23.0); extra == "dev"
Requires-Dist: requests-mock (==1.12.1); extra == "dev"
Requires-Dist: responses (==0.24.1); extra == "dev"
Requires-Dist: ruff (==0.3.5); extra == "dev"
Requires-Dist: types-python-dateutil (==2.9.0.20240316); extra == "dev"
Requires-Dist: types-python-jose (==3.3.4.20240106); extra == "dev"
Requires-Dist: types-requests (<2.31.0.20240407); extra == "dev"
Requires-Dist: types-cachetools (==5.3.0.7); extra == "dev"
Requires-Dist: ralph-malph[backends,cli,lrs]; extra == "full"
Requires-Dist: bcrypt (==4.1.2); extra == "lrs"
Requires-Dist: fastapi (==0.110.1); extra == "lrs"
Requires-Dist: cachetools (==5.3.3); extra == "lrs"
Requires-Dist: httpx (<0.25.0); extra == "lrs"
Requires-Dist: sentry-sdk (==1.44.1); extra == "lrs"
Requires-Dist: python-jose (==3.3.0); extra == "lrs"
Requires-Dist: uvicorn[standard] (==0.29.0); extra == "lrs"
Provides-Extra: backend-clickhouse
Provides-Extra: backend-es
Provides-Extra: backend-ldp
Provides-Extra: backend-lrs
Provides-Extra: backend-mongo
Provides-Extra: backend-s3
Provides-Extra: backend-swift
Provides-Extra: backend-ws
Provides-Extra: backends
Provides-Extra: ci
Provides-Extra: cli
Provides-Extra: dev
Provides-Extra: full
Provides-Extra: lrs
Description-Content-Type: text/markdown
License-File: LICENSE.md
[Description omitted; length: 6856 characters]

WHEEL

Wheel-Version: 1.0
Generator: bdist_wheel (0.42.0)
Root-Is-Purelib: true
Tag: py2-none-any
Tag: py3-none-any

RECORD

Path Digest Size
ralph/__init__.py sha256=EzS428aTywsCbmcXpsPYs9g1vdYU7JuLBZNPtgKLnjQ 43
ralph/__main__.py sha256=of1sivn7zxMY3-phUU4mmxhR1LaK52nJi9agebe3d5k 523
ralph/cli.py sha256=HG3Qh37_ngmdsvYYtpy94m8JMTSlMzy0WQEgga6F7w4 26509
ralph/conf.py sha256=vcFQElIsUyLwllUEzDD8P8MRbpQe41OquX04ZoDb7BI 7543
ralph/exceptions.py sha256=adSs2tveX0QkZ8Gj5WyAp5AdrC2L0jgxjyxBgnJT8GQ 940
ralph/filters.py sha256=lW8Gnb1V1NRhHNH8xCg9gHeRTsyxe7ASDbZ_FxogAwE 617
ralph/logger.py sha256=52TKPwEDChUjgmox6A86oal7W8ue6j0SmfBH39QWni0 408
ralph/parsers.py sha256=02TkUTCAxQNalL50_XMXPvxJKu4MPQqb7E3itUztZ4k 2896
ralph/utils.py sha256=wEbfEni2x124xAL69DdqXQcmJIMkrnjhqNcxu71qhCg 10245
ralph/api/__init__.py sha256=SDEKP15NDf4OQd2Chf9CtEPtv01jAw532QPa3QB3yMo 1514
ralph/api/forwarding.py sha256=3lsq4Zu_EtoctTlKf7mrVmYreFUwMBO1vpmfsbfFa3M 2149
ralph/api/models.py sha256=MNm3BVUYH-O6BsZJlM6X4ALAbyZowZKEbm_or3vDplc 1659
ralph/api/auth/__init__.py sha256=4oAhaf3TqZDvbKkVSHsPGRyRxqZa6vHnutWiA9YEq1I 1948
ralph/api/auth/basic.py sha256=b4egep6F05uTun5seBnRenPmMr2-lMiHetEP4yDi9l8 5810
ralph/api/auth/oidc.py sha256=JJl0_jFpxwyT-Vldd0OBApsTe3ckgykFSOhR-vohz3Q 5162
ralph/api/auth/user.py sha256=ibuT3JpxDij2C0BQzKk59-m2S2ksgeWwnOVArey9ZCY 2035
ralph/api/routers/__init__.py sha256=0eVFfVd2aZXTZHFXcLZnFk8MftII4cMhRBBYt3Hm3LI 13
ralph/api/routers/health.py sha256=pbUC_EtqMNXbr8GUYmdVPWK74NL6dfldKd2iRhckDFM 1501
ralph/api/routers/statements.py sha256=iP93iB-XaWA7y3kLL-YT2zFbeuPbVj1XqVi4XfuOoyQ 22459
ralph/backends/__init__.py sha256=0eVFfVd2aZXTZHFXcLZnFk8MftII4cMhRBBYt3Hm3LI 13
ralph/backends/loader.py sha256=ri2QrlyGSazKK_6Yw9khqdHx__DJi6ggEge5uEAvFzY 2826
ralph/backends/data/__init__.py sha256=0eVFfVd2aZXTZHFXcLZnFk8MftII4cMhRBBYt3Hm3LI 13
ralph/backends/data/async_es.py sha256=4arpcrlTY24-zO0nOkaxdQpkDTtVkAvGVa0rtmi8Lvs 11851
ralph/backends/data/async_lrs.py sha256=WW5lXOvg-RHexCSDirxy_IW3cbss9UHuzXUl6IvfcjU 10305
ralph/backends/data/async_mongo.py sha256=frZBz8lAjCH7BcKbpqEMEuQzYLELc8QdPp_xWBBrcUQ 14074
ralph/backends/data/async_ws.py sha256=YzDq8LFexd20jNQHiLcWCvKtJcFchJxmLnExLBJBhLc 8971
ralph/backends/data/base.py sha256=cNYD7Ta5DD9hPsRf3ocnUIoSPtEj_4miLcdWOIE2Jbk 26653
ralph/backends/data/clickhouse.py sha256=hLgt4_V0mV3hyXVdYf78PRwlh3y86mrR2ZKRsf_JlTM 15896
ralph/backends/data/es.py sha256=un7Se8S1qKR7Q53SDZUHNJIkUnVbuoC7-icTwxcI4eQ 16196
ralph/backends/data/fs.py sha256=ZAGH4skvj2T-CO0qMOHGWk0vtGNSCzadH0bRTtrlqq8 14832
ralph/backends/data/ldp.py sha256=I5S0tNfPSeKjRJ63s_1s0FFpSLyu9fjQ5VdkAN1zmdc 11544
ralph/backends/data/lrs.py sha256=fIrL9DzuM0Luac8__nmAO-WqJwBPGZxqo2Q1RQ6NfqU 11101
ralph/backends/data/mixins.py sha256=VCTJMKu0Zn7ct65zJGfGPLH89sBfEmfl-TC8xRHGJ3Y 2301
ralph/backends/data/mongo.py sha256=LC9-fECRPkznB_OlpXBWKhPyhTfqsrcYqaop8nNdkoM 17787
ralph/backends/data/s3.py sha256=vOIjhqkaiausZEganKVMD2gi7AQi8EXS3dyhnCKvcPA 15913
ralph/backends/data/swift.py sha256=hAfKmaZ1zSnk6_Vx_BOGUkXjqAnfdXxWZLe6MjF989o 16547
ralph/backends/lrs/__init__.py sha256=0eVFfVd2aZXTZHFXcLZnFk8MftII4cMhRBBYt3Hm3LI 13
ralph/backends/lrs/async_es.py sha256=G2keLV-KHl9d7RJA9O8Ou3YkYrgZst9t6u13J6wLooE 2030
ralph/backends/lrs/async_mongo.py sha256=YgJAGUcvfn6GNgTC0Vuinxe5k7NrU803ELWPZSqmC_M 2120
ralph/backends/lrs/base.py sha256=_F30cxz_2-LnirLpeXLctcNZ9jfeKqYelYwBKiiB7N4 4592
ralph/backends/lrs/clickhouse.py sha256=mi4gsGLrhDUuUy6G_jkXvyxM_Ws5kG0ZLvPcG7JhIug 7030
ralph/backends/lrs/es.py sha256=SRAvTQSR_aR1dQ1QZEX_wYF6WIJbC-2EwkmOSUJQQbA 5099
ralph/backends/lrs/fs.py sha256=TnMX-39zlQLHQObWD10XmnRIe360F4POqOvZ-bKiNs0 15698
ralph/backends/lrs/mongo.py sha256=7cIaPsVA4LS8j1cZsgldfVgxrNW9zSOYDzWsBYzYu5U 5557
ralph/models/__init__.py sha256=0eVFfVd2aZXTZHFXcLZnFk8MftII4cMhRBBYt3Hm3LI 13
ralph/models/converter.py sha256=Abjxk-HwyGjGeBFFAcbIigdM2YsGczA-i2Pm6zabWN4 9412
ralph/models/selector.py sha256=92PgRrsY2pZoiXCTK04FP3-XTEs0il2JH4EBoO9jGuU 5250
ralph/models/validator.py sha256=SZlEkyTuFpSjDdOY3DL1mHGmJwWSF4dfHHzTeLJs8HU 3134
ralph/models/edx/__init__.py sha256=zMF6TLqppelBqAUo3rZ5woh7hP6zGiEgIP5ZC4BwduU 3670
ralph/models/edx/base.py sha256=D7enFbQ2ynJszIwSbkagldLjP836m-6mce9levklsx8 6446
ralph/models/edx/browser.py sha256=ztQHnKOiv8A2yplepmxa1xqJqfk52jbWJzpBsN6w8SA 920
ralph/models/edx/server.py sha256=1-pjgWdEsG2Dn1nvaUFWClYozo1cJfoGXjcV8Ui8ECA 1927
ralph/models/edx/bookmark/__init__.py sha256=0eVFfVd2aZXTZHFXcLZnFk8MftII4cMhRBBYt3Hm3LI 13
ralph/models/edx/bookmark/statements.py sha256=ZedQF7u72hh1_J4hTFZf2LVBXi6_XmUJNj14Jker6kc 4450
ralph/models/edx/bookmark/fields/__init__.py sha256=0eVFfVd2aZXTZHFXcLZnFk8MftII4cMhRBBYt3Hm3LI 13
ralph/models/edx/bookmark/fields/events.py sha256=FaSYNBcMS4PKCoHf8Fifvyxwy9QyQWRXMPInz72NQ40 2833
ralph/models/edx/certificate/__init__.py sha256=0eVFfVd2aZXTZHFXcLZnFk8MftII4cMhRBBYt3Hm3LI 13
ralph/models/edx/certificate/statements.py sha256=n9TBPhiD4GWj4tHyJgN5h28IhP1CayCgLJdLDSOsHss 4288
ralph/models/edx/certificate/fields/__init__.py sha256=0eVFfVd2aZXTZHFXcLZnFk8MftII4cMhRBBYt3Hm3LI 13
ralph/models/edx/certificate/fields/events.py sha256=_rpcQOp1I_XA-qthPN54gzpPWWvPAVFS9iTjBfINGhk 2858
ralph/models/edx/cohort/__init__.py sha256=0eVFfVd2aZXTZHFXcLZnFk8MftII4cMhRBBYt3Hm3LI 13
ralph/models/edx/cohort/statements.py sha256=-A1fuQYRaevgpfOoidmT2AsHirbhmixQG-aHcOfOmAY 2351
ralph/models/edx/cohort/fields/__init__.py sha256=0eVFfVd2aZXTZHFXcLZnFk8MftII4cMhRBBYt3Hm3LI 13
ralph/models/edx/cohort/fields/events.py sha256=bcW7umyKnUDyJzEw_tJWr4cFkLYJ19_5iaLPFOIdpOs 597
ralph/models/edx/content_library_interaction/__init__.py sha256=0eVFfVd2aZXTZHFXcLZnFk8MftII4cMhRBBYt3Hm3LI 13
ralph/models/edx/content_library_interaction/statements.py sha256=VAo8g2hzQbfwwj4BDxWwF0R6KTf5Y99g3nNfoPTwx1U 2543
ralph/models/edx/content_library_interaction/fields/__init__.py sha256=0eVFfVd2aZXTZHFXcLZnFk8MftII4cMhRBBYt3Hm3LI 13
ralph/models/edx/content_library_interaction/fields/events.py sha256=XzQHk66GWa-_iDi7zKuJdwvwy-dPC1t6WaazCsI1v0I 3184
ralph/models/edx/converters/__init__.py sha256=0eVFfVd2aZXTZHFXcLZnFk8MftII4cMhRBBYt3Hm3LI 13
ralph/models/edx/converters/xapi/__init__.py sha256=Qeb015JvA2DkQ4Pw7Nv35M0N8Fb__fn5O-ukcXBhLPc 475
ralph/models/edx/converters/xapi/base.py sha256=LyQmRp-3ixTlvIJq5SIvvgLIypLO1GmNzKqe33yRupo 1795
ralph/models/edx/converters/xapi/enrollment.py sha256=iIodEcNO_xXhfXskji89ccQjOYucRiiv6kL8O6gg0VQ 1621
ralph/models/edx/converters/xapi/navigational.py sha256=1gMTTPPSFxARlW6IiBzWXqBlZtiJPvcwraX1lNYRYXE 958
ralph/models/edx/converters/xapi/server.py sha256=4lSUsp68_jUxGmoHqUD2MGZJs37Wz4Qkrn6bSW-Mor0 932
ralph/models/edx/converters/xapi/video.py sha256=WT8tnvyBX5qu52x_z24rNW2sZR-mo-FxNX-WpwuGcH0 7554
ralph/models/edx/course_content_completion/__init__.py sha256=0eVFfVd2aZXTZHFXcLZnFk8MftII4cMhRBBYt3Hm3LI 13
ralph/models/edx/course_content_completion/statements.py sha256=q7QvSMlrXvzKHyCDPO66142Xo3i05BAp1nAXcfx5-UE 1984
ralph/models/edx/course_content_completion/fields/__init__.py sha256=0eVFfVd2aZXTZHFXcLZnFk8MftII4cMhRBBYt3Hm3LI 13
ralph/models/edx/course_content_completion/fields/events.py sha256=nzdk5DtvG7vv-ExrSD17kA4y88ty1zWgBd85bSGnXsA 471
ralph/models/edx/drag_and_drop/__init__.py sha256=0eVFfVd2aZXTZHFXcLZnFk8MftII4cMhRBBYt3Hm3LI 13
ralph/models/edx/drag_and_drop/statements.py sha256=4BQTMya85Vq2Y0K9H8dQHJ7CuDIgAhf0KBtW9qlIFS4 4729
ralph/models/edx/drag_and_drop/fields/__init__.py sha256=0eVFfVd2aZXTZHFXcLZnFk8MftII4cMhRBBYt3Hm3LI 13
ralph/models/edx/drag_and_drop/fields/events.py sha256=x6-FIIgTWMIbUL_pLB34x_Hs5vJGkscIullgOmBTJhg 2433
ralph/models/edx/enrollment/__init__.py sha256=0eVFfVd2aZXTZHFXcLZnFk8MftII4cMhRBBYt3Hm3LI 13
ralph/models/edx/enrollment/statements.py sha256=2HS0VXOaPgfXt-mrodRKB39gGxzUvVTDKsVruATqczM 4860
ralph/models/edx/enrollment/fields/__init__.py sha256=0eVFfVd2aZXTZHFXcLZnFk8MftII4cMhRBBYt3Hm3LI 13
ralph/models/edx/enrollment/fields/contexts.py sha256=nX67EhujKj3tuwdLhK6eixKQOEfCTuLhaPfoMqw8Q80 1158
ralph/models/edx/enrollment/fields/events.py sha256=EVUlRy9aksZY6Hmq_dY8lvSN8GserIJv599lXwtWBac 950
ralph/models/edx/navigational/__init__.py sha256=0eVFfVd2aZXTZHFXcLZnFk8MftII4cMhRBBYt3Hm3LI 13
ralph/models/edx/navigational/statements.py sha256=Hypm61sHqCh-J0qad5dRUYSnXDFcdD_hUbTOwdkHpAU 3719
ralph/models/edx/navigational/fields/__init__.py sha256=0eVFfVd2aZXTZHFXcLZnFk8MftII4cMhRBBYt3Hm3LI 13
ralph/models/edx/navigational/fields/events.py sha256=kKI__SgcJ3BhbJ1dIexSPcnzOQjJa1GZmQ-GRCL3hoU 977
ralph/models/edx/notes/__init__.py sha256=0eVFfVd2aZXTZHFXcLZnFk8MftII4cMhRBBYt3Hm3LI 13
ralph/models/edx/notes/statements.py sha256=tBdYpGvTkMZ2xc-kdo47VqD6S4a7QQ-HenCoPcaRZzo 6788
ralph/models/edx/notes/fields/__init__.py sha256=0eVFfVd2aZXTZHFXcLZnFk8MftII4cMhRBBYt3Hm3LI 13
ralph/models/edx/notes/fields/events.py sha256=U28Q18oWRjyfd1nz6XFvmO5uhIqYJBlJZh_YBgkOm8I 3379
ralph/models/edx/open_response_assessment/__init__.py sha256=0eVFfVd2aZXTZHFXcLZnFk8MftII4cMhRBBYt3Hm3LI 13
ralph/models/edx/open_response_assessment/statements.py sha256=axgDofsCru3HPE2C9EqfQ3QOMtz0w4bPdLiRP6IX6MA 8201
ralph/models/edx/open_response_assessment/fields/__init__.py sha256=0eVFfVd2aZXTZHFXcLZnFk8MftII4cMhRBBYt3Hm3LI 13
ralph/models/edx/open_response_assessment/fields/events.py sha256=Bm2LjEY1CjfVuy9crALKLZQXbqnC0SV5fLbq4nFJgRA 9797
ralph/models/edx/peer_instruction/__init__.py sha256=0eVFfVd2aZXTZHFXcLZnFk8MftII4cMhRBBYt3Hm3LI 13
ralph/models/edx/peer_instruction/statements.py sha256=Dy8QREBMoDTWV16GJiki5d8LEchFf9mXYeecUHwb-6M 2905
ralph/models/edx/peer_instruction/fields/__init__.py sha256=0eVFfVd2aZXTZHFXcLZnFk8MftII4cMhRBBYt3Hm3LI 13
ralph/models/edx/peer_instruction/fields/events.py sha256=g9nBD32Oqwt1X0xtkRO9ToQX4b7XzuXr8MZjUJE3bfo 726
ralph/models/edx/poll/__init__.py sha256=0eVFfVd2aZXTZHFXcLZnFk8MftII4cMhRBBYt3Hm3LI 13
ralph/models/edx/poll/statements.py sha256=NJR_o90NTQ94zKethUWWLBwP8VCn9ZE-P08gz4-_Z5g 1684
ralph/models/edx/poll/fields/__init__.py sha256=0eVFfVd2aZXTZHFXcLZnFk8MftII4cMhRBBYt3Hm3LI 13
ralph/models/edx/poll/fields/events.py sha256=Yg_q_A2FUpgJkwfCsxxlSmooD3q0VJVTK02-CGdcXpk 471
ralph/models/edx/problem_interaction/__init__.py sha256=0eVFfVd2aZXTZHFXcLZnFk8MftII4cMhRBBYt3Hm3LI 13
ralph/models/edx/problem_interaction/statements.py sha256=MM_17xGZNgBe_6iI0n_fCTktg5ZGLP1xgmTwlKXGq5A 10544
ralph/models/edx/problem_interaction/fields/__init__.py sha256=0eVFfVd2aZXTZHFXcLZnFk8MftII4cMhRBBYt3Hm3LI 13
ralph/models/edx/problem_interaction/fields/events.py sha256=AC6HnHaQrO_nfIb0LLpAybMeeStkSiBG93VfXKmxPdU 12749
ralph/models/edx/survey/__init__.py sha256=0eVFfVd2aZXTZHFXcLZnFk8MftII4cMhRBBYt3Hm3LI 13
ralph/models/edx/survey/statements.py sha256=1ugRUjshYZ-IufV96505fS9CUCAf0acPzRWWvDCrXME 1728
ralph/models/edx/survey/fields/__init__.py sha256=0eVFfVd2aZXTZHFXcLZnFk8MftII4cMhRBBYt3Hm3LI 13
ralph/models/edx/survey/fields/events.py sha256=YVltw8-7IMJwIngfBwtg-w2DOauQbXjRIODf-T5P8kQ 513
ralph/models/edx/teams_related/__init__.py sha256=0eVFfVd2aZXTZHFXcLZnFk8MftII4cMhRBBYt3Hm3LI 13
ralph/models/edx/teams_related/statements.py sha256=RTuqLpuujfsQ33Z7HJOHrY0Hhkumw7dcF89A1heo6fM 5549
ralph/models/edx/teams_related/fields/__init__.py sha256=0eVFfVd2aZXTZHFXcLZnFk8MftII4cMhRBBYt3Hm3LI 13
ralph/models/edx/teams_related/fields/events.py sha256=T-yNqhEKBHCla_7a2KqeTSyNvgnWCo3OsxgOcZ3k9nM 3914
ralph/models/edx/textbook_interaction/__init__.py sha256=0eVFfVd2aZXTZHFXcLZnFk8MftII4cMhRBBYt3Hm3LI 13
ralph/models/edx/textbook_interaction/statements.py sha256=pkc962kr3xo2j5j2p7cdE0Cgoa4-OwMrdXm8u9Z_bYo 12455
ralph/models/edx/textbook_interaction/fields/__init__.py sha256=0eVFfVd2aZXTZHFXcLZnFk8MftII4cMhRBBYt3Hm3LI 13
ralph/models/edx/textbook_interaction/fields/events.py sha256=bVzoiZgZfak92BWhHUMNQ3yfQIM2gLbh1QTSIqY0rDk 10102
ralph/models/edx/video/__init__.py sha256=0eVFfVd2aZXTZHFXcLZnFk8MftII4cMhRBBYt3Hm3LI 13
ralph/models/edx/video/statements.py sha256=gF8DuzNDaKAfVsKIXW2VD6Ws4vYLFZTwUqdE91HDGGA 7778
ralph/models/edx/video/fields/__init__.py sha256=0eVFfVd2aZXTZHFXcLZnFk8MftII4cMhRBBYt3Hm3LI 13
ralph/models/edx/video/fields/events.py sha256=N2JR2nTOslsLcf2jBkdwLeQEHQheippcysp53go0IwE 3013
ralph/models/xapi/__init__.py sha256=KXvERzamxCQtRgbIdohB8aPe4eL2ea_VmnPyze8Jte0 1204
ralph/models/xapi/config.py sha256=bAKIJgu6XWL9tgc5X3nvdYfCW1d5ryjdm7ZNl6NvTzo 499
ralph/models/xapi/constants.py sha256=O6dNZ0Cqmg7xQRqaqVte2XW49cSIH_nx2dIEpXx7QQ0 83
ralph/models/xapi/base/__init__.py sha256=0eVFfVd2aZXTZHFXcLZnFk8MftII4cMhRBBYt3Hm3LI 13
ralph/models/xapi/base/agents.py sha256=m9fdGv7TSRPl48UEcVWPR05W7RB6F-f9UFHUsOwJ86Q 2078
ralph/models/xapi/base/attachments.py sha256=ZbiDPoj6bJ_xbqTtXs184Kg4FWZFrkIG0GCi_RCoyiI 987
ralph/models/xapi/base/common.py sha256=-cSd1JgCPkMrJrp-7pKOewjb9bHZ04u4ZEQC-QJT_wY 1617
ralph/models/xapi/base/contexts.py sha256=yjU0Ew2uCoxV9cOch73NFyBeuC37AzrBGmOj4o1Ho-0 2403
ralph/models/xapi/base/groups.py sha256=3tPAXjzgHuSsyPaeLwCapmirUawtYBEK36LbyIanY1E 2434
ralph/models/xapi/base/ifi.py sha256=ZhFELVSNBAz1phU3bJl7_x23FtzU3OwZfg6TH-zwC7A 1462
ralph/models/xapi/base/objects.py sha256=ZohjbKgUYuyiGopyN0DYTkN7yXzO3lwidA-d32UyfAY 1479
ralph/models/xapi/base/results.py sha256=hogrl0prcxLcxjymzP__MjAnpc8JrS1nWlOVqdKk2P0 2367
ralph/models/xapi/base/statements.py sha256=u57X7ZHfxVuZkFKRabB5fvimnN9udfamPVRkvL9BtXw 3067
ralph/models/xapi/base/unnested_objects.py sha256=hChkR2ARgzJo-p4Is3C3hT1oo6Sp2YTJ1yZOAKjFDfg 4105
ralph/models/xapi/base/verbs.py sha256=iYI2ICxGBYtNFunlpG15LQy6uyTmkD24c26n-UajtNc 449
ralph/models/xapi/concepts/__init__.py sha256=0eVFfVd2aZXTZHFXcLZnFk8MftII4cMhRBBYt3Hm3LI 13
ralph/models/xapi/concepts/activity_types/__init__.py sha256=0eVFfVd2aZXTZHFXcLZnFk8MftII4cMhRBBYt3Hm3LI 13
ralph/models/xapi/concepts/activity_types/acrossx_profile.py sha256=b6qHKwXCsuivj1Rz7W15u7087pFmPkjNWBqzbVhyF-E 1497
ralph/models/xapi/concepts/activity_types/activity_streams_vocabulary.py sha256=nDM3FG01GX14ItMdqGWY2wrl7aP7DRVWQtn9xRgqFWQ 1371
ralph/models/xapi/concepts/activity_types/audio.py sha256=38ouKCqEf0ziZHkVuSstJIR0LWAzIAituHjbClwzqjU 884
ralph/models/xapi/concepts/activity_types/scorm_profile.py sha256=jchFToQypw2CN5NqimfvBdo64tTbBYAhVraOhuniOXE 2933
ralph/models/xapi/concepts/activity_types/tincan_vocabulary.py sha256=tVmbRXTYengkt2UJrLrRjQfCWOSqngykGZ0zq99Zlcg 827
ralph/models/xapi/concepts/activity_types/video.py sha256=s_1Wb6jD6qNYNg0Nr_itkZCw2owRBkekCxXLLRrQnqo 898
ralph/models/xapi/concepts/activity_types/virtual_classroom.py sha256=G27iUWjK8IxqsO1pmUg1OkVwkfMvQq22m2DLodtnqIs 1090
ralph/models/xapi/concepts/constants/__init__.py sha256=0eVFfVd2aZXTZHFXcLZnFk8MftII4cMhRBBYt3Hm3LI 13
ralph/models/xapi/concepts/constants/acrossx_profile.py sha256=AMI48jvhPuPirPH0Ruc0arUZhV0LBUnFHCV2PuaTXTA 252
ralph/models/xapi/concepts/constants/cmi5_profile.py sha256=pFLpMUbN8sEeb3xqcVHSs9pjuq4IG1k3kQ5GNDru44k 163
ralph/models/xapi/concepts/constants/lms.py sha256=suxO1owi4ap1W-VcX-nKrRyICqDN26NDtOHEd_vEzYw 304
ralph/models/xapi/concepts/constants/scorm_profile.py sha256=JNi7bcf4m3kEGojf1_c_pURu8qV4uuguJhI_fDqve3w 222
ralph/models/xapi/concepts/constants/tincan_vocabulary.py sha256=eT_DGc7wAlzJyXbmDZzalk0UyEcJ8fb24-ZTNmhsyKs 178
ralph/models/xapi/concepts/constants/video.py sha256=GXQcc8ZMXKSFhzdxJ8dicdmTfIZGJyOul4-xS5xk0pI 1689
ralph/models/xapi/concepts/verbs/__init__.py sha256=0eVFfVd2aZXTZHFXcLZnFk8MftII4cMhRBBYt3Hm3LI 13
ralph/models/xapi/concepts/verbs/acrossx_profile.py sha256=KQhUsRmcep8Pdvyhj_HEyuisPIXq0XNcMMIkOo2YeZM 746
ralph/models/xapi/concepts/verbs/activity_streams_vocabulary.py sha256=AQ6XeFT_xzURBdSU7izC_Q0-PzQrF6NjaDTP1LdIMbI 1095
ralph/models/xapi/concepts/verbs/adl_vocabulary.py sha256=_DvzZSVcOAbyc1iEmMB-E_E4qg4Pr9QUIiG-zCLEInA 1659
ralph/models/xapi/concepts/verbs/navy_common_reference_profile.py sha256=mRRLFbUip8vm19guYLCqLRze30I3sXRCKBaxs9aH5vM 1232
ralph/models/xapi/concepts/verbs/scorm_profile.py sha256=CJL16lnJ8O8SF8epV6NMHEkrKUtNQwZ5Y9wJf_MvGCU 2182
ralph/models/xapi/concepts/verbs/tincan_vocabulary.py sha256=CrOatYGJrUEgZUyJRd64kAAZnehzu2Aalwbf8HBuCag 1679
ralph/models/xapi/concepts/verbs/video.py sha256=sxprFOipfNz8Ur2O-VRu5Sgb8FPy-fF-hnStFUKGCKg 1654
ralph/models/xapi/concepts/verbs/virtual_classroom.py sha256=guP_4jHFiTI9Ae8fH_LhGetWIxLxFRcUJ7oWkN3EUos 4613
ralph/models/xapi/lms/__init__.py sha256=0eVFfVd2aZXTZHFXcLZnFk8MftII4cMhRBBYt3Hm3LI 13
ralph/models/xapi/lms/contexts.py sha256=OcV6XAL7PqhKfUsxVlpWDkaihAwjeZWeWEqs5UbmCHg 5807
ralph/models/xapi/lms/objects.py sha256=jlei6NB2CuaBh6PqGZvsDzBUQam-Sch9OK71Zmc9QfY 2302
ralph/models/xapi/lms/statements.py sha256=fxJon2nTZ0g8nd9AzorUbirO0zPT1y9FIqunbDo_8XE 8206
ralph/models/xapi/navigation/__init__.py sha256=0eVFfVd2aZXTZHFXcLZnFk8MftII4cMhRBBYt3Hm3LI 13
ralph/models/xapi/navigation/statements.py sha256=oTH2SSh1_QTxKPlacdjWptWhhIRj5YA6bvqP1HCbYSU 1308
ralph/models/xapi/video/__init__.py sha256=0eVFfVd2aZXTZHFXcLZnFk8MftII4cMhRBBYt3Hm3LI 13
ralph/models/xapi/video/contexts.py sha256=ds8m7dF4ygoJN3J9Epfkjas6_22EnHZGGdGblIYE2yk 9291
ralph/models/xapi/video/results.py sha256=Y5YwPHMBKwKgAeYcK1zOYP5boJE4-rF4Rh2J5IvbWxc 5286
ralph/models/xapi/video/statements.py sha256=He21-9-pkLTtF9j1RgdklkEOFf0RotMfPt_WQ7jQsBE 6898
ralph/models/xapi/virtual_classroom/__init__.py sha256=0eVFfVd2aZXTZHFXcLZnFk8MftII4cMhRBBYt3Hm3LI 13
ralph/models/xapi/virtual_classroom/contexts.py sha256=ChnbNN1Hy69TNGfBucyKd6MPOnSVrOWR_En7RcEieTQ 8052
ralph/models/xapi/virtual_classroom/results.py sha256=b_yas2MzQ4yqQr8EMThAn05RE_QWwCQIJ2mLXI9FN-M 415
ralph/models/xapi/virtual_classroom/statements.py sha256=CtDklrtQPV0_dHnIwR5KvzGsV0-eiFig85IRorkX-do 12787
ralph_malph-4.2.0.dist-info/LICENSE.md sha256=COp3KR3pxw-ONoG5YGEBqhCO_fPou5MJGlZrQRd3Pi4 1094
ralph_malph-4.2.0.dist-info/METADATA sha256=O4FGA6cOvCQgA2faJhYafgAlcrPHQkPD_E90VQ_-aqk 12929
ralph_malph-4.2.0.dist-info/WHEEL sha256=-G_t0oGuE7UD0DrSpVZnq1hHMBV9DD2XkS5v7XpmTnk 110
ralph_malph-4.2.0.dist-info/entry_points.txt sha256=wQJ_iiotWegOwiiP8xLuCtpQLl7HoAWKFGNyb-qjHM4 1042
ralph_malph-4.2.0.dist-info/top_level.txt sha256=FdGuAbK4AaJmmKygpIp1hr_oh_1ehuESEhM62CmCWvg 16
ralph_malph-4.2.0.dist-info/zip-safe sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs 1
ralph_malph-4.2.0.dist-info/RECORD

top_level.txt

helm
ralph
tray

entry_points.txt

ralph = ralph.__main__:cli.cli
async_es = ralph.backends.data.async_es:AsyncESDataBackend
async_lrs = ralph.backends.data.async_lrs:AsyncLRSDataBackend
async_mongo = ralph.backends.data.async_mongo:AsyncMongoDataBackend
async_ws = ralph.backends.data.async_ws:AsyncWSDataBackend
clickhouse = ralph.backends.data.clickhouse:ClickHouseDataBackend
es = ralph.backends.data.es:ESDataBackend
fs = ralph.backends.data.fs:FSDataBackend
ldp = ralph.backends.data.ldp:LDPDataBackend
lrs = ralph.backends.data.lrs:LRSDataBackend
mongo = ralph.backends.data.mongo:MongoDataBackend
s3 = ralph.backends.data.s3:S3DataBackend
swift = ralph.backends.data.swift:SwiftDataBackend
async_es = ralph.backends.lrs.async_es:AsyncESLRSBackend
async_mongo = ralph.backends.lrs.async_mongo:AsyncMongoLRSBackend
clickhouse = ralph.backends.lrs.clickhouse:ClickHouseLRSBackend
es = ralph.backends.lrs.es:ESLRSBackend
fs = ralph.backends.lrs.fs:FSLRSBackend
mongo = ralph.backends.lrs.mongo:MongoLRSBackend

zip-safe