Permalink
Commits on Sep 25, 2017
  1. Make `DEFAULT_PAGINATION_CLASS` `None` by default. (#5170)

    matteius committed with carltongibson Sep 25, 2017
    * Changes to the paginator defaults and settings
    
    Require a default paginator be specified when using the page size
    setting.
    #5168
    
    * DRF-5168 import warnings
    
    missed this in last commit
    
    * Add a system checks file
    
    Add a check for pagination settings for the 3.7 upgrade cycle.
    
    * more compatible import approach
    
    * missing bactic
    
    * revised language and approach to import the system check
    
    Adds a rest framework app config.
    
    * Adjust doc wording
  2. Update pagination.md

    pauloxnet committed with carltongibson Jul 17, 2017
    Fixed 2 missing spaces in Custom Pagination snippet
  3. Add note on force_authenticate + refresh_from_db

    carltongibson committed with carltongibson Sep 25, 2017
    …in case you’re reusing the same in-memory user whilst updating it in the DB.
    
    Closes #5016, closes #5066, closes #4102
  4. JSONEncoder: Don’t strip microseconds from `time`

    carltongibson committed with carltongibson Sep 22, 2017
    Closes #4749.
    
    This is the matching commit to the fix for `datetime` in #4256
  5. Add 'STRICT_JSON' docs

    rpkilby committed with carltongibson Jul 10, 2017
  6. Add 'STRICT_JSON' API setting.

    rpkilby committed with carltongibson Jul 10, 2017
    STRICT_JSON controls the renderer & parser behavior on whether or not
    to accept non-standard float values (NaN, Infinity).
  7. Update json imports

    rpkilby committed with carltongibson Jul 7, 2017
Commits on Sep 20, 2017
  1. Remove DjangoFilterBackend and associated tests

    rpkilby committed with carltongibson Jul 14, 2017
  2. Fix DateTimeField TZ handling (#5435)

    carltongibson committed on GitHub Sep 20, 2017
    * Add failing TZ tests for DateTimeField
    
    - tests "current" timezone activation
    - tests output for non-UTC timezones
    
    * Update DateTimeField TZ aware/naive test output
    
    * Fix DateTimeField TZ handling
    
    * Add Release Note for BC change
  3. Allow `ChoiceField.choices` to be set dynamically (#5426)

    jpnauta committed with carltongibson Sep 20, 2017
    ## Description
    
    The `choices` field for the `ChoiceField` class should be able to be edited after `ChoiceField.__init__` is called.
    
    ```
    field = ChoiceField(choices=[1,2])
    field.choices = [1]  # Should no longer allow `2` as a choice
    ```
    
    Currently, you must update `choices`, `grouped_choices`, and `choice_strings_to_values` to achieve this. This P/R keeps `grouped_choices` and `choice_strings_to_values` in sync whenever the `choices` are edited.
  4. Allow `schema = None`. Deprecate `exclude_from_schema` (#5422)

    carltongibson committed on GitHub Sep 20, 2017
    * Add tests for schema exclusions
    
    * Move exclusion check to should_include_endpoint
    
    * Update docs
    
    * Switch to using `schema = None`
    
    * Test PendingDeprecationWarnings
    
    * Add note to release notes.
    
    * s/deprecated/pending deprecation/
    
    * Add PR link to release notes
    
    * Correct typo in test class name
    
    * Test 'exclude_from_schema' deprecation warning message (#1)
    
    * Correct deprecation warning message
Commits on Sep 14, 2017
  1. 5378 fix schema generation markdown (#5421)

    carltongibson committed with tomchristie Sep 14, 2017
    * Test case for #5240
    * Remove unnecessary strip()  from get_description
    
    Closes #5240
    
    * Adjust test case
  2. Refactor schema generation to allow per-view customisation (#5354)

    carltongibson committed with tomchristie Sep 14, 2017
    * Initial Refactor Step
    
    * Add descriptor class
    * call from generator
    * proxy back to generator for implementation.
    
    * Move `get_link` to descriptor
    
    * Move `get_description` to descriptor
    
    * Remove need for generator in get_description
    
    * Move get_path_fields to descriptor
    
    * Move `get_serializer_fields` to descriptor
    
    * Move `get_pagination_fields` to descriptor
    
    * Move `get_filter_fields` to descriptor
    
    * Move `get_encoding` to descriptor.
    
    * Pass just `url` from SchemaGenerator to descriptor
    
    * Make `view` a property
    
    Encapsulates check for a view instance.
    
    * Adjust API Reference docs
    
    * Add `ManualSchema` class
    
    * Refactor to `ViewInspector` plus `AutoSchema`
    
    The interface then is **just** `get_link()`
    
    * Add `manual_fields` kwarg to AutoSchema
    
    * Add schema decorator for FBVs
    
    * Adjust comments
    
    * Docs: Provide full params in example
    
    Ref feedback https://github.com/encode/django-rest-framework/pull/5354/files/b52e372f8f936204753b17fe7c9bfb517b93a045#r137254795
    
    * Add docstring for ViewInstpector.__get__ descriptor method.
    
    Ref #5354 (comment)
    
    * Make `schemas` a package.
    
    * Split generators, inspectors, views.
    
    * Adjust imports
    
    * Rename to EndpointEnumerator
    
    * Adjust ManualSchema to take `fields`
    
    … and `description`.
    
    Allows `url` and `action` to remain dynamic
    
    * Add package/module docstrings
  3. Drop unnecessary TODO notes.

    tomchristie committed on GitHub Sep 14, 2017
Commits on Sep 12, 2017
  1. Fix authtoken managment command (#5415)

    sazarkin committed with tomchristie Sep 12, 2017
    * Fix authtoken managment command username param
  2. Fix throttling documentation about Remote-Addr (#5414)

    knaperek committed with tomchristie Sep 12, 2017
    Clarify in docs that REMOTE_ADDR is part of the WSGI environ, not an HTTP header.
Commits on Sep 11, 2017
  1. Merge pull request #5409 from rpkilby/fieldvalues-output

    carltongibson committed on GitHub Sep 11, 2017
    Add value repr to the assertion output in FieldValues tests
Commits on Sep 8, 2017
  1. Update get_object() example in permissions.md (#5401)

    sanjuroj committed with carltongibson Sep 8, 2017
    * Update get_object() example in permissions.md 
    
    I'm a bit confused about the example that's provided in the 'Object level permissions' section.  Other examples (e.g. Tutorial 3 - Class Based Views) provided a pk to get_object().  It doesn't seem like this example has any way of identifying a specific object.  
    
    Just in case I'm correct, I've prepared this pull request. But if I'm wrong, would it be possible for you to explain the example I modified?  
    
    Many Thanks...
    
    * Adjust patch
  2. Make status_code documentation more readable. (#5400)

    ersel-ionova committed with tomchristie Sep 8, 2017
    * Make status_code documentation more readable.
    
    * Update status-codes.md
Commits on Sep 7, 2017
  1. Merge pull request #5398 from dolphinigle/master

    carltongibson committed on GitHub Sep 7, 2017
    Fixed the MultipleFieldLookupMixin example to properly check for object level permission
  2. Fixed the MultipleFieldLookupMixin example to properly check for obje…

    Irvan committed Sep 7, 2017
    …ct level permission.
Commits on Sep 4, 2017
  1. Merge pull request #5388 from founders4schools/fix/named-source

    carltongibson committed on GitHub Sep 4, 2017
    Fix ModelSerializer custom named fields with source on model
  2. Fix code style

    jonsongoffwhite committed Sep 4, 2017
  3. Add failing test for named attribute

    jonsongoffwhite committed Sep 4, 2017
    Fix test crudely
    
    Remove comment
  4. Updated supported values for the NullBooleanField (#5387)

    TigorC committed with tomchristie Sep 4, 2017
    * Updated supported values for the NullBooleanField.
    * Added check for unhashable types in NullBooleanField.
  5. Don't make the content mandatory in the generic content form (#5372)

    dvarrazzo committed with tomchristie Sep 4, 2017
    Sometimes, probably in the upgrade from Django 1.9 to 1.10, a post with
    empty content is forbidden by javascript, with the message "Please fill
    in this field". Filling the form with '{}' allows an application/json
    request to be submitted.
    
    The API call itself works perfectly well with a post with empty content:
    the interface shouldn't make assumptions about it.