Version 1.0.0-alpha.39
Pre-release
Pre-release
·
201 commits
to master
since this release
The last release prior to a stable 1.0 release. This includes the start of some big renaming, and preparations for API stabilization.
- JSON schemas: Starting from this release, you can find JSON schemas for all application service requests and responses under the
rpc/schemas
folder. In addition, example requests and responses will be added as an asset to the release. (#351) - Versioned API: application service request objects and integration events now carry an
apiVersion
with amajor
andminor
component. Within major versions, minor versions will be backwards compatible. Helper classes will be provided by core to perform the necessary migrations. (#354, #357)
Dependency updates:
- Kotlin 1.6.10
- kotlinx.serialization 1.3.1
Common
- All
AggregateRoot
s now have anid
; no more custom IDs. IntegrationEvent
now carries anaggregateId
; implementing infrastructures need to guarantee ordering for all events sharing the sameaggregateId
. (#338)- Only lowercase and alphanumerics are allowed in
NamespacedId
. (#340) - Added an optional
displayName
toDeviceRegistration
which front-ends can use to render concise information about registered devices without worrying about concrete types. (#350) - Big rename:
$type
discriminator in JSON has been replaced with__type
MasterDeviceDescriptor
toPrimaryDeviceConfiguration
MasterDeviceDeployment
toPrimaryDeviceDeployment
DeviceDescriptor
toDeviceConfiguration
- as well as all related names and references to them, e.g.,
assignedPrimaryDeviceRoleNames
Protocols
- #346 Study names still need to be unique to study owners.
- Replaced
ProtocolOwner
withUUID
. (#343) - Renamed
ProtocolService.getAllFor
togetAllForOwner
.
Deployments
StudyDeploymentsRemoved
event now only carries a singlestudyDeploymentId
, so removing multiple deployments fires multiple events.- Renamed
DeploymentRepository.getStudyBy
renamed togetStudyByDeployment
.
Studies
- Replaced
StudyOwner
withUUID
. (#343)
Multiplatform release accessible through Maven:
https://mvnrepository.com/artifact/dk.cachet.carp