66b258d1 | 10-Aug-2024 |
Tyson Andre |
Back to 1.1.3dev (#244) |
152b420e | 10-Aug-2024 |
Tyson Andre |
Update README.md to indicate that the current version is 110 (#242) |
1b2c17ec | 10-Aug-2024 |
Tyson Andre |
Update the download link for php-ast (#243) Update the download link for php-ast This changed to https://downloads.php.net/~windows/pecl/releases/ast/ and may change again.
Update the download link for php-ast (#243) Update the download link for php-ast This changed to https://downloads.php.net/~windows/pecl/releases/ast/ and may change again. https://pecl.php.net/package/ast should have the most up to date links and be easier to read. Related to #236
show more ...
|
1fc2c3a1 | 10-Aug-2024 |
Tyson Andre |
Support PHP 8.4 property hooks in AST version 110 (#241) Add 'hooks' child of type `AST_PROPERTY_HOOK` to `AST_PROP_ELEM` and `AST_PARAM` (constructor property promotion) in AST version
Support PHP 8.4 property hooks in AST version 110 (#241) Add 'hooks' child of type `AST_PROPERTY_HOOK` to `AST_PROP_ELEM` and `AST_PARAM` (constructor property promotion) in AST version 110. In version 110, change `AST_CLOSURE` and `AST_ARROW_FUNC` nodes to have no `name`. Fixes #240
show more ...
|
4c5efd5d | 12-Nov-2023 |
Nikita Popov |
Update current version number |
5b3b9907 | 12-Nov-2023 |
Nikita Popov |
Back to dev |
a6495510 | 12-Nov-2023 |
Nikita Popov |
Release 1.1.1 |
52ac25d7 | 11-Nov-2023 |
Nikita Popov |
Test PHP 8.3 in CI |
71f6a54d | 11-Nov-2023 |
Nikita Popov |
Add support for typed class constants |
741eda1c | 11-Nov-2023 |
Nikita Popov |
Add missing comma Ooops. |
c132c5d5 | 11-Nov-2023 |
Nikita Popov |
Remove unused array |
dfca9531 | 11-Nov-2023 |
Nikita Popov |
Fix strict-prototypes error |
d7950c2d | 09-Aug-2022 |
Tyson Andre |
Switch from 1.1.0 to 1.1.1dev |
26880c1e | 09-Aug-2022 |
Tyson Andre |
Release php-ast 1.1.0 (#231) |
260678d4 | 09-Aug-2022 |
Tyson Andre |
Add encaps var flags for AST_DIM/AST_VAR for php 8.2 (#227) For https://wiki.php.net/rfc/deprecate_dollar_brace_string_interpolation Closes #224 In util.php: Don't print a
Add encaps var flags for AST_DIM/AST_VAR for php 8.2 (#227) For https://wiki.php.net/rfc/deprecate_dollar_brace_string_interpolation Closes #224 In util.php: Don't print a 0 flag value for combinable flags For php-ast self-testing, minimize the number of changes in the future when similar combinable flags get added to existing ast var types.
show more ...
|
e7dceba7 | 08-Aug-2022 |
Tyson Andre |
Add support for TYPE_TRUE for php 8.2 (#229) * Add support for TYPE_TRUE for php 8.2 https://wiki.php.net/rfc/true-type * Fix test name |
ad71d350 | 08-Aug-2022 |
Tyson Andre |
Fix redundant call to ast_to_zval (#230) I noticed in 1.1.0dev that the __declId did not match a polyfill when short arrow functions were nested. ast_to_zval was already being called
Fix redundant call to ast_to_zval (#230) I noticed in 1.1.0dev that the __declId did not match a polyfill when short arrow functions were nested. ast_to_zval was already being called on the above lines in ast.c, calling it again would create `ast\Node` instances again.
show more ...
|
e460595b | 07-Aug-2022 |
Tyson Andre |
Add tests, flag constants for php 8.2 readonly classes (#228) * Add tests, flag constants for php 8.2 readonly classes * Address review comments |
91f59467 | 07-Aug-2022 |
Tyson Andre |
php-ast 1.1.0dev: Deprecate AST versions 50 and 60, drop support for php < 7.2 (#185) * Deprecate AST versions 50 and 60 AST version 70 has been supported since php-ast 1.0.1 (2019-
php-ast 1.1.0dev: Deprecate AST versions 50 and 60, drop support for php < 7.2 (#185) * Deprecate AST versions 50 and 60 AST version 70 has been supported since php-ast 1.0.1 (2019-02-11). Related to #114 * Drop support for php <= 7.1 Update documentation to mention this. * Update test expectation for AST version 60 deprecation
show more ...
|
f2f7cadc | 07-Aug-2022 |
Tyson Andre |
Fix test failures seen in php 8.2 (#226) Fix bug where ZEND_AST_ARROW_FUNC output for 'stmts' in php 8.2 did not match earlier php versions, which would affect tools using php-ast.
Fix test failures seen in php 8.2 (#226) Fix bug where ZEND_AST_ARROW_FUNC output for 'stmts' in php 8.2 did not match earlier php versions, which would affect tools using php-ast. Handle var_export's output changing to always be fully qualified in php 8.2 test output (`\ast\Node::__set_state(array(` starting with backslash) And start running tests in php 8.2.
show more ...
|
fec004c2 | 12-Feb-2022 |
Tyson Andre |
Properly namespace `#[\AllowDynamicProperties]` in documentation (#220) This was previously resolved relative to the `ast\` namespace in type checkers or if gen_stubs supported attribute
Properly namespace `#[\AllowDynamicProperties]` in documentation (#220) This was previously resolved relative to the `ast\` namespace in type checkers or if gen_stubs supported attributes in the future.
show more ...
|
8f1e75f6 | 27-Nov-2021 |
Tyson Andre |
Release 1.0.16: Optimize ast\Node property setting. Document `#[AllowsDynamicProperties]` in stubs (#219) Add `#[AllowsDynamicProperties]` to AST stubs Use OBJ_PROP_NUM for ast\Node
Release 1.0.16: Optimize ast\Node property setting. Document `#[AllowsDynamicProperties]` in stubs (#219) Add `#[AllowsDynamicProperties]` to AST stubs Use OBJ_PROP_NUM for ast\Node and ast\Metadata building (Do it even for Metadata. The resulting assembly code should be smaller and it's an example of how to write other classes efficiently in the future) Mark 1.0.15 and 1.0.16 as stable
show more ...
|
6b05823e | 27-Nov-2021 |
Tyson Andre |
Update php versions tested in CI, prepare the 1.0.15 release (#218) * Update php versions tested in CI PHP '8.1' isn't published yet on docker hub. Start testing with php 8
Update php versions tested in CI, prepare the 1.0.15 release (#218) * Update php versions tested in CI PHP '8.1' isn't published yet on docker hub. Start testing with php 8.1 in appveyor * Prepare for a 1.0.15 release Make it possible to test with php 8.2 without deprecation notes for endLineno, etc. See #217 Also, document how to properly update cache slot numbers if new properties are added to ast\Node in the future.
show more ...
|
e36cc7de | 27-Nov-2021 |
Tyson Andre |
Allow dynamic properties (e.g. endLineno) without deprecation notice in ast\Node (#217) (But use the default deprecation behavior for ast\Metadata) 1. php-ast itself sets the dynami
Allow dynamic properties (e.g. endLineno) without deprecation notice in ast\Node (#217) (But use the default deprecation behavior for ast\Metadata) 1. php-ast itself sets the dynamic property on endLineno right now, causing deprecation notices in PHP 8.2. Because all declaration types are associative arrays(not lists), a future AST version number may add this as a property of $node->children instead to avoid this notice. 2. WeakMap is only available in PHP 8.0+ (and WeakReference 7.4), but https://github.com/phan/phan targets PHP 7.2+. 3. Because some nodes make `$node->children` a list, applications such as Phan using php-ast can't associate string keys with that. (e.g. to mark nodes that were already processed in a certain step) https://github.com/nikic/php-parser solves that by adding `attributes`, `setAttribute`, `getAttribute`, etc. separately from children, but php-ast currently doesn't have an attributes node. That may be worth it in a future release. 4. When processing a large number of ast nodes in a large number of files, the deprecation notices have a noticeable performance impact, even when suppressed. Related to #214
show more ...
|
a5b2f602 | 27-Nov-2021 |
Tyson Andre |
Use array_init_size as size hint for created arrays (#216) |