diff --git a/HISTORY.rst b/HISTORY.rst index 50e2e1c414..3a19cdf385 100644 --- a/HISTORY.rst +++ b/HISTORY.rst @@ -1,3 +1,7 @@ +2.6.4 (2017-07-26) +================== +- Add missing replacements of reverse to resolve_url. + 2.6.3 (2017-07-25) ================== - Add makefile target to launch a PostgreSQL container. diff --git a/docs/releases/2.6.4.rst b/docs/releases/2.6.4.rst new file mode 100644 index 0000000000..522425675f --- /dev/null +++ b/docs/releases/2.6.4.rst @@ -0,0 +1,71 @@ +=============================== +Mayan EDMS v2.6.4 release notes +=============================== + +Released: July 25, 2017 + +What's new +========== + +This is a bug fix release and users are encouraged to upgrade. + +Changes +------- +- Add missing replacements of reverse to resolve_url. + +Removals +-------- +* None + +Upgrading from a previous version +--------------------------------- + +Using PIP +~~~~~~~~~ + +Type in the console:: + + $ pip install -U mayan-edms + +the requirements will also be updated automatically. + +Using Git +~~~~~~~~~ + +If you installed Mayan EDMS by cloning the Git repository issue the commands:: + + $ git reset --hard HEAD + $ git pull + +otherwise download the compressed archived and uncompress it overriding the +existing installation. + +Next upgrade/add the new requirements:: + + $ pip install --upgrade -r requirements.txt + +Common steps +~~~~~~~~~~~~ + +Migrate existing database schema with:: + + $ mayan-edms.py performupgrade + +Add new static media:: + + $ mayan-edms.py collectstatic --noinput + +The upgrade procedure is now complete. + + +Backward incompatible changes +============================= + +* None + +Bugs fixed or issues closed +=========================== + +* None + +.. _PyPI: https://pypi.python.org/pypi/mayan-edms/ diff --git a/docs/releases/index.rst b/docs/releases/index.rst index 48b40929e5..cf9dbe22a1 100644 --- a/docs/releases/index.rst +++ b/docs/releases/index.rst @@ -22,6 +22,7 @@ versions of the documentation contain the release notes for any later releases. .. toctree:: :maxdepth: 1 + 2.6.4 2.6.3 2.6.2 2.6.1 diff --git a/mayan/apps/common/mixins.py b/mayan/apps/common/mixins.py index a8c3788db7..be752fa76e 100644 --- a/mayan/apps/common/mixins.py +++ b/mayan/apps/common/mixins.py @@ -5,6 +5,7 @@ from django.contrib import messages from django.core.exceptions import PermissionDenied from django.db.models.query import QuerySet from django.http import HttpResponseRedirect +from django.shortcuts import resolve_url from django.urls import reverse from django.utils.translation import ungettext, ugettext_lazy as _ @@ -297,14 +298,14 @@ class RedirectionMixin(object): self.next_url = self.request.POST.get( 'next', self.request.GET.get( 'next', post_action_redirect if post_action_redirect else self.request.META.get( - 'HTTP_REFERER', reverse(settings.LOGIN_REDIRECT_URL) + 'HTTP_REFERER', resolve_url(settings.LOGIN_REDIRECT_URL) ) ) ) self.previous_url = self.request.POST.get( 'previous', self.request.GET.get( 'previous', action_cancel_redirect if action_cancel_redirect else self.request.META.get( - 'HTTP_REFERER', reverse(settings.LOGIN_REDIRECT_URL) + 'HTTP_REFERER', resolve_url(settings.LOGIN_REDIRECT_URL) ) ) ) diff --git a/mayan/apps/common/views.py b/mayan/apps/common/views.py index 127bcd3bbc..2b8cc46046 100644 --- a/mayan/apps/common/views.py +++ b/mayan/apps/common/views.py @@ -5,6 +5,7 @@ from json import dumps from django.conf import settings from django.contrib import messages from django.http import Http404, HttpResponseRedirect +from django.shortcuts import resolve_url from django.template import RequestContext from django.urls import reverse, reverse_lazy from django.utils import timezone, translation @@ -244,7 +245,7 @@ def multi_object_action_view(request): next = request.POST.get( 'next', request.GET.get( 'next', request.META.get( - 'HTTP_REFERER', reverse(settings.LOGIN_REDIRECT_URL) + 'HTTP_REFERER', resolve_url(settings.LOGIN_REDIRECT_URL) ) ) ) @@ -261,7 +262,7 @@ def multi_object_action_view(request): messages.error(request, _('No action selected.')) return HttpResponseRedirect( request.META.get( - 'HTTP_REFERER', reverse(settings.LOGIN_REDIRECT_URL) + 'HTTP_REFERER', resolve_url(settings.LOGIN_REDIRECT_URL) ) ) @@ -269,7 +270,7 @@ def multi_object_action_view(request): messages.error(request, _('Must select at least one item.')) return HttpResponseRedirect( request.META.get( - 'HTTP_REFERER', reverse(settings.LOGIN_REDIRECT_URL) + 'HTTP_REFERER', resolve_url(settings.LOGIN_REDIRECT_URL) ) ) diff --git a/mayan/apps/documents/views/document_page_views.py b/mayan/apps/documents/views/document_page_views.py index a820480c57..32faab732b 100644 --- a/mayan/apps/documents/views/document_page_views.py +++ b/mayan/apps/documents/views/document_page_views.py @@ -5,7 +5,7 @@ import urlparse from django.conf import settings from django.contrib import messages -from django.shortcuts import get_object_or_404 +from django.shortcuts import get_object_or_404, resolve_url from django.urls import reverse from django.utils.http import urlencode from django.utils.translation import ugettext_lazy as _ @@ -71,7 +71,7 @@ class DocumentPageNavigationBase(RedirectView): def get_redirect_url(self, *args, **kwargs): parse_result = urlparse.urlparse( self.request.META.get( - 'HTTP_REFERER', reverse( + 'HTTP_REFERER', resolve_url( settings.LOGIN_REDIRECT_URL ) ) diff --git a/mayan/apps/navigation/classes.py b/mayan/apps/navigation/classes.py index 746020174d..cca4109c85 100644 --- a/mayan/apps/navigation/classes.py +++ b/mayan/apps/navigation/classes.py @@ -8,6 +8,7 @@ import urlparse from django.apps import apps from django.conf import settings from django.core.exceptions import PermissionDenied +from django.shortcuts import resolve_url from django.template import VariableDoesNotExist, Variable from django.template.defaulttags import URLNode from django.urls import resolve, reverse @@ -351,7 +352,7 @@ class Link(object): ) or force_text( request.META.get( 'HTTP_REFERER', - reverse(settings.LOGIN_REDIRECT_URL) + resolve_url(settings.LOGIN_REDIRECT_URL) ) ) )