Page Contents


Feature List

Previous topic

Developer Documentation

Next topic

Installing OMERO from source

This Page

What’s new for OMERO 5.1 for developers

  • The Version requirements section provides extensive details about which operating systems and dependency versions we will be supporting for the life of 5.1 and the likely changes to these for the next major release (currently planned to be 5.2). Most notably for development purposes, we are deprecating support for Java 1.6 and Python 2.6.
  • Units introduces the new Units-types which are available for use from Model Objects (note that this documentation has been expanded since the release of 5.1.2 and is still a work in progress).
  • Similarly, Key-value pairs introduces the new concept of a “map” type, which consists of ordered lists of key-value pairs.
  • Model graph operations explains how the new graph operations of omero::cmd are implemented.
  • Deprecated methods in IContainer and RenderingEngine have been removed, as have the deprecated services IDelete and Gateway.
  • Pojos methods have been deprecated and replaced by corresponding units methods.
  • OMERO 5.1 requires a Unicode-encoded (UTF8) database.
  • Since OMERO 5.1.3, the Bio-Formats submodule has been removed from the source code and Bio-Formats is managed as another dependency using Ivy. See Build System for more details.

Breaking changes


There have been many updates to this client for 5.1. See the OMERO.web section on the What’s new for OMERO 5.1 for sysadmins page for further details.

OMERO.web template and view writers need to use the @render_response() decorator, see render_response for more details.

The redundant -locked flag has been removed from data manager tree nodes e.g. dataset-locked is now simply dataset.


The API’s request operations Chgrp, Chown, Delete, and their superclass GraphModify, are now deprecated. They are replaced by Chgrp2, Chown2, Delete2, and their superclass GraphModify2. OMERO 5.1.2 adds Chmod2. To allow each deprecated request to be implemented by its corresponding replacement, a partial API compatibility layer is included in OMERO 5.1 and is activated by default through the new configuration property omero.graphs.wrap. If the new request implementations introduce regressions, setting that property to false will reactivate the implementations from OMERO 5.0. However, the configuration property omero.graphs.wrap will be removed in OMERO 5.2 and Chgrp, Chown, Delete, and GraphModify, will be removed in OMERO 5.3. OMERO 5.1 users should thus be using the new 5.1 graph requests so that problems may be detected and corrected before the deprecated features are removed.


OMERO.tables attribute names beginning with __ are reserved for internal use, see OMERO.tables.


Changes to ImportContainer will break any listeners implemented by external developers.


A number of Objects formerly of numerical type are now unit quantities. As a result, code working with these types will no longer compile and queries of these types will now return different values. For example, as explained in Querying units, to return the floating point number using:

select planeInfo.exposureTime from PlaneInfo planeInfo ...

you now need to add .value as follows:

select planeInfo.exposureTime.value from PlaneInfo planeInfo ...

and you also need the enum to go along with it.