      """
      Same as `django.core.urlresolvers.reverse`, but optionally takes a request
      and returns a fully qualified URL, using the request to get the base URL.
      """
      request = kwargs.pop('request', None)
      url = django_reverse(viewname, *args, **kwargs)
      if request:
          return request.build_absolute_uri(url)
      return url
  
  
 
</s> remove def reverse(viewname, *args, **kwargs):
 </s> add def reverse(viewname, args=None, kwargs=None, request=None, format=None, **extra): </s> remove             raise exceptions.InvalidFormat(format)
 </s> add             raise Http404 </s> remove             return reverse(view_name, kwargs=kwargs, request=request)
 </s> add             return reverse(view_name, kwargs=kwargs, request=request, format=format)
    if format is not None:
        kwargs = kwargs or {}
        kwargs['format'] = format
    url = django_reverse(viewname, args=args, kwargs=kwargs, **extra)
      """
      Same as `django.core.urlresolvers.reverse`, but optionally takes a request
      and returns a fully qualified URL, using the request to get the base URL.
      """
    if format is not None:
        kwargs = kwargs or {}
        kwargs['format'] = format
    url = django_reverse(viewname, args=args, kwargs=kwargs, **extra)
    if format is not None:
        kwargs = kwargs or {}
        kwargs['format'] = format
    url = django_reverse(viewname, args=args, kwargs=kwargs, **extra)
      if request:
          return request.build_absolute_uri(url)
      return url
  
  
keep keep keep keep replace replace keep keep keep keep keep
 Fixes for urls with suffixes 
rest_framework/reverse.py