php-parser

NodeJS PHP Parser - extract AST or tokens

BSD-3-CLAUSE License

Downloads
706.2K
Stars
513
Committers
35

Bot releases are hidden (Show)

php-parser - 3.0.0-prerelease.9

Published by ichiriac about 5 years ago

3.0.0-prerelease.9 : (2019-08-15)

  • #291 : Incorrect parsing of backslash-prefixed use declarations
  • #278 : 3.0 - Confusing commentsBlocks references
  • #256 : invalid ast for multiple properties
  • #255 : better ast for constant node
  • #250 : Leading comments are treated as trailing comments to the previous function body
  • #248 : broken ast for $$$$$
  • #247 : invalid ast for silent
  • #246 : resolution for classreference doesn't work properly for FULL_QUALIFIED_NAME
  • #242 : feat: improve Declare node and introduce DeclareDirective node
  • #199 : [bug] comment location overlaps with node location for static node
  • #192 : [bug] encapsed and staticlookup
  • #180 : bug in parser with single function
  • #174 : Don't output null for last element in list/array
  • #128 : Don't have curly for propertylookup in offset
php-parser - 3.0.0-prerelease.8

Published by ichiriac almost 6 years ago

  • #235 : invalid ast for self and parent
  • #234 : regression with parens in 3.0.0-prerelease.7
  • #230 : resolvePrecedence break location for bin nodes
  • #202 : [bug] comment position in lookup
  • #194 : [feature] implement trailingComments on nodes
  • #185 : [bug] parens and staticlookup
  • #172 : cast precedence
  • #182 : strange with parens, staticlookup and offsetlookup
  • #167 : staticlookup is broken with curly
  • #239 : [bug] call should be in ExpressionStatement
  • #207 : [feature] use identifier for class/interface/trait name
  • #243 : Regression in prerelease 7 with echo
  • #181 : strange with parens and unary
php-parser - 3.0.0-prerelease.7

Published by ichiriac almost 6 years ago

  • #201 : [bug] curly in staticlookup bug
  • #175 : impossible detect curly in encapsed AST enhancement
  • #210 : [bug] invalid ast for const enhancement
  • #220 : regression in rc-6
  • #204 : [bug] invalid start offset encapsed AST bug
  • #165 : declare doesn't support inline nodes investigating

Many thanks to @evilebottnawi for his help

php-parser - 3.0.0-prerelease.5

Published by ichiriac about 6 years ago

php-parser - 3.0.0-prerelease.4

Published by ichiriac about 6 years ago

php-parser - 3.0.0-alpha.3

Published by ichiriac about 6 years ago

  • fix #168 : End location of if without semicolon
  • impl #147 : Node informations about Binary and unicode strings
  • impl #83 : Adding full support for PHP 7.2
  • fix #122 : Detect foreach bad syntax
  • impl #152 : Improve tests with JEST
  • fix #164 : Fixing some location issues (partial)
php-parser - 3.0.0-alpha2

Published by ichiriac over 6 years ago

  • fix #137 : Bug with parsing list
  • fix #149 : Binary cast: isDoubleQuote incorrect
  • fix #150 : strange ast with list
  • fix #151 : Declare inside if
php-parser - Pre release / 3.0.0 - alpha1

Published by ichiriac over 6 years ago

php-parser - 2.2.0 - Lastest release on 2.x

Published by ichiriac almost 7 years ago

This release will be the latest on 2.x series, the future releases on 2.2.x branch will be only bugfixes, if you are using a <2.1.x you should consider using this lastest version as it contains a lot of bugfixes.

NOTE : The next 3.0 will be released soon (few days).

  • Impl #108 : add an option to disable PHP7 support
  • Fix #107 : fix T_DOUBLE_COLON handler
  • Fix #106 : infinite loops from lexer (unput)
  • Fix #105 : T_DOLLAR_OPEN_CURLY_BRACES handles now expressions
  • PR #102 : Normalize the way type casts are defined
  • Fix #103 : Fix critical cast to null confusion
php-parser - 2.1.0

Published by ichiriac almost 7 years ago

  • Impl #91 & #92 : Functions support reserved names (PHP7)
  • Fix #89 : parsing methods can use Buffers or Strings
php-parser - Bug-fixes

Published by ichiriac about 7 years ago

  • Fix #86 : bug on Object properties usage in PHP like __proto__, or constructor
  • Fix #84 : remove null statements from bodies
php-parser - Precedence fixes

Published by ichiriac over 7 years ago

  • Fix precedence between bin, retif, unary
  • Fix precedence with assign
php-parser - 2.0.4 - Fixes

Published by ichiriac over 7 years ago

  • Fix AST errors on suppressErrors
  • Add curly boolean on variable node (for ${bar} syntax)
  • Implement the static closure flag, ex: $c = static function() {};
php-parser - 2.0.0

Published by ichiriac over 7 years ago

  • Update AST for operators, unify bin/bool/coalesce nodes
  • Fix nested block usage on function bodies
  • Avoid initial $ on variables
  • Shell nodes are now exposed by encapsed nodes only
  • Typescript definition file
  • Avoid identifier nodes on namespaces & use statements
  • Fix precedence on bin, unary, retif nodes
  • Fix ending position on functions/methods/closures
  • Fix lexer unput at the end of the file (infinite loops)
  • Add encapsed node (type=offset) on dynamic offsets
  • Implement annonymous class arguments
  • Fix missing first char on encapsed T_STRING_VARNAME
php-parser - 1.0.0

Published by ichiriac almost 8 years ago

  • All nodes are now converted to objects
  • Bruteforce tests are in a separate project
  • Improved tests with mocha
  • Many syntax fixes
  • Tests over a silent error mode
  • Release of a complete AST documentation
php-parser - 0.1.5

Published by ichiriac almost 8 years ago

The 0.1.x version starts to be deprecated

  • Fix closure use token
  • Improve silent errors handler
  • Pass PHP7 tests
  • Update class, traits, interface declarations
  • Many syntax fixes
php-parser - 0.1.4

Published by ichiriac almost 8 years ago

  • Move from static instances to instanciated objects in order to fully handle
    promises
  • Fix the silentLexer
  • Fix the debug output mode
  • Add positions on expr->set
php-parser - bugfixes and php7 implementation

Published by ichiriac over 8 years ago

php-parser -

Published by ichiriac about 9 years ago

php-parser -

Published by ichiriac over 9 years ago

first release with a great language coverage