Commit Graph

208 Commits

Author SHA1 Message Date
Dan Jordan
0be5f72e35 Robustify YAML config file validation, enhance unit tests
* Fixed run path/too/deep duplication logic
* Add more unit testing to cover edge cases in the YAML file
* Unify type checking to reduce code duplication
* Empty sections like run: are still ignored but now produce an error
  to remind the user to clean them up.
* Make get_sims() work with labels=None
* Test SIMs within deep directory structures to exercise pathing logic
* Add test for invalid sim path: syntax

Refs #1159
2021-06-25 16:02:12 -05:00
Fennell, Scott P 263712616
68cf81736c Trick 19.4.0 Pre-release ver no 2021-06-23 11:49:41 -05:00
Fennell, Scott P 263712616
15534f7f56 Trick Release 19.3.0 2021-06-23 11:39:47 -05:00
Derek Bankieris
9b7e18af15 Create link_list files for Trickification
ICG and make_makefile_swig create py_link_list and io_link_list files
listing the files to be linked during sim builds. Trickified projects
require slightly altered lists.

Fixes #1155
2021-06-02 13:56:21 -05:00
Keith Vetter
832fc4e8a7
Fix compiler shadow warning for issue #1141 (#1150)
closes #1141 

If you use the -Wshadow flag, there are few compiler warnings
for shadowing. You can recreate with the Ball L1 sim:

    % vi S_overrides.mk
    TRICK_CFLAGS += -Wshadow -I../models
    TRICK_CXXFLAGS += -Wshadow -I../models
    % trick-CP
    ...

    In file included from build/S_source.cpp:3:0:
    build/../S_source.hh: In member function ‘void EventManagerSimObject::create_thread_process_event()’:
    build/../S_source.hh:425:23: warning: declaration of ‘name’ shadows a member of 'this' [-Wshadow]
    char* name = strdup(oss.str().c_str()) ;

To fix the S_source* generated code, it is just a
matter of changing default_trick_sys.sm.
2021-05-26 22:13:31 -05:00
Derek Bankieris
2c06ae6eaf Rename SIM_*/trick to SIM_*/.trick
Hide the non-zipped Python modules to indicate to users that changing
them will have no effect on the sim.

Refs #1144
2021-05-19 17:33:13 -05:00
Derek Bankieris
8d314fa1b1 Zip SWIG-generated python modules
Closes #1144
2021-05-19 17:23:33 -05:00
ddj116
1d9ea79107
Introducing TrickOps - An Extensible Sim Testing Framework (#1130)
* 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

See share/trick/trickops/README.md for details

* Add GitHub Actions Workflow for TrickOps for Ubuntu:20.04 & CentOS latest

* Adds python unit and doc tests to github actions for push / pull requests
  for Ubuntu:20.04 and CentOS 8:latest. MacOS still forthcoming.
* Also updates documentation with TrickOps information
* Remove duplicate / overwriting SIM_ definitions in ExampleWorkflow.py

* Address Code Review / Discussion

* Reduce set of sims tested in ExampleWorkflow.py to stable set
* Add ExampleWorkflow.py to GitHub Actions
* Clarify documentation and add image of TrickOps in action
* Error/Ignore valgrind entries in YAML file if platform == darwin

* Fix run.compare() logic error and add unit test to cover it

Co-authored-by: Dan Jordan <daniel.d.jordan@nasa.gov>
2021-05-03 14:39:20 -05:00
Fennell, Scott P 263712616
92ad2a8063 reapply prerelease version numbers to master branch 2021-03-12 13:49:27 -06:00
Fennell, Scott P 263712616
7b933255aa Trick Release 19.2.3 2021-03-12 13:42:49 -06:00
Scott Fennell
6691b14e9e
1093 c str (#1119)
* update checkpoint_map.hh #1093

* #1093 update checkpoint_pair.hh

* #1093 update checkpoint_queue.hh

* #1093 update MM_write_checkpoint.cc

* #1093 update units_attach.i

* #1093 update checkpoint_sequence_stl.hh

* #1093 update checkpoint_stack.hh

* #1093 update swig_extend_str.i

* #1093 update swig_int_templates.hh

* #1093 update checkpoint_stack.hh and swig_int_typemap.i

* #1093 fix c_str issue without adding memory leaks

* #1093 fix c_str issue without adding memory leaks

* #1093 remove dangling pointers in injector sim object (without causing memory leaks)

* #1093 remove dangling pointers in injector sim object (without causing memory leaks)

* #1093 remove dangling pointers in Event Manaager sim object (without causing memory leaks)

* #1093 fix MonteCarlo_c_intf dangling pointers

Co-authored-by: Fennell, Scott P 263712616 <scott.p.fennell@nasa.gov>

closes #1093
2021-03-12 13:23:35 -06:00
Fennell, Scott P 263712616
be407eaf13 Update version numbers to pre-release for 19.3.0 2021-01-11 13:59:31 -06:00
Fennell, Scott P 263712616
e0be091c7e Trick Release 19.2.2 2021-01-11 13:57:14 -06:00
Scott Fennell
939b3002d1
tv dynamic allocations post initialization and test update (#1090)
* #1086 append runtime allocations when sie is requested instead of initialization

* #1088 change sie error to warning and improve warning message

* #1089 lowercase powertools in centOS 8 config


closes #1086
closes #1088
closes #1089
2020-12-15 12:48:21 -06:00
Fennell, Scott P 263712616
a84ac0e856 Update version numbers to pre-release for 19.3.0 2020-10-27 13:08:01 -05:00
Fennell, Scott P 263712616
8f36f91b55 Trick Release 19.2.1 2020-10-27 12:57:18 -05:00
Scott Fennell
7277b16017
#1063 move sim service xml file (#1069)
Co-authored-by: Fennell, Scott P 263712616 <scott.p.fennell@nasa.gov>
2020-10-23 15:45:32 -05:00
Derek Bankieris
1e8228e344 Use -isystem for Trick and Python headers
Closes #1067
2020-10-23 08:28:01 -05:00
Fennell, Scott P 263712616
3f7ebd38e3 Update version numbers to pre-release for 19.3.0 2020-09-13 19:36:34 -05:00
Fennell, Scott P 263712616
424c2b60bd Trick release 19.2.0 2020-09-13 18:43:17 -05:00
Scott Fennell
f825dc00fc
Merge test branch into master (#1047)
* #1041 filter -W workaround for ICG linking to LLVM 10 libclang-cpp.so (#1044)

* 1043 drg checkpoint memory leak (#1045)

* #1043 drg fix drg checkpoint memory leak

* 947 sie generation rework (#1046)

generate  S_sie.resource at during build instead of runtime
2020-09-01 15:55:19 -05:00
Scott Fennell
3b89cbfdb2
iss #1009 (#1040)
Link correct clang libs based on availability. ICG clang lib link flags are determined by trick/configure
2020-08-28 14:52:23 -05:00
Derek Bankieris
ab2cfe1a34 Silence SWIG warning 315
Nothing known about identifier

Closes #1025
2020-08-11 14:34:54 -05:00
Penn, John M 047828115
a58378063f Update Compiling and Linking Overview 2020-04-01 14:55:27 -05:00
Penn, John M 047828115
1cc06c46bf Update Basics_of_Program_Memory_and_Variables in preparation for interns. Ref #974 2020-03-30 20:04:50 -05:00
Scott Fennell
3c0f40f1bb
Update version nmuber 2020-02-18 16:12:27 -06:00
Scott Fennell
05acf0d92f
19.1.0 2020-02-18 10:13:02 -06:00
Scott Fennell
b724f502b3
fix 32 bit test (#953)
* fix tests for 32 bit mode

* fix issues with mongoose build

* Update docker.yml
2020-02-14 10:23:19 -06:00
Scott Fennell
4f5ce7e4a1
Maven, offline mode, and --enable-mongoose (#939)
closes #938 
closes #941 
closes #943
2020-02-05 14:31:58 -06:00
Scott Fennell
d93f503b91 version 19.0.1 2020-01-15 14:59:50 -06:00
Penn, John M 047828115
1bc245b1ad Explicitly link with the mongoose library that we built. Ref #915 2019-12-02 16:45:28 -06:00
Scott Fennell
086c5c84c3 change version number for release 2019-11-22 08:45:43 -06:00
Alex Lin
ce0cdc9636
Cmake merge (#901)
* Merging changes from cmake branch to master

* Fixing includes for renamed header files

* still need build rule

* Adding warning for swig code for gcc8+

* Adding CMakeLists.txt for data products

* Cmake merge #901

Making adjustments to get cmake working on the Mac (Mojave)

* Cmake merge #901

Changing string append to list append
2019-11-19 09:01:16 -06:00
Derek Bankieris
213964afba Fix typos 2019-11-05 16:03:47 -06:00
Derek Bankieris
9501bd9a5e Fix typo 2019-11-05 16:02:12 -06:00
Derek Bankieris
2d89023031 Generalize from_pid to find_simulation
This allows searching for a sim by any of its parameters over the
multicate channel.
2019-11-04 11:22:48 -06:00
Derek Bankieris
c35ca93830 Add checkpoint functionality to variable_server.py 2019-11-01 15:30:26 -05:00
jmpenn
95c6659733
Incorporate Webserver into Trick, so one only has to include HttpServ… (#886)
* Incorporate Webserver into Trick, so one only has to include HttpServer.sm

* Tweaks in default index.html file

* Rename HTTPServer.sm to WebServer.sm

* Rename http_server to WebServer

* Add --retry to curl invocations in HttpServer makefile.

* Fix #include in VariableServerVariable.hh

* Include cleanup and curl tweaks in the hopes of making Jenkins happy.

* Doh! problem in makefile masked by preinstalled mongoose in usr/local/lib

* DIE Make Bug DIE

* Fix include in WebServer.sm

* WebServer.sm constructor name

* Don't SWIG mongoose.h

* Compile with -std=c++11

* Attempt to fix race condition in makefile

* makefie tweek

* Fix trick library name problem for Centos and Redhat
2019-10-23 11:58:19 -05:00
Scott Fennell
82bae3b0d0 #836 remove all S_default.dat stuff 2019-07-09 15:58:26 -05:00
Alex Lin
d1c08ade7a
Make switching to 32bit compile better #829 (#830)
Added a new configure arugument "--enable-32bit".  If enabled,
TRICK_FORCE_32BIT is automatically set for building Trick and for
all sims built.  Changed the ARCH and added -m32 in the configure
script if 32bit is enabled.  This changes the configure script to
test for 32bit libraries.
2019-06-27 07:58:49 -05:00
Scott Fennell
b23b19195b
Merge pull request #818 from nasa/786-clock-stuff
Add C call to clock_tics_per_sec and also log init job elapsed time
2019-06-18 13:38:18 -05:00
Alex Lin
453a03a809
Get configure with no java and no X to work #735 (#817)
Found if --without-x was specified, that automatically caused an
error condition in the configure script.  Fixed that and only
tested for X windows headers and libs if X is included.  Excluded
a couple of directories from compiling if X is not included.

Didn't seem to be a problem with java.
2019-06-18 11:00:42 -05:00
Alex Lin
497f11f132
Make TRICK_CXX variable to specify c++ compiler #767 (#815)
Changed all references of TRICK_CPPC to TRICK_CXX.  Added a
warning message that TRICK_CPPC has been deprecated.
2019-06-18 11:00:08 -05:00
Scott Fennell
97941ac073 move init_log_stream to Executive.hh, move Executive::process_sim_args from "default data" to Executive::init 2019-06-18 10:34:56 -05:00
dbankieris
053b42512b
Merge pull request #809 from nasa/703
Separate stdout and stderr during CP
2019-06-12 09:15:50 -05:00
Alex Lin
a420418443 TPROCTE_HOME Being Used In Place Of TPRO_HOME #778
Changed the Tsync routing from using the old TPro API to the
new Tsync API.
2019-06-11 15:50:49 -05:00
Alex Lin
a78fcf1bc9 TPROCTE_HOME Being Used In Place Of TPRO_HOME #778
Need to exclude the tsync directory from Trick operations.
2019-06-11 11:22:06 -05:00
Alex Lin
a394f0d187 TPROCTE_HOME Being Used In Place Of TPRO_HOME #778
Needed to make some more fixes to work with modern tsync driver
code.
2019-06-11 09:48:29 -05:00
Derek Bankieris
b3c9e75c1b Separate stdout and stderr during CP
Closes #703
2019-06-07 09:34:53 -05:00
dbankieris
35c2dacac5
Merge pull request #785 from nasa/746
Clean up duplication in makefiles
2019-05-30 16:27:51 -05:00