Bump version 1.3

This commit is contained in:
Alvaro Leonel 2017-06-25 19:27:43 -04:00
parent ba0966a0df
commit 37bb7f6ade
4 changed files with 56 additions and 13 deletions

View file

@ -1,6 +1,19 @@
Changelog
=========
1.3
-----
- Redirect to unread view after mark as read. (@osminogin)
- Django 1.10 compability. (@osminogin)
- Django Admin overhead reduction by removing the need to carry all recipients users. (@theromis)
- Added option to mark as read in __live_unread_notification_list__ endpoint. (@osminogin)
- Fixed parameter name error in README.rst: there is no __api_url_name__ parameter, the correct name is __api_name__ (@ikkebr)
- Added __sent()__, __unsent()__, __mark_as_sent()__ and __mark_as_unsent()__ methods in the queryset. (@theromis)
- __notify.send()__ now returns the list of saved Notifications instances. (@satyanash)
- Now __recipient__ can be a User queryset. (@AlvaroLQueiroz)
- Fix XMLHttpRequest onready event handler. (@AlvaroLQueiroz)
1.2
-----

View file

@ -21,7 +21,7 @@ Notifications are actually actions events, which are categorized by four main co
``Actor``, ``Action Object`` and ``Target`` are ``GenericForeignKeys`` to any arbitrary Django object.
An action is a description of an action that was performed (``Verb``) at some instant in time by some ``Actor`` on some optional ``Target`` that results in an ``Action Object`` getting created/updated/deleted.
For example: `justquick <https://github.com/justquick/>`_ ``(actor)`` *closed* ``(verb)`` `issue 2 <https://github.com/justquick/django-activity-stream/issues/2>`_ ``(object)`` on `activity-stream <https://github.com/justquick/django-activity-stream/>`_ ``(target)`` 12 hours ago
For example: `justquick <https://github.com/justquick/>`_ ``(actor)`` *closed* ``(verb)`` `issue 2 <https://github.com/justquick/django-activity-stream/issues/2>`_ ``(action_object)`` on `activity-stream <https://github.com/justquick/django-activity-stream/>`_ ``(target)`` 12 hours ago
Nomenclature of this specification is based on the Activity Streams Spec: `<http://activitystrea.ms/specs/atom/1.0/>`_
@ -91,7 +91,7 @@ Generating notifications is probably best done in a separate signal.
post_save.connect(my_handler, sender=MyModel)
To generate an notification anywhere in your code, simply import the notify signal and send it with your actor, recipient, verb, and target.
To generate an notification anywhere in your code, simply import the notify signal and send it with your actor, recipient, and verb.
::
@ -99,12 +99,21 @@ To generate an notification anywhere in your code, simply import the notify sign
notify.send(user, recipient=user, verb='you reached level 10')
// "recipient" can also be a Group, the notification will be sent to all the Users in the Group
notify.send(comment.user, recipient=group, verb=u'replied', action_object=comment,
description=comment.comment, target=comment.content_object)
The complete sintax is.
notify.send(follow_instance.user, recipient=follow_instance.follow_object, verb=u'has followed you',
action_object=instance, description=u'', target=follow_instance.follow_object, level='success')
::
notify.send(actor, recipient, verb, action_object,
target, level, description, public, timestamp, **kwargs)
* ``actor``: An object of any type. (Required)
* ``recipient``: A __Group__ or a __User QuerySet__ or a list of __User__. (Required)
* ``verb``: An string. (Required)
* ``action_object``: An object of any type. (Optional)
* ``target``: An object of any type. (Optional)
* ``level``: One of Notification.LEVELS ('success', 'info', 'warning', 'error') (default=info). (Optional)
* ``description``: An string. (Optional)
* ``public``: An boolean (default=True). (Optional)
* ``timestamp``: An tzinfo (default=timezone.now()). (Optional)
Extra data
----------
@ -145,6 +154,16 @@ which returns all unread notifications. To do this for a single user, we can do:
There are some other QuerySet methods, too.
``qs.unsent()``
~~~~~~~~~~~~~~~
Return all of the unsent notifications, filtering the current queryset. (emailed=False)
``qs.read()``
~~~~~~~~~~~~~~~
Return all of the sent notifications, filtering the current queryset. (emailed=True)
``qs.unread()``
~~~~~~~~~~~~~~~
@ -169,6 +188,17 @@ Mark all of the unread notifications in the queryset (optionally also filtered b
Mark all of the read notifications in the queryset (optionally also filtered by ``recipient``) as unread.
``qs.mark_as_sent()`` | ``qs.mark_as_sent(recipient)``
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Mark all of the unsent notifications in the queryset (optionally also filtered by ``recipient``) as sent.
``qs.mark_as_unset()`` | ``qs.mark_as_unset()(recipient)``
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Mark all of the sent notifications in the queryset (optionally also filtered by ``recipient``) as ununset.
``qs.deleted()``
~~~~~~~~~~~~~~~~

View file

@ -8,6 +8,6 @@
"""
# PEP 386-compliant version number: N.N[.N]+[{a|b|c|rc}N[.N]+][.postN][.devN]
__version__ = '1.2'
__version__ = '1.3'
default_app_config = 'notifications.apps.Config'

View file

@ -48,11 +48,11 @@ setup(
'Intended Audience :: Developers',
'License :: OSI Approved :: BSD License',
'Operating System :: OS Independent',
'Framework :: Django',
'Framework :: Django :: 1.10',
'Framework :: Django :: 1.9',
'Framework :: Django :: 1.8',
'Framework :: Django :: 1.7',
'Framework :: Django',
'Framework :: Django :: 1.10',
'Framework :: Django :: 1.9',
'Framework :: Django :: 1.8',
'Framework :: Django :: 1.7',
# Specify the Python versions you support here. In particular, ensure
# that you indicate whether you support Python 2, Python 3 or both.
'Programming Language :: Python',