Release Notes 2.1

On this page:

Introducing OpenMRS 2.1

Several months ago, the OpenMRS developer community decided that we needed a better release process.  We agreed that we would aim to release OpenMRS twice a year, and the platform annually. Our goal was to release OpenMRS 2.1 by September 2014. We just barely missed that goal, but today, in early October, I'm happy to announce the release of OpenMRS 2.1!

This release doesn't bring many user-visible new features to the reference application (the Allergy functionality is nice!), but it has allowed us to focus on refactoring and automating our release process. And further, it gives us a chance to illustrate how an OpenMRS reference application release contains hundreds of under-the-hood improvements to modules that implementers and developers can leverage.

First, I'd like to give a special thanks to Cintia Del Rio, who contributed a huge amount to automating our module release processes, both by helping conceptualize the approach, by setting up bamboo plans, and by documenting the process. We should schedule time on a call to show the new approaches (automation is great!) and work through some last kinks (we have a lot of interdependent modules). Also, Mário Areias popped up out of nowhere to fix broken builds at odd hours just because he noticed them through CI emails, and Mark Goodrich did maven releases for me when I lost my nexus password.

I'd also like to thank Geoffrey WasilwaJames ArbaughAlexis Duque, and Lluis Martinez for answering my last-minute calls for help and getting tickets done fast.

Feature highlights from OpenMRS 2.1:

  • Allergy List (design led by Jonathan Teich, BA work by Shasha Liu, dev work by Daniel, Wyclif, Soldevelo, and others)
  • Implementation-defined forms in the new UI
  • Atlas module (summer of code work by Alexis Duque)
  • Built on OpenMRS Platform 1.10 (just released a couple weeks ago)
  • 34 Modules under the hood

OpenMRS 2.1 includes new versions of lots of modules. Some highlights of new features since OpenMRS 2.0:

  • App Framework has improvements to the context model and it's easier to apply this to URL templates
  • EMR API supports the new order entry API via the encountertransaction web resource
  • HTML Form Entry has 30 tickets, including uploading and viewing files
  • ID Gen can now generate identifiers of variable length
  • Reporting has >90 tickets closed, including Visit data sets
  • REST has 30 tickets closed, including i18n of display names, and support for the new order entry API
  • UI Commons now includes angular services for calling our REST API, and improvements to the Simple Form UI framework
  • Metadata Deploy (built by I-TECH for Kenya EMR) is a better way for a distribution to set up its packaged metadata

Indeed, there is way more than I can describe here. See the Bundled Modules and Closed Issues section below.

As always, Daniel KayiwaRafal KorytkowskiWyclif Luyima, Burke MamlinMichael Downey, and the Infrastructure Team made big contributions that would take too long to enumerate.


Thanks to the complete list of code contributors to OpenMRS 2.1:

Alexis Duque, Andrew Szell, Angshuman Sarkar, Aniketha Katakam, Anton Kravchenko, Arathy-mac, Benjamin Wolfe, Burke Mamlin, Cintia Del Rio Calvo, Cosmin Ioan, Damian Szafranek, Damitha Kithmal, Daniel Kayiwa, Darius Jazayeri, Deepak N, Filip Biedrzycki, Geoffrey W Wasilwa, Gitahi Ng'ang'a, Glauber Ramos, Harsha Kumara, Hemanth, Jakub Kondrat, Kaweesi Joseph, Krzysztof Kaczmarczyk, Lech Rozanski, Lee Breisacher, Lukas Breitwieser, Madawa Soysa, Marek Szukalski, Mark Goodrich, Mihir, Mike Seation, Miss Beens, Mujir Shaikh, Mário Areias, Nehashri P L, Neissi Torres Lima, Nicholas Ingosi Magaja, Nyoman Ribeka, Pamela Canchanya, Paweł Muchowski, Przemyslaw Gierszewski, Radek Puzdrowski, Radoslaw Puzdrowski, Rafal Korytkowski, Rohan Poddar, Rowan Seymour, Saptarshi Purkayastha, Shruthi Dipali, Suraj Ponugoti, Sushmitha Rao, Vinay Venu, Vinkesh Banka, Wesley Spencer See, Willa Ahmed, Wyclif Luyima, hemanths, indraneelr, Łukasz Gąsior

-Darius Jazayeri

Bundled Modules and Closed Issues

ModuleVersion in OpenMRS 2.1Version in OpenMRS 2.0Closed issues
Allergy API1.0.1not includedincluded in RA
Allergy UI1.0not includedincluded in RA
App Framework2.2.12.1see in JIRA
App UI1.2.21.1included in RA
Atlas2.1not included 
Core Apps1.41.2.1included in RA
Data Exchange1.21.1RA-403
EMR API1.41.1see in JIRA
Form Entry App1.0not includedincluded in RA
HTML Form Entry2.42.2.1see in JIRA
HTML Form Entry Extensions for OpenMRS 1.91.4same 
HTML Form Entry UI Framework Integration1.11.0see in GitHub
HTML Widgets1.6.5same 
ID Generation2.9.12.7see in JIRA
Metadata Deploy1.2not includedsee in JIRA
Metadata Mapping1.0.1same 
Metadata Sharing1.1.8same 
Name Phonetics1.4same 
OpenMRS UI Framework3.2.1same 
Provider Management2.22.1see in JIRA
Reference Application (RA) in JIRA
Reference Demo Data (optional)1.31.0included in RA
Reference Metadata2.1.11.1included in RA
Registration App1.0same 
Registration Core1.0same 
Reporting0. in JIRA
Reporting REST1.3not included 
Rest Web Services2.6.9 d20162.4see in JIRA
Serialization Xstream0.2.7same 
UI Commons1.31.2.1see in JIRA
UI Library2.0.4same 

Closed Issues in Reference Application modules

StoryRA-417Roles and Privileges using Metadata Deploy
BugRA-403Export concepts preserving IDs for OpenMRS 2.1
StoryRA-401OpenMRS 2.1 should be based on OpenMRS Platform 1.10
BugRA-399Error when you click to "Find Patient Record": Cannot format given Object as a Date
StoryRA-397Top-level administrative apps
StoryRA-396Include a "sysadmin" user in the demo data
StoryRA-393Implementation-defined forms in Reference Application
StoryRA-392Disable Awaiting Admission app
StoryRA-391Remove reportingui from the refapp distro
StoryRA-390Disable Patient Relationships with a feature toggle
EpicRA-389Create upgrade path from OpenMRS 2.0 to OpenMRS 2.1
ImprovementRA-387Core Apps: Improve patient dashboard header to display multiple identifiers if exist for an extra patient identifier type
BugRA-380Active Vists displays incorrectly in Firefox
BugRA-379User session location is not updated when changed
ImprovementRA-378Remove superfluous RA home heading
StoryRA-375Include Atlas in OpenMRS Distribution
ImprovementRA-363[Tech] Refactor app context model to be closer to our ideal representation
StoryRA-362[Tech] fragment that includes and renders all extensions for an extension point
StoryRA-356Find Patient app template in core apps should be configurable with breadcrumbs
BugRA-351Fix Reference Metadata build
StoryRA-347Tech Story: Add list of allergens and reactions
BugRA-343Include Process HL7 task
StoryRA-328Create static demo data for the reference application
ImprovementRA-324Core Apps: EncounterDispositionTagHander: Admission disposition should not be allowed if a patient is already admitted
ImprovementRA-322Core Apps module should not rely on the activeVisit being injected by the appui module
EpicRA-304Implementation-defined forms should be available through the RA user interface
StoryRA-271Modules should be able to add content to the clinician facing patient dashboard


Download OpenMRS 2.1 at and see the implementer documentation.