Version 1.3.0 Breaking Changes ---------------- (None) Changes to Supported Platforms ------------------------------ - CPython 3.6 is now fully supported. - Falcon appears to work well on PyPy3.5, but we are waiting until that platform is out of beta before officially supporting it. - Support for both CPython 2.6 and Jython 2.7 is now deprecated and will be discontinued in Falcon 2.0. New & Improved -------------- - We added built-in resource representation serialization and deserialization, including input validation based on JSON Schema. - URI template field converters are now supported. We expect to expand this feature over time. - A new method, `get_param_as_datetime()`, was added to the ``Request`` class. - A number of attributes were added to the ``Request`` class to make proxy information easier to consume. These include the `forwarded`, `forwarded_uri`, `forwarded_scheme`, `forwarded_host`, and `forwarded_prefix` attributes. The `prefix` attribute was also added as part of this work. - A `referer` attribute was added to the ``Request`` class. - We implemented `__repr__()` for ``Request``, ``Response``, and ``HTTPError`` to aid in debugging. - A number of Internet media type constants were defined to make it easier to check and set content type headers. - Several new 5xx error classes were implemented. Fixed ----- - If even a single cookie in the request to the server is malformed, none of the cookies will be parsed (all-or-nothing). Change the parser to simply skip bad cookies (best-effort). - ``API`` instances are not pickleable. Modify the default router to fix this.