Metafacture Core 3.0.0
cboehme
released this
12 Dec 12:55
·
1032 commits
to master
since this release
This release is not compatible with the 2.x.x line of metafacture-core.
Changed Behaviour and Interfaces
- Formeta: Only accept allowed escape sequences (commit 162c1f1)
- Internal structure of the
Metamorph
classes changed:
Maven Coordinates
Metafacture core is available on Maven Central:
<dependency>
<groupId>org.culturegraph</groupId>
<artifactId>metafacture-core</artifactId>
<version>3.0.0</version>
</dependency>
All Changes
Bug Fixes
- Fixed #177: Condition was not reset when collector was reset (commit a20767d)
- Fixed #178: Reset conditions if sameEntity is true (commit ed9824c)
- Fix #179: Output message of wrapped exceptions (commit a55475c)
- Formeta: Escape leading and trailing whitespace (commit 432aca0)
- Fix #192: AbstractTripleSort has memory leak (commit dda2343)
- Improve error message when decoding CSV (commit 3d6fc92)
- Fix #204: High memory usage of Metamorph tests (commit 446d663)
New Features and Improvements
Metamorph
- Allow macros in
entity
statements - Added framework for introspecting the data processing within am Metamorph script
See commit 17710f3 for a brief introduction how to use this feature.- Refactored the code for building pipelines in Metamorph (commit 3eca5ba)
- Added source file location annotations to Metamorph DOM (commit c16833e)
- Refactored code for loading morph scripts (commit 498730b)
- Added source location infos to the morph pipeline (commit 7e766ad)
- Simplified from interface
NamedValueSource
(commit efb39d5) - Add a system for interception to Metamorph (commit 17710f3)
- Fix #205: Exception during Metamorph build (commit 3a509d9)
- Add reverse concatenation to concat in Metamorph (commit 048c6ba)
- Add new attributes era and removeLeadingZeros to DateFormat (commit cac5b94)
- Add sameEntity attribute to concat metamorph statement (commit a5d5023)
Stream Modules
- Logger and Exception catcher:
- Added new module for grouping Pica multiscript fields:
- Added an encoder for Marc21 records
The implementation implements the full ISO 2709:2008 standard. Only the Flux module is specific
for Marc21. Additional instances of the ISO 2709:2008 can therefore easily be added. - Add modules for reading and writing event streams from or into POJOs:
Miscellaneous
- Support for formeta as input and output format of testcases
- Adds reader for multiline formeta records
- Allow other data formats for result type than cg-xml:
- Added utility class for method argument checking
Code clean-up/improvements
- Minor change: removed duplicated code in
flush
method (commit b06b9a3) - Fixed
getStream
method to not create theFile
object twice (commit bbc0d63) - Fixed coding style (commit 8f3caeb)
- Added new test case for
occurrence
-function (commit a5df610) - Small code quality improvements (commit 914b58d)
- Minor code improvements in
PicaDecoder
(commit e2152f4, commit 72a75ba) - Improved code formatting and added documentation (commit 7931ba0)
- Removed old merge conflict in commit (commit fce4dbd)
- Improve code style (commit 56a7698)
- Cleanup: Remove dead code from
JndiSqlMap
(commit 34cffed) - Relax return-count check (commit 7c1612d)
- Add comments and remove trailing whitespace (commit 97a0d54)
- Improve
StringUtils.copyToBuffer
(commit 16c3bcb) - Update junit related PMD rules (commit 016c14d)
- Exclude check for boolean inversion from PMD (commit 973fa51)