tribefire 2.0 - 25/02/2020
On this page
Announcements
- In case you are still using cartridges: Cartridges always must be re-built against the release repository.
General
- New Service Call
GetAssets
: Returns a collection of assets based on the provided filter criteria of this request. See GetAssets Documentation - Control Center Adaptions:
- Added Checks and Modules menu items
- Removed Action Processors menu item
- Removed Generate Key Pair menu item from Cartridge section
Setup Processing
- Fixed
CATALINA_PID
path to support portability.
GmCore
- PersistenceGmSession - improved error messages.
- StaxMarshaller - fixed escaping problem in id attribute
com.braintribe.gm:time-model#1.0
has been extended with a number of valueable static and default methods that allow to conveniently parse, create, stringify, compare, add, convert the matters of time.- Introduced annotation
@GwtIncompatible
incom.braintribe.gm:gm-core-api
. Any class, method or field with this annotation is ignored by the GWT compiler. - Fixed detection if zip is an exchange package to not check for the mimeType as the mime type detections seems to differ per OS.
- When the GmWebRpcClient receives a non-200 response, it will now throw the new HttpCommunicationException (a subclass of the previously used CommunicationException) to hold the actual status code.
- Added LoggingAsyncCallback, a default AsyncCallback handler that just logs the result or the failure. This is a convenience when you're not interested in the actual outcome of the async call.
- Fixed the MILLISECONDS_PER_YEAR property of Numbers as it overflowed with an Integer.
- Added convenience methods for parsing time spans in DateTools. This also supports larger time units (e.g., month, year).
- Increased the buffer size from 4k to 64k in IOTools.pump(InputStream,OutputStream)
- Added log preferences to the HttpException so that the issuer of the exception can set log levels. This is interpreted by the StandardExceptionHandler.
- Added support for re-authentication of stale user sessions in BasicRemoteGmSessionFactory.
- Introduced support for coalescing worker jobs (i.e., they will no be triggered a second time while it is still running).
- Fixed a missing stream close in the ToResourceWriter class.
- Added support for generic JKWS (JSON Web Key Set) provider.
- Added support for Amazon AWS JWT tokens (issued by AWS Cognito).
- Added Around-/Pre-/Post-ScriptProcessors for running scripts.
- DiagnosticPackage now contains setup assets information (as JSON), configuration folder, access data folder of cortex.
- About page has been extended to show information about messaging, leadership- and lock-manager.
- JDBC DCSA has been extended to keep the original filename and mime type of resources stored in BLOBs.
- Fixed a bug JdbcDcsaStorage where a rollback was tried even if there was no DB connection available.
- Added deletion of unused folders in FileSystemBinaryProcessor (when a Resource gets deleted).
- Setting the domainId of CortexRequest by default to 'cortex'.
- Increased the time interval the license is checked from 10min to once per day.
- AbstractDocument of the document-model now also extends HasAcl (as well as Attachment of the attachment-model).
- Fixed a bug that would assign leadership to a worker that already acted as a leader.
- Added support for re-authorization in streaming (in RemoteResourceAccessFactory).
Wire
- WireContext
- fixed contract lookup when contract is resolved via a parent WireContext
- Added a way to build a WireContext based on multiple WireModules instead of only one
SmoodAccess
- Normalized
queryProperty()
evaluation to be consistent with other accesses. As a result, conditions on entity properties are possible. ORDER BY
aggregate function now works.GMQL
- changed order toGROUP BY
, thenORDER BY
.- Support for
HAVING
clause.
CSA
- (D)CSA bootstrap speed optimized.
DDSA
Introduced new ServiceRequestContext
- HttpStatusCodeNotification
- which can enforce a custom HTTP response code when a service processor is called via our /api/v1
REST endpoint.
Tribefire ControlCenter / Explorer
- Implemented Open Action & GotoModelPath Command
- Added Outline metadata support within the WebReader
- Preparation for Inline support for collection properties
- Now using script editor directly within the GIMADialog
- Added custom params to metadata of document requests
- Bug Fixes, such as: correctly displaying icons in the home panel; fixed shift selection within the ThumbnailPanel; fixed blurry icons; fixed loading of absent data within the ThumbnailPanel; fixed buttons and other problems within the WebReader; fixed map related manipulation handling; fixed column sorting within the SelectionResultPanel; fixed cache for SelectList metadata; fixed scroll issues in WebReader's comments; fixed problem when uploading via dnd; fixed enum set and validation log within the GIMADialog.
Modules
ResourceProcessingContract
introduced,TransientResourcesContract
deprecated.- Deployables in cortex that come via module initializers have their
module
assigned automatically, if possible.
SecurityAspect
- ACL - also checking the single entity property on PropertyQuery.
Hibernate Access
- Fixing bug when manually assigning partition.
- CompositeId - fixing entity deletion.
- Support for
HAVING
clause.
Tribefire Core Functionalities
- AssemblyImport / CSA persistence - avoiding to track manipulations with no effect (ones assigning the already assigned value)
- Additionally to our Swagger#2.0 API exposure there are now similar endpoints that expose the same tribefire APIs as OpenAPI#3.0 documents. They can be found at
/openapi/document/
or/openapi/ui
and are also linked to from the landing page.tribefire.cortex:openapi-v3-setup
must be part of your setup to include this functionality, which anyway is part of the standard setup.
Conversion Module
- Setting state 'pending' for sub-jobs so that the user knows the actual state.
- Activated callbacks even if percentage is still 0 so that the client gets the information that the job is still being processed.
- Added support for custom font folders that will be used by the Aspose library.
- Added word-fonts-upload REST endpoint to upload new fonts at runtime.
- Added REST endpoints word-fonts and word-fonts-substitution-add to get/manipulate font substitutions.
- Added service request to analyze PDF files in depth (number of pages, average objects per page, median object per page)
- Added possibility to provide targetExtension and targetMimetype and checking if they are actually matching.
- Fixed support for non-UTF-8 encoded text files.
- Reworked cloning of Jobs to improve multi-threading of the Jobs.
- Added support for creating a table of contents (TOC) from Word files and PDF files.
- Including TOC in the creation of documents.
- Fixed a thread starvation problem by introducing another threadpool for secondary tasks.
- Added support for excluding folders from cleanup.
- Deleting old files rather based on the last modified time instead of the creation time.
Documents Module
- Reworked the retry mechanism to reflect on the Exception / reasonCode provided by the Conversion service.
- Fixed a bug that a Documents callback did not occur in the case of a Conversion error.
- Added possibility for the client to send an alternative username
- Worked on the Documents services for querying/manipulating attachments / highlights.
Elastic Module
- Removed fuzzy search as it confuses people.
- Reworked fulltext search to search for all words if multiple words are provided (used to search for any word before).
- Added support for quotes to search for exact phrases.
- When the indexing workers are blocked for any reason, the fulltext aspect gets no longer blocked by a full indexing queue.
Shiro Module
- Added support for AWS Cognito OAuth2.
ActiveMQ Module
- Added access to low-level Broker service to get statistics in Health page.
GCP Module
- Switched to the better Tika MIME type detector.
AWS Module
- Switched to the better Tika MIME type detector.
- Using default region client if selected region is not supported directly.
- Added support for parallel uploads.
- Added support for multiple regions.