Skip to the content
Documentation
Help Start
Reading in:
  • German: 9,059 of 9,059 pages
About the help in other languages
All help pages

How packages are versioned in the ecosystem

The versioning rules that hold across the Exponential ecosystem - published tags never change, the last position counts on past nine, version sorting, the tilde constraint, and version fields inside an extension - and…

Download as PDF

Address: https://doc.exponential.earth/exphelp/viewer/help/ecosystem/packages/how-packages-are-versioned.md

On this page

How packages are versioned in the ecosystem

Contents

  1. Published versions never change
  2. The last position counts on
  3. Constraints in composer.json
  4. Versions inside an extension
  5. What this means for you

Published versions never change

"A published tag is never changed: a fix for a problem in v6.0.14 or an earlier tag reaches you as the next release, not as a corrected copy of the old one" (SECURITY.md). The same holds for extensions (Tags are permanent).

The last position counts on

"After 0.1.9 the next release is 0.1.10; only the last position counts up unless you decide otherwise" (Releases and version numbers). A plain alphabetical sort puts 0.0.4.10 before 0.0.4.8; sort with git tag --sort=version:refname or sort -V. Composer and Packagist compare each position as a number.

Constraints in composer.json

The kernel's constraints use ~, which "lets the last position float: ~6.0.8 accepts 6.0.9 and 6.0.10 but not 6.1.0" (The default extension distribution). Velocity, for example, is required at ~0.0.4.57 (README.md).

Versions inside an extension

An extension states its release number in ezinfo.php and extension.xml (Bumping ezinfo.php and extension.xml), so the about page shows which release is installed (About and package pages).

What this means for you

  • A version number always means the same code.
  • To get a fix, upgrade to the next version.
  • When you choose a version, look at the published tags sorted by version, not at memory.
  • Your own constraints with ~ pick up fixes in the last position automatically on composer update.

Become an Exponential Partner

Partners share their information, provide funding, contribute back and develop the products with us, and that is how Exponential grows. A partner website and dashboard are planned for mid-2027: please become a partner today to speed up our growth rate and land new features faster.

Something wrong on this page? Report an error

Documentation license

This documentation is free documentation, licensed under the GNU Free Documentation License 1.3 or later.

Exponential Copyright © 1998-2026 Exponential Foundation and 7x