按计划,JDK 11 将于 9 月发布。随着时间的临近,越来越多的 JEP 正被不断被添加至 JDK 11 的开发列表中。2017 年 12 月 1 日,来自 Oracle 的开发者 Jonathan Gibbons 创建了 JEP 330 草案,名为 “Launch Single-File Source-Code Programs”,主要是改进 Java Launcher 以支持一个命令执行单个 Java 源代码文件。 换句话说,在条件满足的情况下,可以简单地直接编译并运行单文件程序,而不再需要调用 javac ,也不需要打包 jar 文件。此外,JEP 330 还引入了通常在 Unix 系统脚本中使用的 Shebang 和相关技术,将支持使用该机制来执行 Java 程序。 在描述中,Jonathan Gibbons 表示该 JEP 的目标不是为了改变 Java 语言规范(JLS)或 javac 来接纳 shebang,也不是为了将 Java 语言演变为通用脚本语言。而是为了更纯粹的编译小型程序,降低开销。2018 年 5 月 17 日-24 日,JEP 330 草案在邮件列表中发起评审,由于观点存在分歧,讨论较为激烈,导致延长一周的评审时间一直到 5 月 31 日。6 月 1 日,Java 首席架构师 Mark Reinhold 表示虽然不是每个提交者都对这个 JEP 完全满意,但大家基本已达成共识,JEP 330 将被正式添加至 JDK 11 中。 在 Linux 4.18 的维护周期中,内核暂存区得到了超过一千个的补丁,共有168000行新代码出现,同时有227000行代码被删除。 为了使内核暂存区变得更轻,Lustre 文件系统在这次变更中已经被删除。Lustre 文件系统是一个用于集群计算的并行分布式文件系统,已经存在了十五年。 虽然超级计算机和其它集群计算设置在使用 Lustre 文件系统,但由于在清除代码库方面缺乏进展,作为临时子系统维护者的 Greg Kroah-Hartman 删除了 Lustre 的代码。与此同时,Lustre 开发人员继续在他们自己的外部树上工作。 现在,Lustre 使用者需要外部依赖才能使用 Lustre,直到将来 Lustre 可以再次进入主线内核树的状态。 Greg KH 数年前已经表达过他对内核 Lustre 文件系统代码状态的不满。其他内核暂存区工作包括各种驱动程序清理、DebugFS 清理、NCPFS/IPX 代码的删除以及各种其他编码改进。更多内容,请关注本次专辑。 MongoDB 因其灵活的文档模型、可扩展分布式设计广受开发者喜爱,在此基础上,MongoDB 4.0 推出了更强大的功能支持,目前 4.0 第一个 RC 版本已经发布。下面将介绍 MongoDB 4.0 核心的一些新特性。第一,多文档事务(Multi-Document ACID Transaction): ![]() MongoDB 的事务接口非常简单,开发者只需要将「需要保证原子性的更新序列」放到一个 session 的 开始事务 与提交事务之间即可。事务是 MongoDB 开发团队经过3年多努力的结果,从3.0版本引入 WiredTiger 、到3.2版本支持 ReadConcern、3.6 支持 Causal Consistency 等很多工作都是在为事务功能做准备,最终在4.0版本将整个事务的API提供给用户,帮助用户更好的构建应用。 |