Skip to content
This repository was archived by the owner on Mar 29, 2024. It is now read-only.
This repository was archived by the owner on Mar 29, 2024. It is now read-only.

Upcoming release plan and breaking changes #31

Closed
@pinepain

Description

@pinepain

v0.1.9 (released Sept 1, 2017):

v0.2.0 (ETA Sept 14, 2017):

  • BC-breaking API changes;
  • drop PHP 7.0 support and require PHP >= 7.1 (issue Drop PHP 7.0 support #30);
  • constants will be renamed to match PSR-2 standard;
  • snake_case methods will be removed to match PSR-2 standard;
  • method names that overlap with PHP keywords are the subject of renaming;
  • V8\Exception class as well as it methods is the subject of further renaming;

TL;DR

Upcoming release v0.1.9 will be the last release that support PHP 7.0. Starting from v0.2.0 release PHP >= 7.1 required. All comments, requests and suggesting about this should go to #30 issue.

In the upcoming v0.1.9 release I plan to start moving extension public API closer to PHP world which means it become more PSR-2 compatible, especially method names get converted from PascalCase (UpperCamelCase) to typical camelCase (LowerCamelCase) which is not the big issue as PHP is quite lenient to identifiers case. That's not the case for constants, which are often named in camelCase in V8 - I'll rename them to UPPER_UNDERSCORE. Some snake_case methods (notably, HeapStatistics methods will be renamed to camelCase.

Note, that this list of changes is incomplete, however, I'll try to keep you updated on progress and share further ideas and decisions.

As I'm also developer and a bit in ops, I know how crucial is to have stable API you can rely on and how BC-breaks hurt business.

That's why I have an upcoming surprise for you to let you abstract from v8 internals and just get things done. Stay tuned.

In a while I'll make legacy PPA for those who prefer stability and can't follow current release plan and adapt wild changes.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions