Dear O3 Community,
As promised in It’s Time to Say Goodbye to the O3 Beta, we’re delighted to announce the release of O3 v3.0.0, marking our first release of the post-beta phase!
New features and improvements in 3.0.0
O3 Core Improvements
- New Modal System: Modals in O3 should now be defined using the modal system instead of the extension system. ((feat) O3-1426: Modals should not be extensions by brandones · Pull Request #961 · openmrs/openmrs-esm-core · GitHub)
- Centralized Workspace System: Implementations for workspaces and overlays are now consolidated in the styleguide, and workspaces are registered in the routes registry under the
workspaces
key. ((feat) O3-1422 / O3-2724: Move workspace system into the framework by brandones · Pull Request #979 · openmrs/openmrs-esm-core · GitHub) - New Core Translations Library: This library houses translation strings and keys used across applications in Core, as well as common translations for the O3 ecosystem. ((feat) O3-2882 Create core translations library by brandones · Pull Request #933 · openmrs/openmrs-esm-core · GitHub)
- Centralized Patient Banner Components: Modular components for the patient banner are now centralized in the styleguide. ((refactor) O3-2831 Move patient banner into styleguide by brandones · Pull Request #1645 · openmrs/openmrs-esm-patient-chart · GitHub)
- Offline Mode for Distros to Support for Distros without Internet. O3 can now run without an internet connection. Extensions no longer rely on
window.navigator.onLine
but use a newofflineEnabled
flag in theloadExtensions
function. ((feat) O3-3168: O3 should work without requiring a network connection by ibacher · Pull Request #997 · openmrs/openmrs-esm-core · GitHub)
Patient Chart
- Orders Dashboard: A new dashboard for managing lab and test orders. ((feat) O3-2647: Adds ability to add lab results and view within orders widget by pirupius · Pull Request #1731 · openmrs/openmrs-esm-patient-chart · GitHub)
- React Form Engine as Default: The React form engine is now the default, reaching feature parity with the Angular form engine. (Switch to React form engine · openmrs/openmrs-distro-referenceapplication@3a024d2 · GitHub)
- Improved Visit Note Image Upload: Users can now upload multiple images in the visit notes form ((fix) O3-2627: Improvements to the visit notes image upload functionality by jwnasambu · Pull Request #1748 · openmrs/openmrs-esm-patient-chart · GitHub)
Patient Management
- Undo Transitions and Void Service Queue Entries: New functionality to undo transitions and void service queue entries. ((BREAKING) O3-2748 service queues - add ability to undo transitions and void queue entries by chibongho · Pull Request #1052 · openmrs/openmrs-esm-patient-management · GitHub)
- Configurable Queue Table: Introduction of a new configurable queue table. ((feat) - O3-3096 service queues - configuration-driven queue table by chibongho · Pull Request #1114 · openmrs/openmrs-esm-patient-management · GitHub)
- Centralized Appointments Functionality: Appointments logic in the Patient Chart is now centralized in the Patient Management app for reuse in other apps. ((refactor) O3-2891: Refactor Patient Appointments ESM into Appointment… by mogoodrich · Pull Request #1048 · openmrs/openmrs-esm-patient-management · GitHub)
Form Builder
- Ability to import JSON schemas into the form builder ((feat) O3-3132: Ability to import JSON schemas into the form builder by hadijahkyampeire · Pull Request #260 · openmrs/openmrs-esm-form-builder · GitHub)
- Schema Editor Auto-Completion: Auto-completion in the schema editor based on O3 standard schema. ((feat): Add ability for autocompletion in the schema editor. by hadijahkyampeire · Pull Request #262 · openmrs/openmrs-esm-form-builder · GitHub)
- Schema Validation: The schema editor now validates schemas against the O3 standard JSON schema, displaying errors or warnings. ((feat) O3-3036: Link the schema editor to the O3 standard JSON schema and validate schema by hadijahkyampeire · Pull Request #259 · openmrs/openmrs-esm-form-builder · GitHub)
React Form Engine
- Now the default form engine for O3!
- Support for Translations: Form labels and content now change based on the user’s locale. ((feat) Setup i18n for form engine lib by vasharma05 · Pull Request #215 · openmrs/openmrs-form-engine-lib · GitHub)
- Patient Identifiers Creation: Support for creating patient identifiers via the form engine. ((feat) O3-3007: Add support for saving patient identifiers in forms by kajambiya · Pull Request #202 · openmrs/openmrs-form-engine-lib · GitHub)
- Lab Orders Creation: Ability to record lab orders directly from the form engine. ((feat) Add support for lab orders by samuelmale · Pull Request #249 · openmrs/openmrs-form-engine-lib · GitHub)
- Enhanced Validations: Added missing validations to achieve feature parity with the Angular form engine, including support for select-concept-answers and conditional required validation.
Angular Form Engine
- NOTE the Angular Form Engine is no longer the default form engine in O3.
- Navigation Buttons: Added buttons for navigating between pages in multi-page forms. ((feat) Add form navigation links by denniskigen · Pull Request #119 · openmrs/openmrs-ngx-formentry · GitHub)
- Datepicker Component Enhancement: The Datepicker component now respects the
datePickerFormat
prop. ((feat) Make datepicker placeholder aware of datePickerFormat input by denniskigen · Pull Request #121 · openmrs/openmrs-ngx-formentry · GitHub) - Decimal Rendering Type: Added a new rendering type for decimals. ((feat) Add decimal rendering type by denniskigen · Pull Request #127 · openmrs/openmrs-ngx-formentry · GitHub)
- Decimal Values Validator: New validator to check if decimal values are allowed for number fields. ((feat) O3-2972: Add disallow decimals validator by denniskigen · Pull Request #135 · openmrs/openmrs-ngx-formentry · GitHub)
O3 Docs
- Improvements to the
Setting up an instance of O3 using Docker
recipe Setting up an instance of O3 – O3 Docs - Add docs for the new modal system The modal system – O3 Docs
- Improvements to the
Releasing frontend modules
guide https://o3-docs.openmrs.org/docs/frontend-modules/releasingThank you for your continued support and contributions!Read through the full changelog here Changelog – O3 Docs.
What’s Next? 3.1.0 is underway!
Hot on the heels of 3.0.0, we are excited to announce that work is already underway on the 3.1.0 QA release. This update incorporates valuable contributions from the community over the past few weeks.
Key Points
- Priority items will be tracked with the RefApp 3.1.0 tag on Jira: Version Detail - OpenMRS Issues
- We encourage you to flag any crucial issues with this tag for consideration.
- We aim to release it to you as soon as possible; aiming to begin QA next week.
QA Review: We invite all community members to participate in the QA process once the release is pushed to https://test3.openmrs.org. To assist in this effort, please refer to our comprehensive QA cheatsheet: O3 QA & Clinical Release Checklist - Google Sheets
You Made this Happen!
A heartfelt thank you to all our amazing contributors who have made this release possible. Your dedication and hard work continue to drive the success of this project.