All notable changes to this project will be documented in this file.
- Do not resolve fullUrl if it is a DELETE request
- Set X-Correlation-Id and X-Request-Id headers and log them
- Re-use the same correlation ID in paging
- Fix feature specific build errors
- Add source impls to errors
- [breaking] By default, clients reject different major FHIR versions and different URL origins. This can be allowed through flags in the
ClientBuilder
. - Allow sending custom HTTP requests
- Add and implement AnyResource trait for all resources
- Implement custom search request
- [breaking] Remove code duplication across FHIR versions
- This requires the FHIR version to be implement an internal trait.
- There are now generic search parameters across versions. Though there is aliases for the version specific parameters, so that hopefully nothing breaks.
- Some more generic requirements, should not be visible to the user mostly.
- [breaking] Remodel the way paging works
- History and search requests return a
Page
now. It offers methods to either manually go through the pages and get the entries, or automatically page and return aStream
of all matches. It is possible to access the innerBundle
though, sohistory
can be compatible to previous usage. - Different parameters and generics on the bespoken methods.
- History and search requests return a
- Add first CI and switch to cargo-make
- Atomically patch request settings to not overwrite unrelated changes.
- Add derive Hash to codes
- breaking: Revamp auth_callback
- Introduce the
LoginManager
trait for more flexible authentication management. - Allow mutable access in auth_callback.
- Improve internal request logic to not run multiple auth callbacks at the same time.
- Introduce the
- Allow Clone callbacks in ClientBuilder::auth_callback
- Allow Custom Reqwest Client
- Add example for JSON deserialization
- Add and implement AnyResourceWrite for Resource
- Add REST call
history
- Bump dependencies
- Bump reqwest to 0.12, going to hyper 1.0
- Expose BuilderError
- Impl FromStr for ResourceType and revamp WrongResourceType error
- Switch generator back to crates io fhir models
- Fix docker setup for new versions
- Add FHIR STU3 -- thanks @jarimayenburg
- Implement JSON Patch alongside FHIRPath Patch
- Improve format implementation generation
- Add link to fhirbolt
- Add missing derives on MissingSearch
- Parse FHIR versions separately
- [breaking] Switch back to derive_builder
- [breaking] Change the whole client structure to allow multiple FHIR versions at once
- R4B was not compiling with new Subscription operations
- Make ETag parsing work with non-weak tags
- Allow spawning different FHIR servers
- Add Subscription operations to client
- Implement authorization callback
- Add tracing
- Improve error messages
- Improve README
- Move docker setup to xtask command
- Make auth_callback part of Client instead of RequestSettings
- Make client tests for R4B too
- Add Medplum as alternative FHIR server to docker setup
- Test client with medplum server
- Make all servers run at once to be able to test them at once
- Fix dispatch dropped errors
- Do not filter out codes like HTTPVerb
- Go deeper into the codes, there are more layers
- Implement batch/transaction requests
- Implement Encounter $everything operation
- Implement Patient $everything and $match
- Implement PATCH
- Change the way references are parsed
- Refactor to use batches
- Have the doc-test only at the right features
- Impl Send for returned Stream
- Base64 needs to use padding and strip whitespaces
- Add search to example
- Implement creation of References
- Add Reference parsing
- Implement reading a referenced resource
- Add getters for code by system for CodeableConcept
- Implement Rust types for primitive FHIR types
- Generate models using new primitive types
- Update generator fhir-model
- Use optimized proc macro compilation
- Move misc functions to module
- Move and rename reference creation methods
- Create xtask test command
- Reference search
- Fetch referenced resource
- Adjust to new primitive date types
- Adjust JSON comparison to FHIR to fix tests
- Make everything compile with different features
- Add back search for all resources
- Allow to disable builders
- Implement getting the server's capabilities
- Improve README
- Use local test server
- Improve code generation using cleaner URL usage
- Do not override headers with default headers
- Adjust wrong LinkRelationTypes definitions
- Implement Copy for ResourceType
- Implement Display for ResourceType
- Improve generated doc comments
- Implement basic REST client
- Implement paging
- Implement search with typed helpers
- Fix new clippy lints
- Add expansions for R4B and remove unneeded definitions
- Update typed-builder and fhir-sdk dependencies
- Update README
- Integer64 is actually a JSON String
- Add values for RelatedArtifactTypeExpanded
- [breaking] Choice field extensions include the value type in the field name
- Specimen.combined actually links to SpecimenCombined, not PublicationStatus
- Add FHIR R5 files
- Generate R5 models
- Use own FHIR models for code generation
- Implement code conversion to Coding and CodeableConcept
- Implement base traits for all resources
- Implement IdentifiableResource
- Extend the IdentifiableResource trait
- Add resolver = 2
- Initial implementation