Kinto v2.0.0 Release Notes

Release Date: 2016-03-08 // about 8 years ago
  • Protocol

    • ๐Ÿ‘ Allow buckets to store arbitrary properties. (#239, #462)
    • โœ‚ Delete every (writable) buckets using DELETE /v1/buckets
    • โœ‚ Delete every (writable) collections using DELETE /v1/buckets/<bucket-id>/collections
    • Clients are redirected to URLs without trailing slash only if the current URL does not exist (#656)
    • Partial responses can now be specified for nested objects (#445) For example, /records?_fields=address.street.
    • 0๏ธโƒฃ List responses are now sorted by last_modified descending by default (#434, thanks @ayusharma)
    • Server now returns 415 error response if client cannot accept JSON response (#461, mozilla-services/cliquet#667)
    • Server now returns 415 error response if client does not send JSON request (#461, mozilla-services/cliquet#667)
    • Add the __lbheartbeat__ endpoint, for load balancer membership test.
    • 0๏ธโƒฃ Add the flush_endpoint, schema and default_bucket to the capabilities if enabled in settings (#270)

    Protocol is now in version 1.4. See API changelog_.

    ๐Ÿ’ฅ Breaking changes

    • 0๏ธโƒฃ kinto.plugins.default_bucket plugin is no longer assumed. We invite users to check that the kinto.plugins.default_bucket is present in the includes setting if they expect it. (ref #495)
    • kinto start must be explicitly run with --reload in order to restart the server when code or configuration changes (ref #490).
    • Errors are not swallowed anymore during the execution of ResourceChanged events subscribers.

    Subscribers are still executed within the transaction like before.

    Subscribers are still executed even if the transaction is eventually rolledback. Every subscriber execution succeeds, or none.

    Thus, subscribers of these events should only perform operations that are reversed on transaction rollback: most likely database storage operations.

    For irreversible operations see the new AfterResourceChanged event.

    ๐Ÿ†• New features

    • ๐Ÿ”€ Event subscribers are now ran synchronously and can thus alter responses (#421)
    • ๐Ÿ”€ Resource events are now merged in batch requests. One event per resource and per action is emitted when a transaction is committed (mozilla-services/cliquet#634)
    • Monitor time of events listeners execution (mozilla-services/cliquet#503)
    • โž• Added a new AfterResourceChanged event, that is sent only when the commit in database is done and successful. See more details <https://cliquet.readthedocs.io/en/latest/reference/notifications.html>_.
    • Track execution time on StatsD for each authentication sub-policy (mozilla-services/cliquet#639)
    • 0๏ธโƒฃ Default console log renderer now has colours (mozilla-service/cliquet#671)
    • Output Kinto version with kinto --version (thanks @ayusharma)

    ๐Ÿ› Bug fixes

    • ๐Ÿ›  Fix PostgreSQL backend timestamps when collection is empty (#433)
    • ResourceChanged events are not emitted if a batch subrequest fails (mozilla-services/cliquet#634) There are still emitted if the whole batch transaction is eventually rolledback.
    • ๐Ÿ›  Fix a migration of PostgreSQL schema introduced that was never executed (mozilla-services/cliquet#604)
    • ๐Ÿ›  Fix statsd initialization on storage (mozilla-services/cliquet#637)
    • Providing bad last modified values on delete now returns 400 (mozilla-services/cliquet#665)
    • โšก๏ธ Providing last modified in the past for delete now follows behaviour create/update (mozilla-services/cliquet#665)
    • Do not always return 412 errors when request header If-None-Match: * is sent on POST /collection (fixes #489, mozilla-service/cliquet#673)
    • ๐Ÿ›  Fix secret in ini on Python 3 (fixes #341)
    • ๐Ÿ›  Error when trying to create an empty directory (fixes #475)
    • Text plain body should be rejected with an error (#461)

    ๐Ÿ“š Documentation

    • โž• Additions in troubleshooting docs (thanks @ayusharma)
    • โž• Add uwsgi bind error to troubleshooting (fixes #447)
    • ๐Ÿ”Œ Mention python plugin for Uwsgi (#448)
    • โž• Add how to troubleshoot psql encoding problems. (#453)
    • โž• Add mini checklist for CDN deployment (#450)
    • ๐Ÿ›  Replace subjective ligthweight by minimalist (fixes #417)
    • ๐Ÿ‘Œ Improve synchronisation docs (#451)
    • โž• Add the requirements in the Readme (#465)
    • โž• Add docs about architecture (fixes #430)
    • โž• Add a 'why' paragraph to the docs (Kinto value proposition) (#482)
    • โšก๏ธ Update docs: how to choose the backend (#485, thanks @Enguerran)
    • โž• Add a custom id generator tutorial (#464)

    Internal changes

    • ๐Ÿ”„ Changed default duration between retries on error (Retry-After header) from 30 to 3 seconds.
    • Speed-up startup (ref #490)
    • โšก๏ธ Optimized (and cleaned) usage of (un)authenticated_userid (#424, mozilla-services/cliquet#641)
    • ๐Ÿ›  Fixed usage of virtualenv in Makefile (#443)
    • โž• Add a badge for the irc channel (#459)
    • ๐Ÿ”„ Change phrasing for backend selection (#470)
    • โž• Add a CONTRIBUTING file (#471, thanks @magopian)
    • โž• Add a contribute.json file (#478, #480, thanks @magopian)