Skip to content

Kodjin FHIR Server Versions

Release v4.6.0

November 6, 2024

Whats new

  • added support for the xml format. Both headers application/fhir+xml and application/fhir+json (as default) mime-types are supported by Kodjin.
  • added separate environment variables to globals to enable audit_log and multitenancy
  • added new operation $system-stats
  • specific scopes for operation were changed. Read more about specific scopes in Kodjin FHIR server here
  • added new operation $purge
  • changed Kodjin data mapper API for creating or updating new templates. The template type has been moved from the body to a request parameter
  • added template for common attributes of the CapabilityStatement

Bug fixes

  • CapabilityStatement has been updated to include terminology resources and operations, as well as common search parameters
  • fixed a bug where FHIRPath expression in the extension wasn't evaluated correctly
  • fixed a bug where StructureDefinitions for Extensions could be created with kind = primitive-type
  • fixed error for POST to /fhir/Patient/$purge
  • fixed a bug related to extensions in primitive types during XML <-> JSON transformations.
  • an identifier of the resource was added to log information for search fixtures
  • fixed crash when there are duplicate SearchParameter resources
  • fixed the handling of situations where a resource was deleted from the clinical repository base but not yet from the search database and was immediately requested by the search API
  • fixed group-level export operation for resources that do not have direct references to patients from the selected group, but have indirect references through other resources, such as Location, Organization, Practitioner, and MedicationRequest

Release v4.5.0

July 23, 2024

Whats new

  • added search on Terminology resources
  • added operation $terminology-reindex to reindex Terminology resources
  • added retry for mongodb transaction in case of error. If a transient mongodb error such as a master node change occurs during a transaction, the transaction is retried
  • added environment variable IPS_RESPONSE_SIZE for the size of $summary operation response.
  • added support for path parameter in $apply-fhirpath operation
  • added metrics for metadata builder errors
  • added content-type header to the Kodjin data mapper response
  • return rendered text if result of conversion is not a valid json for Kodjin data mapper

Bug fixes

  • fixed references validation with empty targetProfile list
  • changed response to Operation Outcome with text "No properties provided for matching" for operation $find-matches w/o properties
  • fixed metadata. First version of metadata is created with versionId = 1
  • fixed slicing for extension with fixed or pattern values in different profile
  • fixed building of CapabilityStatement on the start of the cluster
  • fixed terminology code validation when ValueSet expansion is being built for the first time
  • changed response from Kodjin when ElasticSearch fails
  • fixed history read
  • fixed building excludes by concept when expanding value sets
  • fixed creating NamingSystem
  • error for duplicated NamingSystem was changed to "NamingSystem with such id already exists"
  • fixed panic in extension slicing on missing profile
  • fixed %context for fhirPath

Release v4.4.2

May 27, 2024

Whats new

  • audit events created during audit logging will now contain multitenancy information

Bug fixes

  • fixed bulk import operation with multi-tenancy set to false

Release v4.4.1

May 14, 2024

Whats new

  • added validation on Parameters as a resource during operations
  • added support for second (repl) pool for terminology
  • added support for all interactions with Audit Event when internal auditing option is off
  • added support for multiple multi-tenancy metadata values in resources
  • added possibility to use $validate operation on Parameters directly when parameters are provided via query
  • added support for International Patient Summary operation
  • added support for abstract DB for Kodjin data mapper
  • the ignore of blocks with empty values was added to Kodjin data mapper

Bug fixes

  • fixed building expansion on ValueSet with other ValueSets as a component
  • fixed DB error when updating or deleting large terminology resources
  • fixed searches with negative modifiers, like ne, not
  • сhanged data-mapper folder structure to support different types of templates
  • changed sorting by Id for all FHIR resources. _id in Elasticsearch is changed to data.id
  • fixed data-mapper fixtures with RBAC enabled

Release v4.3.0

April 10, 2024

Whats new

  • added support for requesting terminology operations in Bundle resource with type batch and transaction
  • added support for specifying multiple profiles in a single resource
  • starting from this version official amazon s3 sdk is used for minio for bulk import operation
  • the NamingSystem handling was added to terminology
  • starting from this version encryption is enabled by default for Kodjin staging and production environment

Bug fixes

  • error code for PUT/POST interaction for _history was changed to 405
  • search by _lastUpdated was fixed
  • validation error for slicing with discriminator profile was fixed
  • the error description for missing CodeSystem was changed

Other improvements

  • performance was improved for terminology and Kodjin validation
  • parsing regexp was optimized during search request
  • logs were improved for matching slices in resolved resources
  • changed path_regex in all .sops.yaml files to relative paths for backward compatibility, when upgrading to latest sops versions.

Release v4.2.0

March 20, 2024

Whats new

  • graceful shutdown support was added to all Kodjin services
  • type for resource version field was increased and now it is unsigned 32-bit integer

Bug fixes

  • FHIR $import operation was fixed. Importing with incorrect link return error code 422
  • double quotes and back ticks were replaced with single quotes in OperationOutcome messages
  • logic for general parameter _pretty was fixed. Now it works with Handling: prefer=strict header
  • logic for operation $translate was fixed
  • error message for $validate-code operation on ValueSet w/o valueSet parameter.name was changed
  • error with slicing discriminator type profile and path resolve() was fixed

Other improvements

  • openapi docs generation error was fixed
  • /health API calls was removed from logging

Release v4.1.1

February 20, 2024

Bug fixes

  • reindex process was fixed. near search parameters are now correctly processed

Release v4.1.0

February 15, 2024

Whats new

  • keycloak was updated to v23.0.4
  • history messages are no longer published to the kafka topic if the variable HISTORY_ENABLED is false
  • sorting for the near Search Parameter on Location was implemented

Bug fixes

  • the error in the PUT Search Parameter request with a non-existent id was fixed
  • sorting for Search Parameters with Resource base was fixed
  • error for posting terminology resources with empty ids was fixed

Other improvements

  • fhir-server-validator performance improvements
  • meta.lastUpdated field was added to SearchParameter resource

patient-picker in this version works only with RBAC, but not with multi-tenancy

Release v4.0.1

January 22, 2024

Bug fixes

  • $export operation for Group of Patient resources was fixed

Release v4.0.0

January 17, 2024

Breaking change

  • Kodjin architecture was changed to support different DBs. Currently Kodjin has full support for MongoDB, support for more databases can be added in the future
  • switched terminology to PostgreSQL database

all breaking changes do not affect Kodjin API

Whats new

  • special parameter near on Location was added
  • RBAC support was added to Kodjin data mapper
  • new general parameter _element was added to Kodjin terminology service
  • new general parameter _summary was added to Kodjin terminology service
  • $subsumes operation was added to Kodjin terminology service
  • additional scopes for $export and $import operations were added.
  • user|system|patient/Export.write - allow start export operation (kick-off request & delete)
  • user|system|patient/Export.read - allow check results (status request)
  • user|system|patient/Import.write - allow read import data
  • user|system|patient/Import.read - allow check results

Bug fixes

  • bug for search with _include for arrays was fixed
  • the HTTP code response was changed to 409 for duplicated id

Other improvements

  • base fixtures for api, terminology and search were updated

Release v3.8.2

December 21, 2023

Bug fixes

  • fixed checks for the presence of the old history table with the MergeTree engine as well as the backup table in the ClickHouse migrations.

Release v3.8.1

December 19, 2023

Bug fixes

  • fixed Clickhouse migration for redeploying

Release v3.8.0

December 11, 2023

Whats new

  • starting from this version Kodjin works with Clickhouse in cluster mode using operator

Bug fixes

  • fixed FHIRPath navigation for Bundle and Parameter as elements of one resource
  • response.lastModified date format was fixed in bundle responses for PUT requests
  • resolving references from one contained resource to another was fixed
  • attempting to build the GraphQL schema with missing cache no longer crashes the service

Release v3.7.0

November 07, 2023

Whats new

  • new features were added to TerminologyCapability
  • access to resources without metadata information was denied for the requests with enabled multi-tenancy feature. That means that resources created with disabled multi-tenancy will not be available after enabling multi-tenancy.
  • fhir-server-validator was merged into fhir-server-api, reducing amount of computing power needed to achieve the same performance.
  • implemented [_include|_revinclude]=* (* means all resources and references supported by the server)
  • GraphQL changes:
    • static schema was changed to dynamic
    • the structure of the scheme was changed
    • only one route [base]/$graphql is left for all queries

Bug fixes

  • error code 413 added for too large Terminology requests

Release v3.6.0

October 10, 2023

Whats new

  • operation $find-matches was implemented
  • operation $versions was implemented
  • logic for $expand with filter descendent and child was added
  • item index for Data Mapper was changed

Bug fixes

  • slice determination by binding was fixed
  • fields validation with resourceType name for non resource objects was fixed
  • error code for request to invalid path was changed
  • bug with API not accepting multiple values for Accept header was fixed
  • error for create Concept Map w/o version was fixed
  • error for validate resource against ValueSet with invalid version was fixed

Other improvements

  • fhir base fixtures were updated

Release v3.5.1

October 05, 2023

Bug fixes

  • logic for as expression for search with _include was fixed
  • search logic for fields on the same level with same prefixes was fixed
  • search logic for recursive nested fields in elastic was fixed

Release v3.5.0

September 13, 2023

What's new

  • TerminologyCapability was added. A client can get the TerminologyCapabilities statement for a Terminology Service by using the capabilities API: GET [base]/metadata?mode=terminology
  • new property * was added for $lookup operation. Wildcard * as property means all possible properties.
  • PATCH method was implemented for FHIR Resources (FHIRPath patch)
  • $snapshot operation was added
  • fhirVersion is validated in Accept header and Content-Type header
  • coding and CodeableConcept parameters were implemented for $translate operation
  • support for $translate operation via post was added
  • support of GraphQL query to search resources by id was added
  • support to search canonical resources with version in the url (|[version]) was added
  • starting from this version official amazon s3 sdk is used for minio for bulk export operation
  • OBJECT_TTL environmental value was added to minio, which defines the number of days for files to live in minio

Bug fixes

  • validation for Resource.version was changed. Starting from this kodjin version Resource.version for ConceptMap, CodeSystem, ValueSet on POST resources is optional.
  • response for search on terminology was changed to Bundle searchset
  • empty url, like "", is validated properly on POST canonical resources
  • indexes for SubstanceNucleicAcid were added
  • location header was added to respones on POST and PUT (as create) StructureDefinitions, SearchParameters
  • application/json-patch+json header was added to PATCH resources

Other improvements

  • batched resource validation was implemented, resulting in significant performance improvements in batch bundle requests and import processing
  • alpine was updated to version 3.18.3
  • fhir-server-unified-stream was reworked to use Kafka transactions for better reliability and performance

Release v3.4.0

August 17, 2023

What's new

  • resolving the reference in Parameters using general resource resolution methods (as it is in Bundles) was added
  • RBAC Smart-on-FHIR scopes was implemented in export operations
  • RBAC & multi-tenancy support was implemented for bulk import operations
  • detailed metrics were added to each resource type for external requests
  • minio credentials env names were changed
    MINIO_LOGIN -> AWS_ACCESS_KEY_ID
    MINIO_PASSWORD -> AWS_SECRET_ACCESS_KEY
    MINIO_URL -> AWS_ENDPOINT
    MINIO_BUCKET -> AWS_S3_BUCKET
    EXTERNAL_MINIO_ROOT -> EXTERNAL_AWS_S3_ROOT
    new env AWS_REGION
    
  • HISTORY_ENABLED setting was added to globals. History configuration is described here
  • the Location header will now have valid URLs when versioning (history) is disabled
  • unique index for terminology resources (ValueSet, CodeSystem, ConceptMap) were changed. It will be the resource id instead of id + version. Existing duplicate IDs will be changed to include the version. Check the logs of fhir-terminology-server after updating to see which resources were affected.

Bug fixes

  • the response code was changed on $apply-fhirpath, when the Resource has errors (structure, cardinality etc)
  • the response code was changed for accessing elements with value[x] syntax in $apply-fhirpath
  • $expand operation was fixed for VS with filters

Other improvements

  • configured imagePullSecrets for all environments and services which use images from private container registries
  • updated globals.yaml.gotmpl with a default container registry secret name container-registry-credentials
  • ERROR was changed to WARN when skipping invalid JWKS key
  • the log information was changed to WARN for the wrong Quantity.
  • rust was updated to version 1.71
  • sensitive skip flag skip_sensitive_filters was set on fixtures logs
  • fhir base fixtures were updated

Release v3.3.0

July 21, 2023

What's new

  • custom version algorithms were added to validate business version for FHIR resources. Business version could be determined by Kodjin as SemVer, Integer, Alphabetical, Date.
  • new custom operation $apply-fhirpath was implemented
  • RBAC scope extractor was added to $export operation. Scope validation will be added in next release.
  • multi-tenancy validation was added to history endpoints
  • location header was added for create/update operations on terminology
  • filter for $translate operation for data-mapper was added
  • search for exponential form of numbers was implemented
  • hash commit or tag was added to be used by fixture workers. New environment variable for this feature was added FIXTURES_PROVIDER_GIT_REV
  • multipleAnd validation was added to search

Bug fixes

  • gRPC limit was changed for terminology resources
  • the error for update StructureDefinition with the same version was fixed
  • validation for not configured tenant values was changed. We do not save those values to DB
  • adding location header to response was fixed. We return it only for responses with code 201
  • error description when POSTing duplicate SearchParameters was changed
  • subscription consumer performance was optimized by doing less parsing
  • сomposite parameter characteristic-value was fixed
  • get, search resources with multi-tenancy was fixed. We do not apply filter to exclude_resources mentioned in multi-tenancy configuration file.

Other improvements

  • cache for Structure Definitions was improved and WARN for fhir-search-serch and fhir-server-subscription-sender were fixed
  • rust was updated to v1.70

The update to version 3.3.0 should be performed w/o high load on the system. If during release process resources would be sent to Kodjin with 200RPS or more, they may get duplicated in the history.
If there are any duplicates, they can be removed by the following command:
OPTIMIZE TABLE history FINAL DEDUPLICATE by resource_id, resource_version, resource_type;

Release v3.2.0

June 21, 2023

What's new

  • FHIRpath implementation was changed for search
  • external auth config was moved to separate env variables
  • validations of codes within a single ValueSet was paralleled
  • validation of quantity was changed. We do not convert quantity when quantity.unit does not exist or when code is not from http://unitsofmeasure.org codeSystem
  • GRPC function for fhirpath.validate was created
  • support distributed slicing with extension was added
  • option to use OpenID introspection endpoint in RBAC was added
  • the possibility to process fixtures w/o id through worker were added
  • fixture worker log messages were changed. We added hash commit to message and information about fixture source: base, custom
  • multi-tenancy & RBAC for status requests for export was implemented
  • multi-tenancy & RBAC for subscriptions was implemented
  • the possibility to upload file for import in Minio using API was added
  • query parameter profile for operation $validate was implemented
  • base fixtures for api, terminology and search were updated
  • creating of empty indexes was added, in case there are no indexes for resource
  • multipleOr validation was added to search
  • operation $validate for CodeSystem, ValueSet and ConceptMap was implemented
  • data mapper was added to Kodjin (disabled by default)
  • worker for data mapper fixtures was added

Bug fixes

  • slicing validation errors were fixed, such as validation for oneOf, for binding, for distributed slicing.
  • internal error with extra unicode symbols for terminology was fixed
  • cardinality validation for primitive extensions was fixed
  • validation for StructureDefnition.url cardinality was fixed
  • multi-tenancy validation for export job was fixed. Token with * can get any export job.
  • GET export request was changed. We do not save body for such requests
  • internal error was fixed for post SD w/o business version
  • search with modifier :missing was fixed

Other improvements

  • use new GridFS types from fhir-common for fhir_terminology.validator
  • tracing-core was updated to a version that improves performance
  • performance of unified stream consumer was improved
  • minio credentials in fhir-server-api was disabled by default
FHIR services versions
  • fhir-server-api: tag: v3.3.4
  • fhir-server-client-registration: v1.0.13
  • fhir-server-consumer-email-sender: v0.8.2
  • fhir-server-converter: v0.12.1
  • fhir-server-fixtures-worker: v3.3.4
  • fhir-server-import-processor: v3.3.4
  • fhir-server-job-consumer: v3.3.4
  • fhir-server-job-producer: v3.3.4
  • fhir-server-metadata-builder: v2.3.0
  • fhir-server-search: v3.3.3
  • fhir-server-search-export: v3.3.3
  • fhir-server-search-fixtures-worker: v3.3.3
  • fhir-server-search-reindexer: v1.16.0
  • fhir-server-stream-subscription-processor: v3.3.3
  • fhir-server-subscription-sender: v0.13.0
  • fhir-server-unified-stream: v1.16.0
  • fhir-server-validator: v2.2.0
  • fhir-terminology-cacher: v1.13.0
  • fhir-terminology-fixtures-worker: v2.3.3
  • fhir-terminology-server: v2.3.3
  • fhir-terminology-validator: v1.15.1
  • kodjin-data-mapper: v0.3.0
  • kodjin-data-mapper-fixtures-worker: v0.3.0

Release v3.1.0

May 11, 2023

What's new

  • multi-tenancy feature was added
  • validation for distributed slicing was added
  • function resolve() was added to fhirPath
  • validation for bundle with type batchwas changed. From this release only entries in batch are validated, but batch works much more faster
  • vread and history were added to Bundle with type batch and transaction
  • operation $validate was added for SearchParameters
  • support of Parameters for operation $validate was implemented
  • fhir fixtures for version 4.0.1 were updated
  • support for contained CodeSystems was added to ValueSets

Bug fixes

  • validation for primitives was fixed
  • sorting for the SearchParameters with ORs in expression was fixed
  • validation for Bundle.entry.request.url was added to Bundles
  • creation of Subscription without id was fixed
  • validation of resources with id "" was changed. Those ids in resources handle as resource w/o id on api and terminology.
  • index parsing was fixed

Other improvements

  • metadata template was updated
  • automatic determination of the number of shards and replicas on elasticsearch index creation was added
  • index generator was modified to support metadata in elastic. Dynamic fields were added to elasticsearch.
FHIR services versions
  • fhir-server-api: v3.2.0
  • fhir-server-client-registration: v1.0.13
  • fhir-server-consumer-email-sender: v0.8.2
  • fhir-server-converter: v0.12.1
  • fhir-server-fhirpath-parser: v1.4.0
  • fhir-server-fixtures-worker: v3.2.0
  • fhir-server-import-processor: v3.2.0
  • fhir-server-job-consumer: v3.2.0
  • fhir-server-job-producer: v3.2.0
  • fhir-server-metadata-builder: v2.3.0
  • fhir-server-search: v3.2.1
  • fhir-server-search-export: v3.2.1
  • fhir-server-search-fixtures-worker: v3.2.1
  • fhir-server-search-reindexer: v1.16.0
  • fhir-server-stream-subscription-processor: v3.2.1
  • fhir-server-subscription-sender: v0.12.1
  • fhir-server-unified-stream: v1.16.0
  • fhir-server-validator: v2.1.0
  • fhir-terminology-cacher: v1.12.0
  • fhir-terminology-fixtures-worker: v2.2.0
  • fhir-terminology-server: v2.2.0
  • fhir-terminology-validator: v1.14.0
  • kodjin-data-mapper: v0.2.0

Release v3.0.1

April 19, 2023

What's new

  • ValueSet $expand operation was changed, from this version we support contained CodeSystem

Bug fixes

  • group export operation was improved
  • routes for FHIR API, terminology and search were fixed, routes with extra slash also work now
FHIR services versions
  • fhir-server-api: v3.1.0
  • fhir-server-client-registration: v1.0.12
  • fhir-server-kodjin-demo: v0.9.0
  • fhir-server-consumer-delete: v1.15.0
  • fhir-server-consumer-email-sender: v0.8.1
  • fhir-server-converter: v0.11.0
  • fhir-server-fhirpath-parser: v1.4.0
  • fhir-server-fixtures-worker: v3.1.0
  • fhir-server-import-processor: v3.1.0
  • fhir-server-job-consumer: v3.1.0
  • fhir-server-job-producer: v3.1.0
  • fhir-server-metadata: v2.2.0
  • fhir-server-metadata-builder: v2.2.0
  • fhir-server-profiler-tool: v2.1.0
  • fhir-server-search: v3.1.0
  • fhir-server-search-export: v3.1.0
  • fhir-server-search-fixtures-worker: v3.1.0
  • fhir-server-search-reindexer: v1.15.0
  • fhir-server-search-stream-normalizer: v1.15.0
  • fhir-server-stream-history-aggregator: v1.15.0
  • fhir-server-stream-patient-everything-aggregator: v1.15.0
  • fhir-server-stream-subscription-processor: v3.1.0
  • fhir-server-subscription-sender: v0.12.0
  • fhir-server-unified-stream: v1.15.0
  • fhir-server-validator: v2.0.0
  • fhir-terminology-cacher: v1.11.0
  • fhir-terminology-fixtures-worker: v2.1.0
  • fhir-terminology-server: v2.1.0
  • fhir-terminology-validator: v1.13.0
  • kodjin-data-mapper: v0.1.0-42b49fe-release-v0.2.0 (beta version)

Release v3.0.0

April 10, 2023

Breaking change

  • new FHIRPath implementation is used in fhir validations
  • config for fixtures was refactored and new providers were added

What's new

  • parameter CodeSystem for $validate-code was implemented
  • $lookup operation was implemented
  • comparison operation was added for quantities with custom system
  • metrics to fixture workers were added
  • metrics to fhir search were added
  • offline token validation was implemented for RBAC
  • custom header Cache-control was added to Kodjin response services
  • base fixtures were updated
  • the possibility to search StructureDefinitions and SearchParameters was added
  • operation $expand was implemented with parameters ($expand via POST)
  • search by url for CodeSystems and ValueSets was implemented
  • context parameter was implemented for $expand operation

Bug fixes

  • fixed regexps for sensitive information in logs. UUID was excluded
  • resources that were deleted are not used in reference validations
  • fixed validation for bundle with type batch, now we validate all enrties separately
  • search for meta.lastUpdated was fixed
  • batch performance was improved
  • subscription process was changed. Now subscriptions do not duplicate information for resource during reindex process

Other improvements

  • base images version for rust was updated
  • reference information was added to validator response
  • new message "Resource with id {} in DB has no version" was added to fhir-server-fixture-worker logs
  • more errors were added to logs for ConceptMap caching process
FHIR services versions
  • fhir-server-api: v3.0.0
  • fhir-server-client-registration: v1.0.12
  • fhir-server-kodjin-demo: v0.9.0
  • fhir-server-consumer-delete: v1.15.0
  • fhir-server-consumer-email-sender: v0.8.1
  • fhir-server-converter: v0.11.0
  • fhir-server-fhirpath-parser: v1.4.0
  • fhir-server-fixtures-worker: v3.0.0
  • fhir-server-import-processor: v3.0.0
  • fhir-server-job-consumer: v3.0.0
  • fhir-server-job-producer: v3.0.3
  • fhir-server-metadata: v2.2.0
  • fhir-server-metadata-builder: v2.2.0
  • fhir-server-profiler-tool: v2.1.0
  • fhir-server-search: v3.0.0
  • fhir-server-search-export: v3.0.0
  • fhir-server-search-fixtures-worker: v3.0.0
  • fhir-server-search-reindexer: v1.15.0
  • fhir-server-search-stream-normalizer: v1.15.0
  • fhir-server-stream-history-aggregator: v1.15.0
  • fhir-server-stream-patient-everything-aggregator: v1.15.0
  • fhir-server-stream-subscription-processor: v3.0.0
  • fhir-server-subscription-sender: v0.12.0
  • fhir-server-unified-stream: v1.15.0
  • fhir-server-validator: v2.0.0
  • fhir-terminology-cacher: v1.11.0
  • fhir-terminology-fixtures-worker: v2.0.0
  • fhir-terminology-server: v2.0.0
  • fhir-terminology-validator: v1.13.0
  • kodjin-data-mapper: v0.1.0-42b49fe-release-v0.2.0 (beta version)

Release v2.4.0

February 27, 2023

What's new

  • handling of sensitive logs was added
  • automatically generated documentation markdown with a macro was added
  • deleting operation was changed. Starting from this release we keep version for all deleted resources
  • ValueSet upload to Kodjin was changed. Kodjin ignores expand and always generates expand using actual CodeSystem data
  • new features for $validate-code operation:
    • Support for coding and codeableConcept were added
    • camelCase is used when deserialising validation params
  • using of fhir fixtures for Kodjin was changed. Starting from this version we use fhir fixtures from base image and only custom fixtures are taken from custom repositories.
  • support for grouped-by CodeSystem hierarchy was added
  • new metrics were added to API
  • Normalizer, patient-everything and stream-history-agregator were merged to unified-stream
  • Delete-consumer was deleted
  • Kodjin authorization service release version was added
  • new service was added kodjin-data-mapper, but it is still under development.

Bug fixes

  • deleting of StructureDefinitions was change to real delete, instead of deleting only data.
  • payload in normalizer is always set to null on resource deletion
  • support of deleted resources were added to import

Other improvements

  • openapi improvements
    • Multipart body was properly documented
    • Examples were added
  • cacher task logic to use chunk on MongodDB cursor instead of semaphore was updated. This prevents all DB entries from being loaded at once and significantly reduces memory usage
  • documentation was published to https://docs.kodjin.com
  • changelogs were moved to documentation
FHIR services versions
  • fhir-server-api: v2.4.2
  • fhir-server-client-registration: v1.0.12
  • fhir-server-kodjin-demo: v0.9.0
  • fhir-server-consumer-delete: v1.14.2
  • fhir-server-consumer-email-sender: v0.7.0
  • fhir-server-converter: v0.11.0
  • fhir-server-fhirpath-parser: v1.4.0
  • fhir-server-fixtures-worker: v2.4.2
  • fhir-server-import-processor: v2.4.2
  • fhir-server-job-consumer: v2.4.2
  • fhir-server-job-producer: v2.4.2
  • fhir-server-metadata: v2.1.0
  • fhir-server-metadata-builder: v2.1.0
  • fhir-server-profiler-tool: v2.1.0
  • fhir-server-search: v2.4.1
  • fhir-server-search-export: v2.4.1
  • fhir-server-search-fixtures-worker: v2.4.1
  • fhir-server-search-reindexer: v1.14.2
  • fhir-server-search-stream-normalizer: v1.14.2
  • fhir-server-stream-history-aggregator: v1.14.2
  • fhir-server-stream-patient-everything-aggregator: v1.14.2
  • fhir-server-stream-subscription-processor: v2.4.1
  • fhir-server-subscription-sender: v0.11.1
  • fhir-server-unified-stream: v1.14.2
  • fhir-server-validator: v1.13.0
  • fhir-terminology-cacher: v1.10.1
  • fhir-terminology-fixtures-worker: v1.16.0
  • fhir-terminology-server: v1.16.0
  • fhir-terminology-validator: v1.12.0
  • kodjin-data-mapper: v0.1.0-42b49fe-release-v0.2.0 (beta version)

Release v2.3.0

January 30, 2023

What's new

  • FHIR fixtures were changed to work offline
  • FHIR profiles were blocked to change from API
  • $validate-code operation was implemented on CodeSystem
  • comparator eq logic for data type number and quantity was added

Bug fixes

  • Content-type header for status response Bulk-export was changed
  • empty array entry from Bundle where type=searchsetwas removed
  • and, or conditions were added to parameter filter for operation $expand
  • bundle type history was fixed according to FHIR specification
  • ETag Header was added to history request

Other improvements

  • open_api spec for fhir_search and terminology services was generated
  • bugs for autogenereted open_api spec were fixed
FHIR services versions
  • fhir-server-api:v2.3.0
  • fhir-server-client-registration: v1.0.0-b4785bd-develop
  • fhir-server-kodjin-demo: v0.1.0-52b65e1-develop
  • fhir-server-consumer-delete: v1.13.0
  • fhir-server-consumer-email-sender: v0.6.0
  • fhir-server-converter: v0.10.0
  • fhir-server-fhirpath-parser: v1.4.0
  • fhir-server-fixtures-worker: v2.3.0
  • fhir-server-import-processor: v2.3.0
  • fhir-server-job-consumer: v2.3.0
  • fhir-server-job-producer: v2.3.0
  • fhir-server-metadata: v2.0.0
  • fhir-server-metadata-builder: v2.0.0
  • fhir-server-profiler-tool: v2.1.0
  • fhir-server-search: v2.3.0
  • fhir-server-search-export: v2.3.0
  • fhir-server-search-fixtures-worker: v2.3.0
  • fhir-server-search-reindexer: v1.13.0
  • fhir-server-search-stream-normalizer: v1.13.0
  • fhir-server-stream-history-aggregator: v1.13.0
  • fhir-server-stream-patient-everything-aggregator: v1.13.0
  • fhir-server-stream-subscription-processor: v2.3.0
  • fhir-server-subscription-sender: v0.10.0
  • fhir-server-validator: v1.12.0
  • fhir-terminology-cacher: v1.9.1
  • fhir-terminology-fixtures-worker: v1.15.0
  • fhir-terminology-server: v1.15.0
  • fhir-terminology-validator: v1.11.0
  • kodjin-data-mapper: v0.1.0-42b49fe-release-v0.2.0

Release v2.2.0

January 18, 2023

What's new

  • fhir-server-definitions was merged with fhir-server-api. This merge caused to changes in OperationOutcome. Updated OperationOutcome.display.text and OperationOutcome.code for some kinds of errors.

Bug fixes

  • error for absolute reference was fixed

Other improvements

  • terminology validator automatically reconnect to redis in case redis was down
  • environmental variable was added for application/fhir+json;charset=utf-8
FHIR services versions
  • fhir-server-api: v2.2.1
  • fhir-server-client-registration: v1.0.0-b4785bd-develop
  • fhir-server-consumer-delete: v1.13.0
  • fhir-server-consumer-email-sender: v0.6.0
  • fhir-server-converter: v0.10.0
  • fhir-server-fhirpath-parser: v1.4.0
  • fhir-server-fixtures-worker: v2.2.1
  • fhir-server-import-processor: v2.2.1
  • fhir-server-job-consumer: v2.2.1
  • fhir-server-job-producer: v2.2.1
  • fhir-server-metadata-builder: v2.0.0
  • fhir-server-profiler-tool: v2.1.0
  • fhir-server-search: v2.2.1
  • fhir-server-search-export: v2.2.1
  • fhir-server-search-fixtures-worker: v2.2.1
  • fhir-server-search-reindexer: v1.13.0
  • fhir-server-search-stream-normalizer: v1.13.0
  • fhir-server-stream-history-aggregator: v1.13.0
  • fhir-server-stream-patient-everything-aggregator: v1.13.0
  • fhir-server-stream-subscription-processor: v2.2.1
  • fhir-server-subscription-sender: v0.10.0
  • fhir-server-validator: v1.12.0
  • fhir-terminology-cacher: v1.9.1
  • fhir-terminology-fixtures-worker: v1.14.1
  • fhir-terminology-server: v1.14.1
  • fhir-terminology-validator: v1.10.1

Release v2.1.0

December 20, 2022

What's new

  • Content-Type: application/fhir+json was added instead of application/json to server responses
  • auto-generated Open API documentation was added
  • Create, update and delete modes were implemented for operation $validate
  • general parameter _pretty was added
  • Charset=UTF-8 was added to Content-Type to server responses
  • comparatos eq and ap were added for search by numbers

Bug fixes

  • size for terminologies, that are uploaded throat API, was extended to 16Mb
  • modifier :text was changed to work as a partial search

Other improvements

  • metadata service was merged with fhir_server.api
  • profiles for C4BB were added
FHIR services versions
  • fhir-server-api: v2.1.0
  • fhir-server-consumer-delete: v1.13.0
  • fhir-server-definitions: v2.1.0
  • fhir-server-fhirpath-parser: v1.4.0
  • fhir-server-fixtures-worker: v2.1.0
  • fhir-server-import-processor: v2.1.0
  • fhir-server-metadata-builder: v2.0.0
  • fhir-server-search: v2.1.0
  • fhir-server-search-export: v2.1.0
  • fhir-server-search-fixtures-worker: v2.1.0
  • fhir-server-search-stream-normalizer: v1.13.0
  • fhir-server-stream-patient-everything-aggregator: v1.13.0
  • fhir-server-validator: v1.11.0
  • fhir-terminology-cacher: v1.9.1
  • fhir-terminology-fixtures-worker: v1.14.1
  • fhir-terminology-server: v1.14.1
  • fhir-terminology-validator: v1.10.1

Release v2.0.0

November 22, 2022

Breaking change

  • response was changed for bundles according to FHIR spec

What's new

  • from now ifNoneExist parameter is analysed for transaction's conditional create
  • websocket extension was added to the CapabilityStatement

Bug fixes

  • token-response in the Keycloak for user's limited scopes was fixed
  • accept-header delimiters for browser's use was fixed
  • bulk export for Groups was fixed
  • error for empty transactions was fixed
  • authorization for RelatedPerson was fixed on RBAK

Other improvements

  • release process description for kodjin was added
  • security scanning of source code for Kodjin services was implemented
  • regression tests for include and revinclude was added

Release v1.7.0

November 08, 2022

What's new

  • smart-on-fhir styles endpoint was created
  • from now during Auth flow user may decrease scopes which have been requested by the client
  • a limitation for /StructureDefinition and /fhir routes were added in RBAC
  • from now Kodjin resolves conditional references with FHIR Search in Bundles
  • from now field with more that 8K symbols is ignored in elastic
  • logical URLs within transaction are resolved now and replaced with literal reference
  • config initialization on each request handling in RBAC library was removed

Bug fixes

  • bug for search Observation by date was fixed
  • bug for search EnrollmentResponse was fixed
  • endpoint in .well-known/smart-configuration smart on fhir was fixed
  • an error for bulk export was fixed
  • an error for POST resource with Quantity and w/o value was fixed

Other improvements

  • subscription services were merged

Release v1.6.0

October 19, 2022

What's new

  • SMART-ON-FHIR now is added to Kodjin FHIR server
  • device is exported as a part of Patient Compartment

Bug fixes

  • response for Bulk export was changed
  • fixes for subscription, Notifications do not come now after subscription was deleted
  • error with QuestionnaireResponse resource was fixed

Other improvements

  • new ValueSets and CodeSystems were added to terminology

Release v1.5.0

September 26, 2022

What's new

  • Expires header to Bulk Export response was added
  • new features to Bulk Import were added
  • now before import we check ifNoneExist field. And we import resource from .ndjson file only if there is no resource in FHIR DB
  • during the import we convert conditional references to logical
  • We've added new value to import range. From now you can specify the rows that should be imported.
    "range" {
        "start": 1032,
        "end": 5000
    }
    
  • Also, we return status of the import during getting import by ID
  • new required fields to Bulk Complete Status were added
  • supported operations for Bulk export for Patient & Group into Capability Statement were added

Bug fixes

  • content type in Header for Bulk export for ndjson data was fixed
  • validations for PractitionerRole constraints were fixed
  • errors for bulk export via GET request were fixed

Other improvements

  • old workflows from Kodjin repositories were removed
  • support for Docker layer caching in ecr-build-push action was added
  • service Dockerfiles to work with docker layer caching by using cargo-chef were updated
  • bulk import performance was improved

Release v1.4.0

August 9, 2022

What's new

  • supporting for ucum units were added
  • bulk data import was implemented
  • all FHIR resources to functional testing were added
  • logic for receiving id for Kodjin tests was changed. Noe we get it from response
  • we allow to send + as space in search query param

Bug fixes

  • bug for Invalid argument --> low <= high was fixed
  • bug with search parameter with type reference was fixed
  • targetSystem in ConceptMap translate was fixed

Release v1.3.0

August 1, 2022

What's new

  • functional tests for pagination were added
  • logic for patient $everything was changed. Now all patients are included to the response even those that do not have connected resources. Patients that match specified SP are added to the response with searchmode "match"
  • auto tests for versioning to functional tests were added
  • _typeFilter parameter was implemented for Bulk Data export
  • performance tests for Kodjin were created
  • new tests for search via POST and _lastUpdated were added to functional tests

Bug fixes

  • some bugs for functional tests were fixed
  • search for modifier :exact was fixed
  • bug for search observation, field "lastUpdated" was fixed

Release v1.2.0

July 19, 2022

What's new

  • a new operation to FHIR path was added. Mathematic operations with Date, DateTime and Time could be used in FHIR Path. Both addition and subtraction
  • with this release Kodjin does not need header x-consumer-id any more, so any standard FHIR application could be connected to kodjin.
  • some technical improvements were added, such as
  • history aggregator was created
  • KafkaResource was added to fhir-common

Bug fixes

  • CodeSystem in the ValueSet could be filtered with regex.
  • patients without connected resources would be returned with patient/$everything operation

Release v1.1.0

April 26, 2022

What's new

  • use static dependencies for rdkafka when possible
  • search support in batch and transaction
  • conditional create update: location response header added
  • additional export validations

Bug Fixes

  • Period.end date conversion
  • remove resource type and id validation in bundles
  • correct error message for export

Other improvements

  • the description for README.md was changed
  • use fast lld linker
  • replace gcc with libgcc in Dockerfile

Release v1.0.0

Jul 28, 2021 Initial release