Breaking changes
- Remove Python 3.5 support and upgrade to Python 3.6. (#1886)
- Remove
recordfromUnicityErrorclass (#1919). This enabled us to fix #1545. - Storage backend API has changed, notions of collection and records were replaced
by the generic terms resource and object. Plugins that subclass the internal
ShareableResourceclass may also break. - GET requests no longer include the
Total-Recordsheader. To get a count in a collection
you need to do a HEAD request. And the new header name isTotal-Objects. (#1624) - Remove the
UserResourceclass. AndShareableResourceis now deprecated in
favor ofResource. - Removed
kinto.core.utils.parse_resource(). Usekinto.core.utils.view_lookup_registry()instead (#1828) - Remove the
delete-collectioncommand (#1959)
API is now at version 1.21. See API changelog.
New features
- Add a
user-dataendpoint at/__user_data__/which can be used to delete all data
associated with a principal. This might be helpful for pursuing GDPR
compliance, for instance. (Fixes #442.)
Bug Fixes
- Like query now returns 400 when a non string value is used. (#1899)
- Record ID is validated if explicitly mentioned in the collection schema (#1942)
- The Memory permission backend implementation of
remove_principal
is now less generous with what it removes (#1955).
Documentation
- Change PostgreSQL backend URLs to be
postgresql://instead of the deprecatedpostgres://
Internal changes
- Remove depreciation warning for
mapping(#1904) - Fix depreciated warn method (#1903)
- Use f-string instead of % or format operators. (#1886)
- Ignore admin plugin node_modules folder while running black (#1902)
- Remove regexp py36 warnings. (#1907)
- Changed psycopg2 dependency for psycopg2-binary. (#1905)
- Renamed core notions (ie. record and collection) (#710)
- JSON Schema validation is optimized by keeping instances of validator cached. (#1807)