Version requirements¶
Summary of changes for OMERO 5.4 and provisional changes for 5.5¶
Criteria for what is considered to be supportable includes whether support by both upstream developers and operating system distributions will be available for the lifetime of the 5.4 release (including security support), and also upon our resources allocated to CI and testing. If we are not actively testing it, we cannot claim it is supported or functional. Software components must be provided and supported either by an operating system distribution or their original developers.
This section contains a summary of the changes made to the minimum version requirements for the 5.4 release and also possible changes for the following 5.5 release, albeit tentatively at this point. The intent is to provide a roadmap in order that sysadmins may plan ahead and ensure that prerequisites are in place ahead of time to ease future upgrades. The following sections provide more detailed information and the rationale for the changes.
Please check the meaning of the various symbols used on this page. Any system/component with a green tick symbol is supported.
Operating systems¶
Microsoft Windows
- From [5.3] client support only
- Rationale: see blog post explanation
MacOS X
- MacOS X is typically suited only to client use, not serious server deployment, although the server can be expected to build on versions with current security support for development purposes.
Linux distribution CentOS/RHEL
Distribution version OMERO 5.3 OMERO 5.4 OMERO 5.5 6.x 7.x Linux distribution Ubuntu LTS
Distribution version OMERO 5.3 OMERO 5.4 OMERO 5.5 14.04 16.04 - Only LTS versions are supported and tested. Non-LTS versions following a supported LTS release are likely to work but are not officially supported or tested.
- Rationale: No change in this timeframe.
Bitness¶
Currently both client and server will work on 32- and 64-bit systems on all platforms with the exception of MacOS X (64-bit only).
Bitness | OMERO 5.3 | OMERO 5.4 | OMERO 5.5 |
---|---|---|---|
32-bit | for Ice and native code [client] | for Ice and native code [client] | for Ice and native code [client] |
64-bit |
Components¶
PostgreSQL
PostgreSQL OMERO 5.3 OMERO 5.4 OMERO 5.5 9.3 9.4 9.5 9.6 - Rationale: Current releases available for all supported systems from upstream and for CentOS/RHEL 6.x officially via SCL (software collections).
Python
Python OMERO.web 5.3 OMERO.server 5.3 OMERO.web 5.4 OMERO.server 5.4 OMERO 5.5 2.6 2.7 3.x - Rationale: 2.7 is provided by all systems except for CentOS/RHEL 6.x, however it is available officially via SCL. Note that 3.3 is also available via SCL, so there is potential for a 3.x migration in the 5.4 timeframe. OMERO.web no longer works with Python 2.6, the OMERO.server can still be used with Python 2.6.
Ice
Ice OMERO 5.3 OMERO 5.4 OMERO 5.5 3.5 3.6 3.7 Java
Java OMERO 5.3 OMERO 5.4 OMERO 5.5 7 8 9 - Rationale: For 5.3 and 5.4 deprecate 7; this is because security support ended in April 2015. Currently, Matlab is shipped with Java 7 so it cannot be marked as dropped yet.
nginx
nginx OMERO 5.3 OMERO 5.4 OMERO 5.5 1.6 1.8 1.10 1.12
Support levels¶
The following table defines the symbols used throughout this page to describe the support status of a given component, as it progresses from being new and not supported, to supported and tested on a routine basis, and to finally being old and no longer supported nor tested.
Level | Meaning | Description |
---|---|---|
unsupported/new | New version not yet regularly tested and not officially supported; may or may not work (use at own risk) | |
supported/suboptimal | Version which is tested, confirmed to work correctly, but may not offer optimal performance/experience | |
supported/optimal | Version which is regularly tested, confirmed to work correctly, recommended for optimal performance/experience | |
supported/deprecated | Version which is less tested, expected to work correctly, but may not offer optimal performance/experience; official support may be dropped in the next major OMERO release | |
unsupported/old | Old version no longer tested and no longer officially supported; may or may not work (use at own risk) | |
unsupported/broken | Known to not work | |
unsupported/misc | Not supported for some reason other than the above |
Operating system support¶
The following subsections detail the versions of each operating system which are supported by both its upstream developers (for security and general updates) and by OME for OMERO building and server deployment.
UNIX (FreeBSD)¶
It only really makes sense to support the base toolchain for major releases and the Ports tree (which is continually updated); these will be covered in the dependencies, below.
Linux (CentOS and RHEL)¶
General overview for RHEL and CentOS
Version | Release date | Upstream support | OMERO 5.3 | OMERO 5.4 | OMERO 5.5 | Details |
---|---|---|---|---|---|---|
6 | from Nov 2010 | to Nov 2020 | Reference | |||
7 | from June 2014 | to June 2024 | Reference |
RHEL, CentOS 6 and 7 are supported at present. Given the long life of enterprise releases, we intend to support only the latest release at any given time or else it ties us into very old dependencies; 6.x is already quite long in the tooth, however is in wide use and so will require supporting at least 5.4.0.
Linux (Ubuntu)¶
Version | Release date | Upstream support | OMERO 5.3 | OMERO 5.4 | OMERO 5.5 |
---|---|---|---|---|---|
14.04 LTS | from Apr 2014 | to Apr 2019 | |||
16.04 LTS | from Apr 2016 | to Apr 2021 |
Only the LTS releases are supported due to resource limitations upon CI and testing. Only the last two LTS releases are supported (being a bit more frequent than CentOS/RHEL). There is currently no CI testing for any version, but some developer use of 14.04 LTS, 16.04 LTS and more recent non-LTS releases.
Dependencies¶
The following subsections detail the versions of each dependency needed by OMERO which are supported by both its upstream developers (for security and general updates) and by OME for OMERO building and server and client deployment.
Note
Versions in brackets are in development distributions and may change without notice.
Package lists¶
Operating system | Details |
---|---|
CentOS 6 / RHEL 6 | Reference |
CentOS 7 / RHEL 7 | Reference |
Ubuntu | Reference |
Homebrew | Reference |
FreeBSD Ports | Reference |
PostgreSQL¶
OMERO support policies¶
Version | Release date | Upstream support | OMERO 5.3 | OMERO 5.4 | OMERO 5.5 |
---|---|---|---|---|---|
9.3 | from Sep 2013 | to Sep 2018 | |||
9.4 | from Dec 2014 | to Dec 2019 | |||
9.5 | from Jan 2016 | to Jan 2021 | |||
9.6 | from Sep 2016 | to Sep 2021 | |||
Details | Reference |
Version provided by distribution¶
If no version is provided, a suitable repository is indicated.
Version | CentOS/RHEL | Ubuntu | Homebrew | FreeBSD Ports |
---|---|---|---|---|
9.3 | N/A | 14.04 | N/A | Yes |
9.4 | 6 (postgresql), 7 (postgresql) | 14.04, 16.04 (postgresql) | Yes | Yes |
9.5 | 6 (postgresql), 7 (postgresql) | 14.04 (postgresql), 16.04 | Yes | Yes |
9.6 | 6 (postgresql), 7 (postgresql) | 14.04, 16.04 (postgresql) | Yes | Yes |
Details | Reference |
The PostgreSQL project provides packages for supported platforms. Therefore distribution support is not critical since 9.4, 9.5 and 9.6 are available for all platforms.
Python¶
OMERO support policies¶
Version | Release date | Upstream support | OMERO 5.3 | OMERO 5.4 | OMERO 5.5 | Details |
---|---|---|---|---|---|---|
2.6 | from Oct 2008 | to Oct 2013 | [1] [2] | [1] [2] | PEP 361 | |
2.7 | from Jul 2010 | to 2020 | PEP 373 | |||
3.2 | from Feb 2011 | to Feb 2016 | PEP 392 | |||
3.3 | from Sep 2012 | to Sep 2017 | PEP 398 | |||
3.4 | from Mar 2014 | TBA | PEP 429 | |||
3.5 | from Sept 2015 | TBA | PEP 478 | |||
3.6 | from Dec 2016 | TBA | PEP 494 |
[1] | (1, 2) For OMERO.web, Python 2.7 is the minimum supported version. |
[2] | (1, 2) For OMERO.py and OMERO.server, Python 2.6 is the minimum supported version. |
Version provided by distribution¶
Version | CentOS/RHEL | Ubuntu | Homebrew | FreeBSD Ports |
---|---|---|---|---|
2.6 | 6 | 10.04 | N/A | Yes |
2.7 | 7 | 14.04, 16.04 | Yes | Yes |
3.2 | N/A | N/A | N/A | Yes |
3.3 | N/A | N/A | N/A | Yes |
3.4 | N/A | 14.04 | N/A | Yes |
3.5 | N/A | 16.04 | N/A | Yes |
3.6 | N/A | N/A | Yes | Yes |
Details | Python 2 Python 3 |
At the moment 2.7 support is present upstream for the foreseeable future; 3.x versions continue to be released and retired regularly in parallel. The limiting factor will be distribution support for 2.7 as major packages are slowly switching to 3.x, and this might cause problems if our python module dependencies are no longer available without major effort.
The supported version of the Django module used by OMERO.web (1.8) requires Python 2.7. The older version (1.6) will work with Python 2.6 but lacks security support, and is consequently not recommended for production use.
Ice¶
Java¶
OMERO support policies¶
Version | Release date | Upstream support | OMERO 5.3 | OMERO 5.4 | OMERO 5.5 | Details |
---|---|---|---|---|---|---|
7 | from Jul 2011 | to Apr 2015 | Reference | |||
8 | from Mar 2014 | to Mar 2017 | Reference | |||
9 | TBA | TBA |
Version provided by distribution¶
Version | CentOS/RHEL | Ubuntu | Homebrew | FreeBSD Ports |
---|---|---|---|---|
7 | 6, 7 | 14.04 | N/A | Yes |
8 | 6, 7 | 16.04 | N/A | Yes |
9 | N/A | N/A | N/A | N/A |
Details | Reference |
Note that all distributions provide OpenJDK 7 and/or 8 due to distribution restrictions by Oracle. Oracle Java may be used if downloaded separately.
nginx¶
OMERO support policies¶
Version | Release date | Upstream support | OMERO 5.3 | OMERO 5.4 | OMERO 5.5 |
---|---|---|---|---|---|
1.6 | from Apr 2014 | to Apr 2015 | |||
1.8 | from Apr 2015 | to Jan 2016 | |||
1.10 | from April 2016 | TBA | |||
1.12 | from April 2016 | TBA |
Version provided by distribution¶
If no version is provided, a suitable repository is indicated.
Version | CentOS/RHEL | Ubuntu | Homebrew | FreeBSD Ports |
---|---|---|---|---|
1.6 | N/A | N/A | N/A | N/A |
1.8 | N/A | N/A | N/A | N/A |
1.10 | 6 (EPEL), 7 (EPEL) | 14.04 (nginx), 16.04 | Yes | Yes |
1.12 | 6 (EPEL), 7 (EPEL) | 14.04 (nginx), 16.04 | Yes | Yes |
Details | Reference |