diff options
author | CoprDistGit <copr-devel@lists.fedorahosted.org> | 2023-02-24 07:26:11 +0000 |
---|---|---|
committer | CoprDistGit <copr-devel@lists.fedorahosted.org> | 2023-02-24 07:26:11 +0000 |
commit | b64785c6cd7c19fa1d5cfca542c885ddaa8ce877 (patch) | |
tree | 795652c6f4005d83dcbf3cb2083138e2711fc487 | |
parent | 32ee75d478828e5e581ca055af0b07bec57bd710 (diff) |
automatic import of python3-django-post_officeopeneuler20.03
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | python-django-post_office.spec | 260 | ||||
-rw-r--r-- | sources | 1 |
3 files changed, 262 insertions, 0 deletions
@@ -0,0 +1 @@ +/django-post_office-3.6.3.tar.gz diff --git a/python-django-post_office.spec b/python-django-post_office.spec new file mode 100644 index 0000000..26baca9 --- /dev/null +++ b/python-django-post_office.spec @@ -0,0 +1,260 @@ +%global _empty_manifest_terminate_build 0 +Name: python-django-post-office +Version: 3.6.3 +Release: 1 +Summary: A Django app to monitor and send mail asynchronously, complete with template support. +License: MIT +URL: https://github.com/ui/django-post_office +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/79/c2/c4cd1058ff4f524ecbfea4f6f35b7708ec6c9ec545c7073f20c4afb7ba2e/django-post_office-3.6.3.tar.gz +BuildArch: noarch + +Requires: python3-bleach[css] +Requires: python3-django +Requires: python3-jsonfield +Requires: python3-pytz +Requires: python3-bleach +Requires: python3-tox + +%description +### Caching +if Django's caching mechanism is configured, `post_office` will cache +`EmailTemplate` instances . If for some reason you want to disable +caching, set `POST_OFFICE_CACHE` to `False` in `settings.py`: +```python +## All cache key will be prefixed by post_office:template: +## To turn OFF caching, you need to explicitly set POST_OFFICE_CACHE to False in settings +POST_OFFICE_CACHE = False +## Optional: to use a non default cache backend, add a "post_office" entry in CACHES +CACHES = { + 'post_office': { + 'BACKEND': 'django.core.cache.backends.memcached.PyLibMCCache', + 'LOCATION': '127.0.0.1:11211', + } +} +``` +### send_many() +`send_many()` is much more performant (generates less database queries) +when sending a large number of emails. `send_many()` is almost identical +to `mail.send()`, with the exception that it accepts a list of keyword +arguments that you'd usually pass into `mail.send()`: +```python +from post_office import mail +first_email = { + 'sender': 'from@example.com', + 'recipients': ['alice@example.com'], + 'subject': 'Hi!', + 'message': 'Hi Alice!' +} +second_email = { + 'sender': 'from@example.com', + 'recipients': ['bob@example.com'], + 'subject': 'Hi!', + 'message': 'Hi Bob!' +} +kwargs_list = [first_email, second_email] +mail.send_many(kwargs_list) +``` +Attachments are not supported with `mail.send_many()`. +## Running Tests +To run the test suite: +```python +`which django-admin.py` test post_office --settings=post_office.test_settings --pythonpath=. +``` +You can run the full test suite for all supported versions of Django and Python with: +```python +tox +``` +or: +```python +python setup.py test +``` +## Integration with Celery +If your Django project runs in a Celery enabled configuration, you can use its worker to send out +queued emails. Compared to the solution with cron (see above), or the solution with uWSGI timers +(see below) this setup has the big advantage that queued emails are send *immediately* after they +have been added to the mail queue. The delivery is still performed in a separate and asynchronous +task, which prevents sending emails during the request/response-cycle. +If you [configured Celery](https://docs.celeryproject.org/en/latest/userguide/application.html) +in your project and started the +[Celery worker](https://docs.celeryproject.org/en/latest/userguide/workers.html), +you should see something such as: + +%package -n python3-django-post-office +Summary: A Django app to monitor and send mail asynchronously, complete with template support. +Provides: python-django-post-office +BuildRequires: python3-devel +BuildRequires: python3-setuptools +%description -n python3-django-post-office +### Caching +if Django's caching mechanism is configured, `post_office` will cache +`EmailTemplate` instances . If for some reason you want to disable +caching, set `POST_OFFICE_CACHE` to `False` in `settings.py`: +```python +## All cache key will be prefixed by post_office:template: +## To turn OFF caching, you need to explicitly set POST_OFFICE_CACHE to False in settings +POST_OFFICE_CACHE = False +## Optional: to use a non default cache backend, add a "post_office" entry in CACHES +CACHES = { + 'post_office': { + 'BACKEND': 'django.core.cache.backends.memcached.PyLibMCCache', + 'LOCATION': '127.0.0.1:11211', + } +} +``` +### send_many() +`send_many()` is much more performant (generates less database queries) +when sending a large number of emails. `send_many()` is almost identical +to `mail.send()`, with the exception that it accepts a list of keyword +arguments that you'd usually pass into `mail.send()`: +```python +from post_office import mail +first_email = { + 'sender': 'from@example.com', + 'recipients': ['alice@example.com'], + 'subject': 'Hi!', + 'message': 'Hi Alice!' +} +second_email = { + 'sender': 'from@example.com', + 'recipients': ['bob@example.com'], + 'subject': 'Hi!', + 'message': 'Hi Bob!' +} +kwargs_list = [first_email, second_email] +mail.send_many(kwargs_list) +``` +Attachments are not supported with `mail.send_many()`. +## Running Tests +To run the test suite: +```python +`which django-admin.py` test post_office --settings=post_office.test_settings --pythonpath=. +``` +You can run the full test suite for all supported versions of Django and Python with: +```python +tox +``` +or: +```python +python setup.py test +``` +## Integration with Celery +If your Django project runs in a Celery enabled configuration, you can use its worker to send out +queued emails. Compared to the solution with cron (see above), or the solution with uWSGI timers +(see below) this setup has the big advantage that queued emails are send *immediately* after they +have been added to the mail queue. The delivery is still performed in a separate and asynchronous +task, which prevents sending emails during the request/response-cycle. +If you [configured Celery](https://docs.celeryproject.org/en/latest/userguide/application.html) +in your project and started the +[Celery worker](https://docs.celeryproject.org/en/latest/userguide/workers.html), +you should see something such as: + +%package help +Summary: Development documents and examples for django-post-office +Provides: python3-django-post-office-doc +%description help +### Caching +if Django's caching mechanism is configured, `post_office` will cache +`EmailTemplate` instances . If for some reason you want to disable +caching, set `POST_OFFICE_CACHE` to `False` in `settings.py`: +```python +## All cache key will be prefixed by post_office:template: +## To turn OFF caching, you need to explicitly set POST_OFFICE_CACHE to False in settings +POST_OFFICE_CACHE = False +## Optional: to use a non default cache backend, add a "post_office" entry in CACHES +CACHES = { + 'post_office': { + 'BACKEND': 'django.core.cache.backends.memcached.PyLibMCCache', + 'LOCATION': '127.0.0.1:11211', + } +} +``` +### send_many() +`send_many()` is much more performant (generates less database queries) +when sending a large number of emails. `send_many()` is almost identical +to `mail.send()`, with the exception that it accepts a list of keyword +arguments that you'd usually pass into `mail.send()`: +```python +from post_office import mail +first_email = { + 'sender': 'from@example.com', + 'recipients': ['alice@example.com'], + 'subject': 'Hi!', + 'message': 'Hi Alice!' +} +second_email = { + 'sender': 'from@example.com', + 'recipients': ['bob@example.com'], + 'subject': 'Hi!', + 'message': 'Hi Bob!' +} +kwargs_list = [first_email, second_email] +mail.send_many(kwargs_list) +``` +Attachments are not supported with `mail.send_many()`. +## Running Tests +To run the test suite: +```python +`which django-admin.py` test post_office --settings=post_office.test_settings --pythonpath=. +``` +You can run the full test suite for all supported versions of Django and Python with: +```python +tox +``` +or: +```python +python setup.py test +``` +## Integration with Celery +If your Django project runs in a Celery enabled configuration, you can use its worker to send out +queued emails. Compared to the solution with cron (see above), or the solution with uWSGI timers +(see below) this setup has the big advantage that queued emails are send *immediately* after they +have been added to the mail queue. The delivery is still performed in a separate and asynchronous +task, which prevents sending emails during the request/response-cycle. +If you [configured Celery](https://docs.celeryproject.org/en/latest/userguide/application.html) +in your project and started the +[Celery worker](https://docs.celeryproject.org/en/latest/userguide/workers.html), +you should see something such as: + +%prep +%autosetup -n django-post-office-3.6.3 + +%build +%py3_build + +%install +%py3_install +install -d -m755 %{buildroot}/%{_pkgdocdir} +if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi +if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi +if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi +if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi +pushd %{buildroot} +if [ -d usr/lib ]; then + find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/lib64 ]; then + find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/bin ]; then + find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/sbin ]; then + find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst +fi +touch doclist.lst +if [ -d usr/share/man ]; then + find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst +fi +popd +mv %{buildroot}/filelist.lst . +mv %{buildroot}/doclist.lst . + +%files -n python3-django-post-office -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Fri Feb 24 2023 Python_Bot <Python_Bot@openeuler.org> - 3.6.3-1 +- Package Spec generated @@ -0,0 +1 @@ +9f72f85761ff99561d53b55a1c95cea1 django-post_office-3.6.3.tar.gz |