强调
- 添加了hhconfig选项以禁止部分抽象类型常量;我们希望该
disallow_partially_abstract_typeconst_definitions
标记在将来的版本中默认为打开。这与以前的disable_partially_abstact_typeconstants
选项不同 ,后者禁用了覆盖它们的功能。 - 现在的错误消息报告了通用类型约束,例如,
expected T as string
而不是仅expected T
- 未指定类型和名称的可变参数函数的改进错误消息。
- 现在,类型检查器将
is nonnull
与!== null
;对待相同;两者在类型优化方面都已经有特殊情况,但是其中一些是专有的!== null
。 - XHP枚举属性现在支持IDE自动补全。
未来的变化
php_version()
,PHP_VERSION
,PHP_VERSION_ID
,PHP_MAJOR_VERSION
和相关的常量/功能将被删除,因为它们具有误导性。如果您需要检测是否启用了特定的PHP5兼容行为,请使用ini_get('hhvm.php7.foo')
。与PHP5兼容的行为仍然不受支持,并且默认情况下处于禁用状态。- 现在,回购授权模式存储库是自定义格式,而不是sqlite;这只会影响明确检查文件内容的部署工作流。
#
评论将被使用;使用//
或/*
注释代替。#!
如果它是文件的第一行,即“ shebang”行,如,仍将被忽略#!/usr/bin/env hhvm
。我们希望#
在将来的版本中将令牌重新用于新语法。
转自 https://hhvm.com/blog/2021/04/29/hhvm-4.107.html