Releases: hhvm/hsl
Support HHVM/Hack 3.29, add Str\reverse()
v3.29.0 Bump dependency to 3.29
New release for HHVM 3.28.0
This release:
- includes minor performance improvements
- replaces the PHPUnit test framework with HackTest
Bugfix release: Math\INT64_MIN
INT64_MIN was previously defined in a non-portable way, and could have an incorrect value.
v3.27.1 was meant to be this change, but was created from the wrong branch.
Bugfix release for HHVM/Hack 3.24 LTS: Math\INT64_MIN
INT64_MIN was previously defined in a non-portable way, and could have an incorrect value.
New release for HHVM 3.27.0
This release:
- adds support for some experimental strict options in 3.27
- improves clarity of documentation comments
Relicense, support and require HHVM 3.26, additional functions
Highlights
This release:
- is available under the MIT license
- adds support for - and requires - HHVM 3.26
- switches version numbering scheme to match HHVM
- adds additional functionality
New Functionality
The following have been added:
C\reduce_with_key()
Keyset\filter_with_key()
Vec\filter_with_key()
Major feature work is happening in the hsl-experimental repository.
Versioning and lifecycle
Currently, the Hack Standard Library is primarily wrappers around existing builtins. We expect this to change in the future, and for the Hack Standard Library to be a builtin itself. We are changing the version numbering in anticipation of this.
The major and minor versions (3.26) will match the minimum version of HHVM required; the revision (.0) is independent for the HSL.
In general, master will only target nightly builds, and we won't be backporting most features to release branches. If there is particular functionality you would like backported to support a previous version of HHVM in the future, please file an issue.
For bugfixes and security updates, the HSL will follow HHVM's support lifecycle.
Add Str\format, and support custom error messages to C\onlyx
Str\format
is similar to sprintf
, however it takes a Str\SprintfFormatString
, which is somewhat stricter than the format specifier for sprintf
. For example, %d
requires an integer when using Str\format
, however sprintf()
is defined as accepting mixed in Hack, and in practice is happy to accept floats.
Str\SprintfFormatString
is not stable: our goal is for this to be extremely strict about matching format string placeholder types against parameter types - we may make type restrictions narrower in the future.
C\onlyx
now optionally takes a Str\SprintfFormatString
argument and additional arguments for the placeholders.
Remove support for application-defined Awaitables
These were never documented or officially supported; support for them has been removed from nightly builds of HHVM and the typechecker.
Support HHVM 3.24, require HHVM 3.23+
Compatibility update only.
Version 1.1
- added
HH\Lib\Tuple\from_async()
- this is a replacement forHH\Asio\va()
- added boundary constants to
HH\Lib\Math
- more accurate key constraints for
dict
-related functions; while these changes may introduce typechecker errors, use of other types would have led to runtime errors with v1.0