Skip to content

Releases: International-Data-Spaces-Association/DataspaceConnector

DSC v6.1.0 - Extend Resource Attributes

25 Mar 18:47
fad0727
Compare
Choose a tag to compare

In CHANGELOG.md:

Added

  • Add value securityprofile to GUI helper endpoint.
  • Add default ids:depth to DescriptionRequestMessage.
  • Add property for specifying the path from which Camel routes are loaded.
    • Defaults to the camel-routes directory in the resources folder.
    • Allow changing Camel routes without recompilation if an external directory is used.
  • Add paymentModality and samples 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 to CONNECTOR_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 to defaultEndpoint.

DSC v6.0.0 - IDSCP, Subscriptions, Broker, Clearing House

25 Mar 18:47
7162c5a
Compare
Choose a tag to compare

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 and ArtifactResponse 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!
  • 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.
  • 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 to license.
  • Change AbstractEntity to Entity and NamedEntity.
  • 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

25 Mar 18:47
5d2425c
Compare
Choose a tag to compare

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

25 Mar 18:46
a55dc02
Compare
Choose a tag to compare

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 to application.properties to define the base path where bootstrapping data can be found.

Changed

  • Change ConnectorService to use the connector's ID from config.json when getAllCatalogsWithOfferedResources 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

25 Mar 18:45
5820b0d
Compare
Choose a tag to compare

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

25 Mar 18:45
c3d2f1c
Compare
Choose a tag to compare

In CHANGELOG.md:

Fixed

  • Add missing hateoas information in openapi schema.

DSC v5.1.0 - Telemetry

25 Mar 18:44
f379142
Compare
Choose a tag to compare

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 /** on GET **/artifacts/{id}/data/**.
  • GET **/artifacts/{id}/data and POST **/artifacts/{id}/data will now return the same output.

DSC v5.0.2 - Fix

25 Mar 18:44
528a351
Compare
Choose a tag to compare

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

25 Mar 18:44
7359b11
Compare
Choose a tag to compare

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

25 Mar 18:43
548cd41
Compare
Choose a tag to compare

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 in application.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 with mvn 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.

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 into Representation and Artifact.
    • Separate ResourceContract into Contract and Rule.
    • 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 to Artifact.
  • 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 and ArtifactRequestMessage.
  • 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.