Commit Graph

1021 Commits

Author SHA1 Message Date
jmpenn
bfb6419637
Fix the alloc_type of allocations performed by declare_var. #1529 (#1639) 2024-01-24 14:06:04 -06:00
Alex Lin
7547d36ab4
Repurpose the "Sim/Real Time" field on the sim control panel #1626 (#1627)
* Repurpose the "Sim/Real Time" field on the sim control panel #1626

Added calculations in the realtime sync monitor job to calculate the
average sim/realtime ratio for the past 100 frames.  This is saved to
a new variable, actual_run_ratio.  Changed the sim control panel to
display the actual_run_ratio value.

* Repurpose the "Sim/Real Time" field on the sim control panel #1626

how does this compile locally but not in CI?  Didn't include cmath.
2024-01-23 10:46:55 -06:00
Mrockwell2
dad8e3b872
Standardized error messaging in Sim Control Panel. (#1636)
* Standardized error messaging in Sim Control Panel.

* Allowed for a popup when in Lite mode

* Fixed the NullPointerException

* Cleaning up and documenting implementation.
2024-01-18 10:57:52 -06:00
Hong Chen
fe105451b9
Dump cycle time for all type instead of just PROCESS_TYPE_AMF_CHILD. (#1638) 2024-01-18 10:40:19 -06:00
Hong Chen
6d86a0fd97
Updated to log applicable time in seconds instead of tics for frame logging (#1623)
* Updated to log applicable time in seconds instead of tics, remove scale attribute in dp product XMLs, and reset clock before realtime clock sync to avoid logging epoch time for frame logging.

* Removed "_seconds" from applicable time variable names.
2024-01-18 10:17:54 -06:00
dependabot[bot]
f80e600162
Bump follow-redirects in /trick_source/web/dashboard (#1635)
Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.15.3 to 1.15.4.
- [Release notes](https://github.com/follow-redirects/follow-redirects/releases)
- [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.15.3...v1.15.4)

---
updated-dependencies:
- dependency-name: follow-redirects
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-11 10:06:29 -06:00
dependabot[bot]
65c20d9983
Bump plotly.js from 1.49.0 to 2.25.2 in /trick_source/web/dashboard (#1634)
Bumps [plotly.js](https://github.com/plotly/plotly.js) from 1.49.0 to 2.25.2.
- [Release notes](https://github.com/plotly/plotly.js/releases)
- [Changelog](https://github.com/plotly/plotly.js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/plotly/plotly.js/compare/v1.49.0...v2.25.2)

---
updated-dependencies:
- dependency-name: plotly.js
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-09 10:11:13 -06:00
Hong Chen
dafddff0a1 update version numbers to prerelease 19.8.0-beta 2023-12-18 14:25:50 -06:00
Sean Harmeyer
ba38260690 Update version numbers for Trick Simulation Environment 19.7.1 2023-12-18 12:33:32 -06:00
Hong Chen
b7e541e02f
Updated not to add "friend class" to embedded private list so it can be accessed. (#1625)
* Updated not to add "friend class" to embedded private list so it can be accessed.

* Added a list to hold all friends class decl so able to specifically make sure not to remove them from io source but not to allow is source for others.

* Added namespaces to class names for comparison as class name only needs to be unique within the same namespace.

* Added if NULL check before getting friend decl type string.
2023-12-14 13:28:16 -06:00
Hong Chen
867736a1b1 update version numbers to prerelease 19.8.0-beta 2023-12-01 13:15:31 -06:00
Sean Harmeyer
d711b47170 update version numbers for Trick Simulation Environment 19.7.0 2023-12-01 11:43:08 -06:00
ddj116
483cacfafd
MonteCarloGenerate: Provide more metadata on dispersions (#1608)
* Add type, dispersion, min_value, max_value and other relevant internal
  members of MonteCarloVariable* classes to the output of
  MonteCarlo_Meta_data_output. Motivation is for users wanting to post-process
  dispersion parameters used during generation of runs
* Protect against invalid memory access when length of values is zero in
  MonteCarloVariableRandomStringSet::generate_assignment(). Add a new
  verif sim warning case to cover these new lines
* Update new verif data for SIM_mc_generation to support these changes

Closes #1574

Co-authored-by: Dan Jordan <daniel.d.jordan@nasa.gov>
2023-12-01 10:09:17 -06:00
Hong Chen
9ead0a28be
Added case in ICG makefile to use C++17 for clang 16 as clang 16 or later builds C++ code according to the C++17 by default. (#1621) 2023-11-30 14:39:00 -06:00
Hong Chen
25b692d055
Added executive time tic value information to S_job_execution. (#1605) 2023-10-31 10:30:41 -05:00
Hong Chen
9076a3e88f
1592 send hs run stats improvement (#1604)
* Added system CPU time and initialization system CPU time and added user wording for existing CPU time to distinguish it from system CPU time used for trick run summary.

* Updated the order of a couple of times of shutdown messages printed on screen and sim/cpu time ratio to both user and system cpu time.

* Minor change for lining up the shutdown message.
2023-10-31 10:20:17 -05:00
Hong Chen
80f341f5e7
Fix the issue of returning a pointer to a local variable in data_products (#1593)
* Updated to use std::string instead for cases that ruturn const char* by referencing to a local variable.

* Updated c_str invovled check as it is never NULL and always return a null-terminated ('\0') string and also removed unnecessary conversion using c_str.

* Updated a data_products file missed last time to replace c_str check with string check.

* Updated missed parts to replace c_str check with string check.

* Updated to use C++ string comparison for std::string variables.
2023-10-26 10:39:02 -05:00
jmpenn
cc6fbc4ff2
Fix and unittest lqueue functions in trick_adt. (#1598) 2023-10-26 10:26:40 -05:00
dependabot[bot]
d2b699ce04
Bump @babel/traverse in /trick_source/web/dashboard (#1595)
Bumps [@babel/traverse](https://github.com/babel/babel/tree/HEAD/packages/babel-traverse) from 7.23.0 to 7.23.2.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.23.2/packages/babel-traverse)

---
updated-dependencies:
- dependency-name: "@babel/traverse"
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-19 10:10:18 -05:00
dependabot[bot]
e8048c1448
Bump esm and mapbox-gl in /trick_source/web/dashboard (#1589)
Removes [esm](https://github.com/standard-things/esm). It's no longer used after updating ancestor dependency [mapbox-gl](https://github.com/mapbox/mapbox-gl-js). These dependencies need to be updated together.


Removes `esm`

Updates `mapbox-gl` from 1.1.1 to 1.13.3
- [Release notes](https://github.com/mapbox/mapbox-gl-js/releases)
- [Changelog](https://github.com/mapbox/mapbox-gl-js/blob/v1.13.3/CHANGELOG.md)
- [Commits](https://github.com/mapbox/mapbox-gl-js/compare/v1.1.1...v1.13.3)

---
updated-dependencies:
- dependency-name: esm
  dependency-type: indirect
- dependency-name: mapbox-gl
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-19 10:09:48 -05:00
dependabot[bot]
885639e2b2
Bump acorn from 5.7.3 to 5.7.4 in /trick_source/web/dashboard (#1583)
Bumps [acorn](https://github.com/acornjs/acorn) from 5.7.3 to 5.7.4.
- [Commits](https://github.com/acornjs/acorn/compare/5.7.3...5.7.4)

---
updated-dependencies:
- dependency-name: acorn
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-12 11:22:29 -05:00
dependabot[bot]
8e15716e96
Bump path-parse from 1.0.6 to 1.0.7 in /trick_source/web/dashboard (#1582)
Bumps [path-parse](https://github.com/jbgutierrez/path-parse) from 1.0.6 to 1.0.7.
- [Commits](https://github.com/jbgutierrez/path-parse/commits/v1.0.7)

---
updated-dependencies:
- dependency-name: path-parse
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-12 11:21:54 -05:00
dependabot[bot]
31288e9238
Bump bl from 1.2.2 to 1.2.3 in /trick_source/web/dashboard (#1581)
Bumps [bl](https://github.com/rvagg/bl) from 1.2.2 to 1.2.3.
- [Release notes](https://github.com/rvagg/bl/releases)
- [Changelog](https://github.com/rvagg/bl/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rvagg/bl/compare/v1.2.2...v1.2.3)

---
updated-dependencies:
- dependency-name: bl
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-12 11:20:50 -05:00
dependabot[bot]
a87014b1e0
Bump postcss and react-scripts in /trick_source/web/dashboard (#1580)
Bumps [postcss](https://github.com/postcss/postcss) to 8.4.31 and updates ancestor dependency [react-scripts](https://github.com/facebook/create-react-app/tree/HEAD/packages/react-scripts). These dependencies need to be updated together.


Updates `postcss` from 7.0.39 to 8.4.31
- [Release notes](https://github.com/postcss/postcss/releases)
- [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/postcss/postcss/compare/7.0.39...8.4.31)

Updates `react-scripts` from 3.0.1 to 5.0.1
- [Release notes](https://github.com/facebook/create-react-app/releases)
- [Changelog](https://github.com/facebook/create-react-app/blob/main/CHANGELOG-3.x.md)
- [Commits](https://github.com/facebook/create-react-app/commits/react-scripts@5.0.1/packages/react-scripts)

---
updated-dependencies:
- dependency-name: postcss
  dependency-type: indirect
- dependency-name: react-scripts
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-05 14:23:34 -05:00
jmpenn
1d0e324c6f
Fix a variety of bugs found in dllist.c while addressing Issue #1559. (#1577)
* Fix a variety of bugs found in dllist.c while addressing Issue #1559.

* Added More descriptive error messages.
* Wrote google-test based unit tests for the DLL List library.
* Deleted old, incomplete test program.
* Added new function DLL_ListContainsPos which determines whether the given list contains the node at the given pos.
* DLLFind bug: Added check to determine whether a compare function has been specified, and emit an error message if it hasn’t.
* DLL_FindIndex bug: Corrected bounds checking.
* DLL_GetAt bug: Added check to ensure that the specified pos is actually in the given list.
* DLL_SetAt bug: Added check to ensure that the specified pos is actually in the given list.
* DLL_RemoveAt: corrected logic mistake in NULL ptr check. Added check to ensure that the specified pos is actually in the given list.
* DLL_InsertBefore bug: element count not correctly updated.
* DLL_InsertAfter: next and prev ptrs not correctly updated, which corrupted the list.
* DLL_GetNext bug: logic error in NULL ptr checks. Added check to ensure that the specified pos is actually in the given list.
* DLL_GetPrev bug: logic error in NULL ptr checks. Added check to ensure that the specified pos is actually in the given list.
* DLL_AddHead: Fixed NULL check logic error.
* DLL_AddTail: Fixed NULL check logic error.

* Address review comments, remove extraneous make target.

* Change false to 0 in dllist.c
2023-10-05 13:33:38 -05:00
Hong Chen
73cc7aabfa
checksum enhancement for -d option (#1579)
* Added input file SHA1 info being printed on screen when running a trick sim with -d option (basically verifying the input)

* Added additional checks to exclude trace info printout for file in /opt or .trick/ or not a real file such as <xxx> as the filename.
2023-10-05 10:56:02 -05:00
dependabot[bot]
d38dcf00d9
Bump debug in /trick_source/web/dashboard (#1576)
Bumps  and [debug](https://github.com/debug-js/debug). These dependencies needed to be updated together.

Updates `debug` from 4.1.1 to 4.3.4
- [Release notes](https://github.com/debug-js/debug/releases)
- [Commits](https://github.com/debug-js/debug/compare/4.1.1...4.3.4)

Updates `debug` from 3.2.6 to 4.3.4
- [Release notes](https://github.com/debug-js/debug/releases)
- [Commits](https://github.com/debug-js/debug/compare/4.1.1...4.3.4)

---
updated-dependencies:
- dependency-name: debug
  dependency-type: indirect
- dependency-name: debug
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-05 10:41:08 -05:00
jmpenn
cdc8927234
Fix status return logic in process_dynamic_events. #1557 (#1573) 2023-09-21 10:16:12 -05:00
jmpenn
fd260bfc34
In DPV_textbuffer.cpp, close the opened file on read failure, so we d… (#1572)
* In DPV_textbuffer.cpp, close the opened file on read failure, so we don't have a resource leak. #1561

* Disable 2 tests in VariableServerSessionThread_test.cc: exit_if_handle_message_fails, and exit_if_write_fails.
2023-09-21 10:15:53 -05:00
Alex Lin
02f7203597
Possible speedup for requesting sie file #1555 (#1570)
* Possible speedup for requesting sie file #1555

When creating the sie file there is a marker string that Trick searches
for where it writes the run time allocated memory.  The loop that was
searching for the string was iterating one character at a time and reading
from file each time.  This was slow.  Changed the loop to read 1Mb into
memory at a time and search for the string.  Handled the case where the
marker string could straddle the 1Mb boundary by copying a small portion
of the previous part of the file for the next search.  For my one test
point sie file generation dropped from 90+ seconds to 3.5 seconds.

* Possible speedup for requesting sie file #1555

Math was wrong on some offset values.  Fixed them now.

* Possible speedup for requesting sie file #1555

The mac won't allow me to declare a "char buff[1000001];".  It compiles
but throws an exception when run.  Changed it to "char *buff = new char[1000001];"
2023-09-15 07:54:29 -05:00
Hong Chen
cca7191129
1504 trick run summary enhancement for memory used (#1545)
* Added SIM RAM usage info to trick run summary.

* Fixed to use #if for determing which OS.

* Removed the system print out statement when MonitorHealthStatusTask is finished.

* Changed "M" to "MB" for RAM usage info on run summery.
2023-08-24 13:51:19 -05:00
mcmuffin6o
3fb82f9d84
Add return codes to var_set (#1543) 2023-08-14 09:32:04 -05:00
Noah Brewer-Houghton
520e8a78ff
Fixed an issue where MonteVarCalculated variables of data type int were not passed correctly to child processes (#1546) (#1547)
Co-authored-by: Noah Brewer-Houghton <Noah.A.Brewer-Houghton@nasa.gov>
2023-08-11 10:29:51 -05:00
Jacqueline Deans
682f218391
Correct typo in VariableServerSession_write_data.cpp
Thanks to @Fjolnirr for pointing this out!
2023-07-13 13:49:42 -05:00
Isaac Rowe
68ced2a1ad
Ensure swig target folder is created (#1533) 2023-07-13 13:44:29 -05:00
Jacqueline Deans
d3cc021cca Move VariableServerSession logs into subdirectory; make separate toggle for session logs 2023-06-26 12:23:58 -05:00
Deans
a4d49850f3 Add per-session variable server logs 2023-06-26 12:23:58 -05:00
Deans
99ee88a686 Add more Variable Server unit and integration tests, clean up and clarify naming 2023-06-26 12:23:58 -05:00
Jacqueline Deans
0788dcfa9b Replace TrickComm with new connection_handler library 2023-06-26 12:23:58 -05:00
Jacqueline Deans
c2e42f4ef4 Refactor and test Variable Server.
- Split VariableServerThread into VariableServerSession and VariableReference classes
- Use C++ streams for data handling
- Unit tests
2023-06-26 12:23:58 -05:00
Jacqueline Deans
e89bf083b2 update version numbers to prerelease 19.7.0-beta 2023-06-23 12:08:39 -05:00
Jacqueline Deans
7e183656e1 update version numbers for Trick Simulation Environment 19.6.0 2023-06-23 12:05:28 -05:00
Jacqueline Deans
2e0e580c98
Add make spotless target to get rid of config info, patch together various other spots missed by clean (#1515) 2023-06-13 09:50:19 -05:00
Jacqueline Deans
479171f569
Fix c++20 flag for LLVM 10 (#1520) 2023-06-12 14:36:21 -05:00
Mrockwell2
f64a16ecaa
Fixed an error with checkpointing change variables (#1518)
* Fixed SIGABRT for checkpointing change variables

* Expanded the Data Recording Checkpoint test sim
  - Added a case for checkpointing change variables

* Updated the test case for checkpointing change vars
  - Changed the header, input, and log files to get better data representation

* Expanded the Checkpoint test sim
  - Added a test case covering when the only tracked variable is the change var.
2023-06-07 15:17:24 -05:00
Jacqueline Deans
506bac5de7
Move ICG parsing standard specification to separate flag (#1517) 2023-06-05 14:40:32 -05:00
Jacqueline Deans
9c356131bc
Add option to specify a C++ standard to ICG for parsing (#1499) 2023-06-01 13:43:23 -05:00
Alex Lin
ad42376d5e
Variable Server byteswapping crashes the sim #1513 (#1514)
* Variable Server byteswapping crashes the sim #1513

The code to byteswap a variable server buffer has a comment saying there is a bug. The comment is
correct.  The original code would swap the parameter and anything else that followed that parameter
in the structure.  Crashes everywhere.  Created a new routine that byteswaps a single parameter.
Strangely we didn't have such a routine until now.  Did some testing of doubles, floats, ints,
shorts, and chars and all were swapped correctly.

* Variable Server byteswapping crashes the sim #1513

enabling binary byteswap test.
2023-06-01 13:20:14 -05:00
Jacqueline Deans
33823f1a0b
Correct path and remove Mac attaching a debugger in Executive_fpe_handler.cpp (#1495) 2023-05-04 15:29:32 -05:00
Jacqueline Deans
746311c06e
Exclude memory manager int64_t tests on 32 bit architectures (#1494) 2023-05-01 15:50:39 -05:00
John M. Penn
008bc6a621 Merge branch 'master' of https://github.com/nasa/trick 2023-04-28 18:00:27 -05:00
John M. Penn
54e49f500d For DataTypes: Fix missing paren in EnumDataType.cpp. Tidy up makefile. 2023-04-28 17:55:38 -05:00
jmpenn
9438bd559b
Add unittests to cover uncovered code in MemoryManager ADEF_ and REF_… (#1483)
* Add unittests to cover uncovered code in MemoryManager ADEF_ and REF_ parsers.

* Remove the second production of the 'user_defined_type' target
because it is superfluous, and impossible to reach. This is
because the NAME token is defined as pattern : '[_a-zA-Z][_a-zA-Z0-9:]*'.
This pattern will always match a string of colon separated names.
Note that the NAME itoken is used for colon separated type-name as well as
colon separated variable names.

* Add a test to MM_declare_var_unittest that covers the HEX token in adef_parser.l.

* Add a unittest for MemoryManager_JSON_Intf.cpp.

* Tweak MM_JSON_Intf.cc to get better code-coverage.
2023-04-27 14:57:55 -05:00
Jacqueline Deans
6c685d8400
Revise Documentation, Correct a single constant (#1326) (#1489)
* Fix formatting, grammar, and syntax

Additionally, a sentence that referenced something that isn't used anywhere was removed.

* Promote headers, Format stuff

Many headers were far too deep. In some cases, the highest header was h4. To correct this, the offending headers were promoted once or twice as appropriate. Minor formatting changes were made, too.

* Fixed an incorrect conversion constant.

* Update library dependency explanation

The old explanation was confusing and seemingly self contradicting in places. This new explanation aims to fix that.

Co-authored-by: Matthew Elmer <m.elmer@mailbox.org>
2023-04-21 17:32:31 -05:00
Jacqueline Deans
d76de7e1ee
Allow for read only S_sie.resource (#1420) 2023-04-17 17:23:48 -05:00
Jacqueline Deans
6118171c01
Update swig interface to work python 3.11 (#1486) 2023-04-11 13:14:30 -05:00
John M. Penn
d3a26b5698 Deleting parameter_types.c. #1482 2023-04-10 12:46:58 -05:00
jmpenn
1b0def8886
Add unit test suite for trickTypeCharString(). (#1467)
* Add unit test suite for trickTypeCharString().

* Rewrite MM test Makefile, Address type warnings in tests.

* Fix test target in Makefile
2023-04-05 15:28:14 -05:00
ddj116
9099792947
Integrate MonteCarloGenerate capability from EG CML and associated TrickOps enhancements (#1415)
* Provide MonteCarloGenerate capability

Intermediate commit, this squash represents all of Isaac Reaves' work
during his Fall 2022 Pathways internship tour

[skip ci]

* TrickOps: Add phase, [min-max] range, and overhaul YAML verification

* Add new "phase:" mechanism to TrickOps Runs and Builds to support
  project-specific constraints on build and run ordering
  - phase defaults to zero if not specified and must be between -1000
    and 1000 if given.
  - jobs can now optionally be requested by their phase or phase range
  - See trickops/README.md for details
* Add [min-max] notation capability to run: entries and compare: entries
  - [min-max] ranges provide definition of a set of runs using a common
    numbering scheme in the YAML file, greatly reducing YAML file size
    for monte-carlo and other zero-padded run numbering use cases
  - See trickops/README.md for details
* YAML parsing changes
  - Overhaul the logic which verifies YAML files for the expected
    TrickOps format. This is now done in TrickWorkflowYamlVerifier and
    provides much more robust error checking than previous approach
  - .yaml_requirements.yml now provides the required types, ranges, and
    default values as applicable to expected entries in YAML files
  - valgrind: is now an sub-option to run: entries, not its own section
    Users should now list their runs normallly and define their flags in
    in that run's valgrind: subsection
  - parallel_safety is now a per-sim parameter and not global. Users
    should move their global config to the sim layer
  - self.config_errors is now a list of errors. Users should now
    check for empty list when using instead of True/False
* Robustify the get_koviz_report_jobs unit test to work whether koviz
  exists on PATH or not
* Adjust trickops.py to use the new phase and range features
   - Make it more configurable on the command-line via argparse
   - Move SIM_mc_generation tests into test_sims.yml

[skip ci]

* Code review and cleanup from PR #1389

Documentation:

* Adjust documentation to fit suggested symlinked approach. Also
  cleaned up duplicate images and old documentation.
* Moved the verification section out of markdown and into a PDF since it
  heavily leverages formatting not available in markdown.
* Clarify a couple points on the Darwin Trick install guide
* Update wiki to clarify that data recording strings is not supported

MCG Code:

* Replace MonteCarloVariableRandomNormal::is_near_equal with new
  Trick::dbl_is_near from trick team

MCG Testing:

* Reduce the set of SIM_mc_generation comparisons. After discussion
  the trick team, we are choosing to remove all comparisons to
  verif_data/ which contain random-generated numbers since
  these tests cannot pass across all supported trick platforms.
* Fix the wrong rule on exlcuding -Werror for Darwin builds
  of SIM_mc_generation
* Remove data recording of strings in SIM_mc_generation

Trickops:

* Replace build_command with build_args per discussion w/ Trick team
  Since we only support arguments to trick-CP, replace the build_command
  yaml entry with build_args
* Disable var server connection by default in SingleRun if TrickWorkflow.quiet
  is True
* Guard against multiple Job starts
* Remove SimulationJob inheritance layer since old monte-carlo wasn't
  and never will be supported by TrickOps
* Ignore IOError raise from variable_server that looks like "The remote
  endpoint has closed the connection". This appears to occur when
  SingleRun jobs attempt to connect to the var server for a sim that
  terminates very early

[skip ci]

* Adjust phasing of old/new MCG initialize functions

* Clarify failure message in generate_dispersions if new/old MC are both
  used.
* Adjust the phasing order of MCG intialize method to be before
  legacy MC initialized. Without this, monte-carlo dry run completes with
  success before the check in generate_dispersions() can run
* Add -Wno-stringop-truncation to S_override.mk for SIM_mc_generation
  since gcc 8+ warns about SWIG generated content in top.cpp

* Introduce MonteCarloGenerationHelper python class

This new class provides an easy-to-use interface for MCG sim-module
users:

1. Run generation
2. Getting an sbatch array job suitable for SLURM
3. Getting a list of SingleRun() instances for generated runs, to be
   executed locally if desired

---------

Co-authored-by: Dan Jordan <daniel.d.jordan@nasa.gov>
2023-03-06 09:25:50 -06:00
jmpenn
9b3e6aac51
Update README.md
Fix title of Trick::flt_is_near
2023-03-03 13:30:52 -06:00
Jacqueline Deans
5f6a5de070
Expand SIM_test_varserver (#1459)
* Add tests for alternate ways to open VS port

* Don't connect to varserv when quiet=true in trickops

* Add print to try to help debug hanging trickops test

* Handle multicast connect failures gracefully

* Multicast is disabled by default on mac

* Forgot an important return value

* Take away retries

* Fix issue with restart test

* Revert trickops debugging changes

* Remove debugging accidentally left in [no ci]

* whoops

* Allow retries

* Update trickops.py

* sim test adjustments

* Add docs [no ci]

* wording [no ci]

* Cleanup

* Remove large messages, test that one in unit tests
2023-02-24 14:44:55 -06:00
Jacqueline Deans
a8c9572186
Correct check for unsupported types in data recording (#1458) 2023-02-16 16:27:47 -06:00
Jacqueline Deans
2fa5cdfc77
Fix checkpointing of empty string array - 1399 patch (#1456) 2023-02-14 09:33:42 -06:00
jmpenn
9478b6a442
Fix mm_mutex locking and unlocking fiasco in clear_all_vars. #1452 (#1455) 2023-02-10 14:06:27 -06:00
Jacqueline Deans
9c7becb4ff
Handle thread shutdown gracefully and test (#1448)
---------

Co-authored-by: Dan Jordan <daniel.d.jordan@nasa.gov>
2023-02-08 17:58:59 -06:00
Jacqueline Deans
930dfbc683
Add check and warning for unsupported types in data recording (#1441) 2023-02-07 16:41:53 -06:00
Jacqueline Deans
8be3e30f7a
Fix Mac pipeline (#1454) 2023-02-07 15:35:22 -06:00
Jacqueline Deans
fb25ea70d2
Fix undefined behavior in vs_format_ascii (#1446) 2023-02-07 13:11:51 -06:00
Alex Lin
a48b39bfc1
Make ICG compatible with clang/llvm 15 #1449 (#1450)
Made a couple of changes in ICG source code to handle clang API differences.  Encapsulated
differences in ifdefs.  Added libclangSupport to ICG link line.
2023-02-07 12:46:34 -06:00
jmpenn
afbc78c5e7
Initial commit of compareFloatingPoint utils. (#1443)
* Initial commit of compareFloatingPoint utils.

* Update .gitignore to properly ignore unittest executables.
2023-02-01 15:54:31 -06:00
Jacqueline Deans
5ff52a01c5
Add option to terminate sim on python event error (#1434) 2023-01-20 15:46:10 -06:00
Jacqueline Deans
807161b19c
Fix 32 bit pipeline (#1430) 2023-01-16 15:54:23 -06:00
Jacqueline Deans
77fa8d78b0
Time tic precision fix and test (#1428) 2023-01-16 08:29:41 -06:00
Jacqueline Deans
97cf685b6a
Parser and test for var_binary (#1425) 2023-01-11 09:27:30 -06:00
Jacqueline Deans
cb89e4dd7e Update version numbers to prerelease 19.6.0-beta 2022-11-29 16:58:30 -06:00
Jacqueline Deans
0f4ca88da6 Update version numbers for Trick Simulation Environment 19.5.1 2022-11-29 16:56:55 -06:00
Jacqueline Deans
86b0bc9d39
Fix undefined behavior in vs_format_ascii (#1409) 2022-11-29 16:29:54 -06:00
Jacqueline Deans
d0f679b31a update version numbers to prerelease 19.6.0-beta 2022-11-17 16:00:00 -06:00
Jacqueline Deans
e86e7fd968 update version numbers for Trick Simulation Environment 19.5.0 2022-11-17 15:54:02 -06:00
jmpenn
2a03ff5cf4
Replace sprintf with snprintf in all of Trick source. #1384 (#1392)
* Replace sprintf with snprintf in all of Trick source. #1384

* Don't add -Werror for MacOS because of deprecated sprintf warnings which we cant get rid of because SWIG. #1384

* Fixed an unbalanced parenthesis in S_overrides.mk. #1384
2022-11-15 15:00:05 -06:00
Jacqueline Deans
9d305fec09
Add a way to disable sim objects (#1364)
* Add set_sim_object_jobs_onoff, get_sim_object_on_off, and change set_sim_object_onoff to preserve the on/off status of jobs
2022-11-15 09:16:08 -06:00
Isaac Rowe
4cd6da34d8
Ensure MC slaves are set to ready after timeouts (#1370)
Co-authored-by: Isaac Rowe <isaac.s.rowe@nasa.gov>
2022-11-07 15:32:53 -06:00
Jacqueline Deans
1cf4ef58ad
Stop attaching a debugger on segfault on Mac (#1383) 2022-11-07 15:27:00 -06:00
Scott Fennell
d0511e8fb9
1372 use temporary job pointer instead of modifying curr_job in exec_set_time_tic_value
* add integration test sim SIM_exec_set_time_tic_value
* use temporary job pointer instead of modifying curr_job in exec_set_time_tic_value
closes #1372
2022-10-28 17:19:54 -05:00
Jacqueline Deans
900f7b18be
Generate test coverage and use Coveralls for tracking and visualization (#1366)
* Add code-coverage make target and github actions workflow
* Upload coverage to coveralls
* Add coverage badge to readme
* Fix some test makefiles to correctly propagate flags
2022-10-13 14:23:16 -05:00
Jacqueline Deans
2519c914a5
Pair checkpointing fix (#1356)
* Fix pair checkpointing bug, add tests
* Documentation update
2022-10-07 17:00:09 -05:00
Jacqueline Deans
3d2e8e52ca
Set checkpointing fix (#1357)
* Fix set checkpointing, add tests
* Documentation update
2022-10-07 14:24:21 -05:00
Jacqueline Deans
f19ba7df78
Test and Document STL Checkpointing (#1355)
* Updates SIM_stl to include checkpoint writing and checkpoint restore, as well as adding more data structures to test
* Thoroughly tests supported STL types with MM_stl_checkpoint and MM_stl_restore
* Adds an option to enable or disable STL restore in accessible interfaces and changes default to true
* Updates documentation on STL checkpointing to clearly state limitations and known bugs
2022-10-07 08:37:09 -05:00
John M. Penn
8eea9e9ab9 Make MemoryManager::reset_memory and class destructors coordinate the deletion of objects. #1348 2022-09-26 16:54:41 -05:00
Scott Fennell
d5e8dae6dc
#1344 increase retry count for maven (#1345)
#1344
2022-09-19 15:10:32 -05:00
Thomas Brain
e476f1fa9b Destructor restart fixes 2022-09-01 09:37:15 -05:00
Thomas Brain
32c409e139 Fix clearing arrays of strings 2022-08-24 16:59:13 -05:00
Thomas Brain
8132c00165 Fix issue with writing to an array of std::strings. Use sizeof(std::string) instead of sizeof(char *). 2022-08-24 09:53:57 -05:00
Jacqueline Deans
9c8799610f
Variable Server - var_send_once and integration test (#1330)
* Adds the send_once command and message type, which allows a user to request a variable to be sent immediately and only once (intended to replace the var_add, var_send, var_clear idiom that is commonly used for this purpose)
* Minor refactoring of variable server internals to reduce repeated code
* Adds SIM_test_varserv to integration test to test basic variable server functionality
* Changes graphics client for SIM_billiards to use var_send_once as an example of intended use
* Add documentation for var_send_once in docs and tutorial
* Set exit_code_enabled in trick unit tests to be true by default
* Patch for failing bookworm build
2022-08-18 10:47:07 -05:00
Scott Fennell
c390ca5ba6
replace GTEST_HAS_TR1_TUPLE with -std=c++11 (#1331) 2022-08-11 15:10:29 -05:00
Jacqueline Deans
77dae99fc8
Race condition patch (#1329)
* Add patch for an uncommon bug where some data recording threads hang forever
2022-08-10 13:10:18 -05:00
John M. Penn
58cbf24d5a Remove 2 arg delete_var unit test case. #1301 2022-07-28 16:43:26 -05:00
John M. Penn
d94d5fc863 Remove destroy flag from MemoryManager::delete_var(). #1301 2022-07-28 15:00:55 -05:00
Scott Fennell
2dd12fcbb6
#1315 parse websocket msg len for correct data (#1316)
closes #1315
2022-07-27 08:40:40 -05:00
Jacqueline Deans
61a378553d update version numbers to prerelease 19.5.0-beta 2022-07-20 16:53:18 -05:00