cosmos 4.4.1-java → 4.5.2-java
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/workflows/build_v4.yml +33 -0
- data/Dockerfile +10 -4
- data/Gemfile +1 -1
- data/Manifest.txt +26 -2
- data/README.md +4 -1
- data/Rakefile +33 -27
- data/autohotkey/tools/cmd_extractor.ahk +11 -9
- data/autohotkey/tools/cmd_sender.ahk +1 -1
- data/autohotkey/tools/cmd_sequence.ahk +1 -1
- data/autohotkey/tools/data_viewer.ahk +1 -1
- data/autohotkey/tools/limits_monitor.ahk +1 -1
- data/autohotkey/tools/packet_viewer.ahk +1 -1
- data/autohotkey/tools/script_runner.ahk +1 -1
- data/autohotkey/tools/test_runner2.ahk +1 -1
- data/autohotkey/tools/tlm_grapher.ahk +1 -1
- data/autohotkey/tools/tlm_grapher3.ahk +1 -1
- data/autohotkey/tools/tlm_viewer.ahk +1 -1
- data/autohotkey/tools/tlm_viewer2.ahk +1 -1
- data/autohotkey/tools/tlm_viewer5.ahk +1 -1
- data/bin/rubysloc +73 -28
- data/bin/xtce_converter +1 -1
- data/cosmos.gemspec +6 -12
- data/data/config/interface_modifiers.yaml +3 -2
- data/data/config/system.yaml +81 -24
- data/data/crc.txt +435 -435
- data/demo/Rakefile +4 -4
- data/demo/config/data/crc.txt +250 -250
- data/demo/config/system/system.txt +15 -7
- data/demo/config/system/system2.txt +15 -7
- data/demo/config/system/system_alt_ports.txt +15 -7
- data/demo/config/targets/INST/cmd_tlm/inst_cmds.txt +1 -1
- data/demo/config/tools/handbook_creator/default_toc.xsl +59 -59
- data/ext/cosmos/ext/buffered_file/buffered_file.c +2 -2
- data/ext/cosmos/ext/config_parser/config_parser.c +1 -2
- data/ext/cosmos/ext/line_graph/line_graph.c +53 -94
- data/ext/cosmos/ext/packet/packet.c +0 -6
- data/ext/cosmos/ext/platform/platform.c +56 -21
- data/ext/cosmos/ext/polynomial_conversion/polynomial_conversion.c +4 -8
- data/ext/cosmos/ext/structure/structure.c +12 -0
- data/extensions/vscode/.gitignore +4 -0
- data/extensions/vscode/.vscode/launch.json +32 -0
- data/extensions/vscode/.vscode/settings.json +13 -0
- data/extensions/vscode/.vscode/tasks.json +79 -0
- data/extensions/vscode/License.txt +879 -0
- data/extensions/vscode/README.md +9 -0
- data/extensions/vscode/client/License.txt +879 -0
- data/extensions/vscode/client/README.md +39 -0
- data/extensions/vscode/client/cosmos.configuration.json +23 -0
- data/extensions/vscode/client/images/icon.png +0 -0
- data/extensions/vscode/client/package-lock.json +414 -0
- data/extensions/vscode/client/package.json +105 -0
- data/extensions/vscode/client/src/extension.ts +132 -0
- data/extensions/vscode/client/src/screen_preview.rb +25 -0
- data/extensions/vscode/client/syntaxes/cosmos.tmLanguage.json +219 -0
- data/extensions/vscode/client/tsconfig.json +17 -0
- data/extensions/vscode/package-lock.json +26 -0
- data/extensions/vscode/package.json +35 -0
- data/extensions/vscode/server/License.txt +879 -0
- data/extensions/vscode/server/package-lock.json +236 -0
- data/extensions/vscode/server/package.json +29 -0
- data/extensions/vscode/server/src/server.ts +59 -0
- data/extensions/vscode/server/tsconfig.json +16 -0
- data/install/Rakefile +4 -4
- data/install/config/data/crc.txt +145 -145
- data/install/config/system/system.txt +15 -7
- data/install/config/tools/handbook_creator/default_toc.xsl +59 -59
- data/lib/cosmos/config/config_parser.rb +2 -10
- data/lib/cosmos/core_ext/class.rb +10 -0
- data/lib/cosmos/core_ext/time.rb +5 -3
- data/lib/cosmos/dart/examples/dart_decom_client.rb +1 -1
- data/lib/cosmos/dart/lib/dart_common.rb +3 -3
- data/lib/cosmos/dart/lib/dart_decommutator.rb +4 -4
- data/lib/cosmos/dart/processes/dart_decom_server.rb +1 -1
- data/lib/cosmos/dart/processes/dart_master.rb +1 -1
- data/lib/cosmos/dart/spec/dart/dart_database_cleaner_spec.rb +2 -2
- data/lib/cosmos/gui/qt.rb +10 -10
- data/lib/cosmos/gui/qt_tool.rb +17 -12
- data/lib/cosmos/gui/text/completion_text_edit.rb +2 -0
- data/lib/cosmos/gui/widgets/dart_meta_frame.rb +1 -1
- data/lib/cosmos/interfaces/dart_status_interface.rb +1 -1
- data/lib/cosmos/interfaces/linc_interface.rb +3 -3
- data/lib/cosmos/interfaces/protocols/burst_protocol.rb +1 -1
- data/lib/cosmos/interfaces/protocols/crc_protocol.rb +1 -1
- data/lib/cosmos/interfaces/protocols/template_protocol.rb +3 -3
- data/lib/cosmos/interfaces/serial_interface.rb +7 -1
- data/lib/cosmos/interfaces/stream_interface.rb +1 -1
- data/lib/cosmos/interfaces/tcpip_server_interface.rb +16 -16
- data/lib/cosmos/io/io_multiplexer.rb +6 -2
- data/lib/cosmos/io/json_drb.rb +3 -11
- data/lib/cosmos/io/json_drb_object.rb +7 -2
- data/lib/cosmos/io/json_drb_rack.rb +25 -5
- data/lib/cosmos/io/json_rpc.rb +1 -1
- data/lib/cosmos/io/posix_serial_driver.rb +60 -22
- data/lib/cosmos/io/serial_driver.rb +11 -8
- data/lib/cosmos/io/win32_serial_driver.rb +8 -1
- data/lib/cosmos/packets/packet.rb +8 -8
- data/lib/cosmos/packets/packet_config.rb +1 -1
- data/lib/cosmos/packets/packet_item_limits.rb +2 -14
- data/lib/cosmos/packets/parsers/xtce_converter.rb +10 -10
- data/lib/cosmos/packets/parsers/xtce_parser.rb +3 -0
- data/lib/cosmos/packets/structure.rb +18 -5
- data/lib/cosmos/packets/structure_item.rb +4 -21
- data/lib/cosmos/script/api_shared.rb +18 -1
- data/lib/cosmos/script/extract.rb +1 -1
- data/lib/cosmos/script/script.rb +4 -11
- data/lib/cosmos/streams/serial_stream.rb +11 -6
- data/lib/cosmos/system/system.rb +47 -13
- data/lib/cosmos/tools/cmd_sender/cmd_param_table_item_delegate.rb +15 -0
- data/lib/cosmos/tools/cmd_sender/cmd_params.rb +25 -3
- data/lib/cosmos/tools/cmd_sender/cmd_sender.rb +7 -0
- data/lib/cosmos/tools/cmd_sequence/sequence_item.rb +0 -5
- data/lib/cosmos/tools/cmd_tlm_server/api.rb +10 -8
- data/lib/cosmos/tools/cmd_tlm_server/cmd_tlm_server.rb +2 -2
- data/lib/cosmos/tools/cmd_tlm_server/gui/logging_tab.rb +1 -1
- data/lib/cosmos/tools/cmd_tlm_server/interface_thread.rb +29 -26
- data/lib/cosmos/tools/cmd_tlm_server/limits_groups_background_task.rb +1 -1
- data/lib/cosmos/tools/cmd_tlm_server/router_thread.rb +5 -0
- data/lib/cosmos/tools/config_editor/config_editor.rb +1 -1
- data/lib/cosmos/tools/handbook_creator/handbook_creator.rb +1 -1
- data/lib/cosmos/tools/handbook_creator/handbook_creator_config.rb +1 -1
- data/lib/cosmos/tools/script_runner/script_runner_frame.rb +5 -2
- data/lib/cosmos/tools/test_runner/test.rb +1 -1
- data/lib/cosmos/tools/test_runner/test_runner.rb +4 -4
- data/lib/cosmos/tools/tlm_extractor/tlm_extractor.rb +3 -3
- data/lib/cosmos/tools/tlm_extractor/tlm_extractor_config.rb +1 -4
- data/lib/cosmos/tools/tlm_extractor/tlm_extractor_processor.rb +3 -3
- data/lib/cosmos/tools/tlm_grapher/tabbed_plots_tool/tabbed_plots_dart_thread.rb +1 -1
- data/lib/cosmos/tools/tlm_viewer/tlm_viewer.rb +2 -2
- data/lib/cosmos/tools/tlm_viewer/widgets/canvasdot_widget.rb +2 -0
- data/lib/cosmos/top_level.rb +1 -1
- data/lib/cosmos/utilities/simulated_target.rb +1 -1
- data/lib/cosmos/version.rb +5 -5
- data/make_gems.sh +1 -1
- data/spec/core_ext/class_spec.rb +54 -0
- data/spec/core_ext/time_spec.rb +4 -0
- data/spec/gui/qt_spec.rb +1 -1
- data/spec/gui/utilities/script_module_gui_spec.rb +1 -1
- data/spec/interfaces/linc_interface_spec.rb +1 -1
- data/spec/interfaces/serial_interface_spec.rb +1 -5
- data/spec/io/json_drb_rack_spec.rb +166 -0
- data/spec/io/json_rpc_spec.rb +4 -5
- data/spec/io/posix_serial_driver_spec.rb +87 -0
- data/spec/io/win32_serial_driver_spec.rb +17 -1
- data/spec/packet_logs/packet_log_reader_spec.rb +34 -35
- data/spec/packets/packet_item_limits_spec.rb +6 -33
- data/spec/packets/structure_item_spec.rb +3 -21
- data/spec/script/extract_spec.rb +4 -1
- data/spec/system/system_spec.rb +109 -1
- data/spec/tools/cmd_tlm_server/api_spec.rb +12 -12
- data/spec/tools/cmd_tlm_server/background_tasks_spec.rb +2 -2
- data/spec/tools/cmd_tlm_server/interface_thread_spec.rb +4 -3
- data/spec/tools/cmd_tlm_server/router_thread_spec.rb +2 -3
- data/spec/top_level/top_level_spec.rb +2 -2
- data/spec/utilities/logger_spec.rb +3 -3
- data/test/performance/Rakefile +4 -4
- data/test/performance/config/data/crc.txt +67 -48
- metadata +53 -9
- data/.coveralls.yml +0 -1
- data/.travis.yml +0 -16
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 060701167ddcf37501a5f9bc029704f2f15d0a663b11041bf3320df5826e29f9
|
4
|
+
data.tar.gz: d71a10cd853c7eeb475408fa0d8a27d3e7971b907969b2250e8ae38d5d6decb4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 45c398e9bb54f33c71d238cd55413ce629ee4e79ab135723e5cf5f8a7dcf0aefcd5039c902c332f6387b3cec441369c5d750f4203fe5454253bc5bd845072487
|
7
|
+
data.tar.gz: cd8f4305482c575341a94c18f357f43ecd365f3624c4f3acb79849b0f6a1eee5410baab288dbda1ef85ce3e2cb4d6ce29db9450f1dfe233b5159562c75de2865
|
@@ -0,0 +1,33 @@
|
|
1
|
+
# This workflow uses actions that are not certified by GitHub.
|
2
|
+
# They are provided by a third-party and are governed by
|
3
|
+
# separate terms of service, privacy policy, and support
|
4
|
+
# documentation.
|
5
|
+
# This workflow will download a prebuilt Ruby version, install dependencies and run tests with Rake
|
6
|
+
# For more information see: https://github.com/marketplace/actions/setup-ruby-jruby-and-truffleruby
|
7
|
+
|
8
|
+
# Reference environment variables: https://docs.github.com/en/actions/reference/environment-variables
|
9
|
+
|
10
|
+
name: Cosmos 4 Tests
|
11
|
+
|
12
|
+
on:
|
13
|
+
push:
|
14
|
+
branches: [cosmos4]
|
15
|
+
pull_request:
|
16
|
+
branches: [cosmos4]
|
17
|
+
|
18
|
+
jobs:
|
19
|
+
test:
|
20
|
+
runs-on: ubuntu-18.04
|
21
|
+
strategy:
|
22
|
+
matrix:
|
23
|
+
ruby-version: ["2.5", "2.6"]
|
24
|
+
steps:
|
25
|
+
- uses: actions/checkout@v2
|
26
|
+
- uses: ruby/setup-ruby@v1
|
27
|
+
with:
|
28
|
+
ruby-version: ${{ matrix.ruby-version }}
|
29
|
+
bundler-cache: true # runs 'bundle install' and caches installed gems automatically
|
30
|
+
- name: Run tests
|
31
|
+
run: bundle exec rake build spec
|
32
|
+
env:
|
33
|
+
COSMOS_DEVEL: ${GITHUB_WORKSPACE}\.
|
data/Dockerfile
CHANGED
@@ -49,17 +49,23 @@ RUN cd /opt \
|
|
49
49
|
&& tar xvf jruby.tar.gz \
|
50
50
|
&& mv jruby-9.2.9.0 jruby
|
51
51
|
|
52
|
+
ARG COSMOS_REPO=https://github.com/BallAerospace/COSMOS.git
|
53
|
+
|
52
54
|
# Download and setup COSMOS devel area
|
53
55
|
RUN gem install bundler --no-document
|
54
56
|
RUN cd /devel \
|
55
|
-
&& git clone
|
57
|
+
&& git clone -b cosmos4 ${COSMOS_REPO} COSMOS \
|
56
58
|
&& cd /devel/COSMOS \
|
57
59
|
&& bundle install
|
58
60
|
|
61
|
+
ARG COSMOS_DOCKER_REPO=https://github.com/BallAerospace/cosmos-docker.git
|
62
|
+
|
59
63
|
# Download COSMOS docker files to support docker release
|
60
64
|
RUN cd /devel \
|
61
|
-
&& git clone
|
62
|
-
|
65
|
+
&& git clone ${COSMOS_DOCKER_REPO}
|
66
|
+
|
63
67
|
ENV COSMOS_DEVEL /devel/COSMOS
|
68
|
+
ENV COSMOS_NO_SIMPLECOV 1
|
69
|
+
ENV DOCKER 1
|
64
70
|
WORKDIR /devel/COSMOS
|
65
|
-
CMD bash
|
71
|
+
CMD bash
|
data/Gemfile
CHANGED
@@ -8,4 +8,4 @@ gem 'ruby-termios', '>= 0.9' if RbConfig::CONFIG['target_os'] !~ /mswin|mingw|cy
|
|
8
8
|
# gem 'wdm', '>= 0.1.0', :platforms => [:mswin, :mingw]
|
9
9
|
#end
|
10
10
|
gemspec
|
11
|
-
instance_eval File.read(File.join(__dir__, 'install/config/dart/Gemfile'))
|
11
|
+
instance_eval File.read(File.join(__dir__, 'install/config/dart/Gemfile')) unless ENV['CI']
|
data/Manifest.txt
CHANGED
@@ -1,12 +1,11 @@
|
|
1
|
-
.coveralls.yml
|
2
1
|
.dockerignore
|
3
2
|
.gitattributes
|
4
3
|
.github/ISSUE_TEMPLATE/bug_report.md
|
5
4
|
.github/ISSUE_TEMPLATE/feature_request.md
|
6
5
|
.github/ISSUE_TEMPLATE/help---usage---general-question.md
|
6
|
+
.github/workflows/build_v4.yml
|
7
7
|
.gitignore
|
8
8
|
.rubocop.yml
|
9
|
-
.travis.yml
|
10
9
|
.yardopts
|
11
10
|
CONTRIBUTING.txt
|
12
11
|
Dockerfile
|
@@ -694,6 +693,29 @@ ext/cosmos/ext/tabbed_plots_config/tabbed_plots_config.c
|
|
694
693
|
ext/cosmos/ext/telemetry/extconf.rb
|
695
694
|
ext/cosmos/ext/telemetry/telemetry.c
|
696
695
|
ext/mkrf_conf.rb
|
696
|
+
extensions/vscode/.gitignore
|
697
|
+
extensions/vscode/.vscode/launch.json
|
698
|
+
extensions/vscode/.vscode/settings.json
|
699
|
+
extensions/vscode/.vscode/tasks.json
|
700
|
+
extensions/vscode/License.txt
|
701
|
+
extensions/vscode/README.md
|
702
|
+
extensions/vscode/client/License.txt
|
703
|
+
extensions/vscode/client/README.md
|
704
|
+
extensions/vscode/client/cosmos.configuration.json
|
705
|
+
extensions/vscode/client/images/icon.png
|
706
|
+
extensions/vscode/client/package-lock.json
|
707
|
+
extensions/vscode/client/package.json
|
708
|
+
extensions/vscode/client/src/extension.ts
|
709
|
+
extensions/vscode/client/src/screen_preview.rb
|
710
|
+
extensions/vscode/client/syntaxes/cosmos.tmLanguage.json
|
711
|
+
extensions/vscode/client/tsconfig.json
|
712
|
+
extensions/vscode/package-lock.json
|
713
|
+
extensions/vscode/package.json
|
714
|
+
extensions/vscode/server/License.txt
|
715
|
+
extensions/vscode/server/package-lock.json
|
716
|
+
extensions/vscode/server/package.json
|
717
|
+
extensions/vscode/server/src/server.ts
|
718
|
+
extensions/vscode/server/tsconfig.json
|
697
719
|
install/Gemfile
|
698
720
|
install/Launcher
|
699
721
|
install/Launcher.bat
|
@@ -1454,8 +1476,10 @@ spec/interfaces/udp_interface_spec.rb
|
|
1454
1476
|
spec/io/buffered_file_spec.rb
|
1455
1477
|
spec/io/io_multiplexer_spec.rb
|
1456
1478
|
spec/io/json_drb_object_spec.rb
|
1479
|
+
spec/io/json_drb_rack_spec.rb
|
1457
1480
|
spec/io/json_drb_spec.rb
|
1458
1481
|
spec/io/json_rpc_spec.rb
|
1482
|
+
spec/io/posix_serial_driver_spec.rb
|
1459
1483
|
spec/io/raw_logger_pair_spec.rb
|
1460
1484
|
spec/io/raw_logger_spec.rb
|
1461
1485
|
spec/io/serial_driver_spec.rb
|
data/README.md
CHANGED
@@ -105,9 +105,12 @@ Before any contributions can be incorporated we do require all contributors to s
|
|
105
105
|
|
106
106
|
This protects both you and us and you retain full rights to any code you write.
|
107
107
|
|
108
|
+
## Vulnerability Disclosure
|
109
|
+
|
110
|
+
If you discover a security vulnerability in COSMOS, please do not disclose to any public forum or our Github tickets system. Please email the vulnerability details to COSMOS@ball.com, and give us 90 days to incorporate any needed changes. Also please also let us know how how you would like to be reffered to for attribution when we post the fix. Thanks!
|
111
|
+
|
108
112
|
## Code Status
|
109
113
|
|
110
|
-
* [![Travis Build Status](https://travis-ci.org/BallAerospace/COSMOS.svg?branch=master)](https://travis-ci.org/BallAerospace/COSMOS)
|
111
114
|
* [![AppVeyor Build Status](https://ci.appveyor.com/api/projects/status/gw61r3dvakjamx6o?svg=true)](https://ci.appveyor.com/project/jasonatball/cosmos)
|
112
115
|
* [![Code Climate](https://codeclimate.com/github/BallAerospace/COSMOS/badges/gpa.svg)](https://codeclimate.com/github/BallAerospace/COSMOS)
|
113
116
|
* [![Codecov](https://img.shields.io/codecov/c/github/codecov/example-python.svg)](https://codecov.io/gh/BallAerospace/COSMOS)
|
data/Rakefile
CHANGED
@@ -169,8 +169,8 @@ task :build => [:devkit] do
|
|
169
169
|
end
|
170
170
|
end
|
171
171
|
|
172
|
-
task :
|
173
|
-
system('git checkout
|
172
|
+
task :git_checkout do
|
173
|
+
system('git checkout cosmos4')
|
174
174
|
end
|
175
175
|
|
176
176
|
task :install_crc do
|
@@ -192,7 +192,7 @@ task :gem => [:require_version] do
|
|
192
192
|
system('gem build cosmos.gemspec')
|
193
193
|
end
|
194
194
|
|
195
|
-
task :commit_release_ticket => [:require_version, :
|
195
|
+
task :commit_release_ticket => [:require_version, :git_checkout] do
|
196
196
|
system('git add data/crc.txt')
|
197
197
|
system('git add demo/config/data/crc.txt')
|
198
198
|
system('git add install/config/data/crc.txt')
|
@@ -233,7 +233,7 @@ task :version => [:require_version] do
|
|
233
233
|
# Create the crc.txt file
|
234
234
|
crc = RakeCrc32.new
|
235
235
|
File.open("data/crc.txt",'w') do |file|
|
236
|
-
Dir[File.join('lib','**','*.rb')].each do |filename|
|
236
|
+
Dir[File.join('lib','**','*.rb')].sort.each do |filename|
|
237
237
|
file_data = File.open(filename, 'rb').read.gsub("\x0D\x0A", "\x0A")
|
238
238
|
file.puts "\"#{filename}\" #{sprintf("0x%08X", crc.calc(file_data))}"
|
239
239
|
end
|
@@ -297,9 +297,17 @@ if RUBY_ENGINE == 'ruby'
|
|
297
297
|
end
|
298
298
|
end
|
299
299
|
|
300
|
-
task :release => [:require_version, :
|
300
|
+
task :release => [:require_version, :git_checkout, :build, :spec, :manifest, :version, :install_crc, :gem]
|
301
301
|
task :commit_release => [:commit_release_ticket, :tag_release]
|
302
302
|
|
303
|
+
# HOW-TO: Performing a COSMOS 4 build
|
304
|
+
# 1. rake docker_build
|
305
|
+
# 2. rake docker_run
|
306
|
+
# 3. Follow the individual steps printed out
|
307
|
+
# NOTE: When doing git push you will be asked for password
|
308
|
+
# You will need to enter a Github access token value
|
309
|
+
# Create one on Github, User -> Settings -> Developer settings -> Personal access tokens
|
310
|
+
|
303
311
|
task :docker_build do
|
304
312
|
_, platform, *_ = RUBY_PLATFORM.split("-")
|
305
313
|
if (platform == 'mswin32' or platform == 'mingw32') and which('winpty')
|
@@ -312,28 +320,26 @@ end
|
|
312
320
|
task :docker_run do
|
313
321
|
STDOUT.puts "Note, this is not automated on purpose to ensure each step is successful (with user entry of credentials for github/rubygems.org)"
|
314
322
|
STDOUT.puts "Steps to perform a COSMOS release:"
|
315
|
-
STDOUT.puts "1. git config --global user.name \"First
|
323
|
+
STDOUT.puts "1. git config --global user.name \"Last, First\""
|
316
324
|
STDOUT.puts "2. git config --global user.email \"me@ball.com\""
|
317
|
-
STDOUT.puts "3. git
|
318
|
-
STDOUT.puts "4.
|
319
|
-
STDOUT.puts "5.
|
320
|
-
STDOUT.puts "6. rake
|
321
|
-
STDOUT.puts "7.
|
322
|
-
STDOUT.puts "8.
|
323
|
-
STDOUT.puts "9.
|
324
|
-
STDOUT.puts "
|
325
|
+
STDOUT.puts "3. git checkout cosmos4"
|
326
|
+
STDOUT.puts "4. git pull"
|
327
|
+
STDOUT.puts "5. export VERSION=X.X.X"
|
328
|
+
STDOUT.puts "6. rake release"
|
329
|
+
STDOUT.puts "7. rake commit_release"
|
330
|
+
STDOUT.puts "8. export PATH=/opt/jruby/bin:$PATH"
|
331
|
+
STDOUT.puts "9. rake gem"
|
332
|
+
STDOUT.puts "10a. /usr/bin/gem push cosmos-X.X.X.gem"
|
333
|
+
STDOUT.puts "10b. /usr/bin/gem push cosmos-X.X.X-java.gem"
|
325
334
|
STDOUT.puts "11. cd /devel/cosmos-docker"
|
326
|
-
STDOUT.puts "12.
|
327
|
-
STDOUT.puts "13.
|
328
|
-
STDOUT.puts "14. git
|
329
|
-
STDOUT.puts "15. git
|
330
|
-
STDOUT.puts "16. git
|
331
|
-
STDOUT.puts "17.
|
332
|
-
|
333
|
-
|
334
|
-
|
335
|
-
|
336
|
-
else
|
337
|
-
system('docker run -it --rm cosmos-dev')
|
338
|
-
end
|
335
|
+
STDOUT.puts "12. git pull"
|
336
|
+
STDOUT.puts "13. Update COSMOS_VERSION in all Dockerfiles. Also update README.md"
|
337
|
+
STDOUT.puts "14. git commit -a -m \"Release COSMOS vX.X.X\""
|
338
|
+
STDOUT.puts "15. git push"
|
339
|
+
STDOUT.puts "16. git checkout -b vX.X.X"
|
340
|
+
STDOUT.puts "17. git push --set-upstream origin vX.X.X"
|
341
|
+
STDOUT.puts "18. Update release notes on github.com and cosmosrb.com"
|
342
|
+
STDOUT.puts " https://github.com/BallAerospace/COSMOS/pulls?q=is%3Apr+is%3Aclosed+base%3Acosmos4+no%3Amilestone"
|
343
|
+
|
344
|
+
system('docker run -it --rm cosmos-dev')
|
339
345
|
end
|
@@ -4,27 +4,28 @@ Sleep 500
|
|
4
4
|
Send ^r ; Mode->Include Raw Data CE-3
|
5
5
|
Sleep 500
|
6
6
|
Click 500 95 ; Browse
|
7
|
-
|
7
|
+
WinWaitActive Select
|
8
8
|
Send cmd.bin{Enter}
|
9
9
|
WinWaitActive Command Extractor
|
10
|
-
Click 200 446 ; Process
|
10
|
+
Click 200 446 ; Process Data
|
11
11
|
WinWaitActive Warning
|
12
12
|
Sleep 500
|
13
|
-
Send {Enter}
|
13
|
+
Send {Enter}
|
14
14
|
WinWaitActive Log File
|
15
|
+
Sleep 500
|
15
16
|
Click 450 305 ; Cancel
|
16
17
|
WinWaitActive Command Extractor
|
17
18
|
sleep 500
|
18
|
-
Click 200 446 ; Process
|
19
|
+
Click 200 446 ; Process Data
|
19
20
|
WinWaitActive Warning
|
20
21
|
Sleep 500
|
21
|
-
Send {Enter} ;
|
22
|
+
Send {Enter} ; Overwrite
|
22
23
|
Sleep 500
|
23
|
-
Send {Enter} ;
|
24
|
+
Send {Enter} ; Warning Ok
|
24
25
|
Sleep 5000 ; Allow the file to be processed CE-1
|
25
26
|
Send {Enter}
|
26
27
|
WinWaitActive Command Extractor
|
27
|
-
Click
|
28
|
+
Click 315 446 ; Open in Text Editor CE-2
|
28
29
|
Sleep 5000
|
29
30
|
Send !f{x} ; Exit text editor
|
30
31
|
WinActivate Command Extractor
|
@@ -32,14 +33,15 @@ WinWaitActive Command Extractor
|
|
32
33
|
Send !f{a} ; Analyze logs
|
33
34
|
WinWaitActive Warning
|
34
35
|
Sleep 500
|
35
|
-
Send {Enter}
|
36
|
+
Send {Enter}
|
36
37
|
WinWaitActive Log File
|
38
|
+
Sleep 500
|
37
39
|
Click 450 305 ; Cancel
|
38
40
|
WinWaitActive Command Extractor
|
39
41
|
Send !f{a} ; Analyze logs
|
40
42
|
WinWaitActive Warning
|
41
43
|
Sleep 500
|
42
|
-
Send {Enter}
|
44
|
+
Send {Enter}
|
43
45
|
WinWaitActive Log File
|
44
46
|
Sleep 2000
|
45
47
|
Send {Enter} ; Done
|
data/bin/rubysloc
CHANGED
@@ -13,25 +13,72 @@
|
|
13
13
|
# Blank lines and comment lines are ignored. All other
|
14
14
|
# lines count as one line.
|
15
15
|
|
16
|
-
|
17
|
-
|
18
|
-
|
16
|
+
require 'ostruct'
|
17
|
+
require 'optparse'
|
18
|
+
|
19
|
+
options = OpenStruct.new
|
20
|
+
options.filename = nil
|
21
|
+
options.sort_column = nil
|
19
22
|
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
23
|
+
opts = OptionParser.new do |opts|
|
24
|
+
opts.banner = "Usage: rubysloc"
|
25
|
+
opts.separator ""
|
26
|
+
opts.separator "Recursively calculate SLOC for all ruby files (*.rb) sorted by filename"
|
27
|
+
opts.separator ""
|
28
|
+
opts.on("-h", "--help", "Show this message") do
|
29
|
+
puts opts
|
30
|
+
exit
|
25
31
|
end
|
26
|
-
|
27
|
-
|
28
|
-
|
32
|
+
opts.on("-i DIRECTORY/FILENAME", "--input DIRECTORY/FILENAME",
|
33
|
+
"Parse only the specified directory/filename (relative or absolute path)") do |arg|
|
34
|
+
options.filename = arg
|
35
|
+
end
|
36
|
+
opts.on("-s SORT", "--sort SORT", "Sort by the specified column. Must be one of LINES, COMMENTS, SLOC, or RATIO.") do |arg|
|
37
|
+
case arg
|
38
|
+
when 'LINES'
|
39
|
+
options.sort_column = 1
|
40
|
+
when 'COMMENTS'
|
41
|
+
options.sort_column = 2
|
42
|
+
when 'SLOC'
|
43
|
+
options.sort_column = 3
|
44
|
+
when 'RATIO'
|
45
|
+
options.sort_column = 4
|
46
|
+
else
|
47
|
+
puts opts
|
48
|
+
exit
|
49
|
+
end
|
50
|
+
end
|
51
|
+
end
|
52
|
+
|
53
|
+
begin
|
54
|
+
opts.parse!(ARGV)
|
55
|
+
rescue => err
|
56
|
+
puts err
|
57
|
+
puts opts
|
58
|
+
exit
|
59
|
+
end
|
60
|
+
|
61
|
+
files = []
|
62
|
+
if options.filename
|
63
|
+
options.filename = File.join(Dir.pwd, options.filename) unless File.exist?(options.filename)
|
64
|
+
if File.exist?(options.filename)
|
65
|
+
if File.directory?(options.filename)
|
66
|
+
# Dir only works with unix paths so swap backslashes
|
67
|
+
files = Dir[File.join(options.filename.gsub('\\','/'), '**', '*.rb')]
|
68
|
+
else
|
69
|
+
files << options.filename
|
70
|
+
end
|
29
71
|
else
|
30
|
-
|
72
|
+
puts "File #{options.filename} not found."
|
73
|
+
puts opts
|
74
|
+
exit
|
31
75
|
end
|
76
|
+
else
|
77
|
+
files = Dir['**/*.rb']
|
32
78
|
end
|
33
79
|
|
34
80
|
# Build results over all found ruby files
|
81
|
+
longest_path = 1
|
35
82
|
results = []
|
36
83
|
files.each do |full_filename|
|
37
84
|
filename = File.basename(full_filename)
|
@@ -43,21 +90,20 @@ files.each do |full_filename|
|
|
43
90
|
lines += 1
|
44
91
|
split_line = line.split
|
45
92
|
if split_line[0].nil?
|
46
|
-
#Blank Line - Do Nothing
|
47
|
-
#puts "NOT COUNTED - #{line.chomp}"
|
93
|
+
# Blank Line - Do Nothing
|
48
94
|
elsif split_line[0].to_s[0..0] == '#'
|
49
|
-
#Comment Line
|
50
|
-
#puts "COMMENT LINE - #{line.chomp}"
|
51
95
|
comments += 1
|
52
96
|
else
|
53
|
-
#puts "COUNTED - #{line.chomp}"
|
54
97
|
slocs += 1
|
55
98
|
end
|
56
99
|
end
|
57
|
-
results << [
|
100
|
+
results << [full_filename, lines, comments, slocs, comments.to_f / slocs.to_f]
|
101
|
+
longest_path = full_filename.length if full_filename.length > longest_path
|
58
102
|
end
|
59
103
|
end
|
60
104
|
|
105
|
+
results.sort_by! {|col| col[options.sort_column].finite? ? col[options.sort_column] : -1 } if options.sort_column
|
106
|
+
|
61
107
|
# Print results to STDOUT
|
62
108
|
total_files = 0
|
63
109
|
total_lines = 0
|
@@ -65,12 +111,12 @@ total_comments = 0
|
|
65
111
|
total_slocs = 0
|
66
112
|
total_ratio = 0
|
67
113
|
|
68
|
-
puts "
|
69
|
-
puts "|
|
70
|
-
puts "
|
114
|
+
puts sprintf("|-%-#{longest_path}s-|----------|----------|----------|--------|", "-"*longest_path)
|
115
|
+
puts sprintf("| %-#{longest_path}s | Lines | Comments | SLOCs | Ratio |", "Filename")
|
116
|
+
puts sprintf("|-%-#{longest_path}s-|----------|----------|----------|--------|", "-"*longest_path)
|
71
117
|
results.each do |filename, lines, comments, slocs, ratio|
|
72
|
-
filename = filename[0..32] if filename.length > 33
|
73
|
-
puts sprintf("|
|
118
|
+
# filename = filename[0..32] if filename.length > 33
|
119
|
+
puts sprintf("| %-#{longest_path}s | %8d | %8d | %8d | %6.2f |",
|
74
120
|
filename, lines, comments, slocs, ratio)
|
75
121
|
total_files += 1
|
76
122
|
total_lines += lines
|
@@ -78,8 +124,7 @@ results.each do |filename, lines, comments, slocs, ratio|
|
|
78
124
|
total_slocs += slocs
|
79
125
|
end
|
80
126
|
total_ratio = total_comments.to_f / total_slocs.to_f if total_slocs != 0
|
81
|
-
puts "
|
82
|
-
puts sprintf("|
|
83
|
-
|
84
|
-
|
85
|
-
puts "|-----------------------------------|----------|----------|----------|--------|"
|
127
|
+
puts sprintf("|-%-#{longest_path}s-|----------|----------|----------|--------|", "-"*longest_path)
|
128
|
+
puts sprintf("| %-#{longest_path}s | %8d | %8d | %8d | %6.2f |",
|
129
|
+
"Totals - #{total_files} Files", total_lines, total_comments, total_slocs, total_ratio)
|
130
|
+
puts sprintf("|-%-#{longest_path}s-|----------|----------|----------|--------|", "-"*longest_path)
|
data/bin/xtce_converter
CHANGED
@@ -36,7 +36,7 @@ option_parser = OptionParser.new do |option_parser|
|
|
36
36
|
|
37
37
|
# Create the system option
|
38
38
|
option_parser.on("--system VALUE", "Use an alternative system.txt file") do |arg|
|
39
|
-
Cosmos::System.instance(File.join(USERPATH, 'config', 'system', arg))
|
39
|
+
Cosmos::System.instance(File.join(Cosmos::USERPATH, 'config', 'system', arg))
|
40
40
|
end
|
41
41
|
|
42
42
|
# Handle --import mode
|
data/cosmos.gemspec
CHANGED
@@ -73,10 +73,11 @@ spec = Gem::Specification.new do |s|
|
|
73
73
|
files
|
74
74
|
else [] end
|
75
75
|
|
76
|
-
s.required_ruby_version = '~> 2.
|
76
|
+
s.required_ruby_version = '~> 2.4'
|
77
77
|
|
78
78
|
# Runtime Dependencies
|
79
79
|
s.add_runtime_dependency 'bundler', '>= 1.3'
|
80
|
+
s.add_runtime_dependency 'psych', '~> 3.3'
|
80
81
|
s.add_runtime_dependency 'rdoc', '>= 4' # qtbindings doesn't parse in 6.0.0, fixed in 6.0.1
|
81
82
|
s.add_runtime_dependency 'rake', '>= 10.0' # 10.0 released Nov 12, 2012
|
82
83
|
s.add_runtime_dependency 'json', '>= 1.5', '< 3' # 2.0+ works with COSMOS
|
@@ -86,20 +87,13 @@ spec = Gem::Specification.new do |s|
|
|
86
87
|
s.add_runtime_dependency 'uuidtools', '~> 2.1'
|
87
88
|
s.add_runtime_dependency 'snmp', '~> 1.0'
|
88
89
|
s.add_runtime_dependency 'rubyzip', '~> 1.2'
|
89
|
-
s.add_runtime_dependency 'nokogiri', '~> 1.10'
|
90
|
+
s.add_runtime_dependency 'nokogiri', ['~> 1.10', '< 1.13'] # Nokogiri 1.13 doesn't support Ruby 2.5
|
90
91
|
s.add_runtime_dependency 'opengl-bindings', '~> 1.6' if RUBY_ENGINE == 'ruby' # MRI Only
|
91
|
-
s.add_runtime_dependency 'qtbindings', '~> 4.8.6', '>= 4.8.6.2' if RUBY_ENGINE == 'ruby' # MRI Only
|
92
|
+
s.add_runtime_dependency 'qtbindings', '~> 4.8.6', '>= 4.8.6.2' if RUBY_ENGINE == 'ruby' && !ENV['CI'] # MRI Only, not Github
|
92
93
|
s.add_runtime_dependency 'puma', '~> 3.10'
|
93
94
|
s.add_runtime_dependency 'rack', '~> 2.0'
|
94
95
|
s.add_runtime_dependency 'httpclient', '~> 2.8'
|
95
96
|
|
96
|
-
# From http://www.rubydoc.info/gems/puma#Known_Bugs :
|
97
|
-
# "For MRI versions 2.2.7, 2.2.8, 2.2.9, 2.2.10, 2.3.4 and 2.4.1, you may see stream closed in
|
98
|
-
# another thread (IOError). It may be caused by a Ruby bug. It can be
|
99
|
-
# fixed with the gem https://rubygems.org/gems/stopgap_13632"
|
100
|
-
# This is commented out because the gemspec is only evaluated at gem build time
|
101
|
-
# s.add_runtime_dependency 'stopgap_13632', '~> 1.2.0' if RUBY_ENGINE == 'ruby' and %w(2.2.7 2.2.8 2.3.4 2.4.1).include? RUBY_VERSION # MRI Only
|
102
|
-
|
103
97
|
# Development Dependencies
|
104
98
|
s.add_development_dependency 'diff-lcs', '~> 1.3' if RUBY_ENGINE == 'ruby' # Get latest for MRI
|
105
99
|
s.add_development_dependency 'rspec', '~> 3.5'
|
@@ -113,8 +107,8 @@ spec = Gem::Specification.new do |s|
|
|
113
107
|
s.add_development_dependency 'guard-rspec', '~> 4.0'
|
114
108
|
s.add_development_dependency 'simplecov', '~> 0.15'
|
115
109
|
s.add_development_dependency 'codecov', '~> 0.1'
|
116
|
-
s.add_development_dependency 'benchmark-ips', '
|
117
|
-
s.add_development_dependency 'ruby-prof', '~> 1.0' if RUBY_ENGINE == 'ruby' # MRI Only
|
110
|
+
s.add_development_dependency 'benchmark-ips', '= 2.7.2'
|
111
|
+
s.add_development_dependency 'ruby-prof', ['~> 1.0', '< 1.3'] if RUBY_ENGINE == 'ruby' # MRI Only
|
118
112
|
|
119
113
|
s.post_install_message = "Thanks for installing Ball Aerospace COSMOS!\nStart your first project with: cosmos demo demo\n"
|
120
114
|
end
|
@@ -84,8 +84,9 @@ OPTION:
|
|
84
84
|
- name: Name
|
85
85
|
required: true
|
86
86
|
description: The option to set. COSMOS defines several options on the core provided
|
87
|
-
interfaces. The SerialInterface defines FLOW_CONTROL which can be NONE (default) or RTSCTS
|
88
|
-
|
87
|
+
interfaces. The SerialInterface defines FLOW_CONTROL which can be NONE (default) or RTSCTS,
|
88
|
+
STRUCT to directly set fields in the Windows DCB or POSIX structure and it defines
|
89
|
+
DATA_BITS which changes the data bits of the serial interface.
|
89
90
|
The TcpipServerInterface defines LISTEN_ADDRESS which is the IP address to accept
|
90
91
|
connections on (default 0.0.0.0) and AUTO_SYSTEM_META which will automatically send
|
91
92
|
SYSTEM META when the interface connects (default false).
|