Releases: davidcole1340/ext-php-rs
ext-php-rs-v0.14.2
ext-php-rs-derive-v0.11.2
ext-php-rs-v0.14.1
Added
Fixed
- Support defaults for calls with named arguments (by @Stranger6667) [#490]
Other
- Add missing parenthesis (by @Stranger6667) [#486]
ext-php-rs-derive-v0.11.1
Other
- Add missing parenthesis (by @Stranger6667) [#486]
ext-php-rs-v0.14.0
BREAKING CHANGES
Methods and Properties are renamed to camelCase by default. Classes to PascalCase, constants to UPPER_CASE and functions to snake_case
extends
andimplements
attributes now require thestub
property containing the class/interface name to be used in stubs.
Attributes like
#[prop]
,#[rename]
, etc. have been moved to#[php]
attributes like#[php(prop)]
,#[php(name = "Foo")]
,#[php(change_case = CamelCase)]
, etc.
- (macro) [breaking] Switch to builder pattern (by @davidcole1340, @danog, @ptondereau, @Xenira) [#99] [#131] [#327] [#174] [#335]
The old macros were dependent on execution order and have been causing trouble with language servers. They are replaced by a builder. See the migration guide at https://davidcole1340.github.io/ext-php-rs/migration-guides/v0.14.html for information on how to migrate.
Added
- (alloc) Add estrdup (by @Qard) [#444]
- (builders) Add IniBuilder (by @Qard) [#442]
- (cargo-php) --features, --all-features, --no-default-features (by @kakserpom)
- (ffi) Allow definging additional bindings (by @Xenira) [#403]
- (globals) Add
CompilerGlobals
(by @Qard) [#445] - (sapi) Expand
SapiBuilder
(by @Qard) [#471] - (zts) Set lock per thread on zts build (#408) (by @joelwurtz) [#408]
- Argument defaults can be any expr valid in const scope (by @alekitto) [#433]
Fixed
- (FunctionBuilder) Remove
null
type from non-nullable typesvoid
andmixed
(by @kakserpom) [#457] - (args) Fix variadic args (by @Xenira) [#337]
- (array) Cast numeric string keys into
zend_ulong
and allow negative keys (by @kakserpom) [#453] [#454] [#456] - (build) Take only the first line of which/where when searching for php executable (by @alekitto) [#430]
- (cargo-php)
get_ext_dir()
/get_php_ini()
stdout noise tolerance (by @kakserpom) [#459] - (clippy) Fix new clippy findings (by @Xenira)
- (globals) Split sapi header value containing
:
correctly (by @Qard) [#441] - (macro) Add missing static flags in
php_impl
macro (by @Norbytus) [#419] - (macro) Add missing separator pipe in flags (by @Norbytus) [#412]
- Ensure update_bindings runs as amd64 (by @Qard) [#446] [#448]
- Fix object access in object write/read/has_property handlers (by @alekitto) [#313] [#438]
Other
- (bindings) Update
docsrs_bindings.rs
to PHP 8.4 (by @Xenira) [#447] - (bindings) Add tooling to generate
docsrs_bindings.rs
(by @Xenira) [#443] - (build) Fix typo in
build.rs
(by @Xenira) [#439] - (cargo-php) Add locked option to install guide (#370) (by @Xenira) [#370] [#314]
- (cli) Enforce docs for cli (by @Xenira) [#392]
- (clippy) Apply pedantic rules (by @Xenira) [#418]
- (coverage) Add coverage badge (by @Xenira)
- (coverage) Ignore release pr (by @Xenira)
- (coverage) Add coverage reporting (by @Xenira) [#415]
- (dependabot) Remove redundant directories included in workspace (#386) (by @Xenira) [#386]
- (dependabot) Add cargo ecosystem (#378) (by @Xenira) [#378]
- (deps) Update cargo_metadata requirement from 0.19 to 0.20 (#437) (by @dependabot[bot]) [#437]
- (deps) Update zip requirement from 3.0 to 4.0 (#435) (by @dependabot[bot]) [#435]
- (deps) Update zip requirement from 2.2 to 3.0 (#432) (by @dependabot[bot]) [#432]
- (deps) Update cargo_metadata requirement from 0.15 to 0.19 (#404) (by @dependabot[bot]) [#404]
- (deps) Update syn and darling (#400) (by @Xenira) [#400]
- (deps) Update ureq requirement from 2.4 to 3.0 (#379) (by @dependabot[bot]) [#379]
- (deps) Update libloading requirement from 0.7 to 0.8 (#389) (by @dependabot[bot]) [#389]
- (deps) Update dialoguer requirement from 0.10 to 0.11 (#387) (by @dependabot[bot]) [#387]
- (deps) Update zip requirement from 0.6 to 2.2 (#381) (by @dependabot[bot]) [#381]
- (deps) Bump JamesIves/github-pages-deploy-action (#374) (by @dependabot[bot]) [#374]
- (github) Add issue and pr templates (by @Xenira) [#455]
- (guide) Directly include doc comments (by @Xenira)
- (hooks) Add check for outdated macro documentation (by @Xenira) [#466]
- (integration) Reorganise integration tests (by @Xenira) [#414]
- (macro) Change
rename
tochange_case
(by @Xenira) - (macro) Improve
name
vsrename
documentation (by @Xenira) [#422] - (macro) Use
#[php]
attribute for startup function (by @Xenira) [#423] - (macro) Trait rename for general and method names (by @Norbytus) [#420]
- (macro) Update documentation for builder pattern (by @Xenira)
- (macro) Add stubs for new builder pattern (by @Xenira) [#183]
- (php-tokio) Move documentation into separate section (by @Xenira) [#322]
- (release-plz) Move breaking changes to section on top of changelog (#393) (by @Xenira) [#393]
- (sapi) Use builder pattern in sapi test (by @Xenira)
- (test) Fix embed test on php 8.4 (#396) (by @joelwurtz) [#396]
- (test) Disable inline example tests for macos unstable (#377) (by @Xenira) [#377]
- Add git hooks and
CONTRIBUTING.md
(by @Xenira) [#475] - Improve test reliability and ease of use (by...
ext-php-rs-derive-v0.11.0
BREAKING CHANGES
Methods and Properties are renamed to camelCase by default. Classes to PascalCase, constants to UPPER_CASE and functions to snake_case
extends
andimplements
attributes now require thestub
property containing the class/interface name to be used in stubs.
Attributes like
#[prop]
,#[rename]
, etc. have been moved to#[php]
attributes like#[php(prop)]
,#[php(name = "Foo")]
,#[php(change_case = CamelCase)]
, etc.
- (macro) [breaking] Switch to builder pattern (by @davidcole1340, @danog, @ptondereau, @Xenira) [#99] [#131] [#327] [#174] [#335]
The old macros were dependent on execution order and have been causing trouble with language servers. They are replaced by a builder. See the migration guide at https://davidcole1340.github.io/ext-php-rs/migration-guides/v0.14.html for information on how to migrate.
Added
Fixed
- (args) Fix variadic args (by @Xenira) [#337]
- (macro) Add missing static flags in
php_impl
macro (by @Norbytus) [#419] - (macro) Add missing separator pipe in flags (by @Norbytus) [#412]
Other
- (bindings) Add tooling to generate
docsrs_bindings.rs
(by @Xenira) [#443] - (cargo-php) Add locked option to install guide (#370) (by @Xenira) [#370] [#314]
- (clippy) Apply pedantic rules (by @Xenira) [#418]
- (coverage) Add coverage badge (by @Xenira)
- (deps) Update syn and darling (#400) (by @Xenira) [#400]
- (guide) Directly include doc comments (by @Xenira)
- (macro) Change
rename
tochange_case
(by @Xenira) - (macro) Use
#[php]
attribute for startup function (by @Xenira) [#423] - (macro) Trait rename for general and method names (by @Norbytus) [#420]
- (macro) Update documentation for builder pattern (by @Xenira)
- (macro) Add stubs for new builder pattern (by @Xenira) [#183]
- Add git hooks and
CONTRIBUTING.md
(by @Xenira) [#475] - Typo in README.md (by @kakserpom)
Thanks to the contributors for this release:
cargo-php-v0.1.11
Added
- (cargo-php) --features, --all-features, --no-default-features (by @kakserpom)
Fixed
- (cargo-php)
get_ext_dir()
/get_php_ini()
stdout noise tolerance (by @kakserpom) [#459] - (clippy) Fix new clippy findings (by @Xenira)
Other
- (cargo-php) Add locked option to install guide (#370) (by @Xenira) [#370] [#314]
- (cli) Enforce docs for cli (by @Xenira) [#392]
- (clippy) Apply pedantic rules (by @Xenira) [#418]
- (deps) Update cargo_metadata requirement from 0.19 to 0.20 (#437) (by @dependabot[bot]) [#437]
- (deps) Update cargo_metadata requirement from 0.15 to 0.19 (#404) (by @dependabot[bot]) [#404]
- (deps) Update libloading requirement from 0.7 to 0.8 (#389) (by @dependabot[bot]) [#389]
- (deps) Update dialoguer requirement from 0.10 to 0.11 (#387) (by @dependabot[bot]) [#387]
Thanks to the contributors for this release:
ext-php-rs-v0.13.1
ext-php-rs-v0.13.0
Fixed
- (array) Fix null dereference in iterator (#358) (by @Xenira) [#358] [#357]
- (globals) [breaking] Disabled
$_REQUEST
super global function (#332) (by @Xenira) [#332] [#331]
If you used
http_request_vars()
before it will now panic until a proper implementation is found.
Other
- (clippy) Fix new clippy checks (#352) (by @Xenira) [#352]
- (clippy) Fix new clippy errors (by @Xenira)
- (php) Add deprecation warning for php 8.0 (#353) (by @Xenira) [#353] [#343]
- (release) Add release bot (#346) (by @Xenira) [#346] [#340]
- (windows) Add a debug build with debugging symbols (#350) (by @EdmondDantes) [#350]
- Fix typos (by @Xenira)
- Windows build should try archives (by @joehoyle)
- Fmt (by @joehoyle)
- Use vs17 on php 8.4+ (by @joehoyle)
- Don't use archive for 8.4.1 (by @joehoyle)
- Fmt (by @joehoyle)
- Support php 8.4 internal api changes (by @joehoyle)
- PHP 8.4 (by @joehoyle)
- Fix pipeline (#320) (by @Xenira) [#320]
- Update README.md (#317) (by @s00d) [#317]