Releases: peachpiecompiler/peachpie
v1.1.10
This release improves compatibility with WordPress, enhances performance, and adds some interoperability features.
New functions
filter_var_array
fputcsv
with correct parameters- stream_context_create() with params argument
- PHP 8.2 PCRE support for the n option
- spread array operator
Interoperabiity
- Support for using CLR events with PHP callable (https://docs.peachpie.io/net/type-system/#c-event)
- AssemblyAttribute MSBuild property.
get_
/set_
method automatically synthesizes a CLR property with the same name
Optimizations
- string evaluation uses much less allocations
version_compare()
is without allocationsglob
uses less allocations- overload resolution using named arguments: better compile time method binding, avoids some dynamic calls in run-time.
Fixes
- Diagnostic for
printf
with more than 9 arguments checks the arguments correctly.
v1.1.9
Maintenance release with fixes and updated parser.
v1.1.5
maintenance release; avoids a few falsy notices in array
functions and is_readable()
function
v1.1.4
This release has updated PHP syntax parser and PHAR parser. This fixes a few issues as well as it allows parsing a complete range of PHP 5,7 and PHP 8 sources. (It doesn't mean it compiles all the PHP 8.2 quirks and features tho - see #765 and #959)
PHPDoc
Updated Doc Comments parser, and dropped support for type hinting from PHPDoc; this feature was useful when there was no type-hinting in PHP itself. Currently, function parameters and properties can be type-hinted using PHP syntax.
Fixes:
v1.0.25
This is the netstandard2.1
release with the same features as v1.1.3
v1.1.3
v1.1.2
v1.1.1
Fixes SDK to be used from Visual Studio.
v1.1.0
Targeting net5.0
and newer now, so we can make use of the latest API. When running on older .NET runtimes, please use the 1.0.x
versions.
Sample project file .msbuildproj
:
<Project Sdk="Peachpie.NET.Sdk/1.1.0">
<PropertyGroup>
<OutputType>library</OutputType>
<TargetFramework>net6.0</TargetFramework>
</PropertyGroup>
<ItemGroup>
<Compile Include="**/*.php" />
</ItemGroup>
</Project>
Breaking
- Requires .NET Runtime 5.0 or higher.
Optimizations
- ASP.NET Core middleware takes advantage of I/O pipelines.
- avoids allocations in ASP.NET Core request pipeline and string encoding.
- avoids more allocations in request handling, hash, random_int, mbstring, stripcslashes, URL encoding, echo of complex strings, bin2hex.
Fixes
- Compiling of use of a trait whose definition is ambiguous (#1063)