[250313] FreeBSD 13.5-RELEASE 发布 | Melange 5 发布

87 阅读3分钟

FreeBSD 13.5-RELEASE 发布!

FreeBSD 发布工程团队荣幸地宣布 FreeBSD 13.5-RELEASE 正式发布! 这是 stable/13 分支的第六个也是最后一个版本。

由于此版本发布在旧稳定分支的后期,因此新功能很少;相反,重点主要放在维护上。 因此,自 13.4-RELEASE 以来的更改主要包括错误修复、驱动程序更新和外部维护软件的新版本。

主要更新:

  • 以维护为主,修复了大量错误。
  • 更新了驱动程序。
  • 升级了部分外部维护软件的版本。

支持周期:

  • FreeBSD 13.5-RELEASE 将支持到 2026 年 4 月 30 日。
  • FreeBSD 13.4-RELEASE 将于 2025 年 6 月 30 日结束生命周期。
  • FreeBSD 13 系列将支持到 2026 年 4 月 30 日。

来源:
www.freebsd.org/releases/13…

Melange 5 发布:动态导入、更佳 JavaScript 互操作性以及 OCaml 5.3 支持

Melange 是什么?

Melange 是一套用于生成和与现代 JavaScript 互操作的工具集:

  • 核心组件:

    • 编译器库:基于 OCaml 编译器库的改进版本,专注于生成精简的 JavaScript 代码。
    • 编译器(melc):将 OCaml 代码转换为 JavaScript。
    • 运行时:运行 Melange 生成的 JavaScript 程序的必要组件。
    • 标准库:提供数据结构、函数和 JavaScript API 绑定等基础元素。
    • 预处理器(melange.ppx):用于预处理 Melange 程序的元编程工具。
    • Playground:基于浏览器的编译器,用于实验和分享代码片段。
  • 生态集成:

    • 构建系统:与 Dune 构建系统无缝集成。
    • 包管理器:与 opam 包管理器无缝集成。
    • 包仓库:Melange 库和工具发布在 opam 的公共包仓库中。
    • 语法:支持 Reason 语法,并通过 ReasonReact 库支持 React 应用开发。
    • 编辑器集成:兼容 OCaml 编辑器工具和代码格式化工具(ocamlformat 和 refmt)。

近日,Melange 5 正式发布!Melange 是一个将 OCaml 编译成 JavaScript 的编译器。此版本带来了许多改进,主要集中在更便捷地表达 JavaScript 结构、支持 OCaml 5.3,以及改进编辑器支持、代码生成和编译器输出等方面。最值得关注的新特性是对 JavaScript 动态 import() 的支持。

主要亮点:

  • 类型安全的动态 import()
    Melange 5 通过 melange.js 中的新函数 Js.import: 'a -> 'a promise 支持 JavaScript 的动态 import()Js.import 既是类型安全的,也与构建系统兼容。它可以动态导入 OCaml 代码和 JavaScript 模块,同时保持类型安全性和构建系统的兼容性。Dune 用户无需额外配置即可使用。
  • 支持 discriminated unions:
    Melange 5 引入了 @mel.as@mel.tag 属性,用于改进变体编译,并更好地支持 discriminated unions,这是一种在 JavaScript/TypeScript 中表示带有鉴别器的多 态对象的常见模式。@mel.tag 指定标记名称,@mel.as 指定每个变体的值。
  • 改进的 @mel.send
    Melange 5 引入了 @mel.this 来标记“self”实例参数,并推荐只使用 @mel.send@mel.send.pipe 已被弃用,并将在下一个主要版本中移除。
  • 其他改进:
    • 兼容 OCaml 5.3 / 标准库升级:
      Melange 5 现在兼容 OCaml 5.3,并升级了标准库。同时,也发布了 OCaml 4.14、5.1 和 5.2 的版本。
    • Melange 运行时 NPM 包:
      Melange 运行时现在以 NPM 包的形式提供,方便用户在无需编译自身运行时和标准库的情况下使用 Melange。
    • 更好的 external 编辑器支持:
      Melange 现在使用内部属性来传播 external 声明的信息,从而改善了编辑器中的悬停显示效果。
    • 更美观的 JavaScript 输出:
      Melange 5 生成的 JavaScript 代码更清晰、更易读,并且缩进更好。

Melange 5 是一个重要的里程碑版本,它带来了许多改进,例如对动态 import() 和 discriminated unions 的支持,兼容 OCaml 5.3,以及更好的 JavaScript 输出。这些改进使得 Melange 成为一个更强大、 更易用的 OCaml 到 JavaScript 编译器。

来源:




更多内容请查阅 : blog-250313


关注微信官方公众号 : oh my x

获取开源软件和 x-cmd 最新用法