trackler 2.1.0.33 → 2.1.0.34

Sign up to get free protection for your applications and to get access to all the features.
Files changed (101) hide show
  1. checksums.yaml +4 -4
  2. data/lib/trackler/version.rb +1 -1
  3. data/tracks/bash/config.json +39 -20
  4. data/tracks/bash/{SETUP.md → docs/EXERCISE_README_INSERT.md} +0 -0
  5. data/tracks/bash/exercises/difference-of-squares/difference_of_squares_test.sh +71 -0
  6. data/tracks/bash/exercises/difference-of-squares/example.sh +25 -0
  7. data/tracks/clojurescript/config.json +0 -5
  8. data/tracks/clojurescript/{exercises/TRACK_HINTS.md → docs/EXERCISE_README_INSERT.md} +0 -0
  9. data/tracks/coffeescript/config.json +63 -26
  10. data/tracks/coffeescript/{SETUP.md → docs/EXERCISE_README_INSERT.md} +4 -2
  11. data/tracks/coffeescript/exercises/luhn/luhn_test.spec.coffee +2 -2
  12. data/tracks/coffeescript/exercises/palindrome-products/palindrome_products_test.spec.coffee +1 -1
  13. data/tracks/crystal/config.json +27 -10
  14. data/tracks/dlang/config.json +2 -3
  15. data/tracks/dlang/{SETUP.md → docs/EXERCISE_README_INSERT.md} +0 -0
  16. data/tracks/haxe/config.json +7 -2
  17. data/tracks/haxe/{SETUP.md → docs/EXERCISE_README_INSERT.md} +0 -0
  18. data/tracks/java/{exercises/_template → _template}/build.gradle +0 -0
  19. data/tracks/java/{exercises/_template → _template}/src/example/java/.keep +0 -0
  20. data/tracks/java/{exercises/_template → _template}/src/main/java/.keep +0 -0
  21. data/tracks/java/{exercises/_template → _template}/src/test/java/.keep +0 -0
  22. data/tracks/java/config.json +201 -77
  23. data/tracks/julia/config.json +1 -7
  24. data/tracks/kotlin/{exercises/_template → _template}/build.gradle +0 -0
  25. data/tracks/kotlin/{exercises/_template → _template}/src/example/kotlin/.keep +0 -0
  26. data/tracks/kotlin/{exercises/_template → _template}/src/main/kotlin/.keep +0 -0
  27. data/tracks/kotlin/{exercises/_template → _template}/src/test/kotlin/.keep +0 -0
  28. data/tracks/mips/config.json +42 -14
  29. data/tracks/mips/{SETUP.md → docs/EXERCISE_README_INSERT.md} +0 -0
  30. data/tracks/nasm/config.json +1 -0
  31. data/tracks/nasm/{SETUP.md → docs/EXERCISE_README_INSERT.md} +0 -0
  32. data/tracks/nasm/exercises/.keep +0 -2
  33. data/tracks/nim/config.json +6 -0
  34. data/tracks/nim/{SETUP.md → docs/EXERCISE_README_INSERT.md} +0 -0
  35. data/tracks/nim/exercises/raindrops/example.nim +18 -0
  36. data/tracks/nim/exercises/raindrops/raindrops_test.nim +51 -0
  37. data/tracks/ocaml/config.json +97 -30
  38. data/tracks/perl5/config.json +186 -66
  39. data/tracks/perl5/{SETUP.md → docs/EXERCISE_README_INSERT.md} +0 -0
  40. data/tracks/perl6/bin/README.md +16 -6
  41. data/tracks/perl6/bin/exercise-gen.pl6 +21 -6
  42. data/tracks/perl6/{SETUP.md → docs/EXERCISE_README_INSERT.md} +0 -0
  43. data/tracks/perl6/exercises/accumulate/example.yaml +10 -0
  44. data/tracks/perl6/exercises/all-your-base/all-your-base.t +1 -0
  45. data/tracks/perl6/exercises/all-your-base/example.yaml +49 -0
  46. data/tracks/perl6/exercises/allergies/Allergies.pm6 +1 -1
  47. data/tracks/perl6/exercises/allergies/example.yaml +21 -0
  48. data/tracks/perl6/exercises/anagram/example.yaml +19 -0
  49. data/tracks/perl6/exercises/atbash-cipher/AtbashCipher.pm6 +1 -1
  50. data/tracks/perl6/exercises/atbash-cipher/example.yaml +15 -0
  51. data/tracks/perl6/exercises/bob/Example.pm6 +4 -0
  52. data/tracks/perl6/exercises/bob/example.yaml +24 -0
  53. data/tracks/perl6/exercises/clock/clock.t +1 -0
  54. data/tracks/perl6/exercises/clock/example.yaml +17 -0
  55. data/tracks/perl6/exercises/flatten-array/example.yaml +17 -0
  56. data/tracks/perl6/exercises/grade-school/example.yaml +22 -0
  57. data/tracks/perl6/exercises/grains/example.yaml +13 -0
  58. data/tracks/perl6/exercises/hello-world/Example.pm6 +9 -0
  59. data/tracks/perl6/exercises/hello-world/example.yaml +21 -0
  60. data/tracks/perl6/exercises/leap/Example.pm6 +1 -1
  61. data/tracks/perl6/exercises/leap/Leap.pm6 +1 -1
  62. data/tracks/perl6/exercises/leap/example.yaml +15 -0
  63. data/tracks/perl6/exercises/linked-list/LinkedList.pm6 +1 -1
  64. data/tracks/perl6/exercises/linked-list/example.yaml +51 -0
  65. data/tracks/perl6/exercises/linked-list/linked-list.t +0 -1
  66. data/tracks/perl6/exercises/luhn/example.yaml +19 -0
  67. data/tracks/perl6/exercises/phone-number/{PhoneNumber.pm6 → Phone.pm6} +0 -0
  68. data/tracks/perl6/exercises/phone-number/example.yaml +10 -0
  69. data/tracks/perl6/exercises/raindrops/example.yaml +15 -0
  70. data/tracks/perl6/exercises/rna-transcription/example.yaml +10 -0
  71. data/tracks/perl6/exercises/robot-name/example.yaml +24 -0
  72. data/tracks/perl6/exercises/robot-name/robot-name.t +4 -0
  73. data/tracks/perl6/exercises/scrabble-score/example.yaml +21 -0
  74. data/tracks/perl6/exercises/space-age/example.yaml +52 -0
  75. data/tracks/perl6/exercises/word-count/example.yaml +9 -0
  76. data/tracks/perl6/exercises/wordy/example.yaml +20 -0
  77. data/tracks/perl6/templates/module.mustache +4 -0
  78. data/tracks/perl6/templates/test.mustache +2 -1
  79. data/tracks/plsql/config.json +30 -10
  80. data/tracks/plsql/{SETUP.md → docs/EXERCISE_README_INSERT.md} +0 -0
  81. data/tracks/pony/config.json +0 -6
  82. data/tracks/pony/{SETUP.md → docs/EXERCISE_README_INSERT.md} +0 -0
  83. data/tracks/powershell/config.json +6 -2
  84. data/tracks/powershell/{SETUP.md → docs/EXERCISE_README_INSERT.md} +0 -0
  85. data/tracks/python/config.json +101 -39
  86. data/tracks/r/config.json +0 -4
  87. data/tracks/ruby/config.json +84 -6
  88. data/tracks/ruby/{exercises/TRACK_HINTS.md → docs/EXERCISE_README_INSERT.md} +0 -0
  89. data/tracks/tcl/config.json +1 -0
  90. data/tracks/tcl/{SETUP.md → docs/EXERCISE_README_INSERT.md} +0 -0
  91. data/tracks/tcl/exercises/.keep +0 -2
  92. data/tracks/teco/config.json +0 -4
  93. data/tracks/teco/{SETUP.md → docs/EXERCISE_README_INSERT.md} +0 -0
  94. data/tracks/vbnet/config.json +1 -0
  95. data/tracks/vbnet/{SETUP.md → docs/EXERCISE_README_INSERT.md} +0 -0
  96. data/tracks/vimscript/config.json +64 -19
  97. data/tracks/vimscript/{TRACK_HINTS.md → docs/EXERCISE_README_INSERT.md} +0 -0
  98. data/tracks/vimscript/exercises/beer-song/beer_song.vader +50 -0
  99. data/tracks/vimscript/exercises/beer-song/beer_song.vim +24 -0
  100. data/tracks/vimscript/exercises/beer-song/example.vim +21 -0
  101. metadata +37 -29
@@ -3,12 +3,6 @@
3
3
  "language": "Pony",
4
4
  "repository": "https://github.com/exercism/xpony",
5
5
  "active": false,
6
- "ignored": [
7
- "bin",
8
- "docs",
9
- "img",
10
- "ponyc"
11
- ],
12
6
  "exercises": [
13
7
  {
14
8
  "slug": "hello-world",
@@ -19,12 +19,16 @@
19
19
  {
20
20
  "difficulty": 1,
21
21
  "slug": "hello-world",
22
- "topics": []
22
+ "topics": [
23
+
24
+ ]
23
25
  },
24
26
  {
25
27
  "difficulty": 1,
26
28
  "slug": "hamming",
27
- "topics": []
29
+ "topics": [
30
+
31
+ ]
28
32
  }
29
33
  ]
30
34
  }
@@ -8,436 +8,496 @@
8
8
  "slug": "hello-world",
9
9
  "difficulty": 1,
10
10
  "topics": [
11
- "control-flow (if-else statements)",
12
- "optional values",
13
- "text formatting"
11
+ "control-flow (if-else statements)",
12
+ "optional values",
13
+ "text formatting"
14
14
  ]
15
15
  },
16
16
  {
17
17
  "slug": "leap",
18
18
  "difficulty": 1,
19
19
  "topics": [
20
- "control-flow (if-else statements)",
21
- "booleans",
22
- "logic"
20
+ "control-flow (if-else statements)",
21
+ "booleans",
22
+ "logic"
23
23
  ]
24
24
  },
25
25
  {
26
26
  "slug": "isogram",
27
27
  "difficulty": 1,
28
28
  "topics": [
29
+
29
30
  ]
30
31
  },
31
32
  {
32
33
  "slug": "pangram",
33
34
  "difficulty": 1,
34
35
  "topics": [
35
- "control-flow (loops)",
36
- "control-flow (if-else statements)",
37
- "strings",
38
- "algorithms",
39
- "filtering",
40
- "logic"
36
+ "control-flow (loops)",
37
+ "control-flow (if-else statements)",
38
+ "strings",
39
+ "algorithms",
40
+ "filtering",
41
+ "logic"
41
42
  ]
42
43
  },
43
44
  {
44
45
  "slug": "rna-transcription",
45
46
  "difficulty": 1,
46
47
  "topics": [
47
- "control-flow (if-else statements)",
48
- "control-flow (loops)",
49
- "maps",
50
- "strings",
51
- "logic",
52
- "transforming"
48
+ "control-flow (if-else statements)",
49
+ "control-flow (loops)",
50
+ "maps",
51
+ "strings",
52
+ "logic",
53
+ "transforming"
53
54
  ]
54
55
  },
55
56
  {
56
57
  "slug": "hamming",
57
58
  "difficulty": 1,
58
59
  "topics": [
59
- "control-flow (if-else statements)",
60
- "control-flow (loops)",
61
- "sequences",
62
- "sets",
63
- "strings",
64
- "algorithms",
65
- "filtering",
66
- "logic"
60
+ "control-flow (if-else statements)",
61
+ "control-flow (loops)",
62
+ "sequences",
63
+ "sets",
64
+ "strings",
65
+ "algorithms",
66
+ "filtering",
67
+ "logic"
67
68
  ]
68
69
  },
69
70
  {
70
71
  "slug": "word-count",
71
72
  "difficulty": 3,
72
73
  "topics": [
73
- "strings",
74
- "algorithms",
75
- "logic",
76
- "pattern recognition",
77
- "text formatting"
74
+ "strings",
75
+ "algorithms",
76
+ "logic",
77
+ "pattern recognition",
78
+ "text formatting"
78
79
  ]
79
80
  },
80
81
  {
81
82
  "slug": "gigasecond",
82
83
  "difficulty": 1,
83
84
  "topics": [
85
+
84
86
  ]
85
87
  },
86
88
  {
87
89
  "slug": "bob",
88
90
  "difficulty": 1,
89
91
  "topics": [
92
+
90
93
  ]
91
94
  },
92
95
  {
93
96
  "slug": "run-length-encoding",
94
97
  "difficulty": 1,
95
98
  "topics": [
99
+
96
100
  ]
97
101
  },
98
102
  {
99
103
  "slug": "meetup",
100
104
  "difficulty": 1,
101
105
  "topics": [
106
+
102
107
  ]
103
108
  },
104
109
  {
105
110
  "slug": "rotational-cipher",
106
111
  "difficulty": 1,
107
112
  "topics": [
108
- "strings",
109
- "logic",
110
- "control-flow (loops)"
113
+ "strings",
114
+ "logic",
115
+ "control-flow (loops)"
111
116
  ]
112
117
  },
113
118
  {
114
119
  "slug": "difference-of-squares",
115
120
  "difficulty": 1,
116
121
  "topics": [
122
+
117
123
  ]
118
124
  },
119
125
  {
120
126
  "slug": "anagram",
121
127
  "difficulty": 1,
122
128
  "topics": [
129
+
123
130
  ]
124
131
  },
125
132
  {
126
133
  "slug": "allergies",
127
134
  "difficulty": 1,
128
135
  "topics": [
136
+
129
137
  ]
130
138
  },
131
139
  {
132
140
  "slug": "series",
133
141
  "difficulty": 1,
134
142
  "topics": [
143
+
135
144
  ]
136
145
  },
137
146
  {
138
147
  "slug": "robot-simulator",
139
148
  "difficulty": 1,
140
149
  "topics": [
150
+
141
151
  ]
142
152
  },
143
153
  {
144
154
  "slug": "sieve",
145
155
  "difficulty": 1,
146
156
  "topics": [
157
+
147
158
  ]
148
159
  },
149
160
  {
150
161
  "slug": "atbash-cipher",
151
162
  "difficulty": 1,
152
163
  "topics": [
164
+
153
165
  ]
154
166
  },
155
167
  {
156
168
  "slug": "sum-of-multiples",
157
169
  "difficulty": 1,
158
170
  "topics": [
171
+
159
172
  ]
160
173
  },
161
174
  {
162
175
  "slug": "acronym",
163
176
  "difficulty": 1,
164
177
  "topics": [
178
+
165
179
  ]
166
180
  },
167
181
  {
168
182
  "slug": "say",
169
183
  "difficulty": 1,
170
184
  "topics": [
185
+
171
186
  ]
172
187
  },
173
188
  {
174
189
  "slug": "largest-series-product",
175
190
  "difficulty": 1,
176
191
  "topics": [
192
+
177
193
  ]
178
194
  },
179
195
  {
180
196
  "slug": "kindergarten-garden",
181
197
  "difficulty": 1,
182
198
  "topics": [
199
+
183
200
  ]
184
201
  },
185
202
  {
186
203
  "slug": "grade-school",
187
204
  "difficulty": 1,
188
205
  "topics": [
206
+
189
207
  ]
190
208
  },
191
209
  {
192
210
  "slug": "flatten-array",
193
211
  "difficulty": 1,
194
212
  "topics": [
213
+
195
214
  ]
196
215
  },
197
216
  {
198
217
  "slug": "roman-numerals",
199
218
  "difficulty": 1,
200
219
  "topics": [
220
+
201
221
  ]
202
222
  },
203
223
  {
204
224
  "slug": "space-age",
205
225
  "difficulty": 1,
206
226
  "topics": [
227
+
207
228
  ]
208
229
  },
209
230
  {
210
231
  "slug": "grains",
211
232
  "difficulty": 1,
212
233
  "topics": [
234
+
213
235
  ]
214
236
  },
215
237
  {
216
238
  "slug": "luhn",
217
239
  "difficulty": 1,
218
240
  "topics": [
241
+
219
242
  ]
220
243
  },
221
244
  {
222
245
  "slug": "etl",
223
246
  "difficulty": 1,
224
247
  "topics": [
248
+
225
249
  ]
226
250
  },
227
251
  {
228
252
  "slug": "prime-factors",
229
253
  "difficulty": 1,
230
254
  "topics": [
255
+
231
256
  ]
232
257
  },
233
258
  {
234
259
  "slug": "pig-latin",
235
260
  "difficulty": 1,
236
261
  "topics": [
262
+
237
263
  ]
238
264
  },
239
265
  {
240
266
  "slug": "simple-cipher",
241
267
  "difficulty": 1,
242
268
  "topics": [
269
+
243
270
  ]
244
271
  },
245
272
  {
246
273
  "slug": "scrabble-score",
247
274
  "difficulty": 1,
248
275
  "topics": [
276
+
249
277
  ]
250
278
  },
251
279
  {
252
280
  "slug": "crypto-square",
253
281
  "difficulty": 1,
254
282
  "topics": [
283
+
255
284
  ]
256
285
  },
257
286
  {
258
287
  "slug": "sublist",
259
288
  "difficulty": 1,
260
289
  "topics": [
290
+
261
291
  ]
262
292
  },
263
293
  {
264
294
  "slug": "pythagorean-triplet",
265
295
  "difficulty": 1,
266
296
  "topics": [
297
+
267
298
  ]
268
299
  },
269
300
  {
270
301
  "slug": "circular-buffer",
271
302
  "difficulty": 1,
272
303
  "topics": [
304
+
273
305
  ]
274
306
  },
275
307
  {
276
308
  "slug": "robot-name",
277
309
  "difficulty": 1,
278
310
  "topics": [
311
+
279
312
  ]
280
313
  },
281
314
  {
282
315
  "slug": "matrix",
283
316
  "difficulty": 1,
284
317
  "topics": [
318
+
285
319
  ]
286
320
  },
287
321
  {
288
322
  "slug": "rail-fence-cipher",
289
323
  "difficulty": 1,
290
324
  "topics": [
325
+
291
326
  ]
292
327
  },
293
328
  {
294
329
  "slug": "nth-prime",
295
330
  "difficulty": 1,
296
331
  "topics": [
332
+
297
333
  ]
298
334
  },
299
335
  {
300
336
  "slug": "saddle-points",
301
337
  "difficulty": 1,
302
338
  "topics": [
339
+
303
340
  ]
304
341
  },
305
342
  {
306
343
  "slug": "beer-song",
307
344
  "difficulty": 1,
308
345
  "topics": [
346
+
309
347
  ]
310
348
  },
311
349
  {
312
350
  "slug": "perfect-numbers",
313
351
  "difficulty": 1,
314
352
  "topics": [
353
+
315
354
  ]
316
355
  },
317
356
  {
318
357
  "slug": "secret-handshake",
319
358
  "difficulty": 1,
320
359
  "topics": [
360
+
321
361
  ]
322
362
  },
323
363
  {
324
364
  "slug": "twelve-days",
325
365
  "difficulty": 1,
326
366
  "topics": [
367
+
327
368
  ]
328
369
  },
329
370
  {
330
371
  "slug": "palindrome-products",
331
372
  "difficulty": 1,
332
373
  "topics": [
374
+
333
375
  ]
334
376
  },
335
377
  {
336
378
  "slug": "bracket-push",
337
379
  "difficulty": 1,
338
380
  "topics": [
381
+
339
382
  ]
340
383
  },
341
384
  {
342
385
  "slug": "minesweeper",
343
386
  "difficulty": 1,
344
387
  "topics": [
388
+
345
389
  ]
346
390
  },
347
391
  {
348
392
  "slug": "queen-attack",
349
393
  "difficulty": 1,
350
394
  "topics": [
395
+
351
396
  ]
352
397
  },
353
398
  {
354
399
  "slug": "wordy",
355
400
  "difficulty": 1,
356
401
  "topics": [
402
+
357
403
  ]
358
404
  },
359
405
  {
360
406
  "slug": "phone-number",
361
407
  "difficulty": 1,
362
408
  "topics": [
409
+
363
410
  ]
364
411
  },
365
412
  {
366
413
  "slug": "ocr-numbers",
367
414
  "difficulty": 1,
368
415
  "topics": [
416
+
369
417
  ]
370
418
  },
371
419
  {
372
420
  "slug": "house",
373
421
  "difficulty": 1,
374
422
  "topics": [
423
+
375
424
  ]
376
425
  },
377
426
  {
378
427
  "slug": "triangle",
379
428
  "difficulty": 1,
380
429
  "topics": [
430
+
381
431
  ]
382
432
  },
383
433
  {
384
434
  "slug": "transpose",
385
435
  "difficulty": 1,
386
436
  "topics": [
437
+
387
438
  ]
388
439
  },
389
440
  {
390
441
  "slug": "poker",
391
442
  "difficulty": 1,
392
443
  "topics": [
444
+
393
445
  ]
394
446
  },
395
447
  {
396
448
  "slug": "zebra-puzzle",
397
449
  "difficulty": 1,
398
450
  "topics": [
451
+
399
452
  ]
400
453
  },
401
454
  {
402
455
  "slug": "rectangles",
403
456
  "difficulty": 1,
404
457
  "topics": [
458
+
405
459
  ]
406
460
  },
407
461
  {
408
462
  "slug": "binary-search",
409
463
  "difficulty": 1,
410
464
  "topics": [
465
+
411
466
  ]
412
467
  },
413
468
  {
414
469
  "slug": "list-ops",
415
470
  "difficulty": 1,
416
471
  "topics": [
472
+
417
473
  ]
418
474
  },
419
475
  {
420
476
  "slug": "book-store",
421
477
  "difficulty": 1,
422
478
  "topics": [
479
+
423
480
  ]
424
481
  },
425
482
  {
426
483
  "slug": "linked-list",
427
484
  "difficulty": 1,
428
485
  "topics": [
486
+
429
487
  ]
430
488
  },
431
489
  {
432
490
  "slug": "diamond",
433
491
  "difficulty": 1,
434
492
  "topics": [
493
+
435
494
  ]
436
495
  },
437
496
  {
438
497
  "slug": "variable-length-quantity",
439
498
  "difficulty": 1,
440
499
  "topics": [
500
+
441
501
  ]
442
502
  },
443
503
  {
@@ -452,11 +512,11 @@
452
512
  "slug": "clock",
453
513
  "difficulty": 2,
454
514
  "topics": [
455
- "classes",
456
- "time",
457
- "mathematics",
458
- "logic",
459
- "text formatting"
515
+ "classes",
516
+ "time",
517
+ "mathematics",
518
+ "logic",
519
+ "text formatting"
460
520
  ]
461
521
  },
462
522
  {
@@ -480,12 +540,14 @@
480
540
  "slug": "alphametics",
481
541
  "difficulty": 6,
482
542
  "topics": [
543
+
483
544
  ]
484
545
  },
485
546
  {
486
547
  "slug": "tournament",
487
548
  "difficulty": 1,
488
549
  "topics": [
550
+
489
551
  ]
490
552
  },
491
553
  {