Skip to content

Releases: hhvm/hsl

Support HHVM/Hack 3.29, add Str\reverse()

17 Oct 15:51
Compare
Choose a tag to compare
v3.29.0

Bump dependency to 3.29

New release for HHVM 3.28.0

27 Aug 18:33
Compare
Choose a tag to compare

This release:

  • includes minor performance improvements
  • replaces the PHPUnit test framework with HackTest

Bugfix release: Math\INT64_MIN

08 Aug 16:29
Compare
Choose a tag to compare

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

08 Aug 16:30
Compare
Choose a tag to compare

INT64_MIN was previously defined in a non-portable way, and could have an incorrect value.

New release for HHVM 3.27.0

07 Jun 15:18
Compare
Choose a tag to compare

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

09 May 15:03
Compare
Choose a tag to compare

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

16 Mar 17:45
Compare
Choose a tag to compare

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

08 Feb 20:52
Compare
Choose a tag to compare

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+

08 Jan 16:29
Compare
Choose a tag to compare

Compatibility update only.

Version 1.1

17 Nov 21:31
Compare
Choose a tag to compare
  • added HH\Lib\Tuple\from_async() - this is a replacement for HH\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