Skip to content

Version 3.0.0

Latest
Compare
Choose a tag to compare
@lisachenko lisachenko released this 05 Apr 21:53
· 76 commits to master since this release
596fcae

Better late than never! This is next major release of Go! AOP that contains some improvements and uses new code features for better performance and stability.

Notable changes are:

  • [BC BREAK] Switched to the PHP7.4 and upper, strict types, property and return type hints and new syntax
  • [BC BREAK] Removed the Joinpoint->getThis() method, as not all joinpoints belongs to classes (eg. FunctionInvocation)
  • [BC BREAK] Removed the Joinpoint->getStaticPart() method as it can return anything, better to use explicit methods
  • [Feature] Introduced the new ClassJoinpoint interface with getScope(), getThis() and isDynamic() methods
  • [Feature] Implemented parameter widening feature for generated code #380
  • [Feature] AnnotatedReflectionProperty provides simple access to property annotations #388 by @TheCelavi
  • [Feature] Switched to the laminas/laminas-code package to generate code for proxies
  • [Feature] Add private properties interception #412
  • [Feature] Static code analysis with PhpStan was enabled
  • [Feature] Migration from TravisCI to GitHub Actions

Notice: This version still doesn't support PHP8, see #466, mostly because of absence of PHP8-compatible parser reflection libraries. If you want to contribute this to one of existing projects, this will be very helpful.