Falcon 1.4.0的更改日志

正在中断更改

对支持平台的更改

  • 从pypy3.5 v5.10开始,pypy现在支持python 3。

  • 对CPython 3.3的支持现在已被弃用,将在Falcon 2.0中删除。

  • 与以前的版本一样,python 2.6和jython2.7仍然被弃用,在falcon2.0中将不再受支持。

新的和改进的

  • 我们添加了一种新方法, add_static_route() ,这使得从本地目录提供文件很容易。当您没有该选项、需要授权或出于测试目的时,此功能提供了从Web服务器提供文件的替代方法。

  • 现在可以将参数传递给钩子(请参见 Hooks

  • 默认的JSON媒体类型处理程序现在将使用 ujson 如果可用,可以加速cpython下的JSON(反)序列化。

  • 语义验证通过 格式 现在已为启用关键字 validate() JSON模式修饰器。

  • 我们添加了一个新助手, get_param_as_uuid() ,到 Request 班级。

  • Falcon现在支持WebDAV方法 (RFC 3253 ,例如更新和报告。

  • 我们增加了一个新的财产, downloadable_as ,到 Response 用于设置内容处置头的类。

  • create_http_method_map() 被重构成两种新方法, map_http_methods()set_default_responders() 以便自定义路由器能够更好地选择和选择所需的功能。原始方法仍然可以向后兼容,但在将来的版本中将被删除。

  • 我们添加了一个新的 json param to simulate_request() et al. to automatically serialize the request body from a JSON serializable object or type (for a complete list of serializable types, see json.JSONEncoder

  • TestClientsimulate_*() 方法现在调用 simulate_request() 使子类更容易重写 TestClient 的行为。

  • TestClient 现在可以配置一组默认的头,与每个请求一起发送。

  • 这个 FAQ 已经重新组织和大幅度扩展。

  • 我们重新设计文档以匹配https://falconframework.org

固定的

  • 未正确分析包含带逗号的带引号字符串的转发头。这已经被修复,解析器通常会变得更健壮。

  • JSONHandler 序列化包含Unicode代码点的字符串时在python 2.x下引发错误。此问题已解决。

  • 重写资源类并通过 super() 将URI模板参数作为位置参数传递时不起作用。现在已经修复了。

  • python 3.6正在为包含 '\s' 在Falcon中。这些字符串已转换为原始字符串以减轻警告。

  • 在文档中使用的代码示例中发现并修复了一些语法错误。

此版本的贡献者

多亏了我们在本次发布中的所有才华横溢和时尚贡献者!

  • GriffGeorge

  • 海尼克

  • 克格利夫

  • 瑞姆兹

  • 桑蒂奥

  • TIMC13型

  • 泰罗尼格罗夫斯

  • 维塔斯7

  • 张汉云