Skip to content

Commit e8a735f

Browse files
slivercn2ygk
authored andcommitted
Move to keep a changelog format (#474)
* Move to keep a changelog format Fixes #470 Includes documentation of versioning and deprecation policy * Remove deprecation warning for JSONAPI prefix We will remove this before new version will be released.
1 parent 5de570c commit e8a735f

File tree

1 file changed

+96
-40
lines changed

1 file changed

+96
-40
lines changed

CHANGELOG.md

+96-40
Original file line numberDiff line numberDiff line change
@@ -1,94 +1,150 @@
1-
[unreleased]
1+
# Changelog
2+
3+
All notable changes to this project will be documented in this file.
4+
5+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7+
8+
Note that in line with [Django REST Framework policy](http://www.django-rest-framework.org/topics/release-notes/),
9+
any parts of the framework not mentioned in the documentation should generally be considered private API, and may be subject to change.
10+
11+
## [Unreleased]
12+
13+
### Added
214

315
* Add testing configuration to `REST_FRAMEWORK` configuration as described in [DRF](https://www.django-rest-framework.org/api-guide/testing/#configuration)
416
* Add `HyperlinkedRelatedField` and `SerializerMethodHyperlinkedRelatedField`. See [usage docs](docs/usage.md#related-fields)
517
* Add related urls support. See [usage docs](docs/usage.md#related-urls)
6-
* Replaced binary `drf_example` sqlite3 db with a [fixture](example/fixtures/drf_example.yaml). See [getting started](docs/getting-started.md#running-the-example-app).
7-
* For naming consistency, renamed new `JsonApi`-prefix pagination classes to `JSONAPI`-prefix.
8-
* Deprecates `JsonApiPageNumberPagination` and `JsonApiLimitOffsetPagination`
9-
* Performance improvement when rendering relationships with `ModelSerializer`
1018
* Add optional [jsonapi-style](http://jsonapi.org/format/) filter backends. See [usage docs](docs/usage.md#filter-backends)
1119

12-
v2.5.0 - Released July 11, 2018
20+
### Changed
21+
22+
* Replaced binary `drf_example` sqlite3 db with a [fixture](example/fixtures/drf_example.json). See [getting started](docs/getting-started.md#running-the-example-app).
23+
24+
### Fixed
25+
26+
* Performance improvement when rendering relationships with `ModelSerializer`
27+
28+
## [2.5.0] - 2018-07-11
29+
30+
### Added
1331

1432
* Add new pagination classes based on JSON:API query parameter *recommendations*:
1533
* `JsonApiPageNumberPagination` and `JsonApiLimitOffsetPagination`. See [usage docs](docs/usage.md#pagination).
16-
* Deprecates `PageNumberPagination` and `LimitOffsetPagination`
1734
* Add `ReadOnlyModelViewSet` extension with prefetch mixins
1835
* Add support for Django REST Framework 3.8.x
1936
* Introduce `JSON_API_FORMAT_FIELD_NAMES` option replacing `JSON_API_FORMAT_KEYS` but in comparison preserving
2037
values from being formatted as attributes can contain any [json value](http://jsonapi.org/format/#document-resource-object-attributes).
21-
* `JSON_API_FORMAT_KEYS` still works as before (formatting all json value keys also nested) but is marked as deprecated
22-
* Performance improvement when rendering included data
2338
* Allow overwriting of `get_queryset()` in custom `ResourceRelatedField`
2439

25-
v2.4.0 - Released January 25, 2018
40+
### Deprecated
41+
42+
* Deprecate `PageNumberPagination` and `LimitOffsetPagination`. Use `JsonApiPageNumberPagination` and `JsonApiLimitOffsetPagination` instead.
43+
* Deprecate `JSON_API_FORMAT_KEYS`, use `JSON_API_FORMAT_FIELD_NAMES`.
44+
45+
### Fixed
46+
47+
* Performance improvement when rendering included data
48+
49+
## [2.4.0] - 2018-01-25
50+
51+
### Added
2652

2753
* Add support for Django REST Framework 3.7.x.
2854
* Add support for Django 2.0.
55+
56+
### Removed
57+
2958
* Drop support for Django 1.8 - 1.10 (EOL)
3059
* Drop support for Django REST Framework < 3.6.3
3160
(3.6.3 is the first to support Django 1.11)
3261
* Drop support for Python 3.3 (EOL)
3362

34-
v2.3.0 - Released November 28, 2017
3563

36-
* Added support for polymorphic models
64+
## [2.3.0] - 2017-11-28
65+
66+
### Added
67+
68+
* Add support for polymorphic models
69+
* Add nested included serializer support for remapped relations
70+
71+
### Changed
72+
73+
* Enforcing flake8 linting
74+
75+
### Fixed
3776
* When `JSON_API_FORMAT_KEYS` is False (the default) do not translate request
3877
attributes and relations to snake\_case format. This conversion was unexpected
3978
and there was no way to turn it off.
4079
* Fix for apps that don't use `django.contrib.contenttypes`.
4180
* Fix `resource_name` support for POST requests and nested serializers
42-
* Enforcing flake8 linting
43-
* Added nested included serializer support for remapped relations
4481

45-
v2.2.0
82+
## [2.2.0] - 2017-04-22
83+
84+
### Added
4685

4786
* Add support for Django REST Framework 3.5 and 3.6
4887
* Add support for Django 1.11
4988
* Add support for Python 3.6
5089

51-
v2.1.1
90+
## [2.1.1] - 2016-09-26
91+
92+
### Added
5293

53-
* Avoid setting `id` to `None` in the parser simply because it's missing
54-
* Fixed out of scope `relation_instance` variable in renderer
5594
* Allow default DRF serializers to operate even when mixed with DRF-JA serializers
56-
* Fixed wrong resource type for reverse foreign keys
57-
* Fixed documentation typos
5895

59-
v2.1.0
96+
### Fixed
97+
98+
* Avoid setting `id` to `None` in the parser simply because it's missing
99+
* Fix out of scope `relation_instance` variable in renderer
100+
* Fix wrong resource type for reverse foreign keys
101+
* Fix documentation typos
102+
103+
## [2.1.0] - 2016-08.18
104+
105+
### Added
60106

61107
* Parse `meta` in JSONParser
62-
* Added code coverage reporting and updated Django versions tested against
63-
* Fixed Django 1.10 compatibility
64-
* Added support for regular non-ModelSerializers
65-
* Added performance enhancements to reduce the number of queries in related payloads
66-
* Fixed bug where related `SerializerMethodRelatedField` fields were not included even if in `include`
67-
* Convert `include` field names back to snake_case
108+
* Add code coverage reporting and updated Django versions tested against
109+
* Add support for regular non-ModelSerializers
110+
111+
### Changed
112+
68113
* Documented built in `url` field for generating a `self` link in the `links` key
69-
* Fixed bug that prevented `fields = ()` in a serializer from being valid
70-
* Fixed stale data returned in PATCH to-one relation
114+
* Convert `include` field names back to snake_case
71115
* Raise a `ParseError` if an `id` is not included in a PATCH request
72116

73-
v2.0.1
117+
### Fixed
74118

75-
* Fixed naming error that caused ModelSerializer relationships to fail
119+
* Fix Django 1.10 compatibility
120+
* Performance enhancements to reduce the number of queries in related payloads
121+
* Fix issue where related `SerializerMethodRelatedField` fields were not included even if in `include`
122+
* Fix bug that prevented `fields = ()` in a serializer from being valid
123+
* Fix stale data returned in PATCH to-one relation
76124

77-
v2.0.0
125+
## [2.0.1] - 2016-05-02
78126

79-
* Fixed bug where write_only fields still had their keys rendered
80-
* Exception handler can now easily be used on DRF-JA views alongside regular DRF views
81-
* Added `get_related_field_name` for views subclassing RelationshipView to override
82-
* Renamed `JSON_API_FORMAT_RELATION_KEYS` to `JSON_API_FORMAT_TYPES` to match what it was actually doing
83-
* Renamed `JSON_API_PLURALIZE_RELATION_TYPE` to `JSON_API_PLURALIZE_TYPES`
84-
* Documented ResourceRelatedField and RelationshipView
127+
### Fixed
128+
129+
* Fixes naming error that caused ModelSerializer relationships to fail
130+
131+
## [2.0.0] - 2016-04-29
132+
133+
### Added
134+
135+
* Add `get_related_field_name` for views subclassing RelationshipView to override
85136
* Added LimitOffsetPagination
86137
* Support deeply nested `?includes=foo.bar.baz` without returning intermediate models (bar)
87138
* Allow a view's serializer_class to be fetched at runtime via `get_serializer_class`
88139
* Added support for `get_root_meta` on list serializers
89140

141+
### Changed
90142

91-
v2.0.0-beta.2
143+
* Exception handler can now easily be used on DRF-JA views alongside regular DRF views
144+
* Rename `JSON_API_FORMAT_RELATION_KEYS` to `JSON_API_FORMAT_TYPES` to match what it was actually doing
145+
* Rename `JSON_API_PLURALIZE_RELATION_TYPE` to `JSON_API_PLURALIZE_TYPES`
146+
* Documented ResourceRelatedField and RelationshipView
92147

93-
* Added JSONAPIMeta class option to models for overriding `resource_name`. #197
148+
### Fixed
94149

150+
* Fixes bug where write_only fields still had their keys rendered

0 commit comments

Comments
 (0)