Skip to content

Releases: frankframework/frankframework

v8.2.0

12 Jul 10:51
Compare
Choose a tag to compare

Full Changelog: v8.1.0...v8.2.0, see Milestone 8.2.0 for more info.

Notice

  • Some (deprecated) functionality has permanently been removed!
  • Moved to Spring 6 and Spring Boot 3. Requires Jakarta package names and JDK 17.
  • Changed default log level from DEBUG to INFO, for environments that are not configured with dtap.stage at value: ACC or PRD. These are by default on WARN level.
  • Packages names have been changed, though you should not need to change your configurations, it's advised to do it ASAP.
  • We are now publishing our artifacts under our new org.frankframework groupid on Maven Central.
  • When using log.HideRegex you may need to unescape XML characters. (see log4j4ibis.properties.)
  • Parameter handling for types Node and DomDoc is namespace aware, starting from version 7.6. To remove namespaces, use set attribute removeNamespaces="true".
  • FixedQuerySender allows duplicate parameter names ONLY if useNamedParams is explicitly set to false.
  • CompressPipe pattern attributes have been deprecated, please use the appropriate parameters and resolve the pattern in there instead. The result has now also by default been changed to the file/zip-entry instead of a file location.

Highlights

Bugfixes
Performance enhancements
Code Quality improvements
Cleanup Technical Debt
Remove (some) deprecated configuration attributes
Security Updates
Upgrade to JDK 17 and add JDK21 runtime support
Improve documentation

What's Changed

  • Remove BTM (#5488)
  • Improve user facing error messages on Console's JDBC Executy Query page (#6624)
  • Increase message persist to disk size (#6598)
  • Allow custom headers in CMIS (#6620)
  • Refactor and upgrade iDin (#6646)
  • Fix human readable bytes calculation and unit (#6688)
  • Fix getDestinationName exceptions when no connection is available (#6712)
  • Allow non-jndi resources (#6689)
  • Show warning on low free disk space (#6718)
  • Add log statements to configuration stop method (#6715)
  • Invalidate managed jms sessions instead of resetting them (#6734)
  • Fix json conversion in RestListener (#6746)
  • Upgrade to Spring 6 and to Jakarta namespaces (#6713)
  • Remove IfMultipartPipe (#6788)
  • Replace PrismJS with the Monaco Editor (#6754)
  • Fix database validator log levels/statements (#6799)
  • Deprecate the CompressPipe filepatterns (#6805)
  • Make sure the 'root' folder of a file system is used (#6792)
  • Update FixedResultPipe parameter syntax to avoid conflicting substitution (#6789)
  • Reduce verbosity of toStringResult (#6818)
  • Add MongoDB tests with TestContainers (#6822)
  • Introduce new setting to explicitly create a root folder (#6831)
  • Update Apache Tika (#6826)
  • Add more FileSystem exits (#6740)
  • Use a ParameterFactory to create parameters (#6835)
  • Fix generated keys support for all databases (#6825)
  • Add GraalJS as JavaScript engine (#6834)
  • Add Hazelcast (#6849)
  • Ensure all CXF endpoints are loaded as Servlet instead of a Filter (#6871)
  • Fix case-sensitivity issue with Postgres & Liquibase (#6882)
  • Introduce DateParameter (#6878)
  • MessageStoreListener retains messages after error even when moveToMessageLog=false (#6880)
  • Refactor console backend from JAX-RS to Spring-MVC (#6755)
  • Remove MoveFilePipe (#6903)
  • Fix exit-forward when exit was never explicitly defined (#6742)
  • Allow empty message in Test a Pipeline (#6912)
  • Test Mermaid fix for corner cases with Exits (#6928)
  • Use Mermaid flows by default (#6946)
  • Add CSRF handling to Spring MVC & Angular (#6925)
  • Add Docker image for console (#6947)
  • Improve Message closing (#6955)
  • Make RestoredMovedElements streaming (#6945 + #7069)
  • Return the directory when using a DirectoryClassLoader (#6974)
  • Catch more Console API exceptions & Sanitize exception message in error page jsp (#6972)
  • Replacer pipe should process messages in a streaming way (#6950)
  • Add listing of folders feature in all Filesystems (#6983 + #7009)
  • Add option to disable larva save button (#6997)
  • Add custom file system attributes (#6988)
  • Improve performance of hideRegex in logging (#7028)
  • Change pace-js settings to work better with firefox (#7076)
  • Fix switching from custom view to custom view (#7071)
  • Add forRemoval and since attributes to Deprecated items (#7093 + #7105)
  • Better handling of HideRegex in Adapter and MessageBrowser (#7099)
  • Create boot app for console backend (#7101)
  • Deprecate string based operations in FixedResultPipe and implement alternatives (#6987)
  • Make Larva tests run in parallel (#7051)
  • Display logout button in console when properly logged in (#7079 + #7121)
  • Rename IbisActionJob to ActionJob (#7122)
  • Improve readability of XmlIf (#7126)

Non backwards compatible changes

  • Transaction Manager BTM is removed. Switch over to Narayana Transaction Manager.
  • Only supports Tomcat 10.x or later. Tomcat 9.x or lower version, are no longer supported.
  • FileSystemPipes and FileSystemSenders now have new forwards for fileNotFound, folderNotFound, fileAlreadyExists, folderAlreadyExists. Some actions, such as removing a non-existing folder, were previously ignored but can now trigger one of these forwards. If such a forward is not defined, then the pipe or sender will go to the exception forward or if that is not defined either, trigger an exception, which was previously ignored. Adding the specific exception forward and pointing it to the next pipe will solve this.
  • The MoveFilePipe was deprecated for a while and has been removed now. Please use the LocalFileSystemPipe if you need to move a file.
  • In the FixedResultPipe, the deprecated setUseOldSubstitutionStartDelimiter has been removed. This enforced using the ${..} syntax, but now only the ?{..} is supported.

v8.2.0-20240711.042331 (nightly)

11 Jul 03:47
27b461c
Compare
Choose a tag to compare
Pre-release

The Frank!Framework nightly (snapshot) build provides a daily compilation of the latest code changes and developments, allowing users to access cutting-edge features and updates before they are officially released.

Copy version

8.2.0-20240711.042331

Download instructions

Get the Webapp

Add it to the pom.xml:

<dependencies>
  <dependency>
    <groupId>org.frankframework</groupId>
    <artifactId>frankframework-webapp</artifactId>
    <version>8.2.0-20240711.042331</version>
  </dependency>
</dependencies>

<repositories>
  <repository>
    <id>frankframework</id>
    <name>Frank!Framework</name>
    <url>https://nexus.frankframework.org/content/repositories/public</url>
  </repository>
</repositories>

Or download it from Nexus

Get the Docker image

Pull the Docker image:

docker pull frankframework/frankframework:8.2.0-20240711.042331

Or visit the image on DockerHub

v8.1.1-20240615.005005 (nightly)

17 Jun 09:55
a421e1a
Compare
Choose a tag to compare
Pre-release

The Frank!Framework nightly (snapshot) build provides a daily compilation of the latest code changes and developments, allowing users to access cutting-edge features and updates before they are officially released.

Copy version

8.1.1-20240615.005005

Download instructions

Get the Webapp

Add it to the pom.xml:

<dependencies>
  <dependency>
    <groupId>org.frankframework</groupId>
    <artifactId>frankframework-webapp</artifactId>
    <version>8.1.1-20240615.005005</version>
  </dependency>
</dependencies>

<repositories>
  <repository>
    <id>frankframework</id>
    <name>Frank!Framework</name>
    <url>https://nexus.frankframework.org/content/repositories/public</url>
  </repository>
</repositories>

Or download it from Nexus

Get the Docker image

Pull the Docker image:

docker pull frankframework/frankframework:8.1.1-20240615.005005

Or visit the image on DockerHub

v8.0.3-20240604.000631 (nightly)

03 Jun 23:45
2bf633f
Compare
Choose a tag to compare
Pre-release

The Frank!Framework nightly (snapshot) build provides a daily compilation of the latest code changes and developments, allowing users to access cutting-edge features and updates before they are officially released.

Copy version

8.0.3-20240604.000631

Download instructions

Get the Webapp

Add it to the pom.xml:

<dependencies>
  <dependency>
    <groupId>org.frankframework</groupId>
    <artifactId>frankframework-webapp</artifactId>
    <version>8.0.3-20240604.000631</version>
  </dependency>
</dependencies>

<repositories>
  <repository>
    <id>frankframework</id>
    <name>Frank!Framework</name>
    <url>https://nexus.frankframework.org/content/repositories/public</url>
  </repository>
</repositories>

Or download it from Nexus

Get the Docker image

Pull the Docker image:

docker pull frankframework/frankframework:8.0.3-20240604.000631

Or visit the image on DockerHub

v8.1.0

22 May 13:07
Compare
Choose a tag to compare

Patch Changelog: v8.1.0-RC1...v8.1.0 - Full Changelog: v8.0.0...v8.1.0, see Milestone 8.1.0 for more info.

Notice

  • Some (deprecated) functionality has permanently been removed!
  • Packages names have been changed, though you should not need to change your configurations, it's advised to do it ASAP.
  • We are now publishing our artifacts under our new org.frankframework groupid on Maven Central.
  • When using log.HideRegex you may need to unescape XML characters. (see log4j4ibis.properties.)
  • Parameter handling for types Node and DomDoc is namespace aware, starting from version 7.6. To remove namespaces, use set attribute removeNamespaces="true".
  • FixedQuerySender allows duplicate parameter names ONLY if useNamedParams is explicitly set to false.
  • CompressPipe pattern attributes have been deprecated, please use the appropriate parameters and resolve the pattern in there instead. The result has now also by default been changed to the file/zip-entry instead of a file location.

Highlights

Bugfixes
Performance enhancements
Code Quality improvements
Cleanup Technical Debt
Remove (some) deprecated configuration attributes
Security Updates
Upgrade to JDK 17 and add JDK21 runtime support
Improve documentation

What's Changed

  • AllowUrlEncodedSlash in IAF API endpoints (#6613)
  • Improve user facing error messages on Console's JDBC Executy Query page (#6632)
  • Allow custom headers in CMIS (#6635)
  • Add JDBC error message (#6638)
  • Change message persist to disk size (#6644)
  • Register inbound http filter (#6665)
  • Refactor iDinSender (#6667)
  • Add resource locators (#6719)
  • Invalidate managed jms sessions instead of resetting them (#6732)
  • Fix object order (#6753)
  • Fix json conversion in restlistener (#6759)
  • Revert mariadb.driver.version to 2.7.10 because it fails with BTM (#6774)
  • Close streams in Aspose (#6783)
  • Deprecate IfMultipartPipe (#6786)
  • Fix parameter substitution in FixedResultPipe (#6790)
  • Deprecate the CompressPipe filepatterns (#6806)
  • Fix getDestinationName exceptions when no datasource or connection is available (#6814)
  • Reduce verbosity of toStringResult (#6819)
  • Fix any-date parser (#6850)

Non backwards compatible changes

  • Larva httpRequest parameter is no longer supported
  • Json2XmlValidator input format session key prefix changed from "Json2XmlValidator.inputformat " to "Json2XmlValidator.inputFormat " (capital F)
  • property xml.namespaceAware.default=true by default. When set to false, parsing is done via a DOM source, or namespaces are removed before XSLT transformations.
  • IbisLocalSender no longer throws exceptions if exit.state="ERROR" situations, but provides forwardName 'exception'. The sessionKey 'originalResult' is no longer used.
  • For sending replies from the JmsListener to a fixed destination the attribute 'replyDestinationName' should be used instead of a nested JmsSender, to avoid clutter in the debugger reports
  • Session variable 'id' has been renamed 'mid', session variables 'messageId' and 'tcid' have been removed.
  • Session variable 'exitcode' has been renamed to 'exitCode'.
  • Duplicate detection might fail for messages received after an upgrade if the earlier version of the message was received before the upgrade.
    This is in cases where a received (JMS) correlationId is used to send a response.
  • The ZipWriterPipe and ZipWriterSender have undergone major changes. In order to help the upgrading processes they both have a backwardsCompatibility attribute to revert to the old behavior. Please migrate away from this as soon as possible.
    • The ZipWriterPipe with action=WRITE does no longer has its input as its response, but rather a null message. If necessary, the previous behavior can be obtained by setting preserveInput=true.
    • The ZipWriterSender with no content parameter does no longer has its input as its response, but rather a null message.
    • The ZipWriterPipe CLOSE action will now return the ZIP archive! It is no longer required to create a file first (with action OPEN) nor is it required to specify a filename on the OPEN action.
  • Parameter with an attribute value set to an empty string will have the empty string as result. Previously the input message would be used. This behaviour can be reobtained by settin: defaultValueMethod="input".
  • Larva context has changed from '/larva' to '/iaf/larva'.
  • Larva default timeout has been decreased to 10s, and to 2s for local tests
  • The CMIS, Aspose and AWS modules have been added to our webapp artifact. The servlet endpoints are disabled by default.
    • In order to enable the CMIS endpoints either of the following properties must be set:
      servlet.AtomPub10.enabled=true,
      servlet.AtomPub11.enabled=true,
      servlet.WebServices10.enabled=true,
      servlet.WebServices11.enabled=true or
      servlet.BrowserBinding.enabled=true
  • Some API endpoints have been deprecated. Users are encouraged to change over to the new API, however in order to restore the deprecated functionality the property 'iaf-api.allowDeprecated' can be set to true.
  • ApiListener eTag generation has been disabled by default, set api.etag.enabled=true to enable default etag generation.
  • CleanupOldFilesPipe and UploadFilePipe have been removed.

v8.0.2

17 May 13:49
Compare
Choose a tag to compare

Patch Changelog: v8.0.1...v8.0.2 - Full Changelog: v7.9-RC1...v8.0.2, see Milestone 8.0.2 for more info.

Notice

  • Some (deprecated) functionality has permanently been removed!
  • Packages names have been changed, though you should not need to change your configurations, it's advised to do it ASAP.
  • We are now publishing our artifacts under our new org.frankframework groupid on Maven Central.
  • When using log.HideRegex you may need to unescape XML characters. (see log4j4ibis.properties.)
  • Parameter handling for types Node and DomDoc is namespace aware, starting from version 7.6. To remove namespaces, use set attribute removeNamespaces="true".
  • FixedQuerySender allows duplicate parameter names ONLY if useNamedParams is explicitly set to false.

Highlights

Bugfixes
Performance enhancements
Code Quality improvements
Cleanup Technical Debt
Remove (some) deprecated configuration attributes
Security Updates
Upgrade to JDK 11 and add JDK17 runtime support
Improve documentation

What's Changed

  • Invalide managed jms sessions instead of resetting them (#6731)
  • Revert mariadb.driver.version to 2.7.10 because it fails with BTM (#6773)
  • Fix json conversion in restlistener (#6776)
  • Close streams in Aspose (#6782)
  • Deprecate IfMultipartPipe (#6785)
  • Fix getDestinationName exceptions when no datasource or connection is available (#6812)
  • Reduce verbosity of toStringResult (#6817)
  • Fix for date parser (#6837)

Non backwards compatible changes

  • Larva httpRequest parameter is no longer supported
  • Json2XmlValidator input format session key prefix changed from "Json2XmlValidator.inputformat " to "Json2XmlValidator.inputFormat " (capital F)
  • property xml.namespaceAware.default=true by default. When set to false, parsing is done via a DOM source, or namespaces are removed before XSLT transformations.
  • IbisLocalSender no longer throws exceptions if exit.state="ERROR" situations, but provides forwardName 'exception'. The sessionKey 'originalResult' is no longer used.
  • For sending replies from the JmsListener to a fixed destination the attribute 'replyDestinationName' should be used instead of a nested JmsSender, to avoid clutter in the debugger reports
  • Session variable 'id' has been renamed 'mid', session variables 'messageId' and 'tcid' have been removed.
  • Session variable 'exitcode' has been renamed to 'exitCode'.
  • Duplicate detection might fail for messages received after an upgrade if the earlier version of the message was received before the upgrade.
    This is in cases where a received (JMS) correlationId is used to send a response.
  • The ZipWriterPipe and ZipWriterSender have undergone major changes. In order to help the upgrading processes they both have a backwardsCompatibility attribute to revert to the old behavior. Please migrate away from this as soon as possible.
    • The ZipWriterPipe with action=WRITE does no longer has its input as its response, but rather a null message. If necessary, the previous behavior can be obtained by setting preserveInput=true.
    • The ZipWriterSender with no content parameter does no longer has its input as its response, but rather a null message.
    • The ZipWriterPipe CLOSE action will now return the ZIP archive! It is no longer required to create a file first (with action OPEN) nor is it required to specify a filename on the OPEN action.
  • Parameter with an attribute value set to an empty string will have the empty string as result. Previously the input message would be used. This behaviour can be reobtained by settin: defaultValueMethod="input".
  • Larva context has changed from '/larva' to '/iaf/larva'.
  • Larva default timeout has been decreased to 10s, and to 2s for local tests
  • The CMIS, Aspose and AWS modules have been added to our webapp artifact. The servlet endpoints are disabled by default.
    • In order to enable the CMIS endpoints either of the following properties must be set:
      servlet.AtomPub10.enabled=true,
      servlet.AtomPub11.enabled=true,
      servlet.WebServices10.enabled=true,
      servlet.WebServices11.enabled=true or
      servlet.BrowserBinding.enabled=true
  • Some API endpoints have been deprecated. Users are encouraged to change over to the new API, however in order to restore the deprecated functionality the property 'iaf-api.allowDeprecated' can be set to true.
  • ApiListener eTag generation has been disabled by default, set api.etag.enabled=true to enable default etag generation.
  • CleanupOldFilesPipe and UploadFilePipe have been removed.

v7.9.3

17 May 10:02
Compare
Choose a tag to compare

Patch Changelog: v7.9.2...v7.9.3 - Full Changelog: v7.8-RC1...v7.9.3, see Milestone 7.9.3 for more info.

Notice

  • When using log.HideRegex you may need to unescape XML characters. (see log4j4ibis.properties.)
  • Parameter handling for types Node and DomDoc is namespace aware, starting from version 7.6. To remove namespaces, use set attribute removeNamespaces="true"
  • FixedQuerySender allows duplicate parameter names ONLY if useNamedParams is explicitly set to false.
  • CleanupOldFilesPipe has been deprecated to be removed in version 8.0
  • When using CMIS, parameter userName has been renamed to username.

Highlights

Bugfixes
Performance enhancements
Security Updates

What's Changed

  • Change CMIS warning when using userName parameter (#6623)
  • Refactor and LCM iDinSender (#6672)
  • Invalidate managed JMS sessions instead of resetting them (#6730)
  • Fix json conversion in restlistener (#6775)
  • Close streams in Aspose (#6781)
  • Reduce verbosity of toStringResult (#6793)

Non backwards compatible changes

  • IbisLocalSender no longer throws exceptions if exit.state="ERROR" situations, but provides forwardName 'exception'. The sessionKey 'originalResult' is no longer used.

  • For sending replies from the JmsListener to a fixed destination the attribute 'replyDestinationName' should be used instead of a nested JmsSender, to avoid clutter in the debugger reports

  • Session variable 'id' has been renamed 'mid', session variables 'messageId' and 'tcid' have been removed.

  • Session variable 'exitcode' has been renamed to 'exitCode'.

  • Duplicate detection might fail for messages received after an upgrade if the earlier version of the message was received before the upgrade.
    This is in cases where a received (JMS) correlationId is used to send a response.

  • The ZipWriterPipe and ZipWriterSender have undergone major changes. In order to help the upgrading processes they both have a backwardsCompatibility attribute to revert to the old behavior. Please migrate away from this as soon as possible.

    • The ZipWriterPipe with action=WRITE does no longer has its input as its response, but rather a null message. If necessary, the previous behavior can be obtained by setting preserveInput=true.
    • The ZipWriterSender with no content parameter does no longer has its input as its response, but rather a null message.
    • The ZipWriterPipe CLOSE action will now return the ZIP archive! It is no longer required to create a file first (with action OPEN) nor is it required to specify a filename on the OPEN action.
  • Parameter with an attribute value set to an empty string will have the empty string as result. Previously the input message would be used. This behaviour can be reobtained by settin: defaultValueMethod="input".

  • Larva context has changed from '/larva' to '/iaf/larva'.

  • Larva default timeout has been decreased to 10s, and to 2s for local tests

  • The CMIS, Aspose and AWS modules have been added to our webapp artifact. The servlet endpoints are disabled by default.

    • In order to enable the CMIS endpoints either of the following properties must be set:
      servlet.AtomPub10.enabled=true,
      servlet.AtomPub11.enabled=true,
      servlet.WebServices10.enabled=true,
      servlet.WebServices11.enabled=true or
      servlet.BrowserBinding.enabled=true
  • Some API endpoints have been deprecated. Users are encouraged to change over to the new API, however in order to restore the deprecated functionality the property 'iaf-api.allowDeprecated' can be set to true.

  • ApiListener eTag generation has been disabled by default, set api.etag.enabled=true to enable default etag generation.

v8.0.1

16 Apr 11:46
Compare
Choose a tag to compare

Patch Changelog: v8.0.0...v8.0.1 - Full Changelog: v7.9-RC1...v8.0.1, see Milestone 8.0.1 for more info.

Notice

  • Some (deprecated) functionality has permanently been removed!
  • Packages names have been changed, though you should not need to change your configurations, it's advised to do it ASAP.
  • We are now publishing our artifacts under our new org.frankframework groupid on Maven Central.
  • When using log.HideRegex you may need to unescape XML characters. (see log4j4ibis.properties.)
  • Parameter handling for types Node and DomDoc is namespace aware, starting from version 7.6. To remove namespaces, use set attribute removeNamespaces="true".
  • FixedQuerySender allows duplicate parameter names ONLY if useNamedParams is explicitly set to false.

Highlights

Bugfixes
Performance enhancements
Code Quality improvements
Cleanup Technical Debt
Remove (some) deprecated configuration attributes
Security Updates
Upgrade to JDK 11 and add JDK17 runtime support
Improve documentation

What's Changed

  • SoapWrapper should try unwrapping with soap version 1.1 too (#6098)
  • Remove SoapWrapperPipe warnings about configured SoapVersion (#6102)
  • InputWrapper used to Wrap, should always specify a SoapVersion (#6163)
  • Fix reading JMS BytesMessage data after extracting message properties (#6170)
  • Do not close CMIS session before PipeLineSession closes (#6181)
  • Make MermaidFlowGenerator more resilient to class loading errors (#6202)
  • Fix async processing senders (#6232)
  • Add Connection Validation and Pool configuration (#6233)
  • Add ConnectionPool information to SecurityItems (#6171 + #6247)
  • Make all FileSystems behave more consistent (#6252)
  • Pad authAlias and sharedSecret parameter when jwtAllowWeakSecrets is true (#6265)
  • Hide SMB logging by default (#6290)
  • Make LogContextPipe not throw when it has an error during execution (#6299)
  • Make query-timeout more consistently for all query senders (#6341)
  • Improve SFTP implementation (#6343 + #6249)
  • Rename jdbc minPoolSize to minIdle (#6346)
  • Add ReconnectSenderWrapper (#6349 + #6433)
  • Store message-context in ErrorStorage (#6352)
  • Fix Oauth2 exception flow (#6404)
  • Use provided charset when converting to InputSource (#6462)
  • Fix duplicated messages in exception forwards (#6504)
  • Use different defaults for Narayana JMS connection and session pools (#6500)
  • Fix elementToMove preserve (#6533)
  • Add log message when pipe is skipped (#6551)
  • Remove CleanupOldFilesPipe and UploadFilePipe (#6592)
  • AllowUrlEncodedSlash (#6612)
  • Allow custom headers in CMISsenders (#6637)
  • Register inbound http filter (#6664)
  • Refactor iDinSender (#6668)

Non backwards compatible changes

  • Larva httpRequest parameter is no longer supported
  • Json2XmlValidator input format session key prefix changed from "Json2XmlValidator.inputformat " to "Json2XmlValidator.inputFormat " (capital F)
  • property xml.namespaceAware.default=true by default. When set to false, parsing is done via a DOM source, or namespaces are removed before XSLT transformations.
  • IbisLocalSender no longer throws exceptions if exit.state="ERROR" situations, but provides forwardName 'exception'. The sessionKey 'originalResult' is no longer used.
  • For sending replies from the JmsListener to a fixed destination the attribute 'replyDestinationName' should be used instead of a nested JmsSender, to avoid clutter in the debugger reports
  • Session variable 'id' has been renamed 'mid', session variables 'messageId' and 'tcid' have been removed.
  • Session variable 'exitcode' has been renamed to 'exitCode'.
  • Duplicate detection might fail for messages received after an upgrade if the earlier version of the message was received before the upgrade.
    This is in cases where a received (JMS) correlationId is used to send a response.
  • The ZipWriterPipe and ZipWriterSender have undergone major changes. In order to help the upgrading processes they both have a backwardsCompatibility attribute to revert to the old behavior. Please migrate away from this as soon as possible.
    • The ZipWriterPipe with action=WRITE does no longer has its input as its response, but rather a null message. If necessary, the previous behavior can be obtained by setting preserveInput=true.
    • The ZipWriterSender with no content parameter does no longer has its input as its response, but rather a null message.
    • The ZipWriterPipe CLOSE action will now return the ZIP archive! It is no longer required to create a file first (with action OPEN) nor is it required to specify a filename on the OPEN action.
  • Parameter with an attribute value set to an empty string will have the empty string as result. Previously the input message would be used. This behaviour can be reobtained by settin: defaultValueMethod="input".
  • Larva context has changed from '/larva' to '/iaf/larva'.
  • Larva default timeout has been decreased to 10s, and to 2s for local tests
  • The CMIS, Aspose and AWS modules have been added to our webapp artifact. The servlet endpoints are disabled by default.
    • In order to enable the CMIS endpoints either of the following properties must be set:
      servlet.AtomPub10.enabled=true,
      servlet.AtomPub11.enabled=true,
      servlet.WebServices10.enabled=true,
      servlet.WebServices11.enabled=true or
      servlet.BrowserBinding.enabled=true
  • Some API endpoints have been deprecated. Users are encouraged to change over to the new API, however in order to restore the deprecated functionality the property 'iaf-api.allowDeprecated' can be set to true.
  • ApiListener eTag generation has been disabled by default, set api.etag.enabled=true to enable default etag generation.
  • CleanupOldFilesPipe and UploadFilePipe have been removed.

v7.9.2

09 Apr 10:04
Compare
Choose a tag to compare

Patch Changelog: v7.9.1...v7.9.2 - Full Changelog: v7.8-RC1...v7.9.2, see Milestone 7.9.2 for more info.

Notice

  • When using log.HideRegex you may need to unescape XML characters. (see log4j4ibis.properties.)
  • Parameter handling for types Node and DomDoc is namespace aware, starting from version 7.6. To remove namespaces, use set attribute removeNamespaces="true"
  • FixedQuerySender allows duplicate parameter names ONLY if useNamedParams is explicitly set to false.
  • CleanupOldFilesPipe has been deprecated to be removed in version 8.0
  • When using CMIS, parameter userName has been renamed to username.

Highlights

Bugfixes
Performance enhancements
Security Updates

What's Changed

  • Use provided charset when converting to InputSource (#6357)
  • Fix Ibisstore table columns & link to errorstorage (#6465)
  • Use different defaults for Narayana JMS connection and session pools (#6501)
  • Fix duplicated messages in exception forwards (#6497)
  • Add feedback on JMS 'Send Message' success & fix TestServiceListener (#6520)
  • Update vulnerable dependencies (#6515)
  • Fix elementToMove when message goes to errorstorage (#6530)
  • Add log message when pipe is skipped (#6550)
  • Remove noise when message is stored in ErrorStorage (#6569)
  • Deprecate 'CleanupOldFilesPipe' (#6577)
  • Allow url encoded slash (#6611)
  • Allow custom headers in CMIS (#6407)

Non backwards compatible changes

  • IbisLocalSender no longer throws exceptions if exit.state="ERROR" situations, but provides forwardName 'exception'. The sessionKey 'originalResult' is no longer used.

  • For sending replies from the JmsListener to a fixed destination the attribute 'replyDestinationName' should be used instead of a nested JmsSender, to avoid clutter in the debugger reports

  • Session variable 'id' has been renamed 'mid', session variables 'messageId' and 'tcid' have been removed.

  • Session variable 'exitcode' has been renamed to 'exitCode'.

  • Duplicate detection might fail for messages received after an upgrade if the earlier version of the message was received before the upgrade.
    This is in cases where a received (JMS) correlationId is used to send a response.

  • The ZipWriterPipe and ZipWriterSender have undergone major changes. In order to help the upgrading processes they both have a backwardsCompatibility attribute to revert to the old behavior. Please migrate away from this as soon as possible.

    • The ZipWriterPipe with action=WRITE does no longer has its input as its response, but rather a null message. If necessary, the previous behavior can be obtained by setting preserveInput=true.
    • The ZipWriterSender with no content parameter does no longer has its input as its response, but rather a null message.
    • The ZipWriterPipe CLOSE action will now return the ZIP archive! It is no longer required to create a file first (with action OPEN) nor is it required to specify a filename on the OPEN action.
  • Parameter with an attribute value set to an empty string will have the empty string as result. Previously the input message would be used. This behaviour can be reobtained by settin: defaultValueMethod="input".

  • Larva context has changed from '/larva' to '/iaf/larva'.

  • Larva default timeout has been decreased to 10s, and to 2s for local tests

  • The CMIS, Aspose and AWS modules have been added to our webapp artifact. The servlet endpoints are disabled by default.

    • In order to enable the CMIS endpoints either of the following properties must be set:
      servlet.AtomPub10.enabled=true,
      servlet.AtomPub11.enabled=true,
      servlet.WebServices10.enabled=true,
      servlet.WebServices11.enabled=true or
      servlet.BrowserBinding.enabled=true
  • Some API endpoints have been deprecated. Users are encouraged to change over to the new API, however in order to restore the deprecated functionality the property 'iaf-api.allowDeprecated' can be set to true.

  • ApiListener eTag generation has been disabled by default, set api.etag.enabled=true to enable default etag generation.

v8.1.0-RC1

05 Apr 17:42
Compare
Choose a tag to compare
v8.1.0-RC1 Pre-release
Pre-release

Full Changelog: v8.0.0...v8.1.0-RC1, see Milestone 8.1 for more info.

Notice

  • Some (deprecated) functionality has permanently been removed!
  • Packages names have been changed, though you should not need to change your configurations, it's advised to do it ASAP.
  • We are now publishing our artifacts under our new org.frankframework groupid on Maven Central.
  • When using log.HideRegex you may need to unescape XML characters. (see log4j4ibis.properties.)
  • Parameter handling for types Node and DomDoc is namespace aware, starting from version 7.6. To remove namespaces, use set attribute removeNamespaces="true".
  • FixedQuerySender allows duplicate parameter names ONLY if useNamedParams is explicitly set to false.

Highlights

Bugfixes
Performance enhancements
Code Quality improvements
Cleanup Technical Debt
Remove (some) deprecated configuration attributes
Security Updates
Upgrade to JDK 17 and add JDK21 runtime support
Improve documentation

What's Changed

  • Remove leading comma in Access-Control-Allow-Methods response header (#6067)
  • Check multiple roles with IsUserInRolePipe (#6080)
  • Fix SoapWrapper should unwrap soap version 1.1 (#6092)
  • Provide SSL support for MailSender (#6066)
  • Increase max length of IBISCONFIG version column (#6023)
  • Remove bogus SoapWrapperPipe warnings about configured SoapVersion (#6100)
  • Restore forward name in ConfigurationException thrown by isUserInRolePipe (#6105)
  • Support multiple methods for a single ApiListener (#6074)
  • Close CMIS HTTP Client properly to avoid leaking threads (#6138 + #6180)
  • Add notFoundForwardName attribute to GetPrincipalPipe (#6073)
  • Add EscapePipe iterative escaping when using substringStart (#6077)
  • Implement method HEAD in ApiListener (#6062)
  • Add Connection Pool information (#6129)
  • Fix reading JMS BytesMessage data after extracting message properties (#6176)
  • Improve displaying duration of Larva tests (#6182)
  • Always close Samba2FileSystem diskShare, sessions and client (#6185)
  • Make all FileSystems behave more consistently (#6179)
  • Make MermaidFlowGenerator more resilient to class loading errors (#6198 + #6218)
  • Add StatusCode to BusExceptions (#6112)
  • Rename timeOut attribute to timeout (#6211)
  • Fix async processing of local-senders (#6213)
  • Add Connection Validation and Pool configuration (#6212)
  • Pad JwtPipe sharedSecret parameter when jwtAllowWeakSecrets is true (#6231)
  • Hide SMB logging by default (#6289)
  • Make LogContextPipe not throw errors when it has an error during execution (#6300)
  • Fix JS engine exit error by releasing the handle to result(#6301)
  • Replace FileViewerServlet for 'native bus' & api implementation (#6220)
  • Make query-timeout more consistently for all query senders (#6342)
  • Rename jdbc minPoolSize to minIdle (#6347)
  • Add ReconnectSenderWrapper (#6338)
  • Change compiler target to Java 17 and source to Java 11 (#6248)
  • Store message-context in ErrorStorage (#6353)
  • Reduce number of connections to JMS (#6369)
  • Support multiple Credential factories (#6354)
  • Load Testtool in custom Spring Context (#6367)
  • Add default property for forceMessageIdAsCorrelationId on RR EsbJmsListeners (#6376)
  • Rename TestTool to LarvaTool, to be more specific (#6378)
  • Fix Oauth2 exception flow (#6395)
  • Add FF API name and descriptions (#6403)
  • Fix Javadoc generation for Java 21 (#6408)
  • Pass "manual retry" flag to sub-adapter to bypass history-checking (#6410)
  • Create new FileSystem module (#6416)
  • Support Ladybug database storage (#6385)
  • Remove unnecessary information from GrayBox view (#6371)
  • Use provided charset when converting to InputSource (#6459)
  • Fix log4j2 configuration (#6446)
  • Metrics collector based on micrometer (#6396)
  • Styling/styling convention refactor (#6472)
  • Remove basic authentication support on ExchangeFileSystem (#6480)
  • Display MailSender physical destination data (host, port, TLS) (#6488)
  • Add ObfuscatePipe to Tibco module (#6484)
  • Remove '/*' from single endpoint ApiListener in physicalDestinationName (#6481)
  • Fix Test a Pipeline not reading zip entries in certain cases (#6486)
  • Fix Shared HTTP resources using the same HTTP context (#6490)
  • Fix duplicated messages in exception forwards (#6503)
  • Fix elementToMove preserve when message is moved to the ErrorStorage (#6531)
  • Add Kubernetes Module and CredentialFactory (#6521)
  • Improve Liquibase logging to System.out (#6532)
  • Only AOP when ladybug module is present (#6538)
  • Differentiate between nothing written and empty data in Ladybug (#6537)
  • Add Memcached authAlias property (#6539)
  • Add log message when pipe is skipped (#6552)
  • Fix add-opens classloading problem (#6561)
  • Remove noise when message is stored in ErrorStorage (#6571)
  • Remove CleanupOldFilesPipe and UploadFilePipe (#6576)
  • Do not add the Content-Type header when it already exists (#6580)
  • Add XML declaration feature on attribute omitXmlDeclaration (#6540)
  • Always close all SMB resources (#6591)

Frank!Console changes

  • Change adapter statistics & message store buttons to anchor tags (#6011)
  • Truncate connections columns & click to copy (#6013)
  • Improve pipes type & show slotid on status page (#6014)
  • Fix security roles in security items (#6081)
  • Fix wrong targetStates type breaking (error) message store in the console (#6132)
  • Open configuration of an adapter from the adapter status (#6107)
  • Add Log file sorting (#6120)
  • Add Sticky sidebar in Console (#6146)
  • Improve visibility of error message counters on status page (#6258)
  • Add inline image generation for mermaid flows (#6321)
  • Copy button for mermaid image (#6356)
  • Update Angular to v17 (#6359)
  • Display supported cyphers and protocols in Console (#6390)
  • Fix IBISSTORE table columns (#6457)
  • Fix log download & plain view (#6473)
  • Add dynamic drop-down to faster select an adapter in Test a Pipeline (#6482)
  • Selecting all messages will only select messages on screen (#6456)
  • Show toast on adapter reload (#6513)
  • Console iframe pages show pop out button (#6516)
  • Add feedback on JMS 'Send Message' success & fix TestServiceListener (#6517)
  • Add a role overview table (#6545)
  • Truncate adapter name and descriptions in select form elements (#6160)
  • Add a button to copy environment information (#6574)
  • Remove the redundant source (GitHub) link in the sidebar (#6579)
  • Fix browser not going back with back action on logging page (#6564)

Non backwards compatible changes

  • Larva httpRequest parameter is no longer supported
  • Json2XmlValidator input format session key prefix changed from "Json2XmlValidator.inputformat " to "Json2XmlValidator.inputFormat " (capital F)
  • property xml.namespaceAware.default=true by default. When set to false, parsing is done via a DOM source, or namespaces are removed before XSLT transformations.
  • IbisLocalSender no longer throws exceptions if exit.state="ERROR" situations, but provides forwardName 'exception'. The sessionKey 'originalResult' is no longer used.
  • For sending replies from the JmsListener to a fixed destination the attribute 'replyDestinationName' should be used instead of a nested JmsSender, to avoid clutter in the debugger reports
  • Session variable 'id' has been renamed 'mid', session variables 'messageId' and 'tcid' have been removed.
  • Session variable 'exitcode' has been renamed to 'exitCode'.
  • Duplicate detection might fail for messages received after an upgrade if the earlier version of the message was received before the upgrade.
    This is in cases where a received (JMS) correlationId is used to send a response.
  • The ZipWriterPipe and ZipWriterSender have undergone major changes. In order to help the upgrading processes they both have a backwardsCompatibility attribute to revert to the old behavior. Please migrate away from this as soon as possible.
    • The ZipWriterPipe with action=WRITE does no longer has its input as its response, but rather a null message. If necessary, the previous behavior can be obtained by setting preserveInput=true.
    • The ZipWriterSender with no content parameter does no longer has its input as its response, but rather a null message.
    • The ZipWriterPipe CLOSE action will now return the ZIP archive! It is no longer required to create a file first (with action OPEN) nor is it required to specify a filename on the OPEN action.
  • Parameter with an attribute value set to an empty string will have the empty string as result. Previously the input message would be used. This behaviour can be reobtained by settin: defaultValueMethod="input".
  • Larva context has changed from '/larva' to '/iaf/larva'.
  • Larva default timeout has been decreased to 10s, and to 2s for local tests
  • The CMIS, Aspose and AWS modules have been added to our webapp artifact. The servlet endpoints are disabled by default.
    • In order to enable the CMIS endpoints either of the following properties must be set:
      servlet.AtomPub10.enabled=true,
      servlet.AtomPub11.enabled=true,
      servlet.WebServices10.enabled=true,
      servlet.WebServices11.enabled=true or
      servlet.BrowserBinding.enabled=true
  • Some API endpoints have been deprecated. Users are encouraged to change over to the new API, however in order to restore the deprecated functionality the property 'iaf-api.allowDeprecated' can be set to true.
  • ApiListener eTag generation has been disabled by default, set api.etag.enabled=true to enable default etag generation.
  • CleanupOldFilesPipe and UploadFilePipe have been removed.