Skip to content

Switch to plain semver (three version digits) #15983

@schmunk42

Description

@schmunk42

What steps will reproduce the problem?

Currently Yii is using a four-digit versioning, which is not 100% Semantic Versioning and it does not play very well with composer.

Two of the most commonly used operators ^ and ~ don't work well with the current versioning.

What is the expected result?

Have a concise way to define constraints for the core framework.

What do you get instead?

  • ^2.0.15.2 - gives you updates of all the 2.x versions (which include major releases in Yii terms)
  • ~2.0.15.2 - gives you only updates below 2.0.16, which is clearly too restrictive

There's no operator which can be used in a sane way with the current versioning.

Additional info

Q A
Yii version any

You can read the prologue to this issue starting from yiisoft/yii2-phpunit#2 (comment)

I know this is a huge change and I'd avoid it if there'd be a reasonable alternative, but neither changing semver, nor introducing a new operator to composer seems to be one.

Possible naming:

  • Yii 2.0 Framework 3.0.0
  • Yii 2:3.0.0 Framework
  • ...

Tasks

  • change 2.1 branches to 3.0
  • change branding info

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions