Version 4.3.0 (coming soon...)
Telosys version 4.3.0 brings many significant improvements, such as 4 new neutral types and new commands in the command-line interface, such as "git" and "sql".
See the details below:
🟠 Telosys model - New neutral types
The Telosys model grammar has been enhanced with 4 new neutral types
🔷 uuid
This type is for "Universally Unique Identifier" (128-bit number used to uniquely identify information). A type that is now supported by almost all programming languages and by some databases.
🔷 datetime
This type is intended for storing a date with a time
🔷 datetimetz
This type is like "datetime" but with "Time Zone Offset"
🔷 timetz
This type is like "time" but with "Time Zone Offset"
ℹ️ the type "timestamp" is replaced by "datetime" and is now deprecated. It is maintained to ensure backward compatibility and can be considered a synonym of "datetime" .
🟠 Telosys objects for templates
🔷 $model
$model.entities→ NEW (same as “allEntities”)$model.folderName→ is now deprecated$model.type→ is now deprecated
🔷 $entity
$entity.hasUuidAttribute()→ NEW$entity.hasBinaryAttribute()→ NEW$entity.hasTemporalAttribute()→ NEW$entity.selectedLinks→ deprecated
🔷 $attribute
$attribute.isDatetimeType()→ NEW$attribute.isDatetimetzType()→ NEW$attribute.isTimetzType()→ NEW$attribute.isUuidType()→ NEW$attribute.dateAfterValue→ deprecated$attribute.hasDateAfterValidation→ deprecated$attribute.dateBeforeValue→ deprecated$attribute.hasDateBeforeValidation→ deprecated
🔷 $link
$link.isSelected()→ removed (useless)
🔷 $java
$java.hashCodeMethod(..)and$java.equalsMethod(..)parameters standardization, same parameters as in other languagesnew methods:
$java.validationAnnotations(4, $attribute)$java.validationAnnotationsMultiline(4, $attribute)$java.hasValidationAnnotations($attribute)
🔷 $beanValidation is now DEPRECATED
all methods have been moved in $java object
🔷 $fn
$fn.attributeNames(..)→ NEW$fn.joinWithTransformation(..)→ NEW$fn.firstCharToUpperCase→ deprecated$fn.tab→ deprecated
🔷 $values
$values.contains(”val”)→ NEW$values.getValues(attributes, separator)→ NEW
🔷 $_, $__, $___, etc
Special "empty variables" that can be used for indenting directives in templates.
🟠 Target languages
🔷 Python - Type Hints
In Python, "Type Hints" allow developers to annotate code by specifying the expected types for variables and function arguments (type hints were introduced in Python 3.5).
Python “Type Hints” are now supported by Telosys:
Define Python as the current target language
#set( $env.language = 'Python' )
When Python is the current target language the "Type Hint" is used or returned by all objects using an attribute type:
$attribute.type$attribute.simpleType$fn.argumentsListWithType($entity.keyAttributes)etc
🟠 Telosys CLI
🔷 New "git" command
Git is now embedded in Telosys-CLI in order to execute some basic Git commands directly in the CLI, even if Git is not installed on the workstation.
This makes it easy to manage the creation and modification of models and bundles, which are made available as Git repositories.
Here are some examples of commands:
Init
git initm(for a model) orgit initb(for a bundle)Clone
git clonem(for a model) orgit cloneb(for a bundle)Status
git statusm(for a model) orgit statusb(for a bundle)Publish
git pubm(for a model) orgit pubb(for a bundle) => add + commit + push
The "Git remote" is the current "Telosys depot" (GitHub, etc)
🔷 New "sql" command
With this new version it is now possible to execute a SQL script on a database.
Command usage: sql database-id sql-file
The database-id is one of the databases defined in databases.yaml
Last updated