edx-ace 1.11.2__py2.py3-none-any.whl → 1.11.4__py2.py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- edx_ace/__init__.py +1 -1
- edx_ace/channel/__init__.py +3 -1
- edx_ace/utils/signals.py +4 -0
- {edx_ace-1.11.2.dist-info → edx_ace-1.11.4.dist-info}/METADATA +40 -46
- {edx_ace-1.11.2.dist-info → edx_ace-1.11.4.dist-info}/RECORD +9 -9
- {edx_ace-1.11.2.dist-info → edx_ace-1.11.4.dist-info}/WHEEL +1 -1
- {edx_ace-1.11.2.dist-info → edx_ace-1.11.4.dist-info}/entry_points.txt +0 -1
- {edx_ace-1.11.2.dist-info → edx_ace-1.11.4.dist-info}/LICENSE.txt +0 -0
- {edx_ace-1.11.2.dist-info → edx_ace-1.11.4.dist-info}/top_level.txt +0 -0
edx_ace/__init__.py
CHANGED
edx_ace/channel/__init__.py
CHANGED
@@ -176,7 +176,9 @@ def get_channel_for_message(channel_type, message):
|
|
176
176
|
channel_names = []
|
177
177
|
|
178
178
|
if channel_type == ChannelType.EMAIL:
|
179
|
-
if message.options.get('
|
179
|
+
if message.options.get('override_default_channel'):
|
180
|
+
channel_names = [message.options.get('override_default_channel')]
|
181
|
+
elif message.options.get('transactional'):
|
180
182
|
channel_names = [settings.ACE_CHANNEL_TRANSACTIONAL_EMAIL, settings.ACE_CHANNEL_DEFAULT_EMAIL]
|
181
183
|
else:
|
182
184
|
channel_names = [settings.ACE_CHANNEL_DEFAULT_EMAIL]
|
edx_ace/utils/signals.py
CHANGED
@@ -1,6 +1,8 @@
|
|
1
1
|
"""
|
2
2
|
Utils for signals.
|
3
3
|
"""
|
4
|
+
from django.utils import translation
|
5
|
+
|
4
6
|
from edx_ace.signals import ACE_MESSAGE_SENT
|
5
7
|
|
6
8
|
|
@@ -42,5 +44,7 @@ def send_ace_message_sent_signal(channel, message):
|
|
42
44
|
'options': message.options,
|
43
45
|
'uuid': str(message.uuid),
|
44
46
|
'send_uuid': str(message.send_uuid),
|
47
|
+
'message_language': message.language,
|
48
|
+
'translation_language': translation.get_language()
|
45
49
|
}
|
46
50
|
ACE_MESSAGE_SENT.send(sender=channel, message=make_serializable_object(data))
|
@@ -1,13 +1,12 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: edx-ace
|
3
|
-
Version: 1.11.
|
3
|
+
Version: 1.11.4
|
4
4
|
Summary: Framework for Messaging
|
5
5
|
Home-page: https://github.com/openedx/edx-ace
|
6
6
|
Author: edX
|
7
7
|
Author-email: oscm@edx.org
|
8
8
|
License: AGPL 3.0
|
9
9
|
Keywords: Django edx
|
10
|
-
Platform: UNKNOWN
|
11
10
|
Classifier: Development Status :: 3 - Alpha
|
12
11
|
Classifier: Framework :: Django
|
13
12
|
Classifier: Framework :: Django :: 4.2
|
@@ -18,6 +17,7 @@ Classifier: Programming Language :: Python :: 3
|
|
18
17
|
Classifier: Programming Language :: Python :: 3.8
|
19
18
|
Classifier: Programming Language :: Python :: 3.12
|
20
19
|
Description-Content-Type: text/x-rst
|
20
|
+
License-File: LICENSE.txt
|
21
21
|
Requires-Dist: Django>=2.2
|
22
22
|
Requires-Dist: attrs>=17.2.0
|
23
23
|
Requires-Dist: django-push-notifications
|
@@ -39,7 +39,7 @@ edX Automated Communication Engine (A.C.E.)
|
|
39
39
|
|doc-badge| |pyversions-badge|
|
40
40
|
|
41
41
|
Purpose
|
42
|
-
|
42
|
+
*******
|
43
43
|
|
44
44
|
The `automated communication engine <https://edx-ace.readthedocs.io/en/latest/>`_, A.C.E. for short, is a Django app
|
45
45
|
for messaging learners on the Open edX platform. This
|
@@ -49,12 +49,12 @@ are the currently supported delivery channels. In the future we may add support
|
|
49
49
|
notifications.
|
50
50
|
|
51
51
|
Getting Started
|
52
|
-
|
52
|
+
***************
|
53
53
|
|
54
|
-
For instructions on starting local development, see `Getting Started <https://github.com/openedx/edx-ace/blob/master/docs/getting_started.rst>`_.
|
54
|
+
For instructions on starting local development, see `Getting Started page <https://github.com/openedx/edx-ace/blob/master/docs/getting_started.rst>`_.
|
55
55
|
|
56
56
|
Getting Help
|
57
|
-
|
57
|
+
************
|
58
58
|
|
59
59
|
Documentation
|
60
60
|
-------------
|
@@ -79,14 +79,14 @@ can provide.
|
|
79
79
|
|
80
80
|
https://github.com/openedx/edx-ace/issues
|
81
81
|
|
82
|
-
For more information about these options, see the `
|
82
|
+
For more information about these options, see the `help`_ page.
|
83
83
|
|
84
84
|
.. _Slack invitation: https://openedx.org/slack
|
85
85
|
.. _community Slack workspace: https://openedx.slack.com/
|
86
|
-
..
|
86
|
+
.. _help: https://openedx.org/getting-help
|
87
87
|
|
88
88
|
License
|
89
|
-
|
89
|
+
*******
|
90
90
|
|
91
91
|
The code in this repository is licensed under the AGPL 3.0 unless
|
92
92
|
otherwise noted.
|
@@ -94,7 +94,7 @@ otherwise noted.
|
|
94
94
|
Please see ``LICENSE.txt`` for details.
|
95
95
|
|
96
96
|
Contributing
|
97
|
-
|
97
|
+
************
|
98
98
|
|
99
99
|
Contributions are very welcome.
|
100
100
|
|
@@ -111,14 +111,14 @@ Issue report template should be automatically applied if you are sending it from
|
|
111
111
|
can find it at `ISSUE_TEMPLATE.md <https://github.com/openedx/edx-ace/blob/master/.github/ISSUE_TEMPLATE.md>`_
|
112
112
|
|
113
113
|
The Open edX Code of Conduct
|
114
|
-
|
114
|
+
****************************
|
115
115
|
|
116
116
|
All community members are expected to follow the `Open edX Code of Conduct`_.
|
117
117
|
|
118
118
|
.. _Open edX Code of Conduct: https://openedx.org/code-of-conduct/
|
119
119
|
|
120
120
|
People
|
121
|
-
|
121
|
+
******
|
122
122
|
|
123
123
|
The assigned maintainers for this component and other project details may be
|
124
124
|
found in `Backstage`_. Backstage pulls this data from the ``catalog-info.yaml``
|
@@ -127,7 +127,7 @@ file in this repo.
|
|
127
127
|
.. _Backstage: https://open-edx-backstage.herokuapp.com/catalog/default/component/edx-ace
|
128
128
|
|
129
129
|
Reporting Security Issues
|
130
|
-
|
130
|
+
*************************
|
131
131
|
|
132
132
|
Please do not report security issues in public. Please email security@openedx.org.
|
133
133
|
|
@@ -168,7 +168,7 @@ Please do not report security issues in public. Please email security@openedx.or
|
|
168
168
|
|
169
169
|
|
170
170
|
Change Log
|
171
|
-
|
171
|
+
##########
|
172
172
|
|
173
173
|
..
|
174
174
|
All enhancements and patches to edx_ace will be documented
|
@@ -181,54 +181,55 @@ Change Log
|
|
181
181
|
.. There should always be an "Unreleased" section for changes pending release.
|
182
182
|
|
183
183
|
Unreleased
|
184
|
-
|
184
|
+
**********
|
185
185
|
|
186
186
|
[1.8.0] - 2024-03-06
|
187
|
-
|
187
|
+
--------------------
|
188
|
+
|
188
189
|
* Added support for ``Python 3.12``
|
189
190
|
* Dropped support for ``Django 3.2``
|
190
191
|
|
191
192
|
|
192
193
|
[1.7.0] - 2023-07-21
|
193
|
-
|
194
|
+
--------------------
|
194
195
|
|
195
196
|
* Switch from ``edx-sphinx-theme`` to ``sphinx-book-theme`` since the former is
|
196
197
|
deprecated
|
197
198
|
* Added support for django 4.2
|
198
199
|
|
199
200
|
[1.6.1] - 2023-02-07
|
200
|
-
|
201
|
+
--------------------
|
201
202
|
|
202
203
|
* Updated code coverage target in https://github.com/openedx/edx-ace/pull/189
|
203
204
|
* Updated Python Requirements in https://github.com/openedx/edx-ace/pull/199
|
204
205
|
* **Full Changelog**: https://github.com/openedx/edx-ace/compare/v1.6.0...v1.6.1
|
205
206
|
|
206
207
|
[1.5.0] - 2022-02-15
|
207
|
-
|
208
|
+
--------------------
|
208
209
|
|
209
210
|
* Added support for Django40
|
210
211
|
* Removed support for Django22, 30 and 31
|
211
212
|
|
212
213
|
[1.4.1] - 2021-12-06
|
213
|
-
|
214
|
+
--------------------
|
214
215
|
|
215
216
|
* Adds in the ability to override frequency caps for Braze emails. Can be accessed via
|
216
217
|
Message options using the key ``override_frequency_capping``. All emails containing the
|
217
218
|
``transactional`` Message option will also override frequency caps.
|
218
219
|
|
219
220
|
[1.4.0] - 2021-11-08
|
220
|
-
|
221
|
+
--------------------
|
221
222
|
|
222
223
|
* Deprecate the action_links property
|
223
224
|
* Add a get_action_links method and template tag to allow passing arguments to action links
|
224
225
|
|
225
226
|
[1.3.1] - 2021-08-17
|
226
|
-
|
227
|
+
--------------------
|
227
228
|
|
228
229
|
* Adjust name ``handles_delivery_for_message`` to ``overrides_delivery_for_message``
|
229
230
|
|
230
231
|
[1.3.0] - 2021-08-16
|
231
|
-
|
232
|
+
--------------------
|
232
233
|
|
233
234
|
* New channel method ``handles_delivery_for_message`` for allowing a default channel
|
234
235
|
to claim a message, even if it would normally be delivered to the configured
|
@@ -238,29 +239,29 @@ Unreleased
|
|
238
239
|
needed.
|
239
240
|
|
240
241
|
[1.2.0] - 2021-07-16
|
241
|
-
|
242
|
+
--------------------
|
242
243
|
|
243
244
|
* Added support for django 3.2
|
244
245
|
|
245
246
|
[1.1.1] - 2021-07-09
|
246
|
-
|
247
|
+
--------------------
|
247
248
|
|
248
249
|
* Removed upper constraint from Django
|
249
250
|
|
250
251
|
[1.1.0] - 2021-03-26
|
251
|
-
|
252
|
+
--------------------
|
252
253
|
|
253
254
|
* Braze: Add ACE_CHANNEL_BRAZE_FROM_EMAIL setting to override the normal from address
|
254
255
|
* Sailthru: Remove Braze rollout waffle flag
|
255
256
|
|
256
257
|
[1.0.1] - 2021-03-15
|
257
|
-
|
258
|
+
--------------------
|
258
259
|
|
259
260
|
* Braze: Add an unsubscribe action link
|
260
261
|
* Braze: Don't ask Braze to inline css, as ACE templates already have inline css
|
261
262
|
|
262
263
|
[1.0.0] - 2021-03-11
|
263
|
-
|
264
|
+
--------------------
|
264
265
|
|
265
266
|
* BREAKING: Recipient objects now take `lms_user_id` instead of `username`
|
266
267
|
* New `braze_email` backend, needing the following new configuration:
|
@@ -271,59 +272,52 @@ Unreleased
|
|
271
272
|
* ACE_CHANNEL_BRAZE_CAMPAIGNS (an optional dictionary of ACE message names to Braze campaign identifiers)
|
272
273
|
|
273
274
|
[0.1.18] - 2020-11-19
|
274
|
-
|
275
|
+
---------------------
|
275
276
|
|
276
277
|
* Updated he travis-badge in README.rst to point to travis-ci.com
|
277
278
|
|
278
279
|
[0.1.17] - 2020-10-19
|
279
|
-
|
280
|
+
---------------------
|
280
281
|
|
281
282
|
* Use IntEnum to avoid silent failure in value comparisons
|
282
283
|
|
283
284
|
[0.1.16] - 2020-10-17
|
284
|
-
|
285
|
+
---------------------
|
285
286
|
|
286
287
|
* Fixed Enum usage for Python 3.8 to avoid TypeError when comparing values
|
287
288
|
|
288
289
|
[0.1.15] - 2020-03-11
|
289
|
-
|
290
|
+
---------------------
|
290
291
|
|
291
292
|
* Added support for Python 3.8
|
292
293
|
* Removed support for Django 2.0 and 2.1
|
293
294
|
|
294
295
|
[0.1.14] - 2020-03-11
|
295
|
-
|
296
|
+
---------------------
|
296
297
|
|
297
298
|
* Fix trivial warning from deprecated use of attr library.
|
298
299
|
|
299
300
|
[0.1.13] - 2019-12-06
|
300
|
-
|
301
|
+
---------------------
|
301
302
|
|
302
303
|
* Django22 Support.
|
303
304
|
|
304
305
|
[0.1.12] - 2019-10-16
|
305
|
-
|
306
|
+
---------------------
|
306
307
|
|
307
308
|
* Reply_to field added in emails.
|
308
309
|
|
309
310
|
[0.1.10] - 2018-11-01
|
310
|
-
|
311
|
+
---------------------
|
311
312
|
|
312
313
|
* Django lazy text translations are handled properly.
|
313
314
|
|
314
|
-
|
315
315
|
[0.1.9] - 2018-07-13
|
316
|
-
|
316
|
+
--------------------
|
317
317
|
|
318
318
|
* Updated delivery logging
|
319
319
|
|
320
|
-
|
321
320
|
[0.1.0] - 2017-08-08
|
322
|
-
|
323
|
-
|
324
|
-
Added
|
325
|
-
_____
|
326
|
-
|
327
|
-
* First release on PyPI.
|
328
|
-
|
321
|
+
--------------------
|
329
322
|
|
323
|
+
* [Added] First release on PyPI.
|
@@ -1,4 +1,4 @@
|
|
1
|
-
edx_ace/__init__.py,sha256=
|
1
|
+
edx_ace/__init__.py,sha256=G-qIKxlqAqzy9u_msaKLkPFJqCvqVgw0ose1zPyN15s,636
|
2
2
|
edx_ace/ace.py,sha256=0nP8zvIWiME4qmpMT1PaV4nRDG6YR9Dxm7A6FGoBa8I,2501
|
3
3
|
edx_ace/apps.py,sha256=xNedkdW6TNpm-W1uxnj3Vre2R1akkh2n_7DkSfKXmAk,216
|
4
4
|
edx_ace/delivery.py,sha256=zo5lNHngycEn0tu-e3JM26njRVmaAttAH3D5ohz_468,2812
|
@@ -12,7 +12,7 @@ edx_ace/recipient_resolver.py,sha256=ChY0cgLSt_HioKSHyuCh7iHSJOsBWuivsOvAc6QyedE
|
|
12
12
|
edx_ace/renderers.py,sha256=eJcTWyRhny-3PLHDV4Rozk1TJ0fjsqgOcFOWO_TTngk,3143
|
13
13
|
edx_ace/serialization.py,sha256=EptnQqbI9j5kVqdUDAlm2pcm3dUsFwsP9tAji3y5uqc,3775
|
14
14
|
edx_ace/signals.py,sha256=7kwpw7SgpPP6TRTtTQeGEOZ2cD_AcD4sSrpVxd_a19w,160
|
15
|
-
edx_ace/channel/__init__.py,sha256=
|
15
|
+
edx_ace/channel/__init__.py,sha256=bQ8rpb_o0CvyWxZjOkmU9Au2S4kUCeKM8upvUb3yG7g,7030
|
16
16
|
edx_ace/channel/braze.py,sha256=k-R9jZpiBQTV0FQ3Z2gOipVgxNpBMPSLBL71muh9go4,10240
|
17
17
|
edx_ace/channel/django_email.py,sha256=9TNdiFJ2U3QjKEriUl3_9twAFkH-E2EmrWujStUOWN0,2174
|
18
18
|
edx_ace/channel/file.py,sha256=_Jx8o5Cw8IpEdaF7g-ljF7CEqswBHmuwyupm_tkI2wk,3028
|
@@ -41,10 +41,10 @@ edx_ace/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
41
41
|
edx_ace/utils/date.py,sha256=Rmz3RAUCdd30hu1qcKH7FmAypaw1aSoZg-yfZig1c8A,1483
|
42
42
|
edx_ace/utils/once.py,sha256=sY3szBh3gvvAjrKbKq4S2mCejompjh5YcYD7XOhzjGU,2024
|
43
43
|
edx_ace/utils/plugins.py,sha256=U-l-eU2uWUiiwYV-H-2DfmwjoksqskAsYwS7QnThy2Q,2090
|
44
|
-
edx_ace/utils/signals.py,sha256=
|
45
|
-
edx_ace-1.11.
|
46
|
-
edx_ace-1.11.
|
47
|
-
edx_ace-1.11.
|
48
|
-
edx_ace-1.11.
|
49
|
-
edx_ace-1.11.
|
50
|
-
edx_ace-1.11.
|
44
|
+
edx_ace/utils/signals.py,sha256=efmnxI78juMLo6PJkPyfJ6pYTMY3kHnGy-_IR8FsDm8,1637
|
45
|
+
edx_ace-1.11.4.dist-info/LICENSE.txt,sha256=VrSJ4gO4NCpskzfNHbaTB4VcN9Q213YdcHbpOZSwcOA,35138
|
46
|
+
edx_ace-1.11.4.dist-info/METADATA,sha256=l7cVBcI9N2pVQnjasjuU0P--O3ZIIClIbBeurI1NqvM,10039
|
47
|
+
edx_ace-1.11.4.dist-info/WHEEL,sha256=Kh9pAotZVRFj97E15yTA4iADqXdQfIVTHcNaZTjxeGM,110
|
48
|
+
edx_ace-1.11.4.dist-info/entry_points.txt,sha256=hvoHnxCJGiV3KDdVi9YKPCCsub5O__3Q4dbVpTGPJoY,331
|
49
|
+
edx_ace-1.11.4.dist-info/top_level.txt,sha256=5eg_80KI88VkeiCVqZUqcYcc_PfPOg8o1GA4HxsiRU8,8
|
50
|
+
edx_ace-1.11.4.dist-info/RECORD,,
|
File without changes
|
File without changes
|