openc3 5.0.11 → 5.1.1

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of openc3 might be problematic. Click here for more details.

Files changed (280) hide show
  1. checksums.yaml +4 -4
  2. data/Guardfile +3 -0
  3. data/LICENSE.txt +7 -5
  4. data/README.md +11 -9
  5. data/Rakefile +3 -0
  6. data/bin/cstol_converter +3 -0
  7. data/bin/openc3cli +29 -18
  8. data/bin/rubysloc +3 -0
  9. data/data/config/screen.yaml +10 -2
  10. data/data/config/target.yaml +1 -1
  11. data/data/config/widgets.yaml +6 -6
  12. data/ext/mkrf_conf.rb +3 -0
  13. data/ext/openc3/ext/array/array.c +3 -0
  14. data/ext/openc3/ext/buffered_file/buffered_file.c +3 -0
  15. data/ext/openc3/ext/config_parser/config_parser.c +3 -0
  16. data/ext/openc3/ext/crc/crc.c +3 -0
  17. data/ext/openc3/ext/openc3_io/openc3_io.c +3 -0
  18. data/ext/openc3/ext/packet/packet.c +3 -0
  19. data/ext/openc3/ext/platform/platform.c +3 -0
  20. data/ext/openc3/ext/polynomial_conversion/polynomial_conversion.c +3 -0
  21. data/ext/openc3/ext/string/string.c +3 -0
  22. data/ext/openc3/ext/structure/structure.c +3 -0
  23. data/ext/openc3/ext/tabbed_plots_config/tabbed_plots_config.c +3 -0
  24. data/ext/openc3/ext/telemetry/telemetry.c +3 -0
  25. data/lib/cosmos.rb +3 -0
  26. data/lib/cosmosc2.rb +3 -0
  27. data/lib/openc3/accessors/accessor.rb +3 -0
  28. data/lib/openc3/accessors/binary_accessor.rb +3 -0
  29. data/lib/openc3/accessors/cbor_accessor.rb +3 -0
  30. data/lib/openc3/accessors/html_accessor.rb +3 -0
  31. data/lib/openc3/accessors/json_accessor.rb +4 -1
  32. data/lib/openc3/accessors/xml_accessor.rb +3 -0
  33. data/lib/openc3/accessors.rb +3 -0
  34. data/lib/openc3/api/api.rb +3 -0
  35. data/lib/openc3/api/authorized_api.rb +3 -0
  36. data/lib/openc3/api/cmd_api.rb +6 -3
  37. data/lib/openc3/api/config_api.rb +3 -0
  38. data/lib/openc3/api/interface_api.rb +6 -2
  39. data/lib/openc3/api/limits_api.rb +54 -61
  40. data/lib/openc3/api/router_api.rb +6 -3
  41. data/lib/openc3/api/settings_api.rb +3 -0
  42. data/lib/openc3/api/target_api.rb +3 -0
  43. data/lib/openc3/api/tlm_api.rb +27 -32
  44. data/lib/openc3/bridge/bridge.rb +3 -0
  45. data/lib/openc3/bridge/bridge_config.rb +3 -0
  46. data/lib/openc3/bridge/bridge_interface_thread.rb +3 -0
  47. data/lib/openc3/bridge/bridge_router_thread.rb +3 -0
  48. data/lib/openc3/ccsds/ccsds_packet.rb +3 -0
  49. data/lib/openc3/ccsds/ccsds_parser.rb +3 -0
  50. data/lib/openc3/config/config_parser.rb +3 -0
  51. data/lib/openc3/config/meta_config_parser.rb +3 -0
  52. data/lib/openc3/conversions/conversion.rb +3 -0
  53. data/lib/openc3/conversions/generic_conversion.rb +3 -0
  54. data/lib/openc3/conversions/packet_time_formatted_conversion.rb +3 -0
  55. data/lib/openc3/conversions/packet_time_seconds_conversion.rb +3 -0
  56. data/lib/openc3/conversions/polynomial_conversion.rb +3 -0
  57. data/lib/openc3/conversions/processor_conversion.rb +3 -0
  58. data/lib/openc3/conversions/received_count_conversion.rb +3 -0
  59. data/lib/openc3/conversions/received_time_formatted_conversion.rb +3 -0
  60. data/lib/openc3/conversions/received_time_seconds_conversion.rb +3 -0
  61. data/lib/openc3/conversions/segmented_polynomial_conversion.rb +3 -0
  62. data/lib/openc3/conversions/unix_time_conversion.rb +3 -0
  63. data/lib/openc3/conversions/unix_time_formatted_conversion.rb +3 -0
  64. data/lib/openc3/conversions/unix_time_seconds_conversion.rb +3 -0
  65. data/lib/openc3/conversions.rb +3 -0
  66. data/lib/openc3/core_ext/array.rb +3 -0
  67. data/lib/openc3/core_ext/binding.rb +3 -0
  68. data/lib/openc3/core_ext/class.rb +3 -0
  69. data/lib/openc3/core_ext/exception.rb +3 -0
  70. data/lib/openc3/core_ext/file.rb +3 -0
  71. data/lib/openc3/core_ext/hash.rb +3 -0
  72. data/lib/openc3/core_ext/io.rb +3 -0
  73. data/lib/openc3/core_ext/kernel.rb +3 -0
  74. data/lib/openc3/core_ext/math.rb +3 -0
  75. data/lib/openc3/core_ext/matrix.rb +3 -0
  76. data/lib/openc3/core_ext/objectspace.rb +3 -0
  77. data/lib/openc3/core_ext/openc3_io.rb +3 -0
  78. data/lib/openc3/core_ext/range.rb +3 -0
  79. data/lib/openc3/core_ext/socket.rb +3 -0
  80. data/lib/openc3/core_ext/string.rb +3 -0
  81. data/lib/openc3/core_ext/stringio.rb +3 -0
  82. data/lib/openc3/core_ext/tempfile.rb +3 -0
  83. data/lib/openc3/core_ext/time.rb +3 -0
  84. data/lib/openc3/core_ext.rb +3 -0
  85. data/lib/openc3/interfaces/interface.rb +3 -0
  86. data/lib/openc3/interfaces/linc_interface.rb +3 -0
  87. data/lib/openc3/interfaces/protocols/burst_protocol.rb +3 -0
  88. data/lib/openc3/interfaces/protocols/crc_protocol.rb +3 -0
  89. data/lib/openc3/interfaces/protocols/fixed_protocol.rb +3 -0
  90. data/lib/openc3/interfaces/protocols/ignore_packet_protocol.rb +3 -0
  91. data/lib/openc3/interfaces/protocols/length_protocol.rb +3 -0
  92. data/lib/openc3/interfaces/protocols/override_protocol.rb +3 -0
  93. data/lib/openc3/interfaces/protocols/preidentified_protocol.rb +3 -0
  94. data/lib/openc3/interfaces/protocols/protocol.rb +3 -0
  95. data/lib/openc3/interfaces/protocols/template_protocol.rb +3 -0
  96. data/lib/openc3/interfaces/protocols/terminated_protocol.rb +3 -0
  97. data/lib/openc3/interfaces/serial_interface.rb +3 -0
  98. data/lib/openc3/interfaces/simulated_target_interface.rb +3 -0
  99. data/lib/openc3/interfaces/stream_interface.rb +3 -0
  100. data/lib/openc3/interfaces/tcpip_client_interface.rb +3 -0
  101. data/lib/openc3/interfaces/tcpip_server_interface.rb +3 -0
  102. data/lib/openc3/interfaces/udp_interface.rb +3 -0
  103. data/lib/openc3/interfaces.rb +3 -0
  104. data/lib/openc3/io/buffered_file.rb +3 -0
  105. data/lib/openc3/io/io_multiplexer.rb +8 -0
  106. data/lib/openc3/io/json_api_object.rb +5 -2
  107. data/lib/openc3/io/json_drb.rb +3 -0
  108. data/lib/openc3/io/json_drb_object.rb +5 -2
  109. data/lib/openc3/io/json_drb_rack.rb +3 -0
  110. data/lib/openc3/io/json_rpc.rb +8 -3
  111. data/lib/openc3/io/openc3_snmp.rb +3 -0
  112. data/lib/openc3/io/posix_serial_driver.rb +3 -0
  113. data/lib/openc3/io/raw_logger.rb +3 -0
  114. data/lib/openc3/io/raw_logger_pair.rb +3 -0
  115. data/lib/openc3/io/serial_driver.rb +3 -0
  116. data/lib/openc3/io/stderr.rb +3 -0
  117. data/lib/openc3/io/stdout.rb +3 -0
  118. data/lib/openc3/io/udp_sockets.rb +3 -0
  119. data/lib/openc3/io/win32_serial_driver.rb +3 -0
  120. data/lib/openc3/logs/buffered_packet_log_reader.rb +65 -0
  121. data/lib/openc3/logs/buffered_packet_log_writer.rb +120 -0
  122. data/lib/openc3/logs/log_writer.rb +95 -40
  123. data/lib/openc3/logs/packet_log_constants.rb +9 -0
  124. data/lib/openc3/logs/packet_log_reader.rb +34 -3
  125. data/lib/openc3/logs/packet_log_writer.rb +85 -18
  126. data/lib/openc3/logs/text_log_writer.rb +9 -5
  127. data/lib/openc3/logs.rb +8 -2
  128. data/lib/openc3/microservices/cleanup_microservice.rb +18 -18
  129. data/lib/openc3/microservices/decom_microservice.rb +30 -24
  130. data/lib/openc3/microservices/interface_microservice.rb +136 -91
  131. data/lib/openc3/microservices/log_microservice.rb +35 -13
  132. data/lib/openc3/microservices/microservice.rb +16 -14
  133. data/lib/openc3/microservices/plugin_microservice.rb +3 -1
  134. data/lib/openc3/microservices/reaction_microservice.rb +4 -1
  135. data/lib/openc3/microservices/reducer_microservice.rb +332 -149
  136. data/lib/openc3/microservices/router_microservice.rb +3 -0
  137. data/lib/openc3/microservices/text_log_microservice.rb +22 -7
  138. data/lib/openc3/microservices/timeline_microservice.rb +4 -1
  139. data/lib/openc3/microservices/trigger_group_microservice.rb +3 -0
  140. data/lib/openc3/models/activity_model.rb +3 -0
  141. data/lib/openc3/models/auth_model.rb +3 -0
  142. data/lib/openc3/models/cvt_model.rb +14 -5
  143. data/lib/openc3/models/environment_model.rb +3 -0
  144. data/lib/openc3/models/gem_model.rb +30 -51
  145. data/lib/openc3/models/info_model.rb +3 -0
  146. data/lib/openc3/models/interface_model.rb +3 -0
  147. data/lib/openc3/models/interface_status_model.rb +4 -1
  148. data/lib/openc3/models/metadata_model.rb +3 -0
  149. data/lib/openc3/models/metric_model.rb +3 -0
  150. data/lib/openc3/models/microservice_model.rb +9 -6
  151. data/lib/openc3/models/microservice_status_model.rb +4 -1
  152. data/lib/openc3/models/model.rb +3 -0
  153. data/lib/openc3/models/note_model.rb +3 -0
  154. data/lib/openc3/models/notification_model.rb +3 -0
  155. data/lib/openc3/models/ping_model.rb +3 -0
  156. data/lib/openc3/models/plugin_model.rb +20 -14
  157. data/lib/openc3/models/process_status_model.rb +4 -1
  158. data/lib/openc3/models/reaction_model.rb +3 -0
  159. data/lib/openc3/models/reducer_model.rb +31 -24
  160. data/lib/openc3/models/router_model.rb +3 -0
  161. data/lib/openc3/models/router_status_model.rb +3 -0
  162. data/lib/openc3/models/scope_model.rb +3 -4
  163. data/lib/openc3/models/settings_model.rb +3 -0
  164. data/lib/openc3/models/sorted_model.rb +3 -0
  165. data/lib/openc3/models/target_model.rb +61 -94
  166. data/lib/openc3/models/timeline_model.rb +4 -1
  167. data/lib/openc3/models/tool_config_model.rb +3 -0
  168. data/lib/openc3/models/tool_model.rb +11 -9
  169. data/lib/openc3/models/trigger_group_model.rb +3 -0
  170. data/lib/openc3/models/trigger_model.rb +3 -0
  171. data/lib/openc3/models/widget_model.rb +18 -11
  172. data/lib/openc3/operators/microservice_operator.rb +3 -0
  173. data/lib/openc3/operators/operator.rb +105 -34
  174. data/lib/openc3/packets/commands.rb +3 -0
  175. data/lib/openc3/packets/json_packet.rb +87 -14
  176. data/lib/openc3/packets/limits.rb +4 -1
  177. data/lib/openc3/packets/limits_response.rb +3 -0
  178. data/lib/openc3/packets/packet.rb +5 -1
  179. data/lib/openc3/packets/packet_config.rb +3 -0
  180. data/lib/openc3/packets/packet_item.rb +9 -3
  181. data/lib/openc3/packets/packet_item_limits.rb +3 -0
  182. data/lib/openc3/packets/parsers/format_string_parser.rb +3 -0
  183. data/lib/openc3/packets/parsers/limits_parser.rb +3 -0
  184. data/lib/openc3/packets/parsers/limits_response_parser.rb +3 -0
  185. data/lib/openc3/packets/parsers/packet_item_parser.rb +3 -0
  186. data/lib/openc3/packets/parsers/packet_parser.rb +3 -0
  187. data/lib/openc3/packets/parsers/processor_parser.rb +3 -0
  188. data/lib/openc3/packets/parsers/state_parser.rb +3 -0
  189. data/lib/openc3/packets/parsers/xtce_converter.rb +3 -0
  190. data/lib/openc3/packets/parsers/xtce_parser.rb +3 -0
  191. data/lib/openc3/packets/structure.rb +3 -0
  192. data/lib/openc3/packets/structure_item.rb +3 -0
  193. data/lib/openc3/packets/telemetry.rb +3 -0
  194. data/lib/openc3/processors/processor.rb +3 -0
  195. data/lib/openc3/processors/statistics_processor.rb +3 -0
  196. data/lib/openc3/processors/watermark_processor.rb +3 -0
  197. data/lib/openc3/processors.rb +3 -0
  198. data/lib/openc3/script/api_shared.rb +35 -6
  199. data/lib/openc3/script/calendar.rb +3 -0
  200. data/lib/openc3/script/commands.rb +3 -0
  201. data/lib/openc3/script/exceptions.rb +3 -0
  202. data/lib/openc3/script/extract.rb +3 -0
  203. data/lib/openc3/script/limits.rb +3 -24
  204. data/lib/openc3/script/script.rb +11 -7
  205. data/lib/openc3/script/script_runner.rb +3 -0
  206. data/lib/openc3/script/storage.rb +33 -16
  207. data/lib/openc3/script/suite.rb +3 -0
  208. data/lib/openc3/script/suite_results.rb +3 -0
  209. data/lib/openc3/script/suite_runner.rb +3 -0
  210. data/lib/openc3/script/telemetry.rb +43 -0
  211. data/lib/openc3/script.rb +3 -0
  212. data/lib/openc3/streams/serial_stream.rb +3 -0
  213. data/lib/openc3/streams/stream.rb +3 -0
  214. data/lib/openc3/streams/tcpip_client_stream.rb +3 -0
  215. data/lib/openc3/streams/tcpip_socket_stream.rb +3 -0
  216. data/lib/openc3/system/system.rb +23 -10
  217. data/lib/openc3/system/system_config.rb +3 -0
  218. data/lib/openc3/system/target.rb +3 -0
  219. data/lib/openc3/system.rb +3 -0
  220. data/lib/openc3/tools/cmd_tlm_server/api.rb +3 -0
  221. data/lib/openc3/tools/cmd_tlm_server/cmd_tlm_server_config.rb +3 -0
  222. data/lib/openc3/tools/cmd_tlm_server/interface_thread.rb +3 -0
  223. data/lib/openc3/tools/table_manager/table.rb +3 -0
  224. data/lib/openc3/tools/table_manager/table_config.rb +3 -0
  225. data/lib/openc3/tools/table_manager/table_item.rb +3 -0
  226. data/lib/openc3/tools/table_manager/table_item_parser.rb +3 -0
  227. data/lib/openc3/tools/table_manager/table_manager_core.rb +3 -0
  228. data/lib/openc3/tools/table_manager/table_parser.rb +3 -0
  229. data/lib/openc3/tools/test_runner/test.rb +3 -0
  230. data/lib/openc3/top_level.rb +3 -0
  231. data/lib/openc3/topics/autonomic_topic.rb +3 -0
  232. data/lib/openc3/topics/calendar_topic.rb +3 -0
  233. data/lib/openc3/topics/command_decom_topic.rb +4 -1
  234. data/lib/openc3/topics/command_topic.rb +6 -1
  235. data/lib/openc3/topics/config_topic.rb +3 -0
  236. data/lib/openc3/topics/interface_topic.rb +9 -2
  237. data/lib/openc3/topics/limits_event_topic.rb +144 -10
  238. data/lib/openc3/topics/notifications_topic.rb +3 -0
  239. data/lib/openc3/topics/router_topic.rb +10 -3
  240. data/lib/openc3/topics/telemetry_decom_topic.rb +26 -20
  241. data/lib/openc3/topics/telemetry_reduced_topics.rb +92 -0
  242. data/lib/openc3/topics/telemetry_topic.rb +5 -2
  243. data/lib/openc3/topics/timeline_topic.rb +3 -0
  244. data/lib/openc3/topics/topic.rb +3 -0
  245. data/lib/openc3/utilities/authentication.rb +3 -0
  246. data/lib/openc3/utilities/authorization.rb +3 -0
  247. data/lib/openc3/utilities/aws_bucket.rb +199 -0
  248. data/lib/openc3/utilities/bucket.rb +82 -0
  249. data/lib/openc3/utilities/bucket_file_cache.rb +264 -0
  250. data/lib/openc3/utilities/bucket_utilities.rb +109 -0
  251. data/lib/openc3/utilities/crc.rb +3 -0
  252. data/lib/openc3/utilities/csv.rb +3 -0
  253. data/lib/openc3/utilities/local_bucket.rb +28 -0
  254. data/lib/openc3/utilities/local_mode.rb +47 -61
  255. data/lib/openc3/utilities/logger.rb +7 -1
  256. data/lib/openc3/utilities/message_log.rb +7 -4
  257. data/lib/openc3/utilities/metric.rb +4 -1
  258. data/lib/openc3/utilities/open_telemetry.rb +96 -0
  259. data/lib/openc3/utilities/process_manager.rb +3 -0
  260. data/lib/openc3/utilities/quaternion.rb +3 -0
  261. data/lib/openc3/utilities/ruby_lex_utils.rb +3 -0
  262. data/lib/openc3/utilities/s3_autoload.rb +3 -3
  263. data/lib/openc3/utilities/simulated_target.rb +3 -0
  264. data/lib/openc3/utilities/sleeper.rb +3 -0
  265. data/lib/openc3/utilities/store.rb +3 -0
  266. data/lib/openc3/utilities/store_autoload.rb +30 -23
  267. data/lib/openc3/utilities/target_file.rb +70 -83
  268. data/lib/openc3/utilities/zip.rb +3 -0
  269. data/lib/openc3/utilities.rb +3 -0
  270. data/lib/openc3/version.rb +6 -6
  271. data/lib/openc3/win32/excel.rb +3 -0
  272. data/lib/openc3/win32/win32.rb +3 -0
  273. data/lib/openc3/win32/win32_main.rb +3 -0
  274. data/lib/openc3.rb +3 -0
  275. data/tasks/gemfile_stats.rake +3 -0
  276. data/tasks/spec.rake +3 -0
  277. data/templates/plugin-template/plugin.gemspec +1 -1
  278. metadata +112 -6
  279. data/lib/openc3/utilities/s3.rb +0 -220
  280. data/lib/openc3/utilities/s3_file_cache.rb +0 -274
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 89287db0131e005414e13d5e1ad18916fb85af1fecd415feb234ded2dc7808a4
4
- data.tar.gz: 18ba67b0e23fb908c256540fe380e863655d7fd8b9368dd42fea34d254820c61
3
+ metadata.gz: fa2f9aabf07f0b9c9237f2f44644c8da055ca3069d46399db837b3b9bb22fdb3
4
+ data.tar.gz: 16afda4302a384d554872ff416ba76f3c822cf36f986687256f71e6c2e729370
5
5
  SHA512:
6
- metadata.gz: c181ccc282a7a97baf9f5bba954822d6e38499ead775bb8261216e70f1ecd4870bc071f2c9a56aa835697f4596e0748df018bde8a18486deb1a9a63360217f66
7
- data.tar.gz: ea11fef50705c7cfa4c74f239abbf0c0c02b163a10c3cda6db15408eb3fef1fd69501df8be844741d49f274a1ad9edc01af866614f20ccd400c24f5ab73a512d
6
+ metadata.gz: 394108166336ca206f0d56caa9d805e3c694a8c80b47915e3552fab228e8a9418bb61bd616ac897127e01b920d7da28d7e3c2bb0673e3e28e45283f44d0c9eda
7
+ data.tar.gz: ce284cea11dc3bf1c788cb89bfced3ff783b892902ec0f0dcc1922ba6edffda0ef9fe0bc5ef358fec95949e15425f8241e66a36f7a5f9472a39167e0cc4f9b53
data/Guardfile CHANGED
@@ -16,6 +16,9 @@
16
16
  # Modified by OpenC3, Inc.
17
17
  # All changes Copyright 2022, OpenC3, Inc.
18
18
  # All Rights Reserved
19
+ #
20
+ # This file may also be used under the terms of a commercial license
21
+ # if purchased from OpenC3, Inc.
19
22
 
20
23
  # A sample Guardfile
21
24
  # More info at https://github.com/guard/guard#readme
data/LICENSE.txt CHANGED
@@ -1,19 +1,21 @@
1
- The OpenC3 software program is a derived work based on the
1
+ The OpenC3 COSMOS software program is a derived work based on the
2
2
  Ball Aerospace COSMOS software licensed under the
3
3
  GNU Affero General Public License, version 3 with the Addendums listed below.
4
4
 
5
+ Commercial licensing is also available for purchase from OpenC3, Inc.
6
+
5
7
  Please note that the verbiage of the AGPL below are copyrighted
6
8
  by the Free Software Foundation, but the instance of code to which the
7
- licenses refer (the OpenC3 software) is copyrighted by
9
+ licenses refer (the OpenC3 COSMOS software) is copyrighted by
8
10
  OpenC3 Inc. and/or Ball Aerospace and Technologies Corp as marked in each file.
9
11
 
10
12
  Also please note that the only valid versions of the AGPL
11
- that pertain to OpenC3 are the particular versions of
13
+ that pertain to OpenC3 COSMOS are the particular versions of
12
14
  the license reproduced below (i.e., versions 3, rather than any other
13
15
  versions of the AGPL), unless explicitly otherwise stated.
14
16
 
15
17
  OpenC3 AGPL, version 3 LICENSE ADDENDUMS
16
- OpenC3 Version 5, 16 July 2022
18
+ OpenC3 COSMOS Version 5, 16 July 2022
17
19
 
18
20
  The following addendums are made under section 7 of the GNU Affero General
19
21
  Public License, version 3.
@@ -24,7 +26,7 @@ Public License, version 3.
24
26
  2. Modified applications and source files must be clearly marked as
25
27
  "modified" with the modification author and company indicated
26
28
  immediately following the copyright and legal notices.
27
- 3. OpenC3 is trademark of OpenC3, Inc. and may be used for publicity purposes
29
+ 3. OpenC3, and OpenC3 COSMOS are trademarks of OpenC3, Inc. and may be used for publicity purposes
28
30
  only in a manner that constitutes "fair use" under applicable trademark
29
31
  law, except with the express, written permission of OpenC3 Inc.
30
32
 
data/README.md CHANGED
@@ -11,27 +11,29 @@
11
11
  `set RUBYLIB=C:\git\openc3\openc3\lib`
12
12
 
13
13
  ## Windows Environment variables
14
+
14
15
  ```
15
16
  set OPENC3_REDIS_USERNAME=openc3
16
17
  set OPENC3_REDIS_PASSWORD=openc3password
17
- set OPENC3_MINIO_USERNAME=openc3minio
18
- set OPENC3_MINIO_PASSWORD=openc3miniopassword
18
+ set OPENC3_BUCKET_USERNAME=openc3minio
19
+ set OPENC3_BUCKET_PASSWORD=openc3miniopassword
19
20
  set OPENC3_SERVICE_PASSWORD=openc3service
20
21
  set OPENC3_SR_REDIS_USERNAME=scriptrunner
21
22
  set OPENC3_SR_REDIS_PASSWORD=scriptrunnerpassword
22
- set OPENC3_SR_MINIO_USERNAME=scriptrunnerminio
23
- set OPENC3_SR_MINIO_PASSWORD=scriptrunnerminiopassword
23
+ set OPENC3_SR_BUCKET_USERNAME=scriptrunnerminio
24
+ set OPENC3_SR_BUCKET_PASSWORD=scriptrunnerminiopassword
24
25
  ```
25
26
 
26
27
  ## Linux Environment variables
28
+
27
29
  ```
28
30
  OPENC3_REDIS_USERNAME=openc3
29
31
  OPENC3_REDIS_PASSWORD=openc3password
30
- OPENC3_MINIO_USERNAME=openc3minio
31
- OPENC3_MINIO_PASSWORD=openc3miniopassword
32
+ OPENC3_BUCKET_USERNAME=openc3minio
33
+ OPENC3_BUCKET_PASSWORD=openc3miniopassword
32
34
  OPENC3_SERVICE_PASSWORD=openc3service
33
35
  OPENC3_SR_REDIS_USERNAME=scriptrunner
34
36
  OPENC3_SR_REDIS_PASSWORD=scriptrunnerpassword
35
- OPENC3_SR_MINIO_USERNAME=scriptrunnerminio
36
- OPENC3_SR_MINIO_PASSWORD=scriptrunnerminiopassword
37
- ```
37
+ OPENC3_SR_BUCKET_USERNAME=scriptrunnerminio
38
+ OPENC3_SR_BUCKET_PASSWORD=scriptrunnerminiopassword
39
+ ```
data/Rakefile CHANGED
@@ -16,6 +16,9 @@
16
16
  # Modified by OpenC3, Inc.
17
17
  # All changes Copyright 2022, OpenC3, Inc.
18
18
  # All Rights Reserved
19
+ #
20
+ # This file may also be used under the terms of a commercial license
21
+ # if purchased from OpenC3, Inc.
19
22
 
20
23
  require 'open3'
21
24
 
data/bin/cstol_converter CHANGED
@@ -17,6 +17,9 @@
17
17
  # Modified by OpenC3, Inc.
18
18
  # All changes Copyright 2022, OpenC3, Inc.
19
19
  # All Rights Reserved
20
+ #
21
+ # This file may also be used under the terms of a commercial license
22
+ # if purchased from OpenC3, Inc.
20
23
 
21
24
  # This file converts OASIS CSTOL files to OpenC3 scripts
22
25
 
data/bin/openc3cli CHANGED
@@ -17,12 +17,15 @@
17
17
  # Modified by OpenC3, Inc.
18
18
  # All changes Copyright 2022, OpenC3, Inc.
19
19
  # All Rights Reserved
20
+ #
21
+ # This file may also be used under the terms of a commercial license
22
+ # if purchased from OpenC3, Inc.
20
23
 
21
24
  # This file will handle OpenC3 tasks such as instantiating a new project
22
25
 
23
26
  require 'openc3'
24
27
  require 'openc3/utilities/local_mode'
25
- require 'openc3/utilities/s3'
28
+ require 'openc3/utilities/bucket'
26
29
  require 'openc3/models/scope_model'
27
30
  require 'openc3/models/plugin_model'
28
31
  require 'openc3/models/gem_model'
@@ -40,6 +43,8 @@ require 'erb'
40
43
  require 'pp'
41
44
 
42
45
  $redis_url = "redis://#{ENV['OPENC3_REDIS_HOSTNAME']}:#{ENV['OPENC3_REDIS_PORT']}"
46
+ # Initialize the connection to the bucket library
47
+ OpenC3::Bucket.getClient()
43
48
 
44
49
  # Build the OpenStruct and OptionParser here as constants so we can use in methods
45
50
  MIGRATE_OPTIONS = OpenStruct.new
@@ -63,7 +68,7 @@ def print_usage
63
68
  puts " #{MIGRATE_PARSER}"
64
69
  puts " cli bridge CONFIG_FILENAME # Run OpenC3 host bridge"
65
70
  puts " cli bridgesetup CONFIG_FILENAME # Create a default config file"
66
- puts " cli geminstall GEMFILENAME # Install loaded gem to /gems"
71
+ puts " cli geminstall GEMFILENAME SCOPE # Install loaded gem to /gems"
67
72
  puts " cli rubysloc # Counts Ruby SLOC recursively. Run with --help for more info."
68
73
  puts " cli xtce_converter # Convert to and from the XTCE format. Run with --help for more info."
69
74
  puts " cli cstol_converter # Converts CSTOL files (.prc) to OpenC3. Run with --help for more info."
@@ -81,7 +86,7 @@ def generate(args)
81
86
  end
82
87
 
83
88
  plugin = args[1].downcase.gsub(/_+|-+/, '-')
84
- plugin_name = "openc3-#{plugin}"
89
+ plugin_name = "openc3-cosmos-#{plugin}"
85
90
  if File.exist?(plugin_name)
86
91
  abort("Plugin #{plugin_name} already exists!")
87
92
  end
@@ -243,18 +248,20 @@ def xtce_converter(args)
243
248
  variables = nil
244
249
  variables = JSON.parse(File.read(options[:variables]), :allow_nan => true, :create_additions => true) if options[:variables]
245
250
  puts "Installing #{File.basename(options[:plugin])}"
246
- plugin_hash = OpenC3::PluginModel.install_phase1(options[:plugin], variables, scope: 'DEFAULT', validate_only: true)
251
+ plugin_hash = OpenC3::PluginModel.install_phase1(options[:plugin], existing_variables: variables, scope: 'DEFAULT', validate_only: true)
247
252
  plugin_hash['variables']['xtce_output'] = options[:output]
248
- OpenC3::PluginModel.install_phase2(plugin_hash['name'], plugin_hash['variables'], scope: 'DEFAULT', validate_only: true,
253
+ OpenC3::PluginModel.install_phase2(plugin_hash, scope: 'DEFAULT', validate_only: true,
249
254
  gem_file_path: options[:plugin])
250
255
  result = 0 # bash and Windows consider 0 success
251
256
  rescue => e
252
257
  puts "Error: #{e.message}"
258
+ puts e.backtrace
253
259
  result = ERROR_CODE
254
260
  ensure
255
- name = Psych.safe_load(`gem spec #{options[:plugin]} name`).to_s
256
- version = Psych.safe_load(`gem spec #{options[:plugin]} version`, permitted_classes: [Gem::Version]).to_s
257
- Gem::Uninstaller.new(name, {:version => version, :force => true}).uninstall
261
+ # Uninstall not necessary because this is run against a temporary container
262
+ # name = Psych.safe_load(`gem spec #{options[:plugin]} name`).to_s
263
+ # version = Psych.safe_load(`gem spec #{options[:plugin]} version`, permitted_classes: [Gem::Version]).to_s
264
+ # Gem::Uninstaller.new(name, {:version => version, :force => true}).uninstall
258
265
  exit(result)
259
266
  end
260
267
  else
@@ -306,13 +313,10 @@ rescue => e
306
313
  puts "Error: #{e.message}"
307
314
  result = ERROR_CODE
308
315
  ensure
309
- begin
310
- name = Psych.safe_load(`gem spec #{plugin_file_path} name`).to_s
311
- version = Psych.safe_load(`gem spec #{plugin_file_path} version`, permitted_classes: [Gem::Version]).to_s
312
- Gem::Uninstaller.new(name, {:version => version, :force => true}).uninstall
313
- rescue => e
314
- puts "Could not uninstall #{plugin_file_path} due to #{e.message}"
315
- end
316
+ # Uninstall not necessary because this is run against a temporary container
317
+ # name = Psych.safe_load(`gem spec #{plugin_file_path} name`).to_s
318
+ # version = Psych.safe_load(`gem spec #{plugin_file_path} version`, permitted_classes: [Gem::Version]).to_s
319
+ # Gem::Uninstaller.new(name, {:version => version, :force => true}).uninstall
316
320
  exit(result)
317
321
  end
318
322
 
@@ -447,8 +451,8 @@ def unload_plugin(plugin_name, scope:)
447
451
  end
448
452
  end
449
453
 
450
- def gem_install(gem_filename)
451
- OpenC3::GemModel.install(gem_filename)
454
+ def gem_install(gem_filename, scope:)
455
+ OpenC3::GemModel.install(gem_filename, scope: scope)
452
456
  end
453
457
 
454
458
  def get_redis_keys
@@ -496,7 +500,7 @@ if __FILE__ == $0
496
500
  unload_plugin(ARGV[1], scope: ARGV[2])
497
501
 
498
502
  when 'geminstall'
499
- gem_install(ARGV[1])
503
+ gem_install(ARGV[1], scope: ARGV[2])
500
504
 
501
505
  when 'generate'
502
506
  generate(ARGV[1..-1])
@@ -583,6 +587,13 @@ if __FILE__ == $0
583
587
  when 'localinit'
584
588
  OpenC3::LocalMode.local_init()
585
589
 
590
+ when 'initbuckets'
591
+ client = OpenC3::Bucket.getClient()
592
+ client.create(ENV['OPENC3_CONFIG_BUCKET'])
593
+ client.create(ENV['OPENC3_LOGS_BUCKET'])
594
+ client.create(ENV['OPENC3_TOOLS_BUCKET'])
595
+ client.ensure_public(ENV['OPENC3_TOOLS_BUCKET'])
596
+
586
597
  else # Unknown task
587
598
  print_usage()
588
599
  abort("Unknown task: #{ARGV[0]}")
data/bin/rubysloc CHANGED
@@ -17,6 +17,9 @@
17
17
  # Modified by OpenC3, Inc.
18
18
  # All changes Copyright 2022, OpenC3, Inc.
19
19
  # All Rights Reserved
20
+ #
21
+ # This file may also be used under the terms of a commercial license
22
+ # if purchased from OpenC3, Inc.
20
23
 
21
24
  # This file provides a simple ruby sloc counter.
22
25
  # Blank lines and comment lines are ignored. All other
@@ -21,6 +21,14 @@ END:
21
21
  description: All layout widgets must be closed to properly identify where they
22
22
  stop. For example, a VERTICALBOX keyword must be matched with an END keyword
23
23
  to indicate where the VERTICALBOX ends.
24
+ STALE_TIME:
25
+ summary: Values are marked stale if the packet time is more than Stale Time seconds in the past
26
+ parameters:
27
+ - name: value
28
+ required: true
29
+ description: Items from packets with RECEIVED_TIMESECONDS greater than this value in the past will be marked stale.
30
+ The default is 30s. Recommend a minimum of 2s to avoid false positives due to race conditions.
31
+ values: \d+
24
32
  GLOBAL_SETTING:
25
33
  summary: Applies a widget setting to all widgets of a certain type
26
34
  parameters:
@@ -122,11 +130,11 @@ SUBSETTING:
122
130
  string, e.g. "font-size: 10px"
123
131
  values: .*
124
132
  NAMED_WIDGET:
125
- summary: Name a widget to allow access to it via the get_named_widget method
133
+ summary: Name a widget to allow access to it via the getNamedWidget method
126
134
  description: To programatically access parts of a telemetry screen you need
127
135
  to name the widget. This is useful when creating screens with buttons that
128
136
  read values from other widgets.
129
- warning: get_named_widget returns the widget itself and thus must be operated
137
+ warning: getNamedWidget returns the widget itself and thus must be operated
130
138
  on using methods native to that widget
131
139
  parameters:
132
140
  - name: Widget Name
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  TARGET:
3
3
  summary: Defines a new target
4
- example: TARGET INST
4
+ example: TARGET INST INST
5
5
  parameters:
6
6
  - name: Folder Name
7
7
  required: true
@@ -746,7 +746,7 @@ VALUELIMITSBAR:
746
746
  values: <%= %w(RAW CONVERTED FORMATTED WITH_UNITS) %>
747
747
  - name: Number of characters
748
748
  required: false
749
- description: The number of characters wide to make the value box (default = 8)
749
+ description: The number of characters wide to make the value box (default = 12)
750
750
  values: .*
751
751
  VALUELIMITSCOLUMN:
752
752
  summary: Displays an item VALUE followed by LIMITSCOLUMN
@@ -938,7 +938,7 @@ PROGRESSBAR:
938
938
  values: .*
939
939
  - name: Width
940
940
  required: false
941
- description: Width of the progress bar (default = 80 pixels
941
+ description: Width of the progress bar (default = 100 pixels)
942
942
  values: .*
943
943
  - name: Value type
944
944
  required: false
@@ -975,7 +975,7 @@ RANGEBAR:
975
975
  values: <%= %w(RAW CONVERTED FORMATTED WITH_UNITS) %>
976
976
  - name: Width
977
977
  required: false
978
- description: Width of the range bar (default = 160)
978
+ description: Width of the range bar (default = 100)
979
979
  values: .*
980
980
  - name: Height
981
981
  required: false
@@ -1036,11 +1036,11 @@ TEXTBOX:
1036
1036
  values: .+
1037
1037
  - name: Width
1038
1038
  required: false
1039
- description: Width of the range bar (default = 30)
1039
+ description: Width of the textbox in px (default = 200)
1040
1040
  values: .*
1041
1041
  - name: Height
1042
1042
  required: false
1043
- description: Height of the range bar (default = 100)
1043
+ description: Height of the textbox in px (default = 200)
1044
1044
  values: .*
1045
1045
  # TIMEGRAPH:
1046
1046
  # summary: Displays a line graph of a telemetry items value verses time
@@ -1183,7 +1183,7 @@ BUTTON:
1183
1183
  Upon clicking, the button executes the Ruby code assigned. Buttons
1184
1184
  can be used to send commands and perform other tasks. If you want your button
1185
1185
  to use values from other widgets, define them as named widgets and read their
1186
- values using the get_named_widget("WIDGET_NAME").text method.
1186
+ values using the getNamedWidget("WIDGET_NAME").text method.
1187
1187
  warning:
1188
1188
  If your button logic gets complex it's recommended to require a separate
1189
1189
  script and pass the screen to the script using self,
data/ext/mkrf_conf.rb CHANGED
@@ -16,6 +16,9 @@
16
16
  # Modified by OpenC3, Inc.
17
17
  # All changes Copyright 2022, OpenC3, Inc.
18
18
  # All Rights Reserved
19
+ #
20
+ # This file may also be used under the terms of a commercial license
21
+ # if purchased from OpenC3, Inc.
19
22
 
20
23
  # This file gems specific to platform
21
24
 
@@ -17,6 +17,9 @@
17
17
  # Modified by OpenC3, Inc.
18
18
  # All changes Copyright 2022, OpenC3, Inc.
19
19
  # All Rights Reserved
20
+ #
21
+ # This file may also be used under the terms of a commercial license
22
+ # if purchased from OpenC3, Inc.
20
23
  */
21
24
 
22
25
  #include "ruby.h"
@@ -17,6 +17,9 @@
17
17
  # Modified by OpenC3, Inc.
18
18
  # All changes Copyright 2022, OpenC3, Inc.
19
19
  # All Rights Reserved
20
+ #
21
+ # This file may also be used under the terms of a commercial license
22
+ # if purchased from OpenC3, Inc.
20
23
  */
21
24
 
22
25
  #include "ruby.h"
@@ -17,6 +17,9 @@
17
17
  # Modified by OpenC3, Inc.
18
18
  # All changes Copyright 2022, OpenC3, Inc.
19
19
  # All Rights Reserved
20
+ #
21
+ # This file may also be used under the terms of a commercial license
22
+ # if purchased from OpenC3, Inc.
20
23
  */
21
24
 
22
25
  #include "ruby.h"
@@ -17,6 +17,9 @@
17
17
  # Modified by OpenC3, Inc.
18
18
  # All changes Copyright 2022, OpenC3, Inc.
19
19
  # All Rights Reserved
20
+ #
21
+ # This file may also be used under the terms of a commercial license
22
+ # if purchased from OpenC3, Inc.
20
23
  */
21
24
 
22
25
  #include "ruby.h"
@@ -17,6 +17,9 @@
17
17
  # Modified by OpenC3, Inc.
18
18
  # All changes Copyright 2022, OpenC3, Inc.
19
19
  # All Rights Reserved
20
+ #
21
+ # This file may also be used under the terms of a commercial license
22
+ # if purchased from OpenC3, Inc.
20
23
  */
21
24
 
22
25
  #include "ruby.h"
@@ -17,6 +17,9 @@
17
17
  # Modified by OpenC3, Inc.
18
18
  # All changes Copyright 2022, OpenC3, Inc.
19
19
  # All Rights Reserved
20
+ #
21
+ # This file may also be used under the terms of a commercial license
22
+ # if purchased from OpenC3, Inc.
20
23
  */
21
24
 
22
25
  #include "ruby.h"
@@ -17,6 +17,9 @@
17
17
  # Modified by OpenC3, Inc.
18
18
  # All changes Copyright 2022, OpenC3, Inc.
19
19
  # All Rights Reserved
20
+ #
21
+ # This file may also be used under the terms of a commercial license
22
+ # if purchased from OpenC3, Inc.
20
23
  */
21
24
 
22
25
  #include "ruby.h"
@@ -17,6 +17,9 @@
17
17
  # Modified by OpenC3, Inc.
18
18
  # All changes Copyright 2022, OpenC3, Inc.
19
19
  # All Rights Reserved
20
+ #
21
+ # This file may also be used under the terms of a commercial license
22
+ # if purchased from OpenC3, Inc.
20
23
  */
21
24
 
22
25
  #include "ruby.h"
@@ -17,6 +17,9 @@
17
17
  # Modified by OpenC3, Inc.
18
18
  # All changes Copyright 2022, OpenC3, Inc.
19
19
  # All Rights Reserved
20
+ #
21
+ # This file may also be used under the terms of a commercial license
22
+ # if purchased from OpenC3, Inc.
20
23
  */
21
24
 
22
25
  #include "ruby.h"
@@ -17,6 +17,9 @@
17
17
  # Modified by OpenC3, Inc.
18
18
  # All changes Copyright 2022, OpenC3, Inc.
19
19
  # All Rights Reserved
20
+ #
21
+ # This file may also be used under the terms of a commercial license
22
+ # if purchased from OpenC3, Inc.
20
23
  */
21
24
 
22
25
  #include "ruby.h"
@@ -17,6 +17,9 @@
17
17
  # Modified by OpenC3, Inc.
18
18
  # All changes Copyright 2022, OpenC3, Inc.
19
19
  # All Rights Reserved
20
+ #
21
+ # This file may also be used under the terms of a commercial license
22
+ # if purchased from OpenC3, Inc.
20
23
  */
21
24
 
22
25
  #include "ruby.h"
@@ -17,6 +17,9 @@
17
17
  # Modified by OpenC3, Inc.
18
18
  # All changes Copyright 2022, OpenC3, Inc.
19
19
  # All Rights Reserved
20
+ #
21
+ # This file may also be used under the terms of a commercial license
22
+ # if purchased from OpenC3, Inc.
20
23
  */
21
24
 
22
25
  #include "ruby.h"
data/lib/cosmos.rb CHANGED
@@ -16,5 +16,8 @@
16
16
  # Modified by OpenC3, Inc.
17
17
  # All changes Copyright 2022, OpenC3, Inc.
18
18
  # All Rights Reserved
19
+ #
20
+ # This file may also be used under the terms of a commercial license
21
+ # if purchased from OpenC3, Inc.
19
22
 
20
23
  require 'openc3'
data/lib/cosmosc2.rb CHANGED
@@ -16,5 +16,8 @@
16
16
  # Modified by OpenC3, Inc.
17
17
  # All changes Copyright 2022, OpenC3, Inc.
18
18
  # All Rights Reserved
19
+ #
20
+ # This file may also be used under the terms of a commercial license
21
+ # if purchased from OpenC3, Inc.
19
22
 
20
23
  require 'openc3'
@@ -12,6 +12,9 @@
12
12
  # but WITHOUT ANY WARRANTY; without even the implied warranty of
13
13
  # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
14
  # GNU Affero General Public License for more details.
15
+ #
16
+ # This file may also be used under the terms of a commercial license
17
+ # if purchased from OpenC3, Inc.
15
18
 
16
19
  module OpenC3
17
20
  class Accessor
@@ -16,6 +16,9 @@
16
16
  # Modified by OpenC3, Inc.
17
17
  # All changes Copyright 2022, OpenC3, Inc.
18
18
  # All Rights Reserved
19
+ #
20
+ # This file may also be used under the terms of a commercial license
21
+ # if purchased from OpenC3, Inc.
19
22
 
20
23
  # This file contains the implementation of the BinaryAccessor class.
21
24
  # This class allows for easy reading and writing of binary data in Ruby
@@ -12,6 +12,9 @@
12
12
  # but WITHOUT ANY WARRANTY; without even the implied warranty of
13
13
  # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
14
  # GNU Affero General Public License for more details.
15
+ #
16
+ # This file may also be used under the terms of a commercial license
17
+ # if purchased from OpenC3, Inc.
15
18
 
16
19
  require 'cbor'
17
20
  require 'openc3/accessors/json_accessor'
@@ -12,6 +12,9 @@
12
12
  # but WITHOUT ANY WARRANTY; without even the implied warranty of
13
13
  # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
14
  # GNU Affero General Public License for more details.
15
+ #
16
+ # This file may also be used under the terms of a commercial license
17
+ # if purchased from OpenC3, Inc.
15
18
 
16
19
  require 'openc3/accessors/xml_accessor'
17
20
 
@@ -12,6 +12,9 @@
12
12
  # but WITHOUT ANY WARRANTY; without even the implied warranty of
13
13
  # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
14
  # GNU Affero General Public License for more details.
15
+ #
16
+ # This file may also be used under the terms of a commercial license
17
+ # if purchased from OpenC3, Inc.
15
18
 
16
19
  require 'json'
17
20
  require 'jsonpath'
@@ -48,7 +51,7 @@ module OpenC3
48
51
  def self.read_items(items, buffer)
49
52
  # Prevent JsonPath from decoding every call
50
53
  if String === buffer
51
- decoded = JSON.parse(buffer)
54
+ decoded = JSON.parse(buffer, :allow_nan => true)
52
55
  else
53
56
  decoded = buffer
54
57
  end
@@ -12,6 +12,9 @@
12
12
  # but WITHOUT ANY WARRANTY; without even the implied warranty of
13
13
  # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
14
  # GNU Affero General Public License for more details.
15
+ #
16
+ # This file may also be used under the terms of a commercial license
17
+ # if purchased from OpenC3, Inc.
15
18
 
16
19
  require 'nokogiri'
17
20
  require 'openc3/accessors/accessor'
@@ -12,6 +12,9 @@
12
12
  # but WITHOUT ANY WARRANTY; without even the implied warranty of
13
13
  # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
14
  # GNU Affero General Public License for more details.
15
+ #
16
+ # This file may also be used under the terms of a commercial license
17
+ # if purchased from OpenC3, Inc.
15
18
 
16
19
  module OpenC3
17
20
  autoload(:Accessor, 'openc3/accessors/accessor.rb')
@@ -16,6 +16,9 @@
16
16
  # Modified by OpenC3, Inc.
17
17
  # All changes Copyright 2022, OpenC3, Inc.
18
18
  # All Rights Reserved
19
+ #
20
+ # This file may also be used under the terms of a commercial license
21
+ # if purchased from OpenC3, Inc.
19
22
 
20
23
  require 'openc3/script/extract'
21
24
  require 'openc3/script/api_shared'
@@ -16,6 +16,9 @@
16
16
  # Modified by OpenC3, Inc.
17
17
  # All changes Copyright 2022, OpenC3, Inc.
18
18
  # All Rights Reserved
19
+ #
20
+ # This file may also be used under the terms of a commercial license
21
+ # if purchased from OpenC3, Inc.
19
22
 
20
23
  require 'openc3/api/api'
21
24
 
@@ -16,6 +16,9 @@
16
16
  # Modified by OpenC3, Inc.
17
17
  # All changes Copyright 2022, OpenC3, Inc.
18
18
  # All Rights Reserved
19
+ #
20
+ # This file may also be used under the terms of a commercial license
21
+ # if purchased from OpenC3, Inc.
19
22
 
20
23
  require 'openc3/models/target_model'
21
24
  require 'openc3/topics/command_topic'
@@ -395,9 +398,9 @@ module OpenC3
395
398
  'target_name' => target_name,
396
399
  'cmd_name' => cmd_name,
397
400
  'cmd_params' => cmd_params,
398
- 'range_check' => range_check,
399
- 'hazardous_check' => hazardous_check,
400
- 'raw' => raw
401
+ 'range_check' => range_check.to_s,
402
+ 'hazardous_check' => hazardous_check.to_s,
403
+ 'raw' => raw.to_s
401
404
  }
402
405
  Logger.info(build_cmd_output_string(target_name, cmd_name, cmd_params, packet, raw), scope: scope) if !packet["messages_disabled"]
403
406
  CommandTopic.send_command(command, scope: scope)
@@ -16,6 +16,9 @@
16
16
  # Modified by OpenC3, Inc.
17
17
  # All changes Copyright 2022, OpenC3, Inc.
18
18
  # All Rights Reserved
19
+ #
20
+ # This file may also be used under the terms of a commercial license
21
+ # if purchased from OpenC3, Inc.
19
22
 
20
23
  require 'openc3/models/tool_config_model'
21
24