专栏首页Rust语言学习交流【Rust日报】2021-09-07 Relm4 v0.1 发布

【Rust日报】2021-09-07 Relm4 v0.1 发布

【大家的项目】 Poem-openapi v0.2.1 发布

Poem-openapi 0.2.1 released!

Poem-openapi:

Poem-openapi 使你能够方便快捷的构建符合 OpenAPIv3标准的应用程序接口; 通过使用过程宏来生成大量样板代码,你将有更多时间和精力来专注于实现更重要的业务逻辑。

功能特性:

  • 完全支持 async/await;
  • 类型安全;
  • Rustfmt用户友好 (过程宏);
  • 最小开销;

示例:

代码:

use poem_openapi::{payload::PlainText, OpenAPI, API};

struct Api;

#[API]
impl Api {
    #[oai(path = "/", method = "get")]
    async fn index(&self, #[oai(name = "name", in = "query")] name: Option<String>) -> PlainText {
        match name {
            Some(name) => format!("hello, {}!", name).into(),
            None => "hello!".into(),
        }
    }
}

#[tokio::main]
async fn main() {
    poem::Server::bind("127.0.0.1:3000")
        .await
        .unwrap()
        .run(OpenAPI::new(Api).title("hello World").ui_path("/ui"))
        .await
        .unwrap();
}

运行:

[test@localhost poem-openapi]$ cargo run --example hello_world

[test@localhost poem-openapi]$ curl http://localhost:3000
hello!

[test@localhost poem-openapi]$ curl http://localhost:3000\?name\=sunli
hello, sunli!

更多信息

  • 项目地址:https://github.com/poem-web/poem-openapi
  • 开源声明:Poem-openapi开源了!
  • 作者信息:油条哥主页

Relm4 v0.1 发布

Announcing Relm4 v0.1

在第一个测试版发布大约一个月后,经过无数个小时的工作,作者高兴地宣布Relm4的第一个稳定版本正式发布!

关于Relm4

Relm4是一个受Elm启发并基于gtk4-rs的惯用GUI库。它是一个从头开始构建的relm的新版本,并且兼容gtk4libadwaitaRelm4的主要目标是生产效率、灵活性、简单性和可维护性。

功能特性

  • 支持libadwaita;
  • 配套书籍GUI development with Relm4 已完结;
  • 新增支持非阻塞IO的消息句柄;
  • 更多的可复用组件;
  • 许多其他的改进和修复;

完整的ChangeLog可以参见: https://github.com/AaronErhardt/relm4/blob/main/CHANGES.md

更多信息

  • 项目地址:https://github.com/AaronErhardt/relm4
  • 项目文档:https://aaronerhardt.github.io/docs/relm4/relm4/
  • 参考书籍:GUI development with Relm4

Ockam示例: 构建一个可以安全访问远程私有网络的通道

Build a secure access tunnel to a service in a remote private network

Ockam是一个支持端到端加密、双向认证、网络安全的Rust和Elixir语言通信库。

在本篇博文中,作者详细的介绍了如何使用Ockam在Rust中通过约20行代码来构建一个可以安全访问远程私有网络中设备的通道。


Skiff: 一门用Rust编写的逐渐类型化的函数式编程语言

Introducing Skiff, a gradually typed functional language written in Rust

Skiff,是一门用Rust编写的逐渐类型化的函数式编程语言。所谓逐渐类型化是指作者计划下一步通过添加类型化关键字来区分完全类型函数和部分类型函数。

Skiff受Elm/Pyret/Python语言启发,并受Rust/Javascript/Typescript/Haskell/OCaml/Lua等语言影响,当前语言功能还在持续完善中,作者提供了一个由wasm!驱动的网页编辑器可供读者学习使用,更多信息请访问项目主页的Readme。

更多信息

  • 项目地址:https://github.com/P-bibs/skiff/
  • 网页编辑器:https://skiff.paulbiberstein.me/

本文分享自微信公众号 - Rust语言学习交流(rust-china),作者:odd-cat

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2021-09-07

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 【Rust日报】2021-07-09 Sycamore v0.5.0发布

    Sycamore 是一个用于在 Rust 和 WebAssembly 中构建同构 Web 应用程序的库。v0.5.0 版本是Sycamore迄今为止最大的版本,...

    MikeLoveRust
  • 【Rust日报】 2021-03-09 Meetup - Rust游戏开发

    现在可以用Rust版的Coreutils (cp, chmod, ls, rm, tail, install..) 来运行Debian啦。

    MikeLoveRust
  • 【Rust日报】2019-09-26 Rust 1.38 发布

    Read More: https://blog.rust-lang.org/2019/09/26/Rust-1.38.0.html

    MikeLoveRust
  • 【Rust日报】2020-07-31 Rust 1.45.1发布

    上次1.45稳定版发布后没多久有人在github爆出了一个似乎动摇到Rust根基的bug(可变借用失效),后来发现主要原因是之前一个重构和整理const pro...

    MikeLoveRust
  • 【Rust 日报】2021-06-18 rust 1.53 发布

    Rust 团队2021-06-17宣布 Rust 的新版本 1.53.0发布,获取 Rust 1.53.0:

    MikeLoveRust
  • 【Rust日报】2019-09-25 Nushell 0.3.0 发布

    Nushell(简称Nu)是一种新型的shell,它采用现代的结构化方法来处理命令行。它与来自文件系统、操作系统和越来越多的文件格式的数据无缝地工作,使构建强大...

    MikeLoveRust
  • 【Rust日报】 2019-09-28 Yew v0.9发布

    Amethyst-imgui提供包imgui-rs在Amethyst游戏引擎中的集成。

    MikeLoveRust
  • 【Rust日报】2021-01-05 Rust 1.49.0 正式发布

    在又经过六周的迭代开发,Rust 1.49.0 现在已经发布了!大家可以通过以下命令更新:

    MikeLoveRust
  • 【Rust日报】2021-01-08 Rust Search Extension 1.1.0发布

    Rust Search Extension发布了最新版,同时也突破了500个star,感谢大家的支持!这个版本主要功能如下:

    MikeLoveRust
  • 使用velocyto进行bam转loom吐血踩坑记录

    refdata-gex-GRCh38-2020-A/genes/genes.gtf

    生信技能树jimmy
  • 【Rust日报】2021-01-01 2021新年快乐!Rust 1.49发布!

    这是2020年第一期日报,Rust日报小组祝大家新的一年身体健康,工作顺利,Rust学得越来越好!2021年也是Rust很关键的一年,我们也将会迎来新的2021...

    MikeLoveRust
  • 【Rust日报】2019-09-14 - Rust Bay Area Meetup视频发布

    想要一个可以对这个特征对象的泛型集合进行操作的函数,但将迭代器作为参数传递是否是一个正确的方法呢?

    MikeLoveRust
  • 【Rust日报】2021-08-19 - wgpu v0.10 发布

    实验性的自动微分库,由作者自己维护的 ndarray 分叉提供 wgpu 支持。这也为向 ndarray 添加 wgpu 支持提供了概念性的验证。

    MikeLoveRust
  • 【Rust 日报】2021-06-17 Wasmer 2.0 发布!

    WebAssembly运行时Wasmer 2.0发布了:运行时速度快了50+%,热启动速度快了70+%,还有诸如引用类型、SIMD等更多新功能发布!

    MikeLoveRust
  • 【Rust日报】2021-03-26 Rust 1.51 稳定版发布!

    不过这样可能会导致编译时间加长(因为可能多次编译同一个crate),更详细内容可以看 Cargo Guide 的 "Feature Resolver" 小节。

    MikeLoveRust
  • 【Rust日报】2021-01-16 Async-std v1.9.0 发布

    webrtc.rs,用 Rust 重写 Pion WebRTC (http://Pion.ly)。目前 v1.0 仍然处于开发中,欢迎开源贡献者提PR。其路线图...

    MikeLoveRust
  • 【Rust日报】2020-02-09 image.rs 发布了0.23版本

    Rusoto 是一个 Rust 实现的 AWS SDK,目前在 beta 版本 v0.43.0-beta.1 中兼容了std::future::Future.

    MikeLoveRust
  • 【Rust日报】2021-04-09 tokio 计划发布基于 io-uring 的新运行时

    tokio 今天发布了新的 RFC,提出了新的支持 io-uring 异步运行时的计划。

    MikeLoveRust
  • AkShare-股票数据-个股新闻

    数据科学实战

扫码关注云+社区

领取腾讯云代金券