Releases: International-Data-Spaces-Association/DataspaceConnector
Releases · International-Data-Spaces-Association/DataspaceConnector
DSC v6.1.0 - Extend Resource Attributes
In CHANGELOG.md
:
Added
- Add value
securityprofile
to GUI helper endpoint. - Add default
ids:depth
toDescriptionRequestMessage
. - Add property for specifying the path from which Camel routes are loaded.
- Defaults to the
camel-routes
directory in theresources
folder. - Allow changing Camel routes without recompilation if an external directory is used.
- Defaults to the
- Add
paymentModality
andsamples
to resource (for documentation, see here). - Add online status validator. Provides the possibility to set the connector
offline
. See how to use this here. - Add
connectorId
to configuration entity. - Add alias to keystore and truststore entities.
- Automatically notify subscribers on a local data update via
PUT /data
.
Changed
- Increase pitest version from 1.6.7 to 1.6.9.
- Use XML DSL instead of Java DSL for definition of Camel routes.
- Dropping jsonld dependency.
- Increase maven-enforcer-plugin version from 3.0.0-M3 to 3.0.0.
- Increase springdoc version from 1.5.9 to 1.5.10.
- Increase checkstyle version from 8.44 to 8.45.1.
- Increase pmd version from 6.36.0 to 6.37.0.
- Increase camel version from 3.11.0 to 3.11.1.
- Return data with correct content-type in headers, if possible. Fallback stays application/octet-stream.
- Set default status in
config.json
toCONNECTOR_ONLINE.
- Increase equalsverifier from 3.7.0 to 3.7.1.
Fixed
- Restrict access to POST/PUT/DELETE
{entity}/subscriptions
for artifacts and representations. - Restrict access to POST/PUT/DELETE
offers/{id}/brokers
. - Fix eager service loading causing "Bean not eligable for..." messages.
- Make configuration attributes read-only: inbound model versions, security profile.
- Remove error path from
application.properties
. - Set correct default properties for new configurations.
- Fix persistence errors for configurations.
- Rename
connectorEndpoint
todefaultEndpoint
.
DSC v6.0.0 - IDSCP, Subscriptions, Broker, Clearing House
Documentation available here.
In CHANGELOG.md
:
Added
- Provide REST endpoint for full-text search at the IDS Broker:
/ids/search
. - Check if the issuer connector of an artifact request does correspond to the signed consumer of the
transfer contract. - Integrate Camel-Spring-Boot version 3.10.0.
- Integrate DSC Camel Instance repository.
- Provide REST endpoints for adding and removing Camel routes and Spring beans at runtime.
- Send
ArtifactRequest
andArtifactResponse
messages to the Clearing House. - Allow artifacts pointing to backend systems to be created with both BasicAuth and API key
authentication. - Integrate IDSCPv2 for IDS communication.
- Add property
idscp2.enabled
for enabling and disabling IDSCPv2 server. Is disabled by default. - Add properties for configuring keystore and truststore for IDSCPv2.
- When enabling IDSCPv2, a valid IDS certificate is required!
- Add property
- Implement subscription transfer pattern.
- Add user profile for apps/services with access to subscription REST endpoints.
- Allow subscriptions for offered & requested resources, representations, and artifacts via REST
endpoints. - Create
PUT /notify
endpoint to manually notify subscribers (ids & non-ids). - Automatically notify subscribers on entity updates.
- Create REST endpoints for sending (un-)subscriptions via ids messages.
- Integrate IDS ConfigManager repository.
- Extend data model and REST API by entities: auth, broker, configuration, datasource, endpoint,
keystore, proxy, route, and truststore. - Add Camel error handler for propagating errors in routes.
- Extend data model and REST API by entities: auth, broker, configuration, datasource, endpoint,
- Persist connector configuration to database.
- Load configuration from database.
- Choose active configuration from list of configurations.
Changed
- Replace IDS Connector Framework v5.0.4 by IDS Messaging Services v2.0.0.
- Edit response codes and response content for the following endpoints:
/ids/connector/unavailable
,
/ids/connector/update
,/ids/resource/unavailable
,/ids/resource/update
,/ids/query
. - Move implementation for sending IDS query, connector, and resource messages to
GlobalMessageService
. - Handle DAT retrieving errors in
PRODUCTIVE_DEPLOYMENT
with status code 500 and a corresponding
message. - Artifact PUT
/api/data
changed response code from Ok (200) to NoContent (204). - Change naming of the resource's license attribute from
licence
tolicense
. - Change
AbstractEntity
toEntity
andNamedEntity
. - Refactor message handlers using Camel routes.
- Increase postgres version to 42.2.23.
- Increase jackson version to 2.12.4.
- Increase equalsverifier from 3.6.1 to 3.7.0.
- Increase spotbugs from 4.2.3 to 4.3.0.
DSC v5.2.1 - Maintenance
In CHANGELOG.md
:
Added
- Make bootstrapping feature optional. It can be disabled in the
application.properties
.
Changed
- Increase spring-boot version to 2.5.2.
- Increase checkstyle version to 8.44.
- Increase pmd version to 6.36.0.
DSC v5.2.0 - Bootstrapping
In CHANGELOG.md
:
Added
- Add
BootstrapConfiguration
.- Allow registering ids catalogs, offered resources, representations, artifacts, and contract offers during start up.
- Allow registering offered resources as part of the catalogs to brokers.
- Add
CatalogTemplate
and matching mapping/build functions. - Add a method to
AbstractIdsBuilder
that allows to create elements with a custom base URI. - Add
bootstrap.path
toapplication.properties
to define the base path where bootstrapping data can be found.
Changed
- Change
ConnectorService
to use the connector's ID fromconfig.json
whengetAllCatalogsWithOfferedResources
is called.
Fixed
- Fixed missing IDS context in
/api/examples/policy
. - Disable autocommit on database transactions.
- Remove encoding from optional path segment in
HttpService
.
Changed
- Increase IDS Framework version to 5.0.4.
- Update default Infomodel version to 4.0.10.
- Increase postgres version to 42.2.22.
DSC v5.1.2 - Fixes & Maintenance
In CHANGELOG.md
:
Fixed
- Fixed deletion of artifact data before the set time.
- Fixed tags with different descriptions in openapi schema.
- Fixed missing paging information in openapi schema.
Changed
- Increase postgresql version to 42.2.20.
- Increase spring-boot version to 2.5.1.
DSC v5.1.1 - Fix
In CHANGELOG.md
:
Fixed
- Add missing hateoas information in openapi schema.
DSC v5.1.0 - Telemetry
In CHANGELOG.md
:
Added
- Add telemetry collection via Jaeger.
Changed
- Replace deprecated JPA calls (
getOne
->getById
). - Increase length restriction for URIs in database columns to 2048.
- Increase modelmapper version to 2.4.4.
- Increase equalsverifier version to 3.6.1.
- Increase spring-openApi-security version to 1.5.9.
- Increase spring-openapi-ui version to 1.5.9.
- Increase maven-javadoc-plugin version to 3.3.0.
- Increase spring-boot version to 2.5.0.
- Increase checkstyle version to 8.43.
- Increase pmd version to 6.35.0.
- Increase pitest version from 1.6.6 to 1.6.7.
Fixed
- Representations have now only one self-link.
- Set Basic Auth Header on (provider) backend calls.
- Ignore empty extension
/**
onGET **/artifacts/{id}/data/**
. GET **/artifacts/{id}/data
andPOST **/artifacts/{id}/data
will now return the same output.
DSC v5.0.2 - Fix
In CHANGELOG.md
:
Changed
- Make the Clearing House url setting optional in
application.properties
.
Fixed
- Persist URIs as strings in database.
DSC v5.0.1 - Minor Changes
In CHANGELOG.md
:
Changed
- H2 does not persist database to files.
- Change additional list mapping for received attribute list with a single item.
- Disable unused rolling file appender in
log4j2.xml
.
DSC v5.0.0 - Data Model
In v5.0, the entry point for the REST API can be found at /api
and the Swagger UI can be accessed at /api/docs
. Find our new documentation at https://international-data-spaces-association.github.io/DataspaceConnector/.
In CHANGELOG.md
:
Added
- Partially support of HATEOAS.
- Add pagination for REST calls on resources.
- Integration and configuration of Jaeger for using open telemetry.
- Set default application name to
Dataspace Connector
inapplication.properties
. - Add custom spring banner.
- Add separate controller methods for each IDS message type.
- Add global exception handlers for
ResourceNotFoundException
,JsonProcessingException
, and any
RuntimeException
. - Add possibility to disable http tracer in
application.properties
. - Add possibility to restrict depth of returned IDS information on
DescriptionRequest
.- Change IDS self-description to returning only a list of catalogs instead of their whole content.
- Add possibility to send
DescriptionRequestMessages
for other elements than resources.
- Add remote IDs to each object for tracking origin.
- Support multiple policy patterns in one contract.
- Add Unit tests and integration tests.
- Add quality checks and project reports to
pom.xml
: execute withmvn verify site
. - Improve contract negotiation and usage control.
- Add contract agreement validation in
ContractAgreementHandler
. - Note pre-defined providers for contract offers in
ContractRequestHandler
. - Use contract agreements for policy enforcement.
- Handle out contract agreements for multiple artifacts (targets) within one negotiation sequence.
- Restrict agreement processing to confirmed agreements.
- Add relation between artifacts and agreements.
- Add contract agreement validation in
Changed
- Support of IDS Infomodel v4.0.4 (direct import in
pom.xml
). - Change IDS Framework version to v4.0.7.
- Http tracer is limited to 10000 characters per log line.
- Log file creation is disabled by default.
- Move Swagger UI to
/api/docs
. - Change response type from string to object.
- Use correct response codes as defined by RFC 7231.
- Replace old data model: catalogs, resources, representations, artifacts, contract, rules, and
agreements.- Separate
ResourceRepresentation
intoRepresentation
andArtifact
. - Separate
ResourceContract
intoContract
andRule
. - Handle data in own database entity.
- Separate management of resources and its relations.
- Define clear interfaces between data model and the IDS Infomodel objects.
- Add IDS object builder classes.
- Build ids:Resource only if at least 1 representation and 1 contract is present.
- Build ids:Representation only if at least 1 artifact is present.
- Build ids:ContractOffer only if at least 1 rule is present.
- Move remote information from
BackendSource
toArtifact
.
- Separate
- Strict implementation of model view controller pattern for data management.
- Controller methods for resources and representations.
- Provide strict access control to backend. Information can only be read and changed by services.
- Strict state validation for entities via factory classes.
- Change IDS messaging sequence: Start with
ContractRequestMessage
for automated
DescriptionRequestMessage
andArtifactRequestMessage
. - Improve data transfer.
- Process bytes instead of strings.
- Remove limit for data in internal database.
- Establish connection via
ArtifactRequestMessage
for always pulling recent data.
Fixed
- Fix of buffer overflow in http tracer.
- Make message handler stateless.
Security
- Prevent leaking of technology stack in case of errors/exceptions.
- Logger sanitizes inputs to prevent CRLF injections.
- Mass Bindings.
- Timezone independence.