Commit 68e0fd0e authored by Wohlgemuth, Jason's avatar Wohlgemuth, Jason
Browse files

feat: Initial type design for input concurrency

parent 9a400caa
Loading
Loading
Loading
Loading
Loading
+528 −513
Original line number Diff line number Diff line
@@ -109,163 +109,172 @@ end_of_record
TN:
SF:/root/dev/command/pipe-cli/src/commands/run/mod.rs
FNF:0
DA:23,0
DA:24,0
DA:21,0
DA:22,0
DA:28,0
DA:29,0
DA:30,0
DA:31,0
DA:32,0
DA:33,0
DA:34,0
DA:35,0
DA:36,0
DA:40,0
DA:43,0
DA:46,0
DA:38,0
DA:41,0
DA:44,0
DA:54,0
DA:55,0
DA:56,0
DA:57,0
DA:58,0
DA:60,0
DA:59,0
DA:61,0
DA:63,0
DA:64,0
DA:65,0
DA:66,0
DA:67,0
DA:69,0
DA:68,0
DA:70,0
DA:71,0
DA:72,0
DA:73,0
DA:74,0
DA:75,0
DA:76,0
DA:77,0
DA:78,0
DA:79,0
DA:80,0
DA:81,0
DA:83,0
DA:84,0
DA:85,0
DA:86,0
DA:88,0
DA:89,0
DA:91,0
DA:92,0
DA:93,0
DA:94,0
DA:95,0
DA:96,0
DA:97,0
DA:99,0
DA:98,0
DA:100,0
DA:101,0
DA:102,0
DA:103,0
DA:104,0
DA:105,0
DA:106,0
DA:107,0
DA:108,0
DA:109,0
DA:111,0
DA:112,0
DA:113,0
DA:114,0
DA:115,0
DA:118,0
DA:123,0
DA:119,0
DA:125,0
DA:127,0
DA:130,0
DA:133,0
DA:136,0
DA:138,0
DA:140,0
DA:135,0
DA:137,0
DA:142,0
DA:145,0
DA:146,0
DA:147,0
DA:148,0
DA:150,0
DA:152,0
DA:153,0
DA:154,0
DA:156,0
DA:161,0
DA:163,0
DA:157,0
DA:158,0
DA:159,0
DA:162,0
DA:164,0
DA:165,0
DA:167,0
DA:166,0
DA:168,0
DA:172,0
DA:173,0
DA:174,0
DA:175,0
DA:177,0
DA:179,0
DA:180,0
DA:182,0
DA:184,0
DA:185,0
DA:186,0
DA:188,0
DA:189,0
DA:191,0
DA:192,0
DA:193,0
DA:194,0
DA:195,0
DA:196,0
DA:197,0
DA:198,0
DA:200,0
DA:201,0
DA:203,0
DA:204,0
DA:205,0
DA:206,0
DA:207,0
DA:208,0
DA:209,0
DA:210,0
DA:211,0
DA:213,0
DA:217,0
DA:219,0
DA:220,0
DA:221,0
DA:222,0
DA:226,0
DA:236,0
DA:237,0
DA:223,0
DA:225,0
DA:229,0
DA:231,0
DA:233,0
DA:234,0
DA:238,0
DA:239,0
DA:241,0
DA:246,0
DA:247,0
DA:248,0
DA:249,0
DA:250,0
DA:251,0
DA:254,0
DA:257,0
DA:253,0
DA:258,0
DA:259,0
DA:261,0
DA:264,0
DA:265,0
DA:263,0
DA:266,0
DA:267,0
DA:268,0
DA:269,0
DA:270,0
DA:271,0
DA:272,0
DA:273,0
DA:275,0
DA:276,0
DA:277,0
DA:278,0
DA:281,0
DA:284,0
DA:282,0
DA:286,0
DA:287,0
DA:288,0
DA:289,0
DA:290,0
DA:291,0
DA:292,0
DA:293,0
DA:294,0
DA:297,0
DA:300,0
DA:304,0
DA:296,0
DA:299,0
DA:302,0
DA:305,0
DA:306,0
DA:307,0
DA:308,0
DA:309,0
DA:310,0
DA:311,0
DA:312,0
DA:313,0
DA:314,0
DA:315,0
DA:316,0
DA:317,0
DA:318,0
DA:319,0
DA:321,0
DA:324,0
DA:325,0
DA:326,0
DA:327,0
DA:328,0
DA:330,0
DA:332,0
DA:331,0
DA:333,0
DA:334,0
DA:335,0
DA:336,0
DA:337,0
LF:156
DA:338,0
DA:339,0
DA:340,0
DA:342,0
DA:345,0
DA:348,0
DA:351,0
DA:353,0
DA:356,0
DA:358,0
LF:165
LH:0
end_of_record
TN:
@@ -388,69 +397,70 @@ LH:0
end_of_record
TN:
SF:/root/dev/command/pipe-lib/src/lib.rs
FN:446,Command::test
FN:469,Config::read
FN:493,Config::read_json
FN:514,Config::read_yaml
FN:531,Config::set_environment_variables
FN:545,<impl PartialEq for Details>::eq
FN:552,EnvironmentValue::from_string
FN:555,EnvironmentValue::from_value
FN:563,EnvironmentValue::prepend_prefix
FN:567,EnvironmentValue::trim_prefix
FN:571,EnvironmentValue::get_from_config
FN:578,EnvironmentValue::get_from_serde
FN:592,EnvironmentValue::get_all
FN:602,EnvironmentValue::print_all
FN:607,EnvironmentValue::set_variable
FN:617,EnvironmentValue::set_variables
FN:624,Extension::from_string
FN:633,Label::dry_run
FN:637,Label::invalid
FN:641,Label::fail
FN:645,Label::found
FN:649,Label::not_found
FN:653,Label::output
FN:657,Label::pass
FN:661,Label::read
FN:665,Label::rejected
FN:669,Label::run
FN:673,Label::using
FN:679,ModuleUri<'_>::from
FN:689,ModuleUri<'_>::hash
FN:713,ModuleUri<'_>::get_whitelist
FN:716,ModuleUri<'_>::is_allowed
FN:719,ModuleUri<'_>::test
FN:720,ModuleUri<'_>::test::check
FN:737,ModuleUri<'_>::working_directory
FN:749,SemanticVersion::from_string
FN:772,Script::expand_arguments
FN:807,Script::expand_arguments_from
FN:842,Script::from_module
FN:900,Script::from_path
FN:915,Script::from_template
FN:935,Script::get_command
FN:945,Script::get_arguments
FN:985,Script::maybe_create_virtual_environment
FN:1030,Script::maybe_git_clone
FN:1037,Script::python_default
FN:1051,Script::run
FN:1118,Script::with_container
FN:1125,Script::with_current_dir
FN:1130,Script::with_envs
FN:1172,Script::with_virtual_environment
FN:1178,ScriptTemplate::from_path
FN:1190,ScriptTemplate::resolve_python_virtual_environment
FN:1218,StringTemplate::new
FN:1227,StringTemplate::expand
FN:1234,StringTemplate::get_variable
FN:1264,StringTemplate::is_handlebars
FN:1299,StringTemplate::remove_spaces
FN:1309,add_dot_slash
FN:1317,add_forward_slash
FN:1324,download_binary
FN:1325,download_binary::download
FNF:62
FN:453,Command::test
FN:476,Config::read
FN:500,Config::read_json
FN:521,Config::read_yaml
FN:538,Config::set_environment_variables
FN:552,<impl PartialEq for Details>::eq
FN:559,EnvironmentValue::from_string
FN:562,EnvironmentValue::from_value
FN:570,EnvironmentValue::prepend_prefix
FN:574,EnvironmentValue::trim_prefix
FN:578,EnvironmentValue::get_from_config
FN:585,EnvironmentValue::get_from_serde
FN:599,EnvironmentValue::get_all
FN:609,EnvironmentValue::print_all
FN:614,EnvironmentValue::set_variable
FN:624,EnvironmentValue::set_variables
FN:631,Extension::from_string
FN:640,Label::dry_run
FN:644,Label::invalid
FN:648,Label::fail
FN:652,Label::found
FN:656,Label::not_found
FN:660,Label::output
FN:664,Label::pass
FN:668,Label::read
FN:672,Label::rejected
FN:676,Label::run
FN:680,Label::using
FN:686,ModuleUri<'_>::from
FN:696,ModuleUri<'_>::hash
FN:720,ModuleUri<'_>::get_whitelist
FN:723,ModuleUri<'_>::is_allowed
FN:726,ModuleUri<'_>::test
FN:727,ModuleUri<'_>::test::check
FN:744,ModuleUri<'_>::working_directory
FN:756,SemanticVersion::from_string
FN:765,Script::ensure_relative
FN:784,Script::expand_arguments
FN:819,Script::expand_arguments_from
FN:854,Script::from_module
FN:912,Script::from_path
FN:927,Script::from_template
FN:947,Script::get_command
FN:957,Script::get_arguments
FN:997,Script::maybe_create_virtual_environment
FN:1042,Script::maybe_git_clone
FN:1049,Script::python_default
FN:1063,Script::run
FN:1130,Script::with_container
FN:1137,Script::with_current_dir
FN:1142,Script::with_envs
FN:1184,Script::with_virtual_environment
FN:1190,ScriptTemplate::from_path
FN:1202,ScriptTemplate::resolve_python_virtual_environment
FN:1230,StringTemplate::new
FN:1239,StringTemplate::expand
FN:1246,StringTemplate::get_variable
FN:1276,StringTemplate::is_handlebars
FN:1311,StringTemplate::remove_spaces
FN:1321,add_dot_slash
FN:1329,add_forward_slash
FN:1336,download_binary
FN:1337,download_binary::download
FNF:63
FNDA:1,Command::test
FNDA:1,Config::read
FNDA:1,Config::read_json
@@ -487,6 +497,7 @@ FNDA:0,ModuleUri<'_>::test
FNDA:0,ModuleUri<'_>::test::check
FNDA:0,ModuleUri<'_>::working_directory
FNDA:1,SemanticVersion::from_string
FNDA:1,Script::ensure_relative
FNDA:1,Script::expand_arguments
FNDA:1,Script::expand_arguments_from
FNDA:0,Script::from_module
@@ -504,501 +515,505 @@ FNDA:0,Script::with_envs
FNDA:1,Script::with_virtual_environment
FNDA:1,ScriptTemplate::from_path
FNDA:0,ScriptTemplate::resolve_python_virtual_environment
FNDA:1,StringTemplate::new
FNDA:2,StringTemplate::new
FNDA:1,StringTemplate::expand
FNDA:1,StringTemplate::get_variable
FNDA:1,StringTemplate::is_handlebars
FNDA:2,StringTemplate::is_handlebars
FNDA:1,StringTemplate::remove_spaces
FNDA:1,add_dot_slash
FNDA:1,add_forward_slash
FNDA:0,download_binary
FNDA:0,download_binary::download
DA:446,1
DA:447,2
DA:448,1
DA:449,4
DA:450,4
DA:452,6
DA:453,2
DA:456,0
DA:457,0
DA:462,3
DA:463,1
DA:469,1
DA:470,2
DA:471,2
DA:472,1
DA:473,0
DA:475,2
DA:453,1
DA:454,2
DA:455,1
DA:456,4
DA:457,4
DA:459,6
DA:460,2
DA:463,0
DA:464,0
DA:469,3
DA:470,1
DA:476,1
DA:477,0
DA:481,2
DA:482,1
DA:477,2
DA:478,2
DA:479,1
DA:480,0
DA:482,2
DA:483,1
DA:484,0
DA:485,0
DA:493,1
DA:494,2
DA:495,2
DA:497,0
DA:498,0
DA:501,3
DA:488,2
DA:489,1
DA:491,0
DA:492,0
DA:500,1
DA:501,2
DA:502,2
DA:503,4
DA:504,0
DA:506,6
DA:507,2
DA:514,1
DA:515,2
DA:516,1
DA:518,0
DA:519,0
DA:505,0
DA:508,3
DA:509,2
DA:510,4
DA:511,0
DA:513,6
DA:514,2
DA:521,1
DA:522,2
DA:523,1
DA:524,2
DA:525,0
DA:527,3
DA:528,1
DA:531,0
DA:526,0
DA:529,2
DA:530,1
DA:531,2
DA:532,0
DA:533,0
DA:534,0
DA:535,0
DA:536,0
DA:534,3
DA:535,1
DA:538,0
DA:539,0
DA:540,0
DA:541,0
DA:545,1
DA:546,1
DA:552,0
DA:553,0
DA:555,0
DA:556,0
DA:557,0
DA:558,0
DA:542,0
DA:543,0
DA:548,0
DA:552,1
DA:553,1
DA:559,0
DA:560,0
DA:562,0
DA:563,0
DA:564,0
DA:567,1
DA:568,1
DA:569,2
DA:565,0
DA:566,0
DA:567,0
DA:570,0
DA:571,0
DA:572,0
DA:573,0
DA:574,0
DA:575,0
DA:576,0
DA:574,1
DA:575,1
DA:576,2
DA:578,0
DA:579,0
DA:580,0
DA:581,0
DA:582,0
DA:583,0
DA:584,0
DA:585,0
DA:586,0
DA:587,0
DA:588,0
DA:589,0
DA:590,0
DA:592,1
DA:593,1
DA:594,2
DA:595,2
DA:596,2
DA:597,2
DA:598,1
DA:602,0
DA:603,0
DA:604,0
DA:607,0
DA:608,0
DA:591,0
DA:592,0
DA:593,0
DA:595,0
DA:597,0
DA:599,1
DA:600,1
DA:601,2
DA:602,2
DA:603,2
DA:604,2
DA:605,1
DA:609,0
DA:610,0
DA:611,0
DA:612,0
DA:613,0
DA:614,0
DA:615,0
DA:616,0
DA:617,0
DA:618,0
DA:619,0
DA:620,0
DA:624,1
DA:625,2
DA:626,2
DA:627,3
DA:628,0
DA:633,0
DA:634,0
DA:624,0
DA:625,0
DA:627,0
DA:631,1
DA:632,2
DA:633,2
DA:634,3
DA:635,0
DA:637,0
DA:638,0
DA:639,0
DA:640,0
DA:641,0
DA:642,0
DA:643,0
DA:644,0
DA:645,0
DA:646,0
DA:647,0
DA:648,0
DA:649,0
DA:650,0
DA:651,0
DA:653,1
DA:654,3
DA:655,3
DA:652,0
DA:653,0
DA:654,0
DA:656,0
DA:657,0
DA:658,0
DA:659,0
DA:661,0
DA:662,0
DA:663,0
DA:660,1
DA:661,3
DA:662,3
DA:664,0
DA:665,0
DA:666,0
DA:667,0
DA:668,0
DA:669,0
DA:670,0
DA:671,0
DA:672,0
DA:673,0
DA:674,0
DA:675,0
DA:679,2
DA:680,2
DA:681,5
DA:682,2
DA:683,2
DA:684,0
DA:686,1
DA:689,1
DA:690,1
DA:691,1
DA:692,1
DA:693,2
DA:694,0
DA:696,4
DA:700,4
DA:701,4
DA:676,0
DA:677,0
DA:678,0
DA:680,0
DA:681,0
DA:682,0
DA:686,2
DA:687,2
DA:688,5
DA:689,2
DA:690,2
DA:691,0
DA:693,1
DA:696,1
DA:697,1
DA:698,1
DA:699,2
DA:700,2
DA:701,0
DA:703,4
DA:704,2
DA:706,2
DA:709,0
DA:713,0
DA:714,0
DA:707,4
DA:708,4
DA:710,4
DA:711,2
DA:713,2
DA:716,0
DA:717,0
DA:719,0
DA:720,0
DA:721,0
DA:723,0
DA:724,0
DA:725,0
DA:726,0
DA:727,0
DA:728,0
DA:729,0
DA:730,0
DA:731,0
DA:732,0
DA:733,0
DA:737,0
DA:734,0
DA:735,0
DA:736,0
DA:738,0
DA:739,0
DA:740,0
DA:741,0
DA:743,0
DA:744,0
DA:749,1
DA:750,1
DA:751,3
DA:752,3
DA:753,3
DA:772,1
DA:773,2
DA:776,2
DA:777,1
DA:778,2
DA:779,1
DA:780,1
DA:782,2
DA:786,1
DA:787,1
DA:807,1
DA:808,2
DA:811,2
DA:812,1
DA:813,2
DA:814,2
DA:817,2
DA:745,0
DA:746,0
DA:747,0
DA:748,0
DA:750,0
DA:751,0
DA:756,1
DA:757,1
DA:758,3
DA:759,3
DA:760,3
DA:765,1
DA:766,1
DA:767,2
DA:768,1
DA:784,1
DA:785,2
DA:788,2
DA:789,1
DA:790,2
DA:791,1
DA:792,1
DA:794,2
DA:798,1
DA:799,1
DA:819,1
DA:821,2
DA:825,1
DA:826,1
DA:842,0
DA:844,0
DA:845,0
DA:846,0
DA:849,0
DA:850,0
DA:851,0
DA:852,0
DA:853,0
DA:855,0
DA:820,2
DA:823,2
DA:824,1
DA:825,2
DA:826,2
DA:829,2
DA:831,1
DA:833,2
DA:837,1
DA:838,1
DA:854,0
DA:856,0
DA:857,0
DA:860,0
DA:858,0
DA:861,0
DA:862,0
DA:863,0
DA:866,0
DA:864,0
DA:865,0
DA:867,0
DA:868,0
DA:871,0
DA:869,0
DA:872,0
DA:873,0
DA:874,0
DA:877,0
DA:875,0
DA:878,0
DA:879,0
DA:880,0
DA:883,0
DA:884,0
DA:900,1
DA:901,1
DA:902,1
DA:915,1
DA:916,1
DA:917,3
DA:921,2
DA:923,2
DA:925,2
DA:929,1
DA:930,1
DA:931,1
DA:885,0
DA:886,0
DA:889,0
DA:895,0
DA:896,0
DA:912,1
DA:913,1
DA:914,1
DA:927,1
DA:928,1
DA:929,3
DA:933,2
DA:935,1
DA:936,1
DA:937,1
DA:938,1
DA:940,1
DA:941,2
DA:935,2
DA:937,2
DA:941,1
DA:942,1
DA:945,1
DA:946,1
DA:943,1
DA:945,2
DA:947,1
DA:948,1
DA:949,1
DA:950,1
DA:951,0
DA:953,0
DA:954,0
DA:957,2
DA:952,1
DA:953,2
DA:954,1
DA:957,1
DA:958,1
DA:959,1
DA:960,1
DA:961,1
DA:962,1
DA:963,1
DA:964,1
DA:965,2
DA:966,2
DA:968,1
DA:970,2
DA:971,2
DA:973,0
DA:974,0
DA:977,1
DA:978,1
DA:963,0
DA:965,0
DA:966,0
DA:969,2
DA:970,1
DA:972,1
DA:974,1
DA:975,1
DA:976,1
DA:977,2
DA:978,2
DA:980,1
DA:982,2
DA:983,2
DA:985,0
DA:990,0
DA:991,0
DA:992,0
DA:994,0
DA:995,0
DA:996,0
DA:986,0
DA:989,1
DA:990,1
DA:992,1
DA:997,0
DA:998,0
DA:999,0
DA:1001,0
DA:1002,0
DA:1003,0
DA:1004,0
DA:1005,0
DA:1006,0
DA:1007,0
DA:1008,0
DA:1009,0
DA:1010,0
DA:1011,0
DA:1013,0
DA:1014,0
DA:1015,0
DA:1016,0
DA:1017,0
DA:1018,0
DA:1019,0
DA:1021,0
DA:1026,0
DA:1030,1
DA:1031,2
DA:1032,2
DA:1033,2
DA:1034,3
DA:1035,1
DA:1037,0
DA:1022,0
DA:1025,0
DA:1029,0
DA:1030,0
DA:1033,0
DA:1038,0
DA:1039,0
DA:1047,0
DA:1051,1
DA:1052,1
DA:1053,1
DA:1054,2
DA:1055,2
DA:1056,3
DA:1057,1
DA:1058,7
DA:1059,2
DA:1060,1
DA:1061,1
DA:1062,1
DA:1042,1
DA:1043,2
DA:1044,2
DA:1045,2
DA:1046,3
DA:1047,1
DA:1049,0
DA:1050,0
DA:1051,0
DA:1059,0
DA:1063,1
DA:1068,2
DA:1064,1
DA:1065,1
DA:1066,2
DA:1067,2
DA:1068,3
DA:1069,1
DA:1071,0
DA:1072,0
DA:1070,7
DA:1071,2
DA:1072,1
DA:1073,1
DA:1074,1
DA:1075,1
DA:1076,1
DA:1077,2
DA:1078,2
DA:1081,2
DA:1082,1
DA:1080,2
DA:1081,1
DA:1083,0
DA:1084,0
DA:1085,0
DA:1087,1
DA:1088,1
DA:1089,1
DA:1089,2
DA:1090,2
DA:1091,0
DA:1092,0
DA:1095,2
DA:1096,1
DA:1097,3
DA:1098,1
DA:1099,3
DA:1100,3
DA:1093,2
DA:1094,1
DA:1096,0
DA:1097,0
DA:1100,1
DA:1101,1
DA:1102,2
DA:1103,0
DA:1104,0
DA:1105,0
DA:1108,0
DA:1109,0
DA:1110,0
DA:1114,0
DA:1107,2
DA:1108,1
DA:1109,3
DA:1110,1
DA:1111,3
DA:1112,3
DA:1113,1
DA:1115,0
DA:1118,1
DA:1119,1
DA:1120,1
DA:1125,1
DA:1126,2
DA:1127,1
DA:1130,0
DA:1131,0
DA:1132,0
DA:1172,1
DA:1173,1
DA:1174,1
DA:1178,1
DA:1179,2
DA:1180,1
DA:1182,0
DA:1183,0
DA:1186,2
DA:1188,1
DA:1190,0
DA:1191,0
DA:1192,0
DA:1193,0
DA:1116,0
DA:1117,0
DA:1120,0
DA:1121,0
DA:1122,0
DA:1126,0
DA:1127,0
DA:1130,1
DA:1131,1
DA:1132,1
DA:1137,1
DA:1138,2
DA:1139,1
DA:1142,0
DA:1143,0
DA:1144,0
DA:1184,1
DA:1185,1
DA:1186,1
DA:1190,1
DA:1191,2
DA:1192,1
DA:1194,0
DA:1195,0
DA:1196,0
DA:1197,0
DA:1199,0
DA:1200,0
DA:1201,0
DA:1198,2
DA:1200,1
DA:1202,0
DA:1203,0
DA:1204,0
DA:1205,0
DA:1206,0
DA:1207,0
DA:1208,0
DA:1218,1
DA:1220,1
DA:1227,1
DA:1228,4
DA:1229,3
DA:1234,1
DA:1235,2
DA:1236,2
DA:1237,1
DA:1238,2
DA:1240,0
DA:1264,1
DA:1265,2
DA:1266,2
DA:1267,1
DA:1268,0
DA:1270,0
DA:1299,1
DA:1300,2
DA:1301,1
DA:1302,0
DA:1304,3
DA:1305,1
DA:1309,1
DA:1310,2
DA:1311,2
DA:1313,3
DA:1209,0
DA:1211,0
DA:1212,0
DA:1213,0
DA:1218,0
DA:1219,0
DA:1220,0
DA:1230,2
DA:1232,2
DA:1239,1
DA:1240,6
DA:1241,5
DA:1246,1
DA:1247,2
DA:1248,2
DA:1249,1
DA:1250,2
DA:1252,0
DA:1276,2
DA:1277,4
DA:1278,4
DA:1279,2
DA:1280,0
DA:1282,0
DA:1311,1
DA:1312,2
DA:1313,1
DA:1314,0
DA:1316,3
DA:1317,1
DA:1318,2
DA:1319,0
DA:1321,2
DA:1324,0
DA:1325,0
DA:1326,0
DA:1327,0
DA:1328,0
DA:1329,0
DA:1330,0
DA:1321,1
DA:1322,2
DA:1323,2
DA:1325,3
DA:1329,1
DA:1330,2
DA:1331,0
DA:1332,0
DA:1333,0
DA:1334,0
DA:1335,0
DA:1333,2
DA:1336,0
DA:1337,0
DA:1338,0
DA:1339,0
DA:1340,0
DA:1341,0
DA:1342,0
DA:1343,0
DA:1344,0
DA:1345,0
DA:1357,1
DA:1358,2
DA:1359,2
DA:1360,2
DA:1361,2
DA:1362,5
DA:1365,1
DA:1367,2
DA:1369,4
DA:1372,0
DA:1399,1
DA:1400,2
DA:1401,2
DA:1402,1
DA:1403,6
DA:1415,1
DA:1417,0
DA:1419,1
DA:1434,1
DA:1435,1
DA:1438,1
DA:1439,3
DA:1451,1
DA:1452,1
DA:1455,0
DA:1456,0
DA:1457,0
DA:1459,0
DA:1463,0
DA:1464,0
DA:1465,0
DA:1346,0
DA:1347,0
DA:1349,0
DA:1351,0
DA:1354,0
DA:1355,0
DA:1356,0
DA:1357,0
DA:1369,1
DA:1370,2
DA:1371,2
DA:1372,2
DA:1373,2
DA:1374,5
DA:1377,1
DA:1379,2
DA:1381,4
DA:1384,0
DA:1411,1
DA:1412,2
DA:1413,2
DA:1414,1
DA:1415,6
DA:1427,1
DA:1429,0
DA:1431,1
DA:1446,1
DA:1447,1
DA:1450,1
DA:1451,3
DA:1463,1
DA:1464,1
DA:1467,0
DA:1481,2
DA:1482,2
DA:1483,4
DA:1484,4
DA:1485,12
DA:1486,8
DA:1488,1
DA:1489,3
DA:1490,1
DA:1493,1
DA:1495,1
DA:1468,0
DA:1469,0
DA:1471,0
DA:1475,0
DA:1476,0
DA:1477,0
DA:1479,0
DA:1493,2
DA:1494,2
DA:1495,4
DA:1496,4
LF:486
LH:246
DA:1497,12
DA:1498,8
DA:1500,1
DA:1501,3
DA:1502,1
DA:1505,1
DA:1507,1
DA:1508,4
LF:490
LH:250
end_of_record
+25 −1
Original line number Diff line number Diff line
@@ -3,7 +3,7 @@ use color_eyre::eyre::Report;
use exitcode;
use nanoid::nanoid;
use pipe_lib::{
    download_binary, get_checksum, Command, Config, EnvironmentValue, Label, ModuleLanguage, ModuleType, ModuleUri, Script,
    download_binary, get_checksum, Command, Config, EnvironmentValue, InputAttribute, Label, ModuleLanguage, ModuleType, ModuleUri, Script,
    ScriptTemplate, TemplateAttribute,
};
use rayon::prelude::*;
@@ -74,6 +74,20 @@ pub fn run(
    };
    match Config::read(config_path) {
        | Some(cfg) => {
            let _input = match cfg.clone().input {
                | Some(value) => match value {
                    | InputAttribute::Path(_path) => {
                        // TODO: Verify path points to directory and return Vec<String> of children
                        Some(vec![])
                    }
                    | InputAttribute::List(value) => Some(value),
                    | InputAttribute::ShellScript(_script) => {
                        // TODO: Execute shell script and return Vec<String> of files (or folders)
                        unimplemented!("Shell script workflow input");
                    }
                },
                | None => None,
            };
            check_requirements(&cfg, skip_verify_requirements);
            check_resources(&cfg, false);
            //
@@ -259,6 +273,16 @@ pub fn run(
                | _ => unimplemented!("Only binary and script modules are currently supported"),
            });
            // Run workflow
            match _input {
                | Some(value) => value.iter().for_each(|path| {
                    println!("Running workflow on {}", path);
                    // TODO: Run workflow with path as INPUT_DIRECTORY
                }),
                | None => {
                    println!("Running single workflow with no input");
                    // TODO: Run workflow with path as INPUT_DIRECTORY
                }
            };
            cfg.modules.iter().for_each(|module| match &module.module_type {
                | ModuleType::Binary { .. } => {
                    let envs = EnvironmentValue::get_from_config(&cfg, Some(module.clone()));
+11 −4
Original line number Diff line number Diff line
@@ -68,6 +68,13 @@ enum Extension {
    Yaml,
    Unknown,
}
#[derive(Clone, Debug, Deserialize, Serialize)]
#[serde(untagged)]
pub enum InputAttribute {
    Path(String),
    List(Vec<String>),
    ShellScript(String),
}
#[derive(Clone, Debug, Serialize, Deserialize, Valuable)]
#[serde(untagged)]
pub enum Instruction {
@@ -269,12 +276,12 @@ pub struct Config {
    /// Workflow input
    ///
    /// Can be:
    /// - a path to a file
    /// - a path to a folder that contains files
    /// - script that returns lists of file paths (executed in the current working directory)
    /// - a list of paths
    /// - a path to a folder that contains files (or folders)
    /// - a script that returns a list of file (or folder) paths (executed in the current working directory)
    ///
    /// If input is not provided, the workflow will run similar to a 0-adic function.
    pub input: Option<String>,
    pub input: Option<InputAttribute>,
    /// Workflow output
    ///
    /// Designates a path to the workflow output artifacts for verification and export purposes