Carrot2 4.2.x

Release history for Carrot2 4.2.x and bugfix releases.

Version 4.2.1

This is a bugfix release fixing DCS launch scripts.

Bug fixes

DCS scripts

A regression bug introduced in v4.2.0 prevents the dcs from starting (SCRIPT_HOME variable set instead of DCS_HOME). Affects Linux script only.

A workaround of passing an explicit --home parameter can be used for version 4.2.0.

#102

Version 4.2.0

This release enhances glob dictionaries with new wildcard operators, brings GUI cleanups and improvements to the Workbench and fixes bugs in the (low-level) algorithm loader API.

This release is not a drop-in replacement for Carrot2 4.1.x: if you have any custom language components (dictionaries) they may need to be reviewed because the behavior of the glob matcher and regular expression matcher have changed.

New features

Improvements to glob dictionaries

The glob matcher dictionary has been rewritten and improved to support more operators (one-or-more, one, possessive and reluctant matches).

This feature does change the API (see API changes below).

#94
DCS --pid-file option

The DCS launcher now supports the --pid-file option which emits the process PID. This option can be useful for various service wrappers.

#82
DCS --idle-time option

The DCS launcher now supports the --idle-time option which sets the default server side socket idle time expiry.

#99

API changes

Glob matcher syntax changes

The new syntax added to the glob matcher dictionary may cause small incompatibilities with any previously defined dictionaries. The single * operator is now possessive (matches as many tokens as possible) and the previous behavior is now available under a reluctant variant of: *?.

#94
Regular expression matchers match any substring

The regular expression dictionary now triggers on any sub-sequence match (not entire label match). This behavior was actually documented and was the default in Carrot2 release prior to 2.0.0 so it's a regression.

If you need to revert to the previous behavior, add start and end requirement directly to your regular expressions: ^(previous-regexp)$.

#81
dcs.sh is now dcs

Bash script name for launching the DCS was renamed from dcs.sh to dcs.

#98

Improvements

Workbench improvements

Numerous workbench user interface improvements and tweaks have been made.

#75 #76 #84

Bug fixes

LanguageComponentsLoader

LanguageComponentsLoader now allows loading optional components for algorithms if providers support them.

#85

Infrastructure