[Metafacture] New metafacture-core 2.0.0 release

Christoph Böhme christoph at b3e.net
Tue Mar 11 21:38:36 CET 2014


Hi all,

last week a new version of metafacture-core was released. We are now at
version 2.0.0. The change in the major position of the version number
reflects the fact that this release is not compatible with the 1.x.x
line of metafacture-core.

Incompatible changes

* Removed flux executable and runtime dependencies slf4j-log4j and
  mysql jdbc driver from metafacture-core. The flux command line
  application is now maintained in the culturegraph/metafacture-runner
  package (see issues #131, #130 and #168 and commits 41329a7 and
  ecdafbc).

* Removed eclipse project files from repository (see commit 27c2390)

* Reimplemented PicaDecoder: The records are now properly parsed. The
  new implementation does not do special processing of subfield "S"
  like the old class did. Additionally, multi-line pica records are
  supported (see issues #51, #109, #112, #137 and #139 and commits
  3c75b41, 9e736df, 4483e5e, 89119a6, ae5a08a, c0eeb04, ec81279,
  bd30086, 5c8002e)

* Renamed the `configure` method in `SimpleXmlWriter` (now
  `SimplXmlEncoder`) into `setNamespaces` to reflect what its actually
  doing (see issue #99)

* Renamed `org.culturegraph.mf.stream.sink.SimpleXmlWriter` to
  `org.culturegraph.mf.stream.converter.xml.SimpleXmlEncoder` (see
  issue #100)

* The receiver interfaces do no longer extend `LifeCycle` directly but
  extend an intermediate `Receiver` interface (see commit 7065cc0)


New features & improvements

* Updated dependencies to latest version (see commit 3ab7331)

* Modified `IdChangePipe` to accept nested literals as ids (see commit
  e81b230)

* Modified the `Counter` module to allow pipe lining (see commit
  43c52c3)

* Added pretty printing and configurable character escapes to the
  `JsonEncoder` (see commit 8cb7a08)

* Added a dateformat function to Metamorph for converting various date
  formats (see commit 6b9b7e1)

* Added a Metamorph function for generating timestamps (see commit
  82be110)

* Added triple-to-stream module which converts triples into a stream
  (without collecting them into records as collect-triples does (see
  commit 55fc144)

* Improvements to `LineSplitter`: Added flux-annotations to
  `LineSplitter` and added it to flux commands. (see commit 34aed80)

* Added `StreamExceptionCatcher` module which is the stream counterpart
  of `ObjectExceptionCatcher`(see commit 59ff596)


Bug fixes

* Generate Flux parser and lexer as part of the build cycle (see commit
  a7b4d78)

* The flux lexer was failing on files which had an empty comment not
  followed by a new line as their last line (see issue #147)

* Place `OreAggregationAdder` and its test in same package (see issue
  #60)

* Adds the ability to escape the @-character in Metamorph names (see
  commit 0b470e5)

* Replaced binary or with boolean or in `StreamLiteralFormatter` (see
  commit bbe340c)

* Added fallbacks to `flux.sh` in case `realpath` is not available (see
  commit b1e1172)

* Moved the logic for creating a buffer to allow direct access to the
  characters in a string into the `StringUtil` class. The code was
  fixed to always create a buffer that is large enough (see issue #161)

* `AbstractTripleSort` threw `NullPointerExceptions` if it received a
  "memoryLow" message before the first record was processed (see issue
  #160)

Best,
Christoph



More information about the Metafacture mailing list