Roll

Latest version: v0.13.0

Safety actively analyzes 630254 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 2 of 3

0.10.0

- python 3.7 compatibility (bump websockets and biscuits packages)
([69](https://github.com/pyrates/roll/pull/69))
- uvloop is not a dependency anymore (but you should still use it!): need was
to allow installing Roll without uvloop is some envs, and to let the users
define the uvloop version they want to use
([68](https://github.com/pyrates/roll/pull/68))
- `Request.method` is `None` by default ([67](https://github.com/pyrates/roll/pull/67))
- allow to use `methods=*` in `cors` extension
([65](https://github.com/pyrates/roll/pull/65))

0.9.1

* Do not try to write on a closed transport
([58](https://github.com/pyrates/roll/pull/58))

0.9.0

* **Breaking changes**:
* `Request.route` is now always set, but `Request.route.payload` is `None`
when path is not found. This allows to catch a not found request in the
`request` hook. Note: if the `request` hook does not return a response,
a 404 is still automatically raised.
([45](https://github.com/pyrates/roll/pull/45))
* Added `request.host` shortcut ([43](https://github.com/pyrates/roll/pull/43))
* Introduced protocol upgrade and protocol configuration for routes. Two
protocols are shipped by default : HTTP and Websocket
([54](https://github.com/pyrates/roll/pull/54)).
* The route is now resolved as soon as the URL has been parsed. In addition, the
route lookup method has been split up from the application `__call__`method,
to allow easy override
([54](https://github.com/pyrates/roll/pull/54)).
* Testing: now build a proper request instead of calling callbacks by hand
([54](https://github.com/pyrates/roll/pull/54)).

0.8.0

* **Breaking changes**:
* `Request` and `Response` classes now take `app` as init parameter. It
allows lazy parsing of the query while keeping the `Query` class reference
on `Roll` application.
([35](https://github.com/pyrates/roll/pull/35))
* Added support for request body parsing through multifruits
([38](https://github.com/pyrates/roll/pull/38))

0.7.0

* **Breaking changes**:
* `Query`, `Request` and `Response` are not anymore attached to the
`Protocol` class. They are now declared at the `Roll` class level.
It allows easier subclassing and customization of these parts.
([30](https://github.com/pyrates/roll/pull/30))
* Removed Request.kwargs in favor of inheriting from dict, to store user
data in a separate space
([33](https://github.com/pyrates/roll/pull/33))
* Request headers are now normalized in upper case, to work around
inconsistent casing in clients
([24](https://github.com/pyrates/roll/pull/24))
* Only set the body and Content-Length header when necessary
([31](https://github.com/pyrates/roll/pull/31))
* Added `cookies` support ([28](https://github.com/pyrates/roll/pull/28))

0.6.0

* **Breaking changes**:
* `options` extension is no more applied by default
([16](https://github.com/pyrates/roll/pull/16))
* deprecated `req` pytest fixture is now removed
([9](https://github.com/pyrates/roll/pull/9))
* Changed `Roll.hook` signature to also accept kwargs
([5](https://github.com/pyrates/roll/pull/5))
* `json` shorcut sets `utf-8` charset in `Content-Type` header
([13](https://github.com/pyrates/roll/pull/13))
* Added `static` extension to serve static files for development
([16](https://github.com/pyrates/roll/pull/16))
* `cors` accepts `headers` parameter to control `Access-Control-Allow-Headers`
([12](https://github.com/pyrates/roll/pull/12))
* Added `content_negociation` extension to reject unacceptable client requests
based on the `Accept` header
([21](https://github.com/pyrates/roll/pull/21))
* Allow to set multiple `Set-Cookie` headers
([23](https://github.com/pyrates/roll/pull/23))

Page 2 of 3

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.