What is New in Dinamica EGO 7.5.0

(ChangeLog compared to 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].
    1. 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.
    1. 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.
    1. 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.