(PW-2005) Enhanced the write modes APPEND and UPDATE for MT, to enable updates of fields regardless of the creation order
10.1.10 - August 2024
Added transformations defaultStringIfPresent and getCountryDescription
Enhanced transformation logicalTerminalAddress
Revamped the JsonWriter implementation (using XML as intermediate internal representation)
10.1.9 - July 2024
(PW-1792) Added a camt.050 message builder utility with initial support for generic ISO 20022, T2 and SIC
(PW-1792) Added a camt.053 message builder utility with initial support for generic ISO 20022, T2 and CBPR+
(PW-1792) Added a pacs.008 message builder utility with initial support for generic ISO 20022, CBPR+, T2 and SIC
10.1.8 - June 2024
(PW-1792) Added a pacs.009 message builder utility with initial support for generic ISO 20022, CBPR+, T2 and SIC
(PW-1889) Added API in the MtWriter, MxWriter and XmlWriter to check if a given selector already exists in the written content
10.1.7 - June 2024
Added a convenient write method with default write mode in the MessageWriter interface
10.1.6 - April 2024
(PW-1833) Fixed base64 encoding handling for jakarta.xml.bind-api:4.0.2 compatibility
10.1.5 - December 2023
Added schema paths validation for source and target selectors in the conversion from or to MX
10.1.4 - October 2023
(PW-1604) Added concat function to MatrixReader in order to allow retrieving multiples source value during foreach iterations
10.1.3 - October 2023
(PW-1642) Changed the mapping validator to enable literal() in the source selector, this makes sense when combined with a defaultString(value) transformation
10.1.2 - September 2023
(PW-1118) Changed MtReader in order to include null value items in readMany results when valueSelector is used
10.1.1 - July 2023
Enhancements to fully support propagation of foreach indexes into the target selectors, including Line, such asf A[2]/B[{n}]/B1[3]/23A[{m}]/Line[{o}]
10.1.0 - June 2023
Migration to Java 11
Migration to Jakarta EE 10
9.4.0 - May 2023
SWIFT Standard release update 2023 (live 19 November 2023)
Yearly revision of deprecation phase (see https://dev.prowidesoftware.com/SRU2022/getting-started/deprecation/)
9.3.14 - May 2023
(PW-1370) Fixed the MxReader so that it can properly extract content from /AppHdr and /Document paths in conversions from MX
(PW-1232) Changed the CSV writer to be more lenient; enabling empty rows, auto extend by default when using addRows, and single separator in the whole CSV
Internal implementation enhancement
9.3.13 - April 2023
Refactored the MappingTable spreadsheet loader to use the new MappingTableExcelLoader
Refactored the MappingValidator in order to optimize the Rules Parsing, Validation and Process steps
9.3.12 - March 2023
Fixed transformation toTimeZone when both source and target zone identifiers are used as parameters
9.3.11 - March 2023
Internal implementation enhancement in the SETUP commands API
9.3.10 - February 2023
(PW-1174) Added SETUP function to indicate the appHdrType for MX messages in the externalized configuration (spreadsheet or DB)
Added support for Zone Ids such as "America/Argentina" to the offset parameters in the transformation functions
9.3.9 - February 2023
Added transformation now() to get the current datetime in local timezone, formatted as yyyy-MM-dd'T'HHss.SSSZ (ISO 8601)
Added transformation now(utcOffset)to get the current datetime in the specified time-zone, formatted as yyyy-MM-dd'T'HHss.SSSZ (ISO 8601)
Added transformation uetr() to generates a new random UETR (unique end to end reference) used in both MT and ISO 20022 messages
Added transformation toTimeZone(dateTimeFormat, targetOffset) to transform a given datetime in local time and convert it to the target UTC timezone
Added transformation toTimeZone(dateTimeFormat, sourceOffset, targetOffset) to transform an input datetime from a specific UTC timezone to another
MtPath enhancement to enable using component names (labels) in the selector expressions instead of component numbers
9.3.8 - January 2023
Enhanced selector validation, checking that value selectors (secondary selector in expression) do not contain variables
Added support for JSON as source and target formats for the conversion
9.3.7 - December 2022
(PW-1118) minor fixes and added "@main" to MtReader to work with main message (when processing an attachment)
Minor internal code enhancements
Fixed error text formatting in transformations validation
9.3.6 - December 2022
(PW-1105) Added support in the CSV writer setup to pass "\t" as parameter to require the tab character as separator
Added a constraint for the CsvFieldsDef to match the pattern ([A-Za-z0-9_]*) and thus avoid mapping selector parsing issues
9.3.5 - November 2022
Updated Apache Commons Text dependency to 1.10 to fix reported CVE
Added SETUP functions to indicate the source and target formats in the externalized configuration (spreadsheet or DB)
Added SETUP functions to indicate the target MT type or target MX type in the externalized configuration (spreadsheet or DB)
Added SETUP function to set up the mapping name in the externalized configuration (spreadsheet or DB)
Added support in the MtWriter to generate automatically the field 15 in the sequences separated by 15a
9.3.4 - October 2022
Added API in the MxWriter to configure the specific AppHdr version to use when creating MX messages as output
Set the default AppHdr version when creating MX messages to ISO Business Application Header v2
Added ifElse power function to facilitate conditional mappings
9.3.3 - October 2022
(PW-1064) Fallback option to system classloader in resource loading
9.3.2 - September 2022
Added transformation functions logicalTerminalAddress, logicalTerminalAddressSend and logicalTerminalAddressReceive
Added transformation function sum
9.3.1 - August 2022
(PW-1010) Added an automatic sanitization when converting into MT, to fix start of line characters and some missing components
9.3.0 - May 2022
SWIFT Standard release update 2022 (live 20 November 2022)
Yearly revision of deprecation phase (see http://www.prowidesoftware.com/resources/deprecation-policy)
9.2.6 - May 2022
(PW-813) Internal enhancement to fix CVE
Deprecation API review
9.2.5 - April 2022
Minor fix in the database loader, to set the table name with the configuration name parameter
Fixed mapping table validation when there are SETUP commands in the mappings
Minor internal code enhancements
Prowide Integrator SDK and Prowide Core updates
9.2.4 - January 2022
Prowide Integrator SDK and Prowide Core updates
9.2.3 - December 2021
Added com.prowidesoftware.integrator.myformat as automatic module name in the MANIFEST for JPMS support
9.2.2 - June 2021
Added support to read and write block 5 fields with selectors such as "b5/CHK"
9.2.1 - June 2021
(PW-527) Additional change in the XML and MX reader to trim indentation and trailing spaces from elements while preserving line feeds
(PW-527) Changed the XML and MX reader to preserve whitespaces from elements content
(PW-527) Added transformation functions wrapLinesPreserve and wrapLinesPreservePrepend
9.2.0 - May 2021
SWIFT Standard release update 2021 (live 21 November 2021)
Yearly revision of deprecation phase (see http://www.prowidesoftware.com/resources/deprecation-policy)
9.1.8 - April 2021
(PW-502) Added MappingTableDatabaseLoader for more flexible data base access and querying when load the mappings
9.1.7 - March 2021
(PW-480) Fixed mapping into block 2 using whole block value as input data
9.1.6 - February 2021
Added validation of the new SETUP commands: separator, smartQuotes, smartEscapes, addFieldNames and columnNames
9.1.5 - January 2021
Fixed CSV writer with APPEND mode
Added SETUP commands to the externalized mapping into CSV: separator, smartQuotes, smartEscapes, addFieldNames and columnNames
9.1.4 - January 2021
Fixed semantic of the MtReader to return null content if the MT selector targets a missing field component
Fixed transformation "rightPad"
Fixed transformation "formatDecimal" when input number contains decimal separator and no decimal digits (valid case in MT amounts)
Fixed transformation "fixed" to avoud setting the default value if the input content is null (not found in source)
Fixed transformations "append", "prepend", "replaceIfEquals" and "wrap" to avoid generating value if input is null
Fixed transformations "indexOf", "indexOfIgnoreCase", "lastIndexOf" and "lastIndexOfIgnoreCase" when found substring is at index 0
Enhanced number parse exception handling in transformations using or expecting integers and decimal numbers
9.1.3 - December 2020
License check review
9.1.2 - November 2020
(CR-27) Added support for forced double quotes for CSVWriter
(CR-27) Added support for disable smart escaping (ex: comma inside double quotes are not escaped) for CSVWriter
(CR-27) Added support to generate header column with field names for CSVWriter
(CR-29) Added support in the MtWriter to create internal loop (sequences without 16R and 16S boundary) present for example in MT940
(CR-28) Added support in the MtWriter to create block 1 and block 2 from whole value strings (not targeting individual fields)
(CR-28) Added support in the MtReader to retrieve the whole block 1 or block 2 value with selectors "b1" and "b2"
Minor fix in formatDecimal transformation when default locale has comma for decimal separator
9.1.1 - September 2020
(PW-334) Added backward compatibility support for custom("MyCustomTransformer") in the mapping transformations
9.1.0 - May 2020
SWIFT Standard release update 2020 (live 22 November 2020)
Yearly revision of deprecation phase (see http://www.prowidesoftware.com/resources/deprecation-policy)
9.0.1 - May 2020
Internal implementation changes to the use the new AppHdr model in the SDK
9.0.0 - May 2020
MyFormat module extracted to its own jar in the distribution, with its own version from now on
8.0.7 - May 2020
Added a CsvReader constructor parsing a whole csv where the first row is used as field definition for the mappings
Fixed index in CsvFieldsDef constructor to be zero-based instead of one-based
8.0.6 - February 2020
(PW-237) Added ifMatches and IfNotMatches power functions to facilitate conditional mappings
8.0.3 - September 2019
(PW-179) Added support for custom transformations in externalized mapping tables
Added support for header rows skip configuration in CsvReader
8.0.2 - August 2019
Added support in the CsvFileReader for the header offset parameter, rows are now skipped directly by the Iterator
8.0.1 - July 2019
Fixed XML and MX writer to avoid creating empty elements if the source content is null
Fixed bug in MX/XML writer when creating more than 100 target elements in a rule with variables
Added support for foreach when converting from MT
8.0.0 - May 2019
JRE requirement increased to Java 1.8
SWIFT Standard release update 2019 (live 17 November 2019)
Yearly revision of deprecation phase (see http://www.prowidesoftware.com/resources/deprecation-policy)
7.10.9 - May 2019
Enhanced selectors for CSV with support for repetition, variables and filters.
Added support for FIXED-LENGTH files as source and target message format.
Added API to load the mappings from a database, providing a data source or a context name for JNDI lookup
Added automatic sequence creation in conversions to MT, for example /E/E1/95Q will create E and E1 boundary fields
Fixed block 3 fields order when target is MT and the writer has a pre-filled block 3
Added CONCAT function in source selector to combine the result of a list of selectors in a single rule
Added wrapLinesPrepend transformation to split content in to lines, with both fixed length and a prefix
Added support for FOREACH in the mappings to process a list of source elements in a single rule
Added support for parameterized predicates in the selector to map repetitions from source to target message
Added the token LITERAL as alternative to indicate a source content is a plain literal instead of a selector
Enhanced reporting in the mapping rules validation, detail message when the selectors are invalid