Releases: nasa/trick
Releases · nasa/trick
Trick Simulation Environment 19.3.0
New Tool: Introducing TrickOps - An Extensible Sim Testing Framework
Features:
- Multiple simultaneous sim builds, runs, file vs. file comparisons,
arbitrary post-run analyses, valgrind of runs - Real-time progress bars for sim builds and runs
- Exit code management lets users easily define success & failure
- Failed comparisons can optionally generate koviz error reports
https://nasa.github.io/trick/documentation/miscellaneous_trick_tools/TrickOps.html
Trick Improvements and Additions
New tutorial section on controlling sim modes from a Variable Server Client (similar to sim-control)
Trick Data Recording Editor Improvement (trick-dre)
- trick-dre now supports array expansion and indexing, (similar to trick-tv)
SAIntegrator
- AstroidFlyBy Example
- RK45 unit test and Tutorial
Documentation
- Updated SAIntegrator Tutorial for RKF45
- Updated Install instructions for macOS and Ubuntu
- Updated Tutorial to include sim_mode control
- Updated DRBinary Format Documentation
- Updated Trickified Project Libraries Documentation
Performance Improvement
- Reduced load on file system when importing SWIG'd objects by importing compressed directory. Issue #1144, PR #1145
Squashed Bugs
- Trickification now compatible with larger libraries and/or longer build paths. Issue #1155, PR #1157
- trick-CP after editing S_define or .sm without 'clean' first will no longer corrupt S_sie.resource (Trick View). Issue #1127, PR #1161
- Improved/fixed ICG exclusion mechanism to correctly generate attribute offsets. Issue #608, PR #1125
- Fixed age-old bug where a race condition caused a segfault on sim shutdown. Issue #1133, PR #1134
- Various other bug fixes (See pull requests 1121 (March) - 1162 (June)
New Dependency Which 99% Of You Already Have
- Trick now needs 'zip' installed
Trick Simulation Environment 19.2.3
Trick Simulation Environment 19.2.2
- Fix S_sie.resource bug that did not include dynamically allocated variables when launching Trick View.
- Includes latest stable changes on master branch (see next minor release for details)
Trick Simulation Environment 19.2.1
- #1065 Support for LLVM 11.0.0 on macOS
- #1063 Fixed an issue where a necessary build artifact was in trick_source instead of share. This caused issues with build pipelines that use Trick and also broke the 'make install'.
- #1067 -isystem for Trick and Python headers
- #1056 #1058 #1061 SAIntegrator improvements
Trick Simulation Environment 19.2.0
Dependency, and OS support updates
- Support added for LLVM 10.
- Support added for python 3.8.
- Support added for Xcode 11.
- Continued updates and improvements to support for RHEL 8, CentOS 8, Ubuntu 18.04, Ubuntu 20.04, Fedora, macOS Mojave, and macOS Catalina.
Configuration updates
- add --with-python option to trick configuration to specify what directory to find python.
- better autotools configuration support for finding python on your system.
- Experimental: Some fixes/improvements to CMake build.
Various improvements
- SIE rework: S_sie.resource generation now occurs at build time instead of runtime. As a result, trick-CP no longer runs the sim. This improves runtime performance, and also allows more flexibility with models that may block during construction by requesting resources that may not be available during CP time.
- Support recursive dynamic events processing for events that cause other events, or occur in very rapid succession.
- Better template support: inner classes of class templates with scoped template arguments, swigging nested templates, and fully qualified template identifiers to support namespaces.
- Improved rebuild times for java GUIs.
- Various other stability fixes, security updates, and performance improvements.
Testing, documentation and example sims
- Improved build matrix and cross-platform testing on Github Actions.
- Improved install guide for clarity and updated instructions for platform dependencies.
- Updated some educational materials in share/doc/trick/.
- New example sim SIM_contact to show advanced use of dynamic events.
- PID control implemented for SIM_wheelbot and SIM_lander.
Trick Simulation Environment 19.1.0
- New dependency: maven (available from your favorite package manager)
When the maven repository added the requirement for https it caused a java dependency apocalypse (The Javadepocalypse) across all trick versions and tags. Going forward, Trick will use the maven tool to install its dependencies, preventing any future javadepocalypses. - New feature: offline mode.
If you configure with --enable-offline, trick will not try to download java dependencies or web server dependencies. Instead, it will look for the fully built executable .jar files in ${TRICK_HOME}/trick-offline. For this to work, you will need to build the jars once (with internet access) and copy them to this directory. (If you have questions about offline mode please contact me scott.p.fennell@nasa.gov or create a github issue). - Improved stability for 32-bit mode.
- New example sim: SIM_Lander. Its a lunar lander with graphics and automatic controls!
- Fixed a bug where you could not convert the units of multiple variables in Trick View
- Added a new convert units text field in Trick View.
- Web Server is now disabled by default. To enable, configure with --enable-mongoose.
- New interface functions to turn on/off SIGCHLD handler (may help with input file dependencies that depend on default handler).
- Other fixes and improvements.
Trick Simulation Environment 19.0.1
Trick Simulation Environment 17.5.1
Trick Simulation Environment 19.0.0
New in Trick 19:
- Support for RHEL/Centos 8, Ubuntu 19.04, Fedora 30, macOS Catalina (LLVM 9), Windows Subsystem for Linux, and others.
- Embedded web server for Trick
- Provides access to information about your sim, or from your sim.
- Directly communicate with sim via HTTP or WebSocket
- You can now create a web application to display realtime sim data or control your sim from your browser.
- Serves Documents from within a root_directory.
- WebSocket / JSON based variable server. Easy to use from from html / javascript.
- HTTP / JSON interface to Memory Manager allocations.
- Easily Extensible WebSocket and HTTP API interfaces.
- See Web Server Documentation at https://nasa.github.io/trick/documentation/web/
- CMake. CMake can now be used to configure and build Trick, as an alternative to Autotools. This is in its prototype stage. One advantage to using CMake is that Trick can now be built anywhere, instead of being mixed in with the source code. configure/Autotools is still our stable method of building trick until we have refined and tested this feature.
- Documentation now included with Trick in the docs directory. These docs have been moved from their old location in the GitHub Wiki and are now hosted at nasa.github.io/trick
- Various improvements:
- Use isystem flag to include third party code and suppress warnings
- Better support for Python 3
- Trick Dashboard: Prototype React-based Sim Control Panel and Trick View for your browser.
- Better support for C++11 and LLVM 9
- Many other small improvements and bug fixes
Trick Simulation Environment 17.5.0
Added option to redirect monte carlo output files
Restored capability to specify python module for model headers
Added experimental web based variable server
Trickification improvements
Supports LLVM 8, SWIG 4.0, Java 11