Install & Compatibility
Where this runs
tested against v1.15.0 · pip install
no network on importno background threads
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
muslpy 3.10–3.95 runs
installs and imports cleanly · install 0.0s · import 0.000s · 144.9MB
glibcpy 3.10–3.95 runs
installs and imports cleanly · install 11.5s · import 0.000s · 143MB
146MB installed
● package 146MB
Code
Verified usage
Verified import paths — ran on the pinned version, not inferred.
ace
✓ from edx_ace import ace
✗ from edx_ace import send_ace_message
Channel
✓ from edx_ace import Channel
Message
✓ from edx_ace import Message
Create and send a basic message using the ACE framework.
from edx_ace import send_ace_message
from edx_ace.message import Message
from edx_ace.recipient import Recipient
msg = Message(
app_name='myapp',
name='welcome_email',
language='en',
recipient=Recipient(username='learner', email='learner@example.com')
)
# Add context data as needed
msg.context.update({'name': 'John'})
send_ace_message(msg)
Upgrade
Version history
1.15.0latest on PyPI · released Jun 25, 2025
Audit
Dependencies
DjangorequiredCore framework dependency
edx-braze-clientoptionalBreaking change in v1.15.0: Braze push channel moved to this package