Update CHANGELOG-2.0.md

This commit is contained in:
huangzhhui 2020-05-05 00:25:55 +08:00
parent ea90761e93
commit c5dc2a406e

View File

@ -1,6 +1,6 @@
# v2.0 - TBD
## Major changes
## Major Changes
1. Refactor [hyperf/di](https://github.com/hyperf/di) component, in particular, AOP and Annotation Scanner are optimized, in v2.0, the component use a brand new loading mechanism to provided a incredible AOP function.
1. The most significant functional differences compared to v1.x is that you can cut into any classes in any ways with Aspect. For example, in v1.x, you can only use AOP in the class instance that created by Hyperf DI container, you cannot cut into the class instance that created by `new` identifier. But now, in v2.0, it is available. But there is still has a exception, the classes that used in bootstrap stage still cannot works.
@ -11,7 +11,18 @@
6. In v1.x, the proxy class that created by the DI container is a subclass of the target class, this mechanism will cause the magic constant will return the value of proxy class but not original class, such as `__CLASS__`. But now, in v2.0, the proxy class will keep the same structure with the original class, will not change the class name or the class structure.
7. In v1.x, the proxy class will not re-generate when the proxy file exists even the code of the proxy class changed, this strategy will improve the time-consuming of scan, but at the same time, this will lead to a certain degree of development inconvenience. And now, in v2.0, the file cache of proxy class will generated according to the code content of the proxy class, this changes will reduces the mental burden of development.
8. Add `priority` parameter for Aspect, now you could define `priority` in Aspect class by class property or annotation property, to manage the order of the aspects.
## Dependencies Upgrade
- Upgrade `psr/event-dispatcher` to `^1.0`;
- Upgrade `monolog/monolog` to `^2.0`;
- Upgrade `phpstan/phpstan` to `^0.12.18`;
- Upgrade `vlucas/phpdotenv` to `^4.0`;
- Upgrade `symfony/finder` to `^5.0`;
- Upgrade `symfony/event-dispatcher` to `^5.0`;
- Upgrade `symfony/console` to `^5.0`;
- Upgrade `symfony/property-access` to `^5.0`;
- Upgrade `symfony/serializer` to `^5.0`;
## Removed