tribefire 2.1 - 25/06/2021
On this page
- Cartridges
- Tribefire Standard Setup
- New Client Assets
- Branched Artifact Groups
- Artifact cleanup
- Asset Deprecation
- Introduction of Reason And Maybe
- Scripted Processors
- Threshold Persistence and Resource Aware Marshalling
- Spreadsheet Exchange
- Message Marshaller Removal
- HTML Marshaller
- Tribefire Modules
- Tribefire Explorer
- Hibernate Access
- Job Scheduling
- Setup Processing
- Home Servlet
Cartridges
In case you are still using cartridges: Cartridges always must be re-built against the release repository.
Tribefire Standard Setup
Many tribefire projects depend on tribefire.cortex.assets.env:tribefire-env-aware-standard-aggregator#2.0 to get standard tribefire components such tribefire-web-platform or tribefire-explorer. Artifact tribefire-env-aware-standard-aggregator has been removed with this release. Its replacement is tribefire.setup.classic.env:env-aware-standard-setup#2.1. Note that the version will be increased with each release, i.e. tribefire release 2.2 will have env-aware-standard-setup#2.2.
In the same way tribefire.cortex.assets.env:tribefire-env-aware-web-platform-aggregator#2.0 has been replaced with tribefire.setup.classic.env:env-aware-web-platform-setup#2.1.
Also, added workbench-aggregator bundling all system workbench assets. The initial-aggregator points to workbench-aggregator now.
New Client Assets
Our client assets have been moved to new groups:
- Explorer: tribefire.app.explorer
- Modeler: tribefire.app.modeler
- Web Reader: tribefire.app.web-reader
Note that there is no asset for the Control Center anymore, i.e. tribefire.cortex.controlcenter has not been moved. That's because Explorer and Control Center have been merged into a single component. The separate Control Center asset is therefore just not needed anymore.
Branched Artifact Groups
Several artifact groups are now being branched with each release, which means the respective major.minor versions change. Please find below the list of groups and the respective versions that belong to this tribefire release.
Standard Setups
- tribefire.setup.classic 2.1
- tribefire.setup.classic.env 2.1
Clients
- tribefire.app.explorer 2.1
- tribefire.app.modeler 2.1
- tribefire.app.web-reader 2.1
Extensions
- tribefire.extension.activemq 2.2
- tribefire.extension.audit 1.0
- tribefire.extension.aws 2.5
- tribefire.extension.conversion 2.5
- tribefire.extension.demo 2.1
- tribefire.extension.documents 2.5
- tribefire.extension.elastic 5.1
- tribefire.extension.email 3.0
- tribefire.extension.etcd 1.1
- tribefire.extension.gcp 2.5
- tribefire.extension.html-marshalling 2.0
- tribefire.extension.jdbcdriver 2.1
- tribefire.extension.js 2.1
- tribefire.extension.kubernetes 2.1
- tribefire.extension.ldap 4.1
- tribefire.extension.shiro 3.1
- tribefire.extension.simple 2.1
- tribefire.extension.spreadsheet 1.0
- tribefire.extension.tracing 1.0
- tribefire.extension.vitals.jdbc 2.1
- tribefire.extension.wopi 2.4
Artifact cleanup
- tirbefire.extension.js:js-deployment-modelnow only contains a- UxModule, while- JsUxComponentand related entities were moved to- tirbefire.extension.js:js-ux-deployment-model. You might need to update a dependency if you'll encounter an error that- JsUxComponentcannot be resolved.
Asset Deprecation
Introduced the possibility to deprecate assets. Documentation can be found here.
Introduction of Reason And Maybe
In order to have controlled error handling in opposition to uncontrolled exception throwing the concept of Reasoning was introduced.
- Introduction of reason modelling
- com.braintribe.gm:reason-model
- com.braintribe.gm:essential-reason-model
 
- Introduction of Maybe<T>as generics class that transports either complete values or a Reason in case of a empty or incomplete values.
- Support of reasoning based on Maybe<T>in DDSA- ReasonedServiceProcessor
- ReasonedServicePreProcessor
- ReasonedServiceAroundProcessor
- ReasonedServicePostProcessor
- ReasonedAccessRequestProcessor
- ReasonedStatefulProcessor
- DispatchConfiguration.registerReasoned()
- EvalContex.getReasoned()
 
- Remote Evaluation Support
- Introduction of Unsatisfiedas a new sub type ofServiceResultto communicate Reasons an incomplete values to a remote caller
- Implementation support in RPC
- webRPC Server/Client/GWT-Client
- mqRPC Server/Client
- dmbRPC Server/Client
- Support reasoning in DDRA (REST API level)
- DDSA Evaluation done with EvalContext.getReasoned()- HttpStatusCode: MetaData to map Reason types to HTTP status codes
- LogReason: MetaData to configure the logging of Reason types
- Unsatisfiedserialization
 
 
 
- Introduction of 
- SecurityServiceProcessor Reasoning
- com.braintribe.gm:security-reason-model
- returning reasons from security-reason-modelinstead of exceptions
- Reason transformation to the legacy SecurityExceptions in case of unreasoned DDSA evaluation
- Mapping of AuthenticationFailurereasons to HTTP status code 401 in all service domains
 
Scripted Processors
Fixed Javascript processing to stay compatible for convenient bean getter/setter access.
Threshold Persistence and Resource Aware Marshalling
In order to support unlimited data amounts and the transport of binary data hold by transient Resource instances in messaging the following components were introduced
- ResourceAwareMarshallerserializing data assemblies along with transient resource data in multipart format.
- ThresholdPersistenceMarshallermeasuring a delegate marshaller's output to cross a configured threshold to decide for transient resource persistence and substitute payloading.
- A newly wired tribefire platform system access for the transient messaging resources with SQL DB pool configuraiton awareness
- GmMessagingframework using a combination of- ThresholdPersistenceMarshallerand- ResourceAwareMarshallerto enable unlimited message sizes and resource payload.
Spreadsheet Exchange
The new ExportModelSpreadsheet request exports a model as a CSV.
Message Marshaller Removal
The MessageMarshaller (com.braintribe.transport.messaging.api.MessageMarshaller) has been removed. Instead of MessageContext.setMessageMarshaller(...) one can now use MessageContext.setMarshaller(...) and pass a Bin2Marshaller.
HTML Marshaller
Moved HTML marshaller to tribefire.extension.html-marshalling.
Tribefire Modules
Modules can now bind custom MetaDataSelector experts.
Tribefire Explorer
- Improve Validation of properties values. New static Validation Constellation. Improve visibility of not correctly filled property values at PropertyPanelandGIMADialog;
- Improve working with Custom Enum types;
- Menus with shortcuts;
- New Instance action with menu. Dynamic filled menu with actual used context. Menu configuration at Workbench Access;
- Improved support for GmProperty initializers;
- Improved the choice of multiple available actions during DnD;
- Improved support for Max and Min metadata;
- Improved the client loading look & feel (with progressbar);
- Added support for new Commandfor opening thePreview, and also support forCompoundCommand(multiple commands at once);
- Improved date localization support;
- Improved the notifications view;
- Improving missing German localization entries;
- Preparing the PropertyPanelfor automatic reevaluation of some metadata configured with the value comparator selector;
Hibernate Access
- hibernate-modulecreated, which currently only binds custom MetaDataSelector experts for- HibernateDbVendorSelectorand- HibernateDialectSelector.
- Support for DbUpdateStatement- a meta-data to configure custom SQL statements that are executed right before/after the schema creation whenHibernateAccessis being deployed. Specific DB systems can be targeted using the aforementioned selectors.
Job Scheduling
Fixed user identification (password was not respected at all).
Setup Processing
PlatformAssetSolution.revision now also respects -SNAPSHOT qualifier.
Home Servlet
The HomeServlet is now wired with system service request evaluator.