What is New in Dinamica EGO 7.5.0

(ChangeLog compared to what_is_new_7_4_0.)

Dinamica NUI (Application Graphical User Interface)

Added information about the current version of the fmt library.

Modified the arguments passed to the execution to enable the opening of multiple scripts. Additionally, added support for handling future flags.

Replacing static methods in class with functions in namespace (ContainerFunctorUtils).

Replacing static methods in class with functions in namespace (NameUtils).

Fixed bug related to warning users about adding breakpoints to functors outside the execution stack.

Added alert message for empty selections.

Fixed bug in edge cutting: Although the copying method reported an error, the delete method was still executed.

Fixed functor incompatibility in debugger breakpoints after submodel importing.

Adapted interface to open scripts within the executing application instance, eliminating the necessity of launching a separate application.

Removed forced assertion in catch-block since the error dialog opening was delaying the execution of the finally-block (which disables the communication).

Added code to update the representation of the functor that had its exported input ports edited.

The tab containing the given editor will be accessed only if the exception provides the port name.

Dinamica Image Viewer

(None)

Dinamica NUI Utils (Graphical User Interface Utilities)

Replacing static methods in class with functions in namespace (NameUtils).

Dinamica (Application Core and DLLs)

Fixed a problem where the fail of SystemProcess could result in the loss of its output contents.

Formatting.

Refactoring.

Refactor: Implemented HierarchicalSubmodelException handling in SWIG to generate descriptive error messages.

Fixed compilation warning: virtual destructor not defined.

Fixed compilation warning: unused parameters.

Added option to put the Console execution on hold until a key is pressed (used to assist with debugging).

Changed name to clarify the use of log subystem flags to define which subsystems will log messages when setting the debug level.

Fixed incorrect definition of proxies when dealing with exported ports that where removed from functor definitions.

Fixed compilation warning: unused parameter.

Added information about the current version of the fmt library.

Fixed compilation warning: unused parameter and result being discarded.

Fixed order of parameter documentation.

Fixed compilation warning: possibly uninitialized variables.

Fixed bug where the environment variables where not being propagated by CalculatePythonExpression when calling pip.

Added additional libraries and header files to the PyEnvironment representing the Python used by Dinamica.

Fixed bug where the invocation of Python pip would incorrectly discard the content of the PATH variable from the system.

Removed any empty trailing paths from PATH before attempting to load Python packages [It fixes an error when trying to load some packages].

Fixed comments.

Fixed typo.

Removed undefined method specification.

Removed unused method.

Fixed bug where under some circumstance loading a map for visualization on the graphical interface could crash the application.

Allow executing file as program.

Fixed definition of exported SWIG function that where being emitted with a throw() specifier: removed use of %inline.

Fixed usage message formatting.

Use of reference to simplify code.

Comments.

Fixed compilation warning about member shadowing member in base class.

Added assertion to ensure the name validation during XML document traversal.

Simplified the definition of AssertFailed exception.

Replacing static methods in class with functions in namespace (ContainerFunctorUtils).

Replacing static methods in class with functions in namespace (PropertyUtils).

Replacing static methods in class with functions in namespace (NameUtils).

Removed reference to owner script when the functor is removed from container/script.

Validate the functor list kept by the functor scheduler.

Removed unnecessary destructor specification.

Fixed typo in log message.

Simplifying code.

Added exception that was not being properly exported to Java.

Removed the use of raw pointers.

Fixed bug where the copy of a HandlerRasterImage could incorrectly report failing to update the null value.

Implemented inter process communication to habilitate script open requests between application instances.

Fixed compatibility with fmt version 10.

Fixed compatibility with python 3.11.

Fixed compatibility with GDAL 3.7+ [GDAL added changes specified by RFC 87 (Signed int8 data type for raster) which broke compatibility with previous versions].

Also fixed test cases that produce different results due to changes in resampling by GDAL warp and rasterize (Affects TransformMap & RasterizeShape).

Removed duplicated assertion.

Changed names of version-related compilation variables to prevent collisions with names coming from dependencies.

Exported names of version-related compilation variables by “Version.h”.

Fixed generation of registry/environment variable names to automatically use major application version.

Also changed names of some variables to be coherent with DINAMICA_EGO_XXXX prefix nomenclature.

Allow parsing of empty file paths / filenames to prevent critical errors when reading some model scripts written by previous versions of the application.

Updated test cases to reflect the change in parsing behavior.

Changed use of pointers to comply with the guideline for pointers vs references.

Updated version to 7.5.0.

Fixed behavior where some temporary files were being created outside the application unique temporary folder.

Optimized array initialization by setting the last element to '\0' after copying the content.

Optimized array initialization by setting the last element to '\0' after content copying, and increased the array size limit.

Fixed linking error when compiling on Linux caused by 'runtime' (rt) library used by Boost::Interprocess not being mentioned.

Reorganization of CMakeList files.

Fixed use of python library paths that change with the current version of the python interpreter.

Dinamica (Installer)

(None)

Dinamica (R integration)

Fixed definition of function FilesystemUtils::generateTemporaryFilename() that would not allow the Calculate R Expression to run loop steps in parallel.

Fixed compilation warning.

Updated package version to 1.0.7.

Fixed errors when compiling the Dinamica package on Linux.