Added the ezcBasePersistable interface that can be used to ensure that the
object implementing this interface can be used with PersistentObject and
Search.
Implemented issue #8529: Added a by-reference argument to
ezcBaseFile::findRecursive that returns statistsics (count and total size)
of all files that are returned by this function.
Implemented issue #11506: Added the static method
ezcBase::getInstallationPath().
Implemented issue #12694: replace reflection test for class type with spl
function.
Fixed issue #13053: Fixed calculation of remaining life time in all storage
classes and with that resolved the strange behavior in the Memcach storage.
Fixed issue #13112: Corrected the tutorial text.
Fixed issue #13119: Replaced references to /tmp with createTempDir() calls.
Fixed issue #12993: Hierarchical caching does not prune items in the correct
situation. Note that the internal structure of the stack meta data changed
drastically with this fix. You need to reset() the whole storage after this
update.
Implemented issue #12694: replace reflection test for class type with spl
function.
Implemented issue #12911: Added the hasGroup() and getSettingsInGroup()
methods to ezcConfigurationManager to allow for fetching of all settings
in a group. (Patch by James Pic)
Implemented issue #10765: ezcConsoleQuestionDialog::YesNoQuestion does not
accept "Yes" or "yes" / "no", "No" as valid answer. A new validator
(ezcConsoleQuestionMappingValidator) was introduced for this, which extends
ezcConsoleQuestionCollectionValidator and is now used for the yes-no-question.
Implemented issue #10791: ezcConsoleTable should implement __toString.
Implemented issue #10838: ezcConsoleOutputFormats should implement Iterator
and Countable.
Fixed issue #12561: getSynopsis() bugs when at least 2 options don't have
short-names.
Fixed issue #12623: console menu dialog handles unexisting options wrong.
Fixed issue #12624: Wrong text in documentation of eZConsoleDialogViewer.
Fixed issue #12625: console tools lacks documentation on targets.
Fixed issue #12626: Type "ta" in ezconsoleoutput documentation.
Fixed issue #12628: Missing space in ezcConsoleInput::getHelp API doc.
Fixed issue #12629: Method name not replaced with link in
ezcConsoleMenuDialog::display() API doc.
Fixed issue #12630: Add link to ezcDialogNoValidResultException in
ezcConsoleDialog::getResult() API doc.
Fxied issue #12636: ezcConsoleOutput->outputLine() prints EOL always to
STDOUT instead of the defined target.
Changed the class name ezcDbSchemaNonUniqueIndexNameValidator to
ezcDbSchemaUniqueIndexNameValidator.
Changed ezcDbSchemaDbReader back to an interface, and created a common SQL
reader class that implements the common methods.
Moved ezcDbSchema*Reader/getReaderType() to the new common SQL reader class
ezcDbSchemaCommonSqlReader.
Created a common method ezcDbSchemaCommonSqlReader::processSchema() that
iterates over all the tables and gathers information about them and their
indexes.
Implemented enhancement #10701: Getting a readable backtrace. The
ezcDebug->log() method now allows you to selectively add a stack trace to
debug log messages. The new ezcDebugOptions class allows to globally switch
on stack traces for all log messages.
Fixed issue #12427: Changed output rendering of the debug formatter to not
include a stylesheet by default, but instead the formatter now includes easy
overridable CSS classes.
Fixed issue #12592: New thumbnail filter. Documentation about the scale()
filter has been added to the thumbnail filters.
Fixed issue #12667: ezcImageConverter doesn't pass saveOptions to
ezcImageTransformation.
Fixed issue #12671: Unhandled exception in ezcImageTransformation. Checks to
avoid double throwing of exceptions have been introduced. Additional
parameter checks are performed.
Implemented enhancement #10151: Improved Database and PersistentObject
datatype support (especially binary data). The object definitions allow to
specify the datatype of the database column assigned to a property.
Implemented enhancement #10373: Several relations to the same table for
PersistentObject.
Implemented enhancement #10727: Improved error messages for PersistentObject
with ManualGenerator.
Fixed issue #10205: Binding variables with an undeclared var doesn't throw
an exception. If getState() on a persistent object does not return an array
an exception is thrown now.
Fixed issue #12471: PersistentObject misses support for boolean datatype.
Changed the way how ezcSearchQueryBuilder works. You will now have to
run parseSearchQuery() instead of just passing the query object, query
string and fields to the constructor.
Changed the nested array result for documents into a structure where each
ezcSearchResult contains an array of ezcSearchResultDocument objects, which
on its turn contain the score, highlighting and document itself.
Changed the default limit fo returned search results for the Solr handler
from 10 to unlimited (well, 999999).
Made the TemplateObject available in CustomBlocks. Thanks to Felix Weis for
the patch.
Fixed issue #11228: Cannot supply an absolute Win32-Path to $t->process().
Better error message when an external (use) variable is not given.
Fixed issue #12289: String function str_last_index documented, but not
defined.
Fixed issue #12323: Using {cache_template} inside a block will now throw an
exception.
Fixed issue #11056:
{dynamic} is only allowed after {cache_template} or in {cache_block}.
corrected documentation in regard to TTL vs. ttl.
fixed the cache file names in Windows (replace '' with '-').
Fixed issue #12368: ezcTemplateConfiguration::addExtension() did not
check for invalid arguments correctly.
Implemented issue #10940: Possibility to set default permissions to
the compiled templates and generated cache files, by using the 0777 mode for
creating the directories in which the compiled templates are stored. This
mode is still modified by the umask.
Implemented issue #9973: Added a translation compiler to convert a string in
the original language, to the translated one without substituting parameters.
This is to have translation support for the Template component.
Added the capture() template block to collect a part of a template into a
variable.
Added support for variable length argument lists for custom functions
through the variableArgumentList element of the
ezcTemplateCustomFunctionDefinition.
Added support for additional parameters for custom blocks through the
excessParameters element of the ezcTemplateCustomBlockDefinition.
Renamed the private ezcTranslation->callback_compile() and
ezcTranslation->parameter_callback_compile() to
ezcTranslation->callbackCompile() and
ezcTranslation->parameterCallbackCompile().
Implemented issue #9973: Added a translation compiler to convert a string in
the original language, to the translated one without substituting
parameters. This is to have translation support for the Template
component.
Added support for the new location element in Linguist version 1.1 files.
Added support for the keepObsolete option for the TsBackend. With this
enabled, the obsolete translations are not dropped while reading contexts.
This is both useful for testing as well as for manipulating TS files.
Implemented issue #10941: Support for the Cancel Case workflow pattern. The
execution of a workflow can now be cancelled by either reaching a
ezcWorkflowNodeCancel node or by calling the cancel() node on an
ezcWorkflowExecution object. In either case, the execution is immediately
halted, already activated nodes will not be executed.
Implemented issue #12404: Separate file i/o from XML processing in
ezcWorkflowDefinitionStorageXml.
Implemented a plugin system that allows plugin developers to hook into
various extension points in the workflow execution engine.
The visualization visitor can now show the current state of a workflow in
execution. This includes the highlighting of activated nodes as well as the
contents of the workflow variables.
The new execution visualizer plugin (ezcWorkflowExecutionVisualizerPlugin)
uses the visualization visitor to create visualizations of each step of a
workflow execution.