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

  • 2019 年 10 月 8 日
  • 筆記

Nushell 0.3.0 发布

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

Nushell 0.3.0 更新特性:

  • 新的表格设计
  • 原生支持多种文件格式,包括:bson, tsv, sqlite, 和 url-encoded 字符串
  • 新的命令
    • help – 内置的帮助系统
    • reverse – 逆序表格
    • last – 跟 first 命令类似,但是从表格的尾巴开始返回 n 行数据
    • embed – 以当前表格为开始创建一个新的表格
    • fetch – 通过 URL 获取内容
    • post – 通过 post 指定的 URL 获得结果
    • pwd – 展示当前目录
    • env – 访问一些重要的路径和环境变量配置
    • pivot – 旋转表格进行行转列
    • echo – 内置的 echo 命令 — 增强错误提示
  • Shell 特征提醒
  • 插件支持
  • 支持 Docker

更多请查看 Nushell 0.3.0

sdfu – Signed Distance Field Utilities

这是一个用于在计算机图形的上下文中处理带符号的距离字段,特别是基于光线行进的渲染器的工具包。

上图就是在 rayn 借助 sdfu 根据自己定义的路径绘制的图形,代码类似于:

use sdfu::SDF;    let sdf = sdfu::Sphere::new(0.45)      .subtract(          sdfu::Box::new(Vec3::new(0.25, 0.25, 1.5)))      .union_smooth(          sdfu::Sphere::new(0.3).translate(Vec3::new(0.3, 0.3, 0.0)),          0.1)      .union_smooth(          sdfu::Sphere::new(0.3).translate(Vec3::new(-0.3, 0.3, 0.0)),          0.1)      .subtract(          sdfu::Box::new(Vec3::new(0.125, 0.125, 1.5)).translate(Vec3::new(-0.3, 0.3, 0.0)))      .subtract(          sdfu::Box::new(Vec3::new(0.125, 0.125, 1.5)).translate(Vec3::new(0.3, 0.3, 0.0)))      .subtract(          sdfu::Box::new(Vec3::new(1.5, 0.1, 0.1)).translate(Vec3::new(0.0, 0.3, 0.0)))      .subtract(          sdfu::Box::new(Vec3::new(0.2, 2.0, 0.2)))      .translate(Vec3::new(0.0, 0.0, -1.0));  

Repo: sdfu – Signed Distance Field Utilities

Rust 1.38.0 pre-release 开始测试

Rust 1.38.0 计划在 9 月 26 日发布,发布日志可以查看 https://github.com/rust-lang/rust/blob/master/RELEASES.md

可以通过以下方式尝试:

RUSTUP_DIST_SERVER=https://dev-static.rust-lang.org rustup update stable  

type-freak – 一组类型数据结构、特征操作符和有用的 Rust 类型别名的集合

通过设计将运行时计算减少到最小, DSTs 由特征操作符操作。也就是说,使用Rust的相关类型和泛型,我们可以构建 non-trivial 的类型,比如 lists 和 key-value map

  • TList: 可以以任意类型作为 key 的list
  • KVList: 跟 TList 类似,包括额外的数据
  • Boolean: 布尔类型
  • Maybe: 与 std::optoin::Option 类似的特质
  • tuple types
  • Counter: 用于构建递归特征操作符的convient类型
  • Control flow

Repo 链接:rust-type-freak


From 日报小组 @ZLH

日报订阅地址:

独立日报订阅地址:

  • Telgram Channel
  • 阿里云语雀订阅
  • Steemit
  • GitHub

社区学习交流平台订阅:

  • Rust.cc论坛: 支持rss
  • Rust Force: 支持rss
  • 微信公众号:Rust语言学习交流