cargo-udeps,缓解Rust依赖膨胀的插件 大多数人对Rust的最大问题之一是编译时间长。原因之一是许多项目使用crates.io中相当多的依赖项。 帮助缓解crates.io上的依赖膨胀是cargo-udeps的目标之
cargo-udeps,缓解Rust依赖膨胀的插件
大多数人对Rust的最大问题之一是编译时间长。原因之一是许多项目使用crates.io中相当多的依赖项。
帮助缓解crates.io上的依赖膨胀是cargo-udeps的目标之一。小编在自己的项目上试用了一下,遇到问题尚待解决。毕竟目前还是v0.1.0,期待这个插件进一步完善。Gist详情
lyys-MBP:abc lyy$ cargo install cargo-udepsUpdating crates.io index
Downloaded cargo-udeps v0.1.0
Downloaded 1 crate (19.7 KB) in 2.45s
Installing cargo-udeps v0.1.0
Downloaded cargo v0.38.0
Downloaded curl v0.4.23
...
Compiling cargo v0.38.0
Compiling cargo-udeps v0.1.0
Finished release [optimized] target(s) in 3m 28s
Installing /Users/lyy/.cargo/bin/cargo-udeps
Installed package `cargo-udeps v0.1.0` (executable `cargo-udeps`)lyys-MBP:abc lyy$ cargo +nightly udeps
Compiling semver-parser v0.7.0
...
Running /abc/target/debug/build/abc-runtime-a1002fbc69f0d1e8/build-script-build
error: failed to run custom build command for abc-runtime v2.0.0 (/abc/runtime)
Caused by:
process didn't exit successfully: /abc/target/debug/build/abc-runtime-a1002fbc69f0d1e8/build-script-build (exit code: 1)
--- stderr
error: 'run' isn't a valid value for ''
[possible values: udeps]
USAGE:
cargo-udeps --manifest-path --message-format
For more information try --help
warning: build failed, waiting for other jobs to finish...
Error: StrErr("build failed")
Rust全栈开发Web应用
由Brian St. Pierre编写的 Introduction to Rust Web Applications
一个快速且简单的指南,使用 Rust 全栈开发 Web 应用:
- Diesel 作为 ORM
- Rocket 作为 Web 框架,
- Seed 作为 [WebAssembly] 前端
structopt v0.3 发布
structopt 是一个库,其通过定义结构体来解析命令行参数。
v0.3 较大的两个变化是:
- 错误提示的显著改进;
- 移除了raw属性;
有关更详细的信息,查看Github
rg3d,3D游戏引擎
Rust 编写 3D 游戏引擎。它包含的功能:
- FBX Loader(ASCII和二进制)
- TTF字体加载器
- 延迟着色渲染器(基于OpenGL 3.3 Core)
- ...
由于其 API 未稳定,该引擎还没有在crates.io上发布。
- 引擎演示链接
- 正在编写的3D射击游戏
RustCrypto:chacha20poly1305,aead,polyval,universal-hash
RustCrypto项目,本周发布了4个新的crates,这些是加密算法的纯Rust实现或trait:
- chacha20poly1305:流行的身份验证的加密模式,由RFC 8439定义。此包也支持XChaCha20Poly1305扩展的nonce变体。
- aead:使用关联数据进行身份验证加密(Authenticated Encryption with Associated Data, AEAD)的trait,chacha20poly1305包是根据这些trait实现的。
- polyval:AES-GCM-SIV(RFC 8452)使用的通用散列函数。
- universal-hash:通用散列函数的trait。
自行承担使用风险。一般来说,使用任何加密库的0.1版本,可能是一个非常糟糕的主意。
日报订阅地址:
独立日报订阅地址:
- Telgram Channel
- 阿里云语雀订阅
- Steemit
- GitHub
社区学习交流平台订阅:
- Rust.cc论坛: 支持rss
- Rust Force: 支持rss
- 微信公众号:Rust语言学习交流