Skip to content

v1.2.0

Latest
Compare
Choose a tag to compare
@mjacoby mjacoby released this 13 Dec 09:23
· 10 commits to main since this release
3e8f921

🚀 New Features & Major Changes

  • General
    • Replaced custom classes with AAS4J classes that are now available as part of AAS4J
  • Persistence
    • Added Mongo persistence for storing AAS model in MongoDB
  • Endpoint
    • Supported AAS Profiles can now be configured per Endpoint
    • HTTP
      • Improved CORS support by introducing additional config properties corsAllowCredentials, corsAllowedHeaders, corsAllowedMethods, corsAllowedOrigin, corsExposedHeaders, and corsMaxAge
      • Improved error messages; stack trace may now be returned in HTTP responses via config property includeErrorDetails
      • New API calls: PUT on /upload will now accept JSON/AASX model files. DELETE on /reset will erase everything including AAS, Submodels and ConceptDescriptions.
    • OPC UA
      • Added support for all datatypes of the AAS specification

⚙️ Internal Changes & Bugfixes

  • General
    • Fixed bug when executing an operation asynchronously. When the timeout has expired, the status of the operation was set to timeout, even if the operation already finished successfully. This does no longer happen - the timeout no longer overwrites the result of the operation.
    • Fix warning message about missing Log4j2 logging implementation
    • Fix registry synchronization because of invalid _interface serialization
    • Fixed bug that occured when having multiple elements in a SubmodelElementList with exactly the same attributes
    • Invoke asynchronous operation now ignores the clientTimeout
    • Model validation no longer throws an error if a model contains multiple instances of exactly the same Identifiable. This is not 100% correct behavior according to the specification as it validates the uniqueness criteria of their ID, however, it helps tremendously when working with existing SMTs as many of them are currently also not 100% standard-compliant and contain such duplicate elements.
  • Endpoint
    • HTTP
      • Fixed query modifier extent which has not been working as intended
      • Fixed bug in JSON valueOnly deserialization that could occur with complex strcutures (e.g. SubmodelElementCollections within SubmodelElementLists)
      • Fixed bug caused by null values in JSON payload when inserting data via HTTP - null values are now treated as empty/default values
      • Fixed bug "serialization failed" when retrieving a property of type GDay
      • Fixed bug where /aas/asset-information/thumbnail incorrectly returns 500 Internal Server Error when property content-type is not set
      • Added support for query parameters assetId and idShort for /shells/$reference
      • /serialization no longer fails when model contains 'embedded' files but target file format does not. Instead, files are ignored.
      • Enable paging for /submodel/submodel-elements/$path
      • Upgraded to Jetty 12
  • Serialization
    • JSON
      • Fixed exception occuring when trying to serialize an element as valueOnly that contains elements that do not support valueOnly serialization
      • Fixed serialization of Message object to only include code property if set
      • Added support for valueOnly serialization of BasicEventElement
  • Asset Connection
    • General
      • Fixed bug that caused FA³ST Service to crash when an Asset Connection threw an exception on startup
    • HTTP
      • Remove method and payload from Subscription Provider

📦 Dependencies

  • Bump aas4j.version from 1.0.2 to 1.0.3
  • Bump bouncycastle.version from 1.78.1 to 1.79
  • Bump com.fasterxml.jackson.core:jackson-databind from 2.17.2 to 2.18.2
  • Bump com.fasterxml.woodstox:woodstox-core from 7.0.0 to 7.1.0
  • Bump com.google.guava:guava from 33.2.1-jre to 33.3.1-jre
  • Bump com.google.protobuf:protobuf-java from 4.27.2 to 4.29.1
  • Bump com.guardsquare:proguard-base from 7.5.0 to 7.6.0
  • Bump com.guardsquare:proguard-core from 9.1.4 to 9.1.6
  • Bump com.puppycrawl.tools:checkstyle from 10.17.0 to 10.20.2
  • Bump commons-io:commons-io from 2.16.1 to 2.18.0
  • Bump de.flapdoodle.embed:de.flapdoodle.embed.mongo from 4.17.0 to 4.18.1
  • Bump io.github.classgraph:classgraph from 4.8.174 to 4.8.179
  • Bump jackson.version from 2.17.2 to 2.18.2
  • Bump jena.version from 5.0.0 to 5.2.0
  • Bump jetty.version from 11.0.22 to 12.0.15
  • Bump logback.version from 1.5.6 to 1.5.12
  • Bump maven.plugin.surefire.version from 3.3.1 3.5.2
  • Bump milo.version from 0.6.13 to 0.6.15
  • Bump netty.version from 4.1.111.Final to 4.1.115.Final
  • Bump nl.jqno.equalsverifier:equalsverifier from 3.16.1 to 3.17.5
  • Bump org.apache.commons:commons-compress from 1.26.2 to 1.27.1
  • Bump org.apache.commons:commons-lang3 from 3.14.0 to 3.17.0
  • Bump org.apache.httpcomponents.client5:httpclient5 from 5.3.1 to 5.4.1
  • Bump org.apache.logging.log4j:log4j-to-slf4j from 2.24.0 to 2.24.2
  • Bump org.apache.maven.plugins:maven-checkstyle-plugin from 3.4.0 to 3.8.1
  • Bump org.apache.maven.plugins:maven-failsafe-plugin from 3.3.1 to 3.5.2
  • Bump org.apache.maven.plugins:maven-gpg-plugin from 3.2.4 to 3.2.7
  • Bump org.apache.maven.plugins:maven-javadoc-plugin from 3.7.0 to 3.11.2
  • Bump org.awaitility:awaitility from 4.2.1 to 4.2.2
  • Bump org.codehaus.mojo:license-maven-plugin from 2.4.0 to 2.5.0
  • Bump org.eclipse.parsson:parsson from 1.1.6 to 1.1.7
  • Bump org.mockito:mockito-core from 5.12.0 to 5.14.2
  • Bump org.mongodb:mongodb-driver-sync from 5.1.3 to 5.2.1
  • Bump org.owasp:dependency-check-maven from 10.0.3 to 11.1.1
  • Bump slf4j.version from 2.0.13 to 2.0.16
  • Bump uk.org.webcompere:system-stubs-core from 2.1.6 to 2.1.7