cosmos 4.4.0-java → 4.5.1-java
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.dockerignore +2 -0
- data/.gitignore +1 -0
- data/.travis.yml +6 -6
- data/Dockerfile +70 -0
- data/Manifest.txt +37 -2
- data/README.md +9 -0
- data/Rakefile +55 -5
- data/appveyor.yml +18 -8
- data/autohotkey/config/tools/cmd_sequence/cmd_sequence.txt +2 -0
- data/autohotkey/lib/cmd_sequence_exporter.rb +52 -0
- data/autohotkey/procedures/collect.rb +2 -2
- data/autohotkey/procedures/collect_util.rb +1 -1
- data/autohotkey/procedures/script_test.rb +1 -1
- data/autohotkey/tools/CmdSenderAHK2 +18 -0
- data/autohotkey/tools/cmd_extractor.ahk +11 -9
- data/autohotkey/tools/cmd_sender.ahk +35 -7
- data/autohotkey/tools/cmd_sender2.ahk +4 -0
- data/autohotkey/tools/cmd_sequence.ahk +22 -9
- data/autohotkey/tools/config_editor.ahk +4 -4
- 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/cstol_converter +1 -1
- data/bin/rubysloc +73 -28
- data/bin/xtce_converter +1 -1
- data/cosmos.gemspec +2 -2
- data/data/config/command_modifiers.yaml +16 -1
- data/data/config/interface_modifiers.yaml +3 -2
- data/data/config/param_item_modifiers.yaml +5 -0
- data/data/config/system.yaml +110 -23
- data/data/config/telemetry_modifiers.yaml +16 -1
- data/data/crc.txt +416 -411
- data/demo/Rakefile +4 -4
- data/demo/config/dart/Gemfile +1 -6
- data/demo/config/data/crc.txt +233 -232
- data/demo/config/system/system.txt +17 -6
- data/demo/config/system/system2.txt +17 -6
- data/demo/config/system/system_alt_ports.txt +17 -6
- data/demo/config/targets/INST/cmd_tlm/inst_cmds.txt +4 -4
- data/demo/config/targets/INST/cmd_tlm/inst_tlm.txt +4 -0
- data/demo/config/targets/INST/cmd_tlm/inst_tlm_override.txt +12 -0
- data/demo/config/targets/INST/lib/sim_inst.rb +2 -2
- data/demo/config/targets/INST/target.txt +1 -0
- data/demo/config/tools/handbook_creator/default_toc.xsl +59 -59
- data/demo/procedures/cosmos_api_test.rb +8 -8
- 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/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/dart/Gemfile +2 -7
- data/install/config/data/crc.txt +137 -137
- data/install/config/system/system.txt +17 -6
- 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/config/boot.rb +1 -1
- data/lib/cosmos/dart/config/database.yml +2 -0
- data/lib/cosmos/dart/examples/dart_decom_client.rb +1 -1
- data/lib/cosmos/dart/lib/dart_common.rb +12 -5
- data/lib/cosmos/dart/lib/dart_constants.rb +15 -0
- data/lib/cosmos/dart/lib/dart_decom_query.rb +5 -6
- data/lib/cosmos/dart/lib/dart_decommutator.rb +64 -54
- data/lib/cosmos/dart/lib/dart_master_query.rb +71 -0
- data/lib/cosmos/dart/lib/dart_reducer_worker_thread.rb +165 -134
- data/lib/cosmos/dart/processes/dart.rb +4 -2
- data/lib/cosmos/dart/processes/dart_decom_server.rb +3 -3
- data/lib/cosmos/dart/processes/dart_ingester.rb +38 -1
- data/lib/cosmos/dart/processes/dart_master.rb +44 -0
- data/lib/cosmos/dart/processes/dart_util.rb +115 -0
- 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 +22 -3
- 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/length_protocol.rb +5 -0
- 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 +5 -5
- 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 +31 -3
- data/lib/cosmos/packet_logs/packet_log_reader.rb +2 -2
- data/lib/cosmos/packets/packet.rb +9 -9
- data/lib/cosmos/packets/packet_config.rb +27 -9
- 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 +35 -5
- data/lib/cosmos/packets/structure_item.rb +5 -1
- data/lib/cosmos/packets/telemetry.rb +7 -1
- 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 +155 -57
- data/lib/cosmos/tools/cmd_sender/cmd_param_table_item_delegate.rb +15 -0
- data/lib/cosmos/tools/cmd_sender/cmd_params.rb +382 -0
- data/lib/cosmos/tools/cmd_sender/cmd_sender.rb +29 -318
- data/lib/cosmos/tools/cmd_sequence/cmd_sequence.rb +14 -17
- data/lib/cosmos/tools/cmd_sequence/sequence_item.rb +38 -331
- data/lib/cosmos/tools/cmd_sequence/sequence_list.rb +16 -11
- 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/cmd_tlm_server_gui.rb +1 -0
- 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 +34 -3
- data/lib/cosmos/tools/config_editor/config_editor_frame.rb +8 -9
- data/lib/cosmos/tools/config_editor/system_config_dialog.rb +158 -0
- 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 +7 -4
- data/lib/cosmos/tools/test_runner/test.rb +6 -3
- data/lib/cosmos/tools/test_runner/test_runner.rb +6 -6
- 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 +20 -16
- data/lib/cosmos/tools/tlm_grapher/tabbed_plots_tool/tabbed_plots_dart_thread.rb +21 -17
- data/lib/cosmos/tools/tlm_grapher/tlm_grapher.rb +18 -11
- data/lib/cosmos/tools/tlm_viewer/tlm_viewer.rb +17 -6
- data/lib/cosmos/tools/tlm_viewer/widgets/canvasdot_widget.rb +2 -0
- data/lib/cosmos/top_level.rb +1 -1
- data/lib/cosmos/utilities/ruby_lex_utils.rb +34 -30
- data/lib/cosmos/utilities/simulated_target.rb +1 -1
- data/lib/cosmos/version.rb +5 -5
- data/lib/cosmos/win32/excel.rb +23 -17
- data/run_gui_tests.bat +1 -0
- data/spec/core_ext/class_spec.rb +54 -0
- data/spec/core_ext/socket_spec.rb +1 -1
- data/spec/core_ext/time_spec.rb +4 -0
- data/spec/install/yaml_docs_spec.rb +26 -6
- data/spec/interfaces/linc_interface_spec.rb +1 -1
- data/spec/interfaces/protocols/length_protocol_spec.rb +39 -0
- data/spec/interfaces/serial_interface_spec.rb +1 -5
- data/spec/io/json_drb_rack_spec.rb +166 -0
- data/spec/io/json_drb_spec.rb +14 -0
- data/spec/io/json_rpc_spec.rb +4 -5
- data/spec/io/posix_serial_driver_spec.rb +81 -0
- data/spec/io/win32_serial_driver_spec.rb +33 -3
- data/spec/packet_logs/packet_log_reader_spec.rb +36 -37
- data/spec/packets/structure_spec.rb +52 -2
- data/spec/packets/telemetry_spec.rb +29 -1
- data/spec/script/extract_spec.rb +4 -1
- data/spec/system/system_spec.rb +111 -3
- 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/utilities/logger_spec.rb +3 -3
- data/spec/utilities/message_log_spec.rb +6 -3
- data/tasks/gemfile_stats.rake +22 -13
- data/test/performance/Rakefile +4 -4
- data/test/performance/config/data/crc.txt +67 -48
- metadata +44 -9
- data/demo/outputs/dart/logs/README.txt +0 -1
- data/lib/cosmos/dart/Gemfile +0 -69
|
@@ -23,31 +23,64 @@ VALUE cSegFault = Qnil;
|
|
|
23
23
|
#include <signal.h>
|
|
24
24
|
#include <unistd.h>
|
|
25
25
|
#include <time.h>
|
|
26
|
+
#include <string.h>
|
|
27
|
+
#include <sys/stat.h>
|
|
26
28
|
|
|
27
29
|
static void catch_sigsegv(int sig_num) {
|
|
30
|
+
const int FILENAME_LEN = 256;
|
|
28
31
|
char *cosmos_log_dir = NULL;
|
|
29
32
|
time_t rawtime;
|
|
30
|
-
struct tm
|
|
31
|
-
|
|
33
|
+
struct tm timeinfo;
|
|
34
|
+
struct tm *timeinfo_ptr;
|
|
35
|
+
struct stat stats;
|
|
36
|
+
char filename[FILENAME_LEN];
|
|
32
37
|
FILE* file = NULL;
|
|
33
38
|
|
|
34
39
|
signal(SIGSEGV, SIG_DFL);
|
|
35
40
|
signal(SIGILL, SIG_DFL);
|
|
36
41
|
|
|
37
42
|
cosmos_log_dir = getenv("COSMOS_LOGS_DIR");
|
|
38
|
-
if
|
|
39
|
-
|
|
43
|
+
// If the COSMOS_LOGS_DIR env var isn't set or if it's too big set to "."
|
|
44
|
+
// NOTE: The filename buffer will be written to by snprintf which appends
|
|
45
|
+
// a null terminator so we have 1 less byte available minus the length
|
|
46
|
+
// of the fixed filename structure
|
|
47
|
+
if ((cosmos_log_dir == NULL) || (strlen(cosmos_log_dir) > (FILENAME_LEN - 1 - strlen("/YYYY_MM_DD_HH_MM_SS_segfault.txt"))))
|
|
48
|
+
{
|
|
49
|
+
cosmos_log_dir = (char*)".";
|
|
40
50
|
}
|
|
51
|
+
// Validate that we can write to this directory
|
|
52
|
+
if (stat(cosmos_log_dir, &stats) == 0)
|
|
53
|
+
{
|
|
54
|
+
if (!((stats.st_mode & W_OK)&& S_ISDIR(stats.st_mode)))
|
|
55
|
+
{
|
|
56
|
+
cosmos_log_dir = (char *)".";
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
else
|
|
60
|
+
{
|
|
61
|
+
cosmos_log_dir = (char *)".";
|
|
62
|
+
}
|
|
63
|
+
|
|
41
64
|
time(&rawtime);
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
65
|
+
timeinfo_ptr = localtime_r(&rawtime, &timeinfo);
|
|
66
|
+
if (timeinfo_ptr == NULL)
|
|
67
|
+
{
|
|
68
|
+
// If localtime returns NULL we set our own and set to 1919 to make it interesting
|
|
69
|
+
strptime("1919-01-01 00:00:00", "%Y-%m-%d %H:%M:%S", &timeinfo);
|
|
70
|
+
}
|
|
71
|
+
snprintf(filename, FILENAME_LEN, "%s/%04u_%02u_%02u_%02u_%02u_%02u_segfault.txt",
|
|
72
|
+
cosmos_log_dir,
|
|
73
|
+
1900 + timeinfo.tm_year,
|
|
74
|
+
1 + timeinfo.tm_mon,
|
|
75
|
+
timeinfo.tm_mday,
|
|
76
|
+
timeinfo.tm_hour,
|
|
77
|
+
timeinfo.tm_min,
|
|
78
|
+
timeinfo.tm_sec);
|
|
79
|
+
|
|
80
|
+
// Fortify warns about Path Manipulation here. We explictly allow this to let
|
|
81
|
+
// segfault files be written to a directory of their choosing.
|
|
82
|
+
// The input is validated above for length and to ensure it is a writable directory.
|
|
83
|
+
// If the checks fail the directory is set to the current directory without additional info.
|
|
51
84
|
file = freopen(filename, "a", stderr);
|
|
52
85
|
/* Using file removes a warning */
|
|
53
86
|
if (file) {
|
|
@@ -58,11 +91,12 @@ VALUE cSegFault = Qnil;
|
|
|
58
91
|
}
|
|
59
92
|
#endif
|
|
60
93
|
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
94
|
+
/* NOTE: Uncomment and rebuilt for testing the handler */
|
|
95
|
+
// static VALUE segfault(VALUE self) {
|
|
96
|
+
// char *a = 0;
|
|
97
|
+
// *a = 50;
|
|
98
|
+
// return Qnil;
|
|
99
|
+
// }
|
|
66
100
|
|
|
67
101
|
/*
|
|
68
102
|
* Initialize methods for Platform specific C code
|
|
@@ -95,7 +129,8 @@ void Init_platform (void) {
|
|
|
95
129
|
signal(SIGILL, catch_sigsegv);
|
|
96
130
|
#endif
|
|
97
131
|
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
132
|
+
/* NOTE: Uncomment and rebuilt for testing the handler */
|
|
133
|
+
// mCosmos = rb_define_module("Cosmos");
|
|
134
|
+
// cSegFault = rb_define_class_under(mCosmos, "SegFault", rb_cObject);
|
|
135
|
+
// rb_define_singleton_method(cSegFault, "segfault", segfault, 0);
|
|
101
136
|
}
|
|
@@ -30,20 +30,16 @@ static ID id_method_to_f = 0;
|
|
|
30
30
|
*/
|
|
31
31
|
static VALUE polynomial_conversion_call(VALUE self, VALUE value, VALUE myself, VALUE buffer)
|
|
32
32
|
{
|
|
33
|
-
volatile VALUE coeffs = Qnil;
|
|
34
|
-
long coeffs_length = 0;
|
|
35
33
|
int index = 0;
|
|
36
|
-
double double_value = 0.0;
|
|
37
|
-
double coeff = 0.0;
|
|
38
34
|
double converted = 0.0;
|
|
39
35
|
double raised_to_power = 1.0;
|
|
40
36
|
|
|
41
|
-
coeffs = rb_ivar_get(self, id_ivar_coeffs);
|
|
42
|
-
coeffs_length = RARRAY_LEN(coeffs);
|
|
43
|
-
double_value = RFLOAT_VALUE(rb_funcall(value, id_method_to_f, 0));
|
|
37
|
+
volatile VALUE coeffs = rb_ivar_get(self, id_ivar_coeffs);
|
|
38
|
+
long coeffs_length = RARRAY_LEN(coeffs);
|
|
39
|
+
double double_value = RFLOAT_VALUE(rb_funcall(value, id_method_to_f, 0));
|
|
44
40
|
|
|
45
41
|
/* Handle C0 */
|
|
46
|
-
coeff = RFLOAT_VALUE(rb_ary_entry(coeffs, 0));
|
|
42
|
+
double coeff = RFLOAT_VALUE(rb_ary_entry(coeffs, 0));
|
|
47
43
|
converted += coeff;
|
|
48
44
|
|
|
49
45
|
/* Handle Coefficients raised to a power */
|
|
@@ -493,6 +493,9 @@ static VALUE binary_accessor_read(VALUE self, VALUE param_bit_offset, VALUE para
|
|
|
493
493
|
if (BYTE_ALIGNED(bit_offset)) {
|
|
494
494
|
string_length = upper_bound - lower_bound + 1;
|
|
495
495
|
string = malloc(string_length + 1);
|
|
496
|
+
if (string == NULL) {
|
|
497
|
+
rb_raise(rb_eNoMemError, "malloc of %d returned NULL", string_length + 1);
|
|
498
|
+
}
|
|
496
499
|
memcpy(string, buffer + lower_bound, string_length);
|
|
497
500
|
string[string_length] = 0;
|
|
498
501
|
if (param_data_type == symbol_STRING) {
|
|
@@ -538,6 +541,9 @@ static VALUE binary_accessor_read(VALUE self, VALUE param_bit_offset, VALUE para
|
|
|
538
541
|
string_length = ((bit_size - 1)/ 8) + 1;
|
|
539
542
|
array_length = string_length + 4; /* Required number of bytes plus slack */
|
|
540
543
|
unsigned_char_array = (unsigned char*) malloc(array_length);
|
|
544
|
+
if (unsigned_char_array == NULL) {
|
|
545
|
+
rb_raise(rb_eNoMemError, "malloc of %d returned NULL", array_length);
|
|
546
|
+
}
|
|
541
547
|
read_bitfield(lower_bound, upper_bound, bit_offset, bit_size, given_bit_offset, given_bit_size, param_endianness, buffer, (int)buffer_length, unsigned_char_array);
|
|
542
548
|
|
|
543
549
|
num_words = ((string_length - 1) / 4) + 1;
|
|
@@ -629,6 +635,9 @@ static VALUE binary_accessor_read(VALUE self, VALUE param_bit_offset, VALUE para
|
|
|
629
635
|
string_length = ((bit_size - 1)/ 8) + 1;
|
|
630
636
|
array_length = string_length + 4; /* Required number of bytes plus slack */
|
|
631
637
|
unsigned_char_array = (unsigned char*) malloc(array_length);
|
|
638
|
+
if (unsigned_char_array == NULL) {
|
|
639
|
+
rb_raise(rb_eNoMemError, "malloc of %d returned NULL", array_length);
|
|
640
|
+
}
|
|
632
641
|
read_bitfield(lower_bound, upper_bound, bit_offset, bit_size, given_bit_offset, given_bit_size, param_endianness, buffer, (int)buffer_length, unsigned_char_array);
|
|
633
642
|
|
|
634
643
|
num_words = ((string_length - 1) / 4) + 1;
|
|
@@ -1001,6 +1010,9 @@ static VALUE binary_accessor_write(VALUE self, VALUE value, VALUE param_bit_offs
|
|
|
1001
1010
|
string_length = ((bit_size - 1)/ 8) + 1;
|
|
1002
1011
|
array_length = string_length + 4; /* Required number of bytes plus slack */
|
|
1003
1012
|
unsigned_char_array = (unsigned char*) malloc(array_length);
|
|
1013
|
+
if (unsigned_char_array == NULL) {
|
|
1014
|
+
rb_raise(rb_eNoMemError, "malloc of %d returned NULL", array_length);
|
|
1015
|
+
}
|
|
1004
1016
|
|
|
1005
1017
|
num_words = ((string_length - 1) / 4) + 1;
|
|
1006
1018
|
num_bytes = num_words * 4;
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": "0.0.2",
|
|
3
|
+
// List of configurations. Add new configurations or edit existing ones.
|
|
4
|
+
"configurations": [
|
|
5
|
+
{
|
|
6
|
+
"name": "Launch Client",
|
|
7
|
+
"type": "extensionHost",
|
|
8
|
+
"request": "launch",
|
|
9
|
+
"runtimeExecutable": "${execPath}",
|
|
10
|
+
"args": [
|
|
11
|
+
"--extensionDevelopmentPath=${workspaceRoot}/client"
|
|
12
|
+
],
|
|
13
|
+
"stopOnEntry": false,
|
|
14
|
+
"sourceMaps": true,
|
|
15
|
+
"outFiles": [
|
|
16
|
+
"${workspaceRoot}/client/out/**/*.js"
|
|
17
|
+
],
|
|
18
|
+
"preLaunchTask": "watch:client"
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
"name": "Attach to Server",
|
|
22
|
+
"type": "node",
|
|
23
|
+
"request": "attach",
|
|
24
|
+
"port": 6009,
|
|
25
|
+
"sourceMaps": true,
|
|
26
|
+
"outFiles": [
|
|
27
|
+
"${workspaceRoot}/client/server/**/*.js"
|
|
28
|
+
],
|
|
29
|
+
"preLaunchTask": "watch:server"
|
|
30
|
+
}
|
|
31
|
+
]
|
|
32
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
{
|
|
2
|
+
// PowerShell
|
|
3
|
+
"terminal.integrated.shell.windows": "C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe",
|
|
4
|
+
"files.exclude": {
|
|
5
|
+
"out": false // set this to true to hide the "out" folder with the compiled JS files
|
|
6
|
+
},
|
|
7
|
+
"search.exclude": {
|
|
8
|
+
"out": true // set this to false to include "out" folder in search results
|
|
9
|
+
},
|
|
10
|
+
"typescript.tsdk": "./node_modules/typescript/lib",
|
|
11
|
+
"typescript.tsc.autoDetect": "off",
|
|
12
|
+
"npm.enableScriptExplorer": true
|
|
13
|
+
}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": "2.0.0",
|
|
3
|
+
"tasks": [
|
|
4
|
+
{
|
|
5
|
+
"label": "compile",
|
|
6
|
+
"dependsOn": [
|
|
7
|
+
"compile:client",
|
|
8
|
+
"compile:server"
|
|
9
|
+
],
|
|
10
|
+
"problemMatcher": []
|
|
11
|
+
},
|
|
12
|
+
{
|
|
13
|
+
"label": "compile:client",
|
|
14
|
+
"type": "npm",
|
|
15
|
+
"script": "compile:client",
|
|
16
|
+
"group": "build",
|
|
17
|
+
"presentation": {
|
|
18
|
+
"panel": "dedicated",
|
|
19
|
+
"reveal": "never"
|
|
20
|
+
},
|
|
21
|
+
"problemMatcher": [
|
|
22
|
+
"$tsc"
|
|
23
|
+
]
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
"label": "compile:server",
|
|
27
|
+
"type": "npm",
|
|
28
|
+
"script": "compile:server",
|
|
29
|
+
"group": "build",
|
|
30
|
+
"presentation": {
|
|
31
|
+
"panel": "dedicated",
|
|
32
|
+
"reveal": "never"
|
|
33
|
+
},
|
|
34
|
+
"problemMatcher": [
|
|
35
|
+
"$tsc"
|
|
36
|
+
]
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
"label": "watch",
|
|
40
|
+
"dependsOn": [
|
|
41
|
+
"watch:client",
|
|
42
|
+
"watch:server"
|
|
43
|
+
],
|
|
44
|
+
"group": {
|
|
45
|
+
"kind": "build",
|
|
46
|
+
"isDefault": true
|
|
47
|
+
},
|
|
48
|
+
"problemMatcher": []
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
"label": "watch:client",
|
|
52
|
+
"type": "npm",
|
|
53
|
+
"script": "watch:client",
|
|
54
|
+
"isBackground": true,
|
|
55
|
+
"group": "build",
|
|
56
|
+
"presentation": {
|
|
57
|
+
"panel": "dedicated",
|
|
58
|
+
"reveal": "never"
|
|
59
|
+
},
|
|
60
|
+
"problemMatcher": [
|
|
61
|
+
"$tsc-watch"
|
|
62
|
+
]
|
|
63
|
+
},
|
|
64
|
+
{
|
|
65
|
+
"label": "watch:server",
|
|
66
|
+
"type": "npm",
|
|
67
|
+
"script": "watch:server",
|
|
68
|
+
"isBackground": true,
|
|
69
|
+
"group": "build",
|
|
70
|
+
"presentation": {
|
|
71
|
+
"panel": "dedicated",
|
|
72
|
+
"reveal": "never"
|
|
73
|
+
},
|
|
74
|
+
"problemMatcher": [
|
|
75
|
+
"$tsc-watch"
|
|
76
|
+
]
|
|
77
|
+
}
|
|
78
|
+
]
|
|
79
|
+
}
|