Releases: opencrvs/opencrvs-core
OpenCRVS - v1.1.2
Introduction
Read the release notes!
Read the v1.0.1 to v1.1.* migration notes!
OpenCRVS v1.1.2 is a minor release which includes a hot-fix to the previous OpenCRVS v1.1.1 release.
It is to be used in conjunction with a forked country configuration release v1.1.2
Non breaking hotfix
- ocrvs-4210 Ansible amend to ensure that data folders do not get cleared when the script is run during a migration @euanmillar in #4210
Full Changelog: v1.1.1...v1.1.2
OpenCRVS - v1.1.1
Introduction
Read the release notes!
Read the v1.0.1 to v1.1.* migration notes!
OpenCRVS v1.1.1 is a minor release which includes hot-fixes to the previous OpenCRVS v1.1.0-stable release.
It is to be used in conjunction with a forked country configuration release v1.1.1
Non breaking hotfixes
- ocrvs-3707 Disabled add attachments when father and mother has no details by @Zangetsu101 in #4017
- ocrvs-3859-fix Download certificate pdf in mobile device while printing by @sadmananik in #4013
- ocrvs-3985 Fixed default configurable field required issue by @sadmananik in #4030
Full Changelog: v1.1.0...v1.1.1
OpenCRVS - v1.1.0-stable
Introduction
Read the release notes!
Read the v1.0.1 to v1.1.* migration notes!
Release management as a Digital Public Good - what we have learnt so far
OpenCRVS v1.1.0-stable is a minor release marking the commencement of a standardised release process for OpenCRVS. It is to be used in conjunction with a forked country configuration release v1.1.0
This release will be maintained for 6 months by the core development team.
The v1.1.0 release includes collective hot-fixes to stabilise the previous v1.0.1 minor patch release.
Upgrading from v1.0.1 to v1.1.0 requires the upgrade Migration Notes to be followed precisely.
We strongly recommend that all implementers currently running v1.0.1 perform the upgrade to v1.1.0 as soon as possible.
__
Major Features
The following explains in more detail each major feature that has been included in this release.
Migration microservice
In this release a new "migration" microservice has been introduced to core to support a simpler upgrade procedure for system administrators. This microservice utilises the package migrate-mongo and performs automatic breaking change core migrations. This means that a system implementer will never need to separately install and run database migrations.
UI updates for new users
Previously the create and edit user flow and the onboarding flow were not utilising the new Content UI components from the storybook. These flows have been refactored.
Dependency upgrades
In this release, no major components have been upgraded.
Breaking changes - core
v1.1.0 includes the following improvements which are breaking changes. Core migrations are performed automatically when you upgrade and run this release as explained in the migration notes.
- Bugfix OCRVS-3561: When registering a birth, a document "Legal Guardian Proof" was entered into the database mistakenly as "Informant's Birth Certificate". An automatic migration finds any such entries and correctly labels the document.
- Bugfix related to OCRVS-2641: When improving our demo data generator script to more accurately reflect "real" Field Agent performance, we noticed that the timestamp saved to InfluxDB marking when the Field Agent commenced the application was incorrectly set to the timestamp associated with the last edit on the application. An automatic migration finds any such entries and correctly sets the timestamp.
- An automatic migration adds a new channel /confirm/registration to OpenHIM so that the payload between country configuration BRN generation and core workflow service can be monitored in OpenHIM. Additionally log retention for all OpenHIM channels is hardocded to 30 days. This saves approximately 20GB of storage space on a production server every year.
Breaking changes - country configuration
v1.1.0 includes the following configuration improvements which are breaking changes. You must merge all changes from the Farajaland master branch into your country configuration fork to retrieve all these updates as explained in the migration notes.
-
The country configuration now loads the JWT public key from core from a new endpoint in the auth microservice
"/.well-known". This improves our security processes as we can now rotate the public key without taking the stack down. An additional benefit of this change is this also allows development teams to start the country configuration server with justyarn dev, rather than previously the v1.0.1 requirement to runyarn dev <-- path to the core directory -->. -
We fixed a bug in our provided Github Action deploy.yml.
-
Docker Compose yml files have all been updated to support bugfixes in core.
-
The following translation keys have been added:
"config.application.updatingeMessage": "Updating...""constants.requestReason": "Reason for request""form.field.label.updatingUser": "Updating user""form.field.label.creatingNewUser": "Creating new user""form.section.user.preview.title": "Confirm details""record.certificate.collectedInAdvance": "Printed in advance by" -
The core emergency-backup-metadata.sh and emergency-restore-metadata.sh scripts contained bugs which have been resolved and these scripts are now located in the country configuration server.
-
The Ansible playbooks in core, now extend an additional
playbook.ymlin the country configuration.
This allows application secrets that LUKS encrypt the manager node databases' /data folder to be configured as you wish.
The prop encrypt_passphrase has been renamed to disk_encryption_key to more accurately reflect the use case of this value.
The disk_encryption_key is saved into a file at the location root/disk-encryption-key.txt
The script decrypt.sh is run on a system reboot, as we noticed that on reboot the data folder would not mount until it is decrypted.
Mongo DB and Elasticsearch passwords are saved into an example text file opencrvs.secrets inside the encrypted /data folder.
We do not advise that the opencrvs.secrets & disk-encryption-key.txt files are used in production. You should reconfigure the playbook and the reading of these secrets from the decrypt, backup and restore scripts, to instead provide them via an API from a Hardware Security Module (HSM).
Secret storage is outside the scope of OpenCRVS in this release. In the December OpenCRVS release v.1.2.0 we intend to show an example of how an HSM could be configured. In the meantime, MOSIP's documentation on the requirements of a Hardware Security Module is useful reading.
Miscellaneous bugfixes and refactor
A host of bugfixes were discovered and prioritsed by our QA team to stabilise OpenCRVS v1.0.1 .In future, non-breaking change bugfixes will be released as v1.1.<PATCH> hotfix releases.
What's Changed
- Release v1.0.1 by @euanmillar in #3584
- removes ?? from templete by @jpye-finch in #3609
- Ocrvs 3580 Fix assigned user not showing in record audit by @tahmidrahman-dsi in #3615
- Used refetchQueries instead of manual refetch by @Zangetsu101 in #3614
- ocrvs-3570: Add allowedDocTypes to affivavit upload form by @rabiulislamanik in #3631
- ocrvs-3570: Add test for affidavit file validity by @rabiulislamanik in #3633
- Ocrvs 3328 Style & icon fixes by @tahmidrahman-dsi in #3632
- Bump parse-url from 6.0.0 to 6.0.2 by @dependabot in #3630
- ocrvs-3564: Change imageLoadingError state when file is being uploaded by @rabiulislamanik in #3634
- ocrvs-2331-fix Added TRADITIONAL_BIRTH_ATTENDANT as attendantType for birth declaration by @sadmananik in #3648
- ocrvs-3567: Add allowedDocType in preview page's document uploader by @rabiulislamanik in #3649
- ocrvs-3570: Pass allowedDocTypes props to death registration collector form section by @rabiulislamanik in #3654
- Ocrvs 3616 Refactor settings by @tahmidrahman-dsi in #3647
- Implement an endpoint for fetching the public key from the auth api by @KaliGreen in #3659
- ocrvs-3565: Change uploadingState to false after a fileUpload error occurs by @rabiulislamanik in #3660
- ocrvs-3542: Set spinners size to 24 on performance page by @rabiulislamanik in #3665
- ocrvs-3572 Prevented loading workqueue data from record audit by @Zangetsu101 in #3612
- Ocrvs 2921 Refactor change phone number components by @tahmidrahman-dsi in #3661
- ocrvs-3454 Persisted the country logo in localStorage by @Zangetsu101 in #3646
- Bump file-type from 16.5.3 to 16.5.4 by @dependabot in #3677
- Bump undici from 5.5.1 to 5.8.0 by @dependabot in #3672
- Bump terser from 4.8.0 to 4.8.1 by @dependabot in #3664
- Add a channel for verifying birth / death declarations from country config package by @KaliGreen in #3678
- Update new user flow by @yeasinhossain-dsi in #3670
- Convert app config from class to functional component by @sadmananik in https://github.com/opencrvs/opencrvs-cor...
OpenCRVS - v1.0.1
Introduction
OpenCRVS v1.0.1 is a minor patch release and considered an official public release of OpenCRVS. It contains the Conflicts feature and essential bugfixes for the major v1.0.0 OpenCRVS Core release. It is to be used in conjunction with a forked country configuration release v1.0.1
This release contains major new features and improvements, a number of dependency upgrades and many bug-fixes. This release includes:
- Correct a record
- Record audit
- Registration form configuration user interface
- Application configuration user interface
- Certificate configuration user interface
- Birth and death form default configuration refresh
- Performance improvements
- New user roles (National Registrar, National System Administrator, Performance Manager)
- UI design refresh of the navigation, workqueues and many pages
- Archive / Reinstate
- Conflicts
- 3rd party penetration test fixes
- Dependency upgrades
- Miscellaneous bugfixes and refactor
All following major releases of OpenCRVS will document any breaking changes and a migration guide for system administrators.
Major Features
The following explains in more detail each major feature that has been included in this release.
Correct a record
It is now possible for all corrections made to an onging declaration by a Registration Agent and Registrar to be tracked and audited. Additionally, it is now possible for a Registrar to be able to make a correction to an already registered birth or death certificate. The correct record process supports uploading supporting legal documentation and configuration of any fees associated.
Record audit
All actions that are performed on a declaration or a registration are tracked, audited and displayed to the user when downloading details of the declaration or registration. This download process is also tracked and audited. This feature allows the user to easily monitor changes to the status of the declaration, any corrections that have been made to it and audit any access requested to personally identifiable information of a citizen by any civil registration staff member.
Registration form configuration user interface
Previously, birth and death form configuration was managed via a complicated JSON file in the country configuration repository. There is now an easy to use, form configuration user interface for National System Administrators to draft, edit, preview, test and publish the declaration forms. The old JSON approach has been deprecated.
Application configuration user interface
Previously, application settings such as fees, registration target deadlines, country logo and phone number validation regular expressions etc were managed manually via text config files in the country configuration repository. There is now an easy to use, application configuration user interface for National System Administrators to configure these values on-the-fly. The old config file approach has been deprecated.
Certificate configuration user interface
Previously, certificate configuration was managed via a complicated JSON file in the country configuration repository. There is now an easy to use, certificate configuration user interface for National System Administrators that allows them to upload an SVG design with handlebars for registration data. The certificates can be previewed and printed in this interface. The old JSON approach has been deprecated.
Birth and death form default configuration refresh
The default and standardised, OpenCRVS recommended birth and death form configuration comes pre-packaged into OpenCRVS. The question flow has been further optimised after feedback from our OpenSource community of civil registrars.
Performance improvements
The Performance user interface has been completed refreshed. It now includes detailed analytics on completeness rates, sources of applications, declaration status, field agent performance, breakdown of nationwide to specific office analytics and comparison between number of registrars and population numbers.
New user roles (National Registrar, National System Administrator, Performance Manager)
The National Registrar role has been created. This is a registrar's super admin and can view any declaration or registration nationwide and monitor the performance of any office. The National System Administrator role has the ability to configure the form, certificate and application settings as well as create/edit/deactive any user nationwide. The Performance Manager role has no access to any PII in any declaration or registration. They can access nationwide performance analytics only. This is an ideal 3rd party role for a statistician.
UI design refresh of the navigation, workqueues and many pages
System administrators who have tried out previous versions of OpenCRVS will notice a complete design refresh of the navigation, workqueues and many sections. The new look and feel is cleaner, easier to configure for your national needs and makes better use of screen real estate.
Archive / Reinstate
As long as the declaration has been submitted for review, it is now possible to archive an existing declaration, thus removing it from any workqueue. As every submitted declaration has a unique tracking ID, it can be retrieved in nationwide searches by a Registrar user and reinstated.
Conflicts
When a Registration Agent or a Registrar downloads a declaration in order to perform an action, they are "Assigned" the record. Other users will notice if they search for the same record that it is already assigned. Registration Agents must ask a Registrar to check and "Unassign" the record. This prevents users from making conflicting changes to the same record. A Registrar has the authority to "Unassign" the record from an individual who has it "Assigned" to them to overrule this process.
3rd party penetration test fixes
This version of OpenCRVS has undergone another round of 3rd party, security penetration testing by the consultancy GoFore - NORAD's preferred security testing provider. Any issue that was discovered during the penetration test have been resolved.
Dependency upgrades
In this release we have forked and upgraded Hearth, Jembi's FHIR database server originally located here. We resolved all dependencies that had any open security warning.
Miscellaneous bugfixes and refactor
A host of bugfixes were discovered and prioritised by our QA team. Our test cases will soon be published in our documentation.
What's Changed
- Ocrvs 1905: Validation showing when remove the location from user edit page by @euanmillar in #2413
- Allow setting declarations 'created at' value from outside (#2537) by @rikukissa in #2546
- make age calculation functions use composition date, not current timestamp (#2605) by @rikukissa in #2606
- Hotfix for LOCAL_IP by @euanmillar in #2754
- Fix LOCAL_IP definition not working when there were 2 network interfaces connected by @rikukissa in #2798
- Ocrvs 2981 by @sadmananik in #3032
- Ocrvs 2981 BE Done by @sadmananik in #3063
- Ocrvs 2899 Assign frontend by @tahmidrahman-dsi in #3044
- ocrvs-3456 Fixed mobile form config message typo by @sadmananik in #3472
- Fixed console log error while filling up health institution from regi… by @soumita-dsi in #3465
- ocrvs-3053: radio button aligned to top by @emon-swe-sust in #3468
- ocrvs-3341: Removed a field from user review page if it is hidden in form by @soumita-dsi in #3438
- Release v1.0.0 by @euanmillar in #3482
- ocrvs-3418-fix Fixed back button issue on team page by @sadmananik in #3458
- ocrvs-2912-fix Added govt logo on setup and reset password success page by @sadmananik in #3459
- FIX: Addresses do not appear in review page by @yeasinhossain-dsi in #3461
- ocrvs-3462: pagination added on workflowStatus on performance by @emon-swe-sust in #3475
- ocrvs-2977-fix Some languages related change by @sadmananik in #3479
- ocrvs-3416: Disabled national registrar creation and update without signature by @soumita-dsi in #3455
- ocrvs-3420 Changed secondary address preview group label by @Zangetsu101 in #3457
- Auto hide Notification by @atiqzaman-dsi in #3451
- Conflicts BE & FE by @tahmidrahman-dsi in #3144
- Ocrvs 2707: content page added on team page by @emon-swe-sust in #3444
- ocrvs-3478 Tab name changed according to application name by @sadmananik in https://github.com/opencrvs/opencrvs-co...
OpenCRVS - v1.0.0
Introduction
OpenCRVS v1.0.0 is a major release of OpenCRVS Core. It is to be used in conjunction with a forked country configuration release v1.0.0
This release contains major new features and improvements, a number of dependency upgrades and many bug-fixes. This release includes:
- Correct a record
- Record audit
- Registration form configuration user interface
- Application configuration user interface
- Certificate configuration user interface
- Birth and death form default configuration refresh
- Performance improvements
- New user roles (National Registrar, National System Administrator, Performance Manager)
- UI design refresh of the navigation, workqueues and many pages
- Archive / Reinstate
- 3rd party penetration test fixes
- Dependency upgrades
- Miscellaneous bugfixes and refactor
All following major releases of OpenCRVS will document any breaking changes and a migration guide for system administrators.
Major Features
The following explains in more detail each major feature that has been included in this release.
Correct a record
It is now possible for all corrections made to an onging declaration by a Registration Agent and Registrar to be tracked and audited. Additionally, it is now possible for a Registrar to be able to make a correction to an already registered birth or death certificate. The correct record process supports uploading supporting legal documentation and configuration of any fees associated.
Record audit
All actions that are performed on a declaration or a registration are tracked, audited and displayed to the user when downloading details of the declaration or registration. This download process is also tracked and audited. This feature allows the user to easily monitor changes to the status of the declaration, any corrections that have been made to it and audit any access requested to personally identifiable information of a citizen by any civil registration staff member.
Registration form configuration user interface
Previously, birth and death form configuration was managed via a complicated JSON file in the country configuration repository. There is now an easy to use, form configuration user interface for National System Administrators to draft, edit, preview, test and publish the declaration forms. The old JSON approach has been deprecated.
Application configuration user interface
Previously, application settings such as fees, registration target deadlines, country logo and phone number validation regular expressions etc were managed manually via text config files in the country configuration repository. There is now an easy to use, application configuration user interface for National System Administrators to configure these values on-the-fly. The old config file approach has been deprecated.
Certificate configuration user interface
Previously, certificate configuration was managed via a complicated JSON file in the country configuration repository. There is now an easy to use, certificate configuration user interface for National System Administrators that allows them to upload an SVG design with handlebars for registration data. The certificates can be previewed and printed in this interface. The old JSON approach has been deprecated.
Birth and death form default configuration refresh
The default and standardised, OpenCRVS recommended birth and death form configuration comes pre-packaged into OpenCRVS. The question flow has been further optimised after feedback from our OpenSource community of civil registrars.
Performance improvements
The Performance user interface has been completed refreshed. It now includes detailed analytics on completeness rates, sources of applications, declaration status, field agent performance, breakdown of nationwide to specific office analytics and comparison between number of registrars and population numbers.
New user roles (National Registrar, National System Administrator, Performance Manager)
The National Registrar role has been created. This is a registrar's super admin and can view any declaration or registration nationwide and monitor the performance of any office. The National System Administrator role has the ability to configure the form, certificate and application settings as well as create/edit/deactive any user nationwide. The Performance Manager role has no access to any PII in any declaration or registration. They can access nationwide performance analytics only. This is an ideal 3rd party role for a statistician.
UI design refresh of the navigation, workqueues and many pages
System administrators who have tried out previous versions of OpenCRVS will notice a complete design refresh of the navigation, workqueues and many sections. The new look and feel is cleaner, easier to configure for your national needs and makes better use of screen real estate.
Archive / Reinstate
As long as the declaration has been submitted for review, it is now possible to archive an existing declaration, thus removing it from any workqueue. As every submitted declaration has a unique tracking ID, it can be retrieved in nationwide searches by a Registrar user and reinstated.
3rd party penetration test fixes
This version of OpenCRVS has undergone another round of 3rd party, security penetration testing by the consultancy GoFore - NORAD's preferred security testing provider. Any issue that was discovered during the penetration test have been resolved.
Dependency upgrades
In this release we have forked and upgraded Hearth, Jembi's FHIR database server originally located here. We resolved all dependencies that had any open security warning.
Miscellaneous bugfixes and refactor
A host of bugfixes were discovered and prioritsed by our QA team. Our test cases will soon be published in our documentation to be released at the end of June 2022. The development team have been bugfixing continuously and this release can be considered demo ready. We advise all system administrators to wait untill the end of June 2022 for the first minor patch release: v1.0.1 before proceeding with any implementations.
What's Changed
- Update README for 1.0.0-alpha.3.0 release by @euanmillar in #2075
- Change language code used for extract translations by @euanmillar in #2080
- Bump dns-packet from 1.3.1 to 1.3.4 by @dependabot in #2096
- Bump codemirror from 5.47.0 to 5.61.0 by @dependabot in #2095
- Bump hosted-git-info from 2.7.1 to 2.8.9 by @dependabot in #2094
- Bump lodash from 4.17.19 to 4.17.21 by @dependabot in #2093
- Bump bson from 1.1.1 to 1.1.6 by @dependabot in #2092
- Bump url-parse from 1.4.7 to 1.5.1 by @dependabot in #2091
- Bump handlebars from 4.7.6 to 4.7.7 by @dependabot in #2090
- Bump ua-parser-js from 0.7.20 to 0.7.28 by @dependabot in #2089
- Bump redis from 2.8.0 to 3.1.1 by @dependabot in #2088
- Bump y18n from 3.2.1 to 3.2.2 by @dependabot in #2087
- Bump react-dev-utils from 5.0.3 to 11.0.4 by @dependabot in #2085
- Bump elliptic from 6.5.3 to 6.5.4 by @dependabot in #2084
- Bump urijs from 1.19.1 to 1.19.6 by @dependabot in #2083
- Bump socket.io from 2.2.0 to 2.4.1 by @dependabot in #2081
- Bump axios from 0.18.1 to 0.21.1 by @dependabot in #2079
- Bump ini from 1.3.5 to 1.3.8 by @dependabot in #2074
- Ocrvs 2073 UI and copy updates by @tahmidrahman-dsi in #2077
- Ocrvs 1993 Rejection reason changes by @tahmidrahman-dsi in #2076
- Updating temporary phone number format for Island of Niue by @mushrafulhoque-dsi in #2110
- minor spelling mistakes fixed by @youshamahmood96 in #2124
- [ocrvs-2111] Introducing a new flag on client-config for hiding event info screen by @mushrafulhoque-dsi in #2125
- ocrvs-2107 by @kayumuzzaman in #2133
- Necessary fhir-builders and type-resolvers for deceased's dependents and medical practitioners by @mushrafulhoque-dsi in #2135
- Fix for birth in-progress application issue by @mushrafulhoque-dsi in #2140
- Ocrvs 2127 by @youshamahmood96 in #2132
- ocrvs-2152 by @kayumuzzaman in #2162
- Ocrvs 2150 by @youshamahmood96 in #2164
- Ocrvs 2151 by @mushrafulhoque-dsi in #2...
OpenCRVS - Alpha 3.2
This release contains a hotfix to the bash setup.sh command that was affecting Mac users ...
The Mac command for exporting the local IP address was not robust, and OpenHIM required this address in order to start.
The issue was related to if users had both an IP address on a WiFi connection and another IP address on a wired Ethernet connection.
This hotfix resolves this issue and secondly, we used the opportunity to make some documentation corrections.
We added clearer documentation around the OpenCRVS Core yarn dev command, explaining that OpenCRVS Core is a collection of Node microservices running in parallel, which must be fully started up, before a developer attempts to start the separate country configuration microservice.
OpenCRVS - Alpha 3.1
Introduction
OpenCRVS Alpha 3.1 is a minor Alpha release for OpenCRVS.
This release contains a number of dependency upgrades, bug-fixes, some major new features and many minor improvements. This release includes:
- An automated, local demo and development environment installation script
- The default Zambia country configuration package has been replaced by a fictional country: Farajaland
- Documentation improvements in advance of the public Beta v1.0 planned for mid 2022
- Ability to add / edit a user's profile image
- Ability for a user to change language in the login application
- Ability to search all health facilities offline
- Ability to search performance statistics for a single office as opposed to a jurisdiction such as a district.
- A new styleguide component library
- Miscellaneous bugfixes
- UI design improvements
- Dependency upgrades
The next major OpenCRVS release will be an official Beta planned for mid-2022. The Beta may be deemed a full OpenCRVS 1.0, after which point we will begin documenting breaking changes in all future releases.
Major Features
The following explains in more detail each major feature that has been included in this release.
An automated, local demo and development environment installation script
Previously, setting up a local, demo development environment of OpenCRVS was hard. It involved a number for commands to be run in sequence and without ports and dependencies being installed correctly, OpenCRVS would fail to start without informing the system administrator of the source of the problem.
This has been improved with a single command bash ./setup.sh. Running this command checks that all the dependencies have been in stalled correctly, checks that ports are available, builds all docker images, checks out the Farajaland default country configuration, starts OpenCRVS and populates the OpenCRVS databases with default country configuration.
With this single command OpenCRVS can be easily demo-ed and developed upon by new system administrators.
The default Zambia country configuration package has been replaced by a fictional country: Farajaland
Previously, the country configuration for an OpenCRVS 2019 pilot in Zambia was released as an example country configuration for OpenCRVS. IN order to become more generic in future releases and demo easier configuration tools planned for 2022, we have renamed and performed some upgrades. The default country configuration is now a fictional African country. "Farajaland". "Faraja" means "Blessings" in Swahili.
Documentation improvements in advance of the public Beta v1.0 planned for mid 2022
To accompany the past 2 points, the documentation in OpenCRVS Core and OpenCRVS Farajaland repositories has been updated and tested. Expect this documentation to become drastically simplified with regards to country configuration in the next release.
Ability to add / edit a user's profile image
It is now possible in the settings page, for a user to upload an avatar image. This image is used to make it easier for staff to quickly understand their team's actions. It also gives the user the added ability to personalise their OpenCRVS experience.
Ability for a user to change language in the login application
Previously, changing the default language of OpenCRVS was only possible in the main Client application. The default language for the Login application was configured in an environment variable and could not be changed by the user. Now, provided the country configuration contains more than one available language, it is possible for the user to use a select in the Login app to change their desired language independently.
Ability to search all health facilities offline
Previously, due to some technical debt, users could only search for health facilities offline from a list containing health facilities in their own jurisdiction. This proved restrictive as it stopped birth and death declarations from being submitted in an offline state, if the birth or death happened outside the jurisdiction. Now, the country's entire health facility list is available for searching offline.
Ability to search performance statistics for a single office as opposed to a jurisdiction such as a district
Previously, searching performance reports and statistics was restricted to jurisdictional searches down to district level. This is because some operational statistics are calculated using the populations, gender split and crude birth/death rates for a jurisdiction. These calculations now will not appear if searching for performance report on an office, meaning that operational reports can be accessed at the office level. It may be possible that in some countries a single jurisdiction can contain multiple civil registration offices.
A new styleguide component library
We have launched a new component library website using Storybook. Storybook is an open source tool for building UI components and pages in isolation. It streamlines UI development, testing, and documentation.
Miscellaneous bugfixes
Many bugs and performance issues have been resolved. Please refer to the Zenhub release report link at the bottom of this report to see specifics.
UI design improvements
Many minor UI design improvements have been made. Please refer to the Zenhub release report link at the bottom of this report to see specifics.
Dependency upgrades
- HapiJS has been upgraded
- Create React App, Jest and Typescript has been upgraded
- Dependency security vulnerabilities in many node_modules have been resolved
What's Changed
- Update README for 1.0.0-alpha.3.0 release by @euanmillar in #2075
- Change language code used for extract translations by @euanmillar in #2080
- Bump dns-packet from 1.3.1 to 1.3.4 by @dependabot in #2096
- Bump codemirror from 5.47.0 to 5.61.0 by @dependabot in #2095
- Bump hosted-git-info from 2.7.1 to 2.8.9 by @dependabot in #2094
- Bump lodash from 4.17.19 to 4.17.21 by @dependabot in #2093
- Bump bson from 1.1.1 to 1.1.6 by @dependabot in #2092
- Bump url-parse from 1.4.7 to 1.5.1 by @dependabot in #2091
- Bump handlebars from 4.7.6 to 4.7.7 by @dependabot in #2090
- Bump ua-parser-js from 0.7.20 to 0.7.28 by @dependabot in #2089
- Bump redis from 2.8.0 to 3.1.1 by @dependabot in #2088
- Bump y18n from 3.2.1 to 3.2.2 by @dependabot in #2087
- Bump react-dev-utils from 5.0.3 to 11.0.4 by @dependabot in #2085
- Bump elliptic from 6.5.3 to 6.5.4 by @dependabot in #2084
- Bump urijs from 1.19.1 to 1.19.6 by @dependabot in #2083
- Bump socket.io from 2.2.0 to 2.4.1 by @dependabot in #2081
- Bump axios from 0.18.1 to 0.21.1 by @dependabot in #2079
- Bump ini from 1.3.5 to 1.3.8 by @dependabot in #2074
- Ocrvs 2073 UI and copy updates by @tahmidrahman-dsi in #2077
- Ocrvs 1993 Rejection reason changes by @tahmidrahman-dsi in #2076
- Updating temporary phone number format for Island of Niue by @mushrafulhoque-dsi in #2110
- minor spelling mistakes fixed by @youshamahmood96 in #2124
- [ocrvs-2111] Introducing a new flag on client-config for hiding event info screen by @mushrafulhoque-dsi in #2125
- ocrvs-2107 by @kayumuzzaman in #2133
- Necessary fhir-builders and type-resolvers for deceased's dependents and medical practitioners by @mushrafulhoque-dsi in #2135
- Fix for birth in-progress application issue by @mushrafulhoque-dsi in #2140
- Ocrvs 2127 by @youshamahmood96 in #2132
- ocrvs-2152 by @kayumuzzaman in #2162
- Ocrvs 2150 by @youshamahmood96 in #2164
- Ocrvs 2151 by @mushrafulhoque-dsi in #2166
- Updated document section schema for death events by @mushrafulhoque-dsi in #2158
- [ocrvs-2154] Fix for deceased's informant relationship issue by @mushrafulhoque-dsi in #2167
- ocrvs-2159 by @kayumuzzaman in #2168
- [ocrvs-2145] Fix for empty nested field query mapper issue by @mushrafulhoque-dsi in #2176
- whitespace trimmed for username input by @youshamahmood96 in #2184
- [ocrvs-2142] range and decimal point validation for Dependents by @kayumuzzaman in https://github.com/opencrvs/opencrvs-c...
OpenCRVS - Alpha 3.0
Introduction
OpenCRVS Alpha 3.0 is the final, major Alpha release for OpenCRVS.
This release contains a number of significant and useful new features such as:
- Legacy civil registration system configuration and validation
- FHIR standardised Webhooks for notifying external systems of births and deaths - with an example use-case integration with MOSIP - the Modular Open Source Identity Platform
- Performance and operational dashboards and analytics tools
- User administration features
- Integrations with content management systems, such as Contentful.
OpenCRVS Alpha 3.0 also contains a host of bug fixes and UI improvements consolidated from 12 months of live user testing in urban and rural areas in Bangladesh in 2020.. Despite the impact of Covid 19, Plan International have worked extremely hard to successfully pilot OpenCRVS.
The next OpenCRVS release will be an official Beta planned for mid-2021. The Beta may be deemed a full OpenCRVS 1.0, after which point we will begin documenting breaking changes in all future releases.
Major Features
The following features are new in this release and provide a wealth of useful functionality.
Legacy civil registration system configuration and validation
This release contains a configurable "Waiting for external validation" work queue. If OpenCRVS is installed alongside a legacy or 3rd part CRVS system, then it is common that data must be backed up to that system via an API. Depending on the capabilities of the system this may be immediate or batch process. This feature is a work queue and application status that can visualise this step to a registrar. The application is not deemed to be officially registered until it has been "externally validated." It can be optionally enabled using a config variable.
If this config variable is set, OpenHIM will send all new registrations to a batch process queue to be submitted to the legacy system in a configurable format before it is officially registered. Once that legacy system validates successful storage of the registration, the item moves from the "Waiting for external validation" work queue to the CERTIFIED status, a Birth Registration Number is generated (by ether OpenCRVS or the legacy system), and then the registration appears in the "Ready to print" work queue. The birth is registered and a certificate can be printed at any time.
Webhooks and MOSIP integration
This release now contains a new Webhooks microservice. Any registered external system can subscribe and listen to an OpenCRVS event via a Webhook using the W3C WebSub pattern. When a birth or death is registered the webhook contains a payload containing the FHIR Composition ID of the registration, using which you can retrieve all person and event data associated with an event.
To subscribe to a Webhook, register your system with OpenCRVS following these steps.
We have integrated OpenCRVS to MOSIP - the Modular Open Source Identity Platform and configure the birth registration payload to also include all the data required in order to generate a National ID in the FHIR standard.
Follow the detailed documentation to integrate with OpenCRVS Webhooks.
You can see example code for this integration here
New dashboards and performance analytics tools
This release includes new Operational, Audit and Performance Management Reports with various ways to search and filter nationwide analytics. System Administrators can now access and visualise reports to track the success of the national registration programme against estimates. View the time taken to complete applications by individual staff members, and understand trends in any missing data in in-progress applications.
System administrators can understand which registration questions are difficult for Field Agents to get data for from recipients and therefore understand which questions may be holding back registration rates.
Using these tools, administrators can understand where applications are started, view registration rates by status over time and by location.
User administration features
System administrators can audit many user interactions and manage a user's status and access. It is possible to deactivate a user, tracking a reason and blocking all access to the user, then reactivate a user after an all clear. This functionality helps OpenCRVS conform to ISO27001 security standards.
All user details can be updated by a system administrator and It is now possible to recover a lost PIN.
Integrations with content management systems
In this release you can configure an external content management system such as Contentful. We have provided some handy tools to help you import your languages, preview, publish and easily manage all application text and SMS messages in multi-language.
OpenCRVS - Alpha 2.0
This release tag marks the beginning of live Alpha testing of OpenCRVS in the Bangladesh Upazilas of Narsingdi Sadar and Bhurungamari.
Launched to the public on 15th Jan 2020
- DHIS2 Integration
- Performance reports upgrade
- Print certificate for collection
- Export registrations and performance data to csv
- Session refresh
- Reject & De-duplication design refresh
- Queue & case tracking task history available offline
- Performance location search
- Bangladesh live reference data
OpenCRVS - Alpha 1.2
- Birth & Death Certificates aligned to Bangladesh regulations
- National ID Integration
- Legal guardian and someone else registration for birth and death
- Download and review
