Get Mystery Box with random crypto!

Diesel 2.0 发布 经过 135 人历时 3 年 的努力,Diesel 2.0 发布了 | Rust 视界

Diesel 2.0 发布
经过 135 人历时 3 年 的努力,Diesel 2.0 发布了,这里是 Release 日志 。
Diesel 2.0 的亮点:
• 支持完全类型检查 GROUP BY
• 支持表别名
• 支持通过相应类型定义选择子句
• 支持UNION/INTERSECT查询


此版本中有一个影响所有用户的重大变化:Connection trait 上的任何方法现在都需要一个可变引用,而不是像 1.x 那样的共享引用。此更改的主要动机是支持将结果加载为迭代器。
Diesel 2.0 目前还未打算支持异步,因为这方面的生态系统还不够成熟。从长远来看,Diesel 生态系统可能由多个部分组成:一个提供 DSL 和任何与 io 无关的核心 crate,然后其他 crate 可以提供实际的异步和同步连接实现。 这可能是未来几年的事情,因为这需要首先解决语言级别的问题,还需要进一步扩大 Diesel 团队,这样就不需要由同一个人维护所有的 crate。
异步 Diesel 的稳定步伐目前受以下 Rust 语言未完成的部分所阻止:
• 能够在不使用某些诸如#[async_trait]或类似解决方法的情况下将异步函数作为trait 函数。这可能需要对任何涉及的生命周期进行很好的控制。
• 能够接受一个返回未装箱 Future 的闭包,同时处理生命周期的东西。这基本上被 rustc 阻止了,无法在那里计算出正确的生命周期。严格来说,这不是异步的问题,而是当前借用检查器实现中的一个缺点/错误。(有关基本问题的简化版本,请参见此 playground)