All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Add admin API endpoint stubs (see: ehrbase/ehrbase#280)
- Add support for FeederAudit in Locatable. Refactored Composition Serializer for DB encoding (see https://github.com/ehrbase/ehrbase/tree/feature/311_feeder_audit, https://github.com/ehrbase/openEHR_SDK/tree/feature/311_feeder_audit)
- Change the strategy to resolve CONTAINS in AQL (ehrbase/ehrbase#276)
- Persist caches to java.io.tmpdir (see: ehrbase/ehrbase#308)
- Detection of duplicate directories on EHR on POST
- Using ObjectVersionId for DIRECTORY Controller and Service Layers (see: ehrbase/ehrbase#297)
- Added Junit5 support via spring-boot-starter-test (ehrbase/ehrbase#298)
- Enable cartesian products on embedded arrays in JSONB (see ehrbase/ehrbase#309)
- Detect duplicates on POST Directory (see: ehrbase/ehrbase#281)
- Support context-less composition (see: ehrbase/ehrbase#288)
- Fixed missing AQL level of parenthesis when using NOT in WHERE clause (see ehrbase/ehrbase#293)
- Allow duplicated paths in AQL resultsets (see: ehrbase/ehrbase#263)
- Transaction timestamps are now truncated to ms (see: ehrbase/ehrbase#299)
- Change response code on not found directory to 412 if not found (see: ehrbase/ehrbase#304)
0.13.0 (beta)
- Added support for various functions in AQL (aggregation, statistical, string etc.) (see: ehrbase/ehrbase#223)
- PreconditionFailed error response contains proper ETag and Location headers (see: ehrbase/ehrbase#183)
- Update of AQL-Query test suite (see: ehrbase/ehrbase#179)
- force a default timezone if not present for context/start_time and context/end_time if specified (ehrbase/ehrbase#215)
- Representation of version uid of EHR_STATUS (see: ehrbase/ehrbase#180)
- Refactored support of PartyProxy and ObjectId in both CRUD and AQL operations (see ehrbase/ehrbase#248)
-
- fix support of mandatory attributes in ENTRY specialization including rm_version (see ehrbase/ehrbase#247)
- Directory IDs from input path or If-Match header must now be in version_uid format (see ehrbase/ehrbase#183)
- Folder IDs inside body are now parsed correctly (see: ehrbase/ehrbase#183)
- PreconditionFailed error response contains proper ETag and Location headers (see: ehrbase/ehrbase#183)
- Added validation checking for other_details and ehr_status. (see: ehrbase/ehrbase#207)
- Supports archetype_node_id and name for EHR_STATUS (see: ehrbase/ehrbase#207)
- fixes bad canonical encoding for observation/data/origin (see: ehrbase/ehrbase#213)
- POST without accept header for ehr, composition and contribution endpoints (see: ehrbase/ehrbase#199)
0.12.0 (alpha)
- Basic Authentication as opt-in (see: ehrbase/ehrbase#200)
- Allow Templates can now be overwritten via spring configuration (see: ehrbase/ehrbase#194)
- Contribution endpoint checks for some invalid input combinations (see: ehrbase/ehrbase#202)
- Fixes response code on /ehr PUT with invalid ID (see: https://github.com/ehrbase/project_management/issues/163)
- Fixes STATUS w/ empty subject bug (see: ehrbase/ehrbase#196)
- Now querying on composition category returns the correct result (composition/category...)
- Fixes storage of party self inside compositions (see: ehrbase/ehrbase#195)
- Added support of AQL query in the form of c/composer (see: ehrbase/ehrbase#184)
- Java error with UTF-8 encoding resolved (see: ehrbase/ehrbase#173)
- AQL refactoring and fixes to support correct canonical json representation (see: ehrbase/ehrbase#201)
- fix terminal value test for non DataValue 'value' attribute (see: ehrbase/ehrbase#189)
0.11.0 (alpha)
Note: Due to the transition to this changelog the following list is not complete. Starting with the next release this file will provide a proper overview.
- Docker and docker-compose support for both application and database
- Get folder with version_at_time parameter
- Get Folder with path parameter
- FasterXML Jackson version raised to 2.10.2
- Java version raised from 8 to 11
- Jooq version raised to 3.12.3
- Spring Boot raised to version 2
- Response code when composition is logically deleted (see: ehrbase/ehrbase#144)
- Response and
PREFER
header handling of/ehr
endpoints (see: ehrbase/ehrbase#165) - Deserialization of EhrStatus attributes is_modifiable and is_queryable are defaulting to
true
now (see: ehrbase/ehrbase#158) - Updating of composition with invalid template (e.g. completely different template than the previous version) (see: ehrbase/ehrbase#166)
- Folder names are checked for duplicates (see: ehrbase/ehrbase#168)
- AQL parser threw an unspecific exception when an alias was used in a WHERE clause (ehrbase/ehrbase#149)
- Improved exception handling in composition validation (see: ehrbase/ehrbase#147)
- Improved Reference Model validation (see: ehrbase/ehrbase#147)
- Error when reading a composition that has a provider name set(see: ehrbase/ehrbase#143)
- Allow content to be null inside a composition (see: ehrbase/ehrbase#129)
- Fixed deletion of compositions through a contribution (see: ehrbase/ehrbase#128)
- Start time of a composition was not properly updated (see: ehrbase/ehrbase#137)
- Fixed validation of null values on participations (see: ehrbase/ehrbase#132)
- Order by in AQL did not work properly (see: ehrbase/ehrbase#112)
- Order of variables in AQL result was not preserved (see: ehrbase/ehrbase#103)
- Validation of compositions for unsupported language(see: ehrbase/ehrbase#107)
- Duplicated ehr attributes in query due to cartesian product (see: ehrbase/ehrbase#106)
- Retrieve of EHR_STATUS gave Null Pointer Exception for non-existing EHRs (see: ehrbase/ehrbase#136)
- Correct resolution of ehr/system_id in AQL (see: ehrbase/ehrbase#102)
- Detection of duplicate aliases in aql select (see: ehrbase/ehrbase#98)
0.10.0 (alpha)
- openEHR REST API DIRECTORY Endpoints
- openEHR REST API EHR_STATUS Endpoints (including other_details)
- Spring Transactions: EHRbase now ensures complete rollback if part of a transaction fails.
- Improved Template storage: openEHR Templates are stored inside the postgres database instead of the file system (including handling of duplicates)
- AQL queries with partial paths return data in canonical json format (including full compositions)
- Multimedia data can be correctly stored and retrieved
- Spring configuration allows setting the System ID
- Validation of openEHR Terminology (openEHR terminology codes are tested against an internal terminology service)
###Fixed
- Order of columns in AQL result sets are now reliably preserved (ehrbase/ehrbase#37)
- Some projection issues for EHR attributes have been resolved in AQL
- Fixed error regarding DISTINCT operator in AQL (ehrbase/ehrbase#50)
- Fixed null pointer exceptions that could occur in persistent compositions
0.9.0 (pre-alpha)
- openEHR REST API DIRECTORY Endpoints
- openEHR REST API EHR_STATUS Endpoints (including other_details)
- Spring Transactions: EHRbase now ensures complete rollback if part of a transaction fails.
- Improved Template storage: openEHR Templates are stored inside the postgres database instead of the file system (including handling of duplicates)
- AQL queries with partial paths return data in canonical json format (including full compositions)
- Multimedia data can be correctly stored and retrieved
- Spring configuration allows setting the System ID
- Validation of openEHR Terminology (openEHR terminology codes are tested against an internal terminology service)
###Fixed
- Order of columns in AQL result sets are now reliably preserved (ehrbase/ehrbase#37)
- Some projection issues for EHR attributes have been resolved in AQL
- Fixed error regarding DISTINCT operator in AQL (ehrbase/ehrbase#50)
- Fixed null pointer exceptions that could occur in persistent compositions