Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 5 Next »

<html><TITLE></TITLE><DIV mce_style="float: right" style="float: right;">

</DIV>

Current OpenMRS Releases

If you are looking for downloadable builds of OpenMRS, see the Release Note Import page.

A running openmrs application displays its version in the bottom footer. A small red "i" will appear next to an expected database version that is different that what the current code is thinking it is working against. If this is the case, the file labeled openmrs-X.Y-to-latest-mysqldiff.sql should be run ("source"ed) on the current database.

Versioning Explanation

The format for OpenMRS versions:

How/when to Choose a Version Number

We follow the Apache Versioning conventions.

Major

The major version number is changed when there are large incompatible changes – e.g., methods are being removed from the API. These should be rare.

Minor

The minor version should change when new features are added or the changes being made will make the prior version incompatible with the new changes. Minor versions should be backwards compatible with older minor versions, but may not be future compatible. For example, if a module requires OpenMRS 1.4, then it should still work with 1.5, but may not work with 1.3.

Maintenance

Maintenance releases represent bug fixes (maintenance) and should be both forward and backward compatible. For example, if your code works with 1.5.2, it should work with 1.5.1 and 1.5.7.

tip|The maintenance number is not permanent for a branch. If a branch is getting merged in sooner or later than expected, the branch could change. When this happens, all sqldiff procedure calls will need to be modified to use the new maintenance number.

Database

The database number should change with every change that is run on the openmrs database. Each change incrementally brings the current data and schema up to the latest that the related code is expecting.

info|We are planning to phase out this database number from the versioning scheme.

Side note: The database version should use double digits. (Start with 01, 02, etc). This allows for proper sorting and storing when 10+ database diffs go through.

Modifier

The modifier represents and optional release type. Trunk typically carries the "-dev" modifier to indicate that it is under development. Possible modifiers are:

-dev

nightly build, for development purposes only (trunk would usually carry this modifier)

-alpha

development pre-release, not for public consumption

-beta

early release, may be used by beta testers

-rc

release candidate, not officially released but in final stages of testing, may be used by early adopters

The modifier may be followed immediately by a positive integer to allow for multiple instance of a particular release type — e.g., 1.6-rc1 followed by 1.6-rc2.

Where the Version Numbers are Stored

How to Change OpenMRS Version

  1. Step
  2. by
  3. Step
  4. goes
  5. here

The current openmrs and database version are stored in variables on the OpenmrsConstants class. An openmrs restart is required to update the footer display with a updated database.

Module Versioning

Modules versions should follow the same format:

Likewise, major, minor, and maintenance numbering should be adjusting according the conventions mentioned above.
</html>

  • No labels