4.3 KiB
4.3 KiB
Changelog
All notable changes to this project will be documented in this file, in reverse chronological order by release.
v0.10.0 2023-17-04
Breaking Changes
- Changed VKCOM to laytan in imports and
go.mod
Added
ast.Type
enum andast.Vertex
GetType() ast.Type
function for easily checking and storing vertex types- Expose the internal lexer using
lexer.New(src []byte, config conf.Config) (Lexer, error)
Fixes
- Added some boundary checks in the formatter to prevent some panics
- A newline will now be added after a doc comment in the printer
- Some fixes for start and end column addition in previous release
v0.9.0 2023-26-03
Breaking Changes
- Dropped PHP 5 support to increase velocity/productivity
Added
- Nodes and tokens now also contain their StartCol and EndCol
- 2 new interfaces for traversers (backwards compatible):
traversers.CheckEntrance
interface: provides anEnterNode(ast.Vertex) bool
that, when implemented, is called before entering a node, allowing short circuiting and more control over the traversaltraversers.NotifyLeave
interface: provides anLeaveNode(ast.Vertex)
that, when implemented, is called when a node has fully been traversed, again allowing for more control
Fixes
- Fixed a bug where the parser would use token.DefaultBlockSize instead of position.DefaultBlockSize when instantiating the parser
Internals
- Rely on code generations for several repeating/boilerplate tasks
- Refactors and deduplication after PHP 5 removal
- Add golangci-lint configuration and an editorconfig file
v0.8.3 2022-09-09
Changed
- reduce memory usage by allocating smaller position blocks
v0.8.2
2022-26-06
Added
v0.8.1-rc.1
2021-09-08
Added
- #6:
php8.1
: addedreadonly
modifier - #8:
php8.1
: addednever
type - #10:
php8.1
: added new octal numbers syntax - #12:
php8.1
: added enums - #15:
php8.1
: addedfinal
modifier for constants in class - #18:
php8.1
: added first class callable syntax
Changed
4cd50d
:cmd
: added file path output before errors
Fixed
- #22: fixed bug with
#
comments
v0.8.0-rc.2
2021-30-07
Added
- #10:
php8
: nullsafe operator (?->
) - #13:
php8
: named arguments - #19:
php8
:match
expression - #21:
php8
: union types in type hints andstatic
typehint - #23:
php8
: blockcatch
without variable - #25:
php8
: trailing comma in parameter lists - #27:
php8
:throw
can be used as an expression - #32:
php8
: declaring properties in the constructor - #34:
php8
: attributes - #38:
php8
: trailing comma in closure use list
Changed
- #30:
php8
: concatenation precedence - #36:
php8
: names in the namespace are treated as a single token - #42:
php8
: deferencable changes and arbitrary expressions innew
/instanceof
Removed
Versions prior to 0.8.0 were not included in this changelog.