trackler 2.2.1.24 → 2.2.1.25
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/trackler/version.rb +1 -1
- data/problem-specifications/TOPICS.txt +73 -73
- data/tracks/bash/config.json +82 -73
- data/tracks/bash/config/maintainers.json +9 -9
- data/tracks/bash/exercises/nucleotide-count/README.md +38 -0
- data/tracks/bash/exercises/nucleotide-count/example.sh +38 -0
- data/tracks/bash/exercises/nucleotide-count/nucleotide_count_test.sh +29 -0
- data/tracks/csharp/.travis.yml +9 -2
- data/tracks/csharp/build.cake +7 -34
- data/tracks/csharp/build.ps1 +2 -2
- data/tracks/csharp/build.sh +2 -2
- data/tracks/csharp/docs/GENERATORS.md +102 -0
- data/tracks/csharp/exercises/Exercises.sln +669 -0
- data/tracks/csharp/exercises/queen-attack/Example.cs +14 -1
- data/tracks/csharp/exercises/queen-attack/QueenAttack.cs +6 -1
- data/tracks/csharp/exercises/queen-attack/QueenAttackTest.cs +57 -19
- data/tracks/csharp/generators/Exercises/QueenAttack.cs +85 -0
- data/tracks/d/README.md +3 -2
- data/tracks/d/docs/SNIPPET.txt +7 -0
- data/tracks/d/exercises/crypto-square/.dub/dub.json +6 -0
- data/tracks/d/exercises/crypto-square/example/crypto_square.d +4 -2
- data/tracks/dart/exercises/bob/pubspec.lock +28 -16
- data/tracks/dart/exercises/bob/pubspec.yaml +1 -1
- data/tracks/dart/exercises/bob/test/bob_test.dart +2 -0
- data/tracks/dart/exercises/difference-of-squares/pubspec.lock +28 -16
- data/tracks/dart/exercises/difference-of-squares/pubspec.yaml +1 -1
- data/tracks/dart/exercises/gigasecond/pubspec.lock +28 -16
- data/tracks/dart/exercises/gigasecond/pubspec.yaml +1 -1
- data/tracks/dart/exercises/hamming/pubspec.lock +28 -16
- data/tracks/dart/exercises/hamming/pubspec.yaml +1 -1
- data/tracks/dart/exercises/hello-world/pubspec.lock +28 -16
- data/tracks/dart/exercises/hello-world/pubspec.yaml +1 -1
- data/tracks/dart/exercises/hello-world/test/hello_world_test.dart +13 -15
- data/tracks/dart/exercises/leap/pubspec.lock +28 -16
- data/tracks/dart/exercises/leap/pubspec.yaml +1 -1
- data/tracks/dart/exercises/rna-transcription/pubspec.lock +28 -16
- data/tracks/dart/exercises/rna-transcription/pubspec.yaml +1 -1
- data/tracks/elixir/exercises/pig-latin/example.exs +17 -18
- data/tracks/elixir/exercises/pig-latin/pig_latin_test.exs +16 -1
- data/tracks/fsharp/build.cake +0 -2
- data/tracks/go/exercises/error-handling/.meta/description.md +39 -0
- data/tracks/go/exercises/error-handling/.meta/hints.md +5 -0
- data/tracks/go/exercises/error-handling/.meta/metadata.yml +2 -0
- data/tracks/go/exercises/error-handling/README.md +43 -5
- data/tracks/go/exercises/error-handling/common.go +4 -3
- data/tracks/go/exercises/error-handling/error_handling_test.go +1 -38
- data/tracks/go/exercises/secret-handshake/secret_handshake_test.go +3 -1
- data/tracks/haxe/docs/LEARNING.md +8 -0
- data/tracks/java/.gitignore +2 -1
- data/tracks/java/config.json +337 -491
- data/tracks/java/config/maintainers.json +26 -26
- data/tracks/java/exercises/bob/src/test/java/BobTest.java +7 -1
- data/tracks/java/exercises/rna-transcription/src/example/java/RnaTranscription.java +4 -2
- data/tracks/java/exercises/rna-transcription/src/main/java/RnaTranscription.java +5 -3
- data/tracks/java/exercises/rna-transcription/src/test/java/RnaTranscriptionTest.java +21 -26
- data/tracks/javascript/config.json +662 -664
- data/tracks/javascript/config/maintainers.json +35 -35
- data/tracks/javascript/exercises/simple-cipher/simple-cipher.spec.js +7 -3
- data/tracks/plsql/config.json +52 -66
- data/tracks/plsql/docs/SNIPPET.txt +6 -0
- data/tracks/plsql/exercises/hello-world/example.plsql +20 -0
- data/tracks/plsql/exercises/hello-world/hello_world#.plsql +20 -0
- data/tracks/plsql/exercises/hello-world/ut_hello_world#.plsql +60 -0
- data/tracks/sml/Makefile +5 -0
- data/tracks/sml/bin/generate +3 -4
- data/tracks/sml/config.json +55 -5
- data/tracks/sml/exercises/collatz-conjecture/README.md +63 -0
- data/tracks/sml/exercises/collatz-conjecture/collatz-conjecture.sml +4 -0
- data/tracks/sml/exercises/collatz-conjecture/example.sml +17 -0
- data/tracks/sml/exercises/collatz-conjecture/test.sml +30 -0
- data/tracks/sml/exercises/collatz-conjecture/testlib.sml +159 -0
- data/tracks/sml/exercises/leap/README.md +63 -0
- data/tracks/sml/exercises/leap/example.sml +2 -0
- data/tracks/sml/exercises/leap/leap.sml +2 -0
- data/tracks/sml/exercises/leap/test.sml +24 -0
- data/tracks/sml/exercises/leap/testlib.sml +159 -0
- data/tracks/sml/exercises/rna-transcription/README.md +55 -0
- data/tracks/sml/exercises/rna-transcription/example.sml +20 -0
- data/tracks/sml/exercises/rna-transcription/rna-transcription.sml +2 -0
- data/tracks/sml/exercises/rna-transcription/test.sml +36 -0
- data/tracks/sml/exercises/rna-transcription/testlib.sml +159 -0
- data/tracks/sml/exercises/sum-of-multiples/README.md +48 -0
- data/tracks/sml/exercises/sum-of-multiples/example.sml +8 -0
- data/tracks/sml/exercises/sum-of-multiples/sum-of-multiples.sml +2 -0
- data/tracks/sml/exercises/sum-of-multiples/test.sml +48 -0
- data/tracks/sml/exercises/sum-of-multiples/testlib.sml +159 -0
- data/tracks/sml/exercises/two-fer/README.md +78 -0
- data/tracks/sml/exercises/two-fer/example.sml +1 -0
- data/tracks/sml/exercises/two-fer/test.sml +21 -0
- data/tracks/sml/exercises/two-fer/testlib.sml +159 -0
- data/tracks/sml/exercises/two-fer/two-fer.sml +2 -0
- metadata +43 -5
- data/tracks/csharp/exercises/Exercises.All.sln +0 -1545
- data/tracks/csharp/exercises/Exercises.Default.sln +0 -1503
- data/tracks/csharp/exercises/Exercises.Refactoring.sln +0 -61
@@ -12,7 +12,7 @@ public Queen(int row, int column)
|
|
12
12
|
public int Column { get; }
|
13
13
|
}
|
14
14
|
|
15
|
-
public static class
|
15
|
+
public static class QueenAttack
|
16
16
|
{
|
17
17
|
public static bool CanAttack(Queen white, Queen black)
|
18
18
|
{
|
@@ -25,4 +25,17 @@ public static bool CanAttack(Queen white, Queen black)
|
|
25
25
|
black.Column == white.Column ||
|
26
26
|
Math.Abs(black.Row - white.Row) == Math.Abs(black.Column - white.Column);
|
27
27
|
}
|
28
|
+
|
29
|
+
public static Queen Create(int row, int column)
|
30
|
+
{
|
31
|
+
const int MIN_VALUE = 0;
|
32
|
+
const int MAX_VALUE = 7;
|
33
|
+
|
34
|
+
if (row < MIN_VALUE || column < MIN_VALUE || row > MAX_VALUE || column > MAX_VALUE)
|
35
|
+
{
|
36
|
+
throw new ArgumentOutOfRangeException("invalid queen position");
|
37
|
+
}
|
38
|
+
|
39
|
+
return new Queen(row, column);
|
40
|
+
}
|
28
41
|
}
|
@@ -12,10 +12,15 @@ public Queen(int row, int column)
|
|
12
12
|
public int Column { get; }
|
13
13
|
}
|
14
14
|
|
15
|
-
public static class
|
15
|
+
public static class QueenAttack
|
16
16
|
{
|
17
17
|
public static bool CanAttack(Queen white, Queen black)
|
18
18
|
{
|
19
19
|
throw new NotImplementedException("You need to implement this function.");
|
20
20
|
}
|
21
|
+
|
22
|
+
public static Queen Create(int row, int column)
|
23
|
+
{
|
24
|
+
throw new NotImplementedException("You need to implement this function.");
|
25
|
+
}
|
21
26
|
}
|
@@ -1,55 +1,93 @@
|
|
1
|
-
|
1
|
+
// This file was auto-generated based on version 1.0.0 of the canonical data.
|
2
|
+
|
2
3
|
using Xunit;
|
4
|
+
using System;
|
3
5
|
|
4
6
|
public class QueenAttackTest
|
5
7
|
{
|
6
8
|
[Fact]
|
7
|
-
public void
|
9
|
+
public void Queen_with_a_valid_position_does_not_throw_exception()
|
10
|
+
{
|
11
|
+
var actual = QueenAttack.Create(2, 2);
|
12
|
+
}
|
13
|
+
|
14
|
+
[Fact(Skip = "Remove to run test")]
|
15
|
+
public void Queen_must_have_positive_rank()
|
16
|
+
{
|
17
|
+
Assert.Throws<ArgumentOutOfRangeException>(() => QueenAttack.Create(-2, 2));
|
18
|
+
}
|
19
|
+
|
20
|
+
[Fact(Skip = "Remove to run test")]
|
21
|
+
public void Queen_must_have_rank_on_board()
|
22
|
+
{
|
23
|
+
Assert.Throws<ArgumentOutOfRangeException>(() => QueenAttack.Create(8, 4));
|
24
|
+
}
|
25
|
+
|
26
|
+
[Fact(Skip = "Remove to run test")]
|
27
|
+
public void Queen_must_have_positive_file()
|
28
|
+
{
|
29
|
+
Assert.Throws<ArgumentOutOfRangeException>(() => QueenAttack.Create(2, -2));
|
30
|
+
}
|
31
|
+
|
32
|
+
[Fact(Skip = "Remove to run test")]
|
33
|
+
public void Queen_must_have_file_on_board()
|
8
34
|
{
|
9
|
-
|
10
|
-
var black = new Queen(2, 4);
|
11
|
-
Assert.Throws<ArgumentException>(() => Queens.CanAttack(white, black));
|
35
|
+
Assert.Throws<ArgumentOutOfRangeException>(() => QueenAttack.Create(4, 8));
|
12
36
|
}
|
13
37
|
|
14
38
|
[Fact(Skip = "Remove to run test")]
|
15
|
-
public void
|
39
|
+
public void Can_not_attack()
|
16
40
|
{
|
17
|
-
|
41
|
+
var whiteQueen = QueenAttack.Create(2,4);
|
42
|
+
var blackQueen = QueenAttack.Create(6,6);
|
43
|
+
Assert.False(QueenAttack.CanAttack(whiteQueen, blackQueen));
|
18
44
|
}
|
19
45
|
|
20
46
|
[Fact(Skip = "Remove to run test")]
|
21
|
-
public void
|
47
|
+
public void Can_attack_on_same_rank()
|
22
48
|
{
|
23
|
-
|
49
|
+
var whiteQueen = QueenAttack.Create(2,4);
|
50
|
+
var blackQueen = QueenAttack.Create(2,6);
|
51
|
+
Assert.True(QueenAttack.CanAttack(whiteQueen, blackQueen));
|
24
52
|
}
|
25
53
|
|
26
54
|
[Fact(Skip = "Remove to run test")]
|
27
|
-
public void
|
55
|
+
public void Can_attack_on_same_file()
|
28
56
|
{
|
29
|
-
|
57
|
+
var whiteQueen = QueenAttack.Create(4,5);
|
58
|
+
var blackQueen = QueenAttack.Create(2,5);
|
59
|
+
Assert.True(QueenAttack.CanAttack(whiteQueen, blackQueen));
|
30
60
|
}
|
31
61
|
|
32
62
|
[Fact(Skip = "Remove to run test")]
|
33
|
-
public void
|
63
|
+
public void Can_attack_on_first_diagonal()
|
34
64
|
{
|
35
|
-
|
65
|
+
var whiteQueen = QueenAttack.Create(2,2);
|
66
|
+
var blackQueen = QueenAttack.Create(0,4);
|
67
|
+
Assert.True(QueenAttack.CanAttack(whiteQueen, blackQueen));
|
36
68
|
}
|
37
69
|
|
38
70
|
[Fact(Skip = "Remove to run test")]
|
39
|
-
public void
|
71
|
+
public void Can_attack_on_second_diagonal()
|
40
72
|
{
|
41
|
-
|
73
|
+
var whiteQueen = QueenAttack.Create(2,2);
|
74
|
+
var blackQueen = QueenAttack.Create(3,1);
|
75
|
+
Assert.True(QueenAttack.CanAttack(whiteQueen, blackQueen));
|
42
76
|
}
|
43
77
|
|
44
78
|
[Fact(Skip = "Remove to run test")]
|
45
|
-
public void
|
79
|
+
public void Can_attack_on_third_diagonal()
|
46
80
|
{
|
47
|
-
|
81
|
+
var whiteQueen = QueenAttack.Create(2,2);
|
82
|
+
var blackQueen = QueenAttack.Create(1,1);
|
83
|
+
Assert.True(QueenAttack.CanAttack(whiteQueen, blackQueen));
|
48
84
|
}
|
49
85
|
|
50
86
|
[Fact(Skip = "Remove to run test")]
|
51
|
-
public void
|
87
|
+
public void Can_attack_on_fourth_diagonal()
|
52
88
|
{
|
53
|
-
|
89
|
+
var whiteQueen = QueenAttack.Create(2,2);
|
90
|
+
var blackQueen = QueenAttack.Create(5,5);
|
91
|
+
Assert.True(QueenAttack.CanAttack(whiteQueen, blackQueen));
|
54
92
|
}
|
55
93
|
}
|
@@ -0,0 +1,85 @@
|
|
1
|
+
using Generators.Input;
|
2
|
+
using Generators.Output;
|
3
|
+
using Newtonsoft.Json.Linq;
|
4
|
+
using System;
|
5
|
+
using System.Collections.Generic;
|
6
|
+
|
7
|
+
namespace Generators.Exercises
|
8
|
+
{
|
9
|
+
public class QueenAttack : Exercise
|
10
|
+
{
|
11
|
+
protected override void UpdateCanonicalData(CanonicalData canonicalData)
|
12
|
+
{
|
13
|
+
foreach (var canonicalDataCase in canonicalData.Cases)
|
14
|
+
{
|
15
|
+
if (canonicalDataCase.Property == "create")
|
16
|
+
{
|
17
|
+
SetCreatePropertyData(canonicalDataCase);
|
18
|
+
}
|
19
|
+
}
|
20
|
+
}
|
21
|
+
|
22
|
+
protected override string RenderTestMethodBodyAssert(TestMethodBody testMethodBody)
|
23
|
+
{
|
24
|
+
if (testMethodBody.CanonicalDataCase.Property == "canAttack")
|
25
|
+
{
|
26
|
+
return RenderCanAttackAssert(testMethodBody);
|
27
|
+
}
|
28
|
+
|
29
|
+
if (testMethodBody.UseVariableForTested)
|
30
|
+
{
|
31
|
+
return string.Empty;
|
32
|
+
}
|
33
|
+
|
34
|
+
return base.RenderTestMethodBodyAssert(testMethodBody);
|
35
|
+
}
|
36
|
+
|
37
|
+
private static string RenderCanAttackAssert(TestMethodBody testMethodBody)
|
38
|
+
{
|
39
|
+
const string template =
|
40
|
+
@"var whiteQueen = QueenAttack.Create({{whiteQueenX}},{{whiteQueenY}});
|
41
|
+
var blackQueen = QueenAttack.Create({{blackQueenX}},{{blackQueenY}});
|
42
|
+
Assert.{% if Expected %}True{% else %}False{% endif %}(QueenAttack.CanAttack(whiteQueen, blackQueen));";
|
43
|
+
|
44
|
+
var whiteQueenPositions = GetCoordinatesFromPosition(testMethodBody.CanonicalDataCase.Input["white_queen"]);
|
45
|
+
var blackQueenPositions = GetCoordinatesFromPosition(testMethodBody.CanonicalDataCase.Input["black_queen"]);
|
46
|
+
|
47
|
+
var templateParameters = new
|
48
|
+
{
|
49
|
+
whiteQueenX = whiteQueenPositions.Item1,
|
50
|
+
whiteQueenY = whiteQueenPositions.Item2,
|
51
|
+
blackQueenX = blackQueenPositions.Item1,
|
52
|
+
blackQueenY = blackQueenPositions.Item2,
|
53
|
+
Expected = testMethodBody.CanonicalDataCase.Expected
|
54
|
+
};
|
55
|
+
|
56
|
+
return TemplateRenderer.RenderInline(template, templateParameters);
|
57
|
+
}
|
58
|
+
|
59
|
+
private static Tuple<int, int> GetCoordinatesFromPosition(object rawPosition)
|
60
|
+
{
|
61
|
+
var coordinates = ((JObject)rawPosition).ToObject<Dictionary<string, string>>()["position"].Split(',');
|
62
|
+
|
63
|
+
var positionX = int.Parse(coordinates[0].TrimStart('('));
|
64
|
+
var positionY = int.Parse(coordinates[1].TrimEnd(')'));
|
65
|
+
|
66
|
+
return Tuple.Create(positionX, positionY);
|
67
|
+
}
|
68
|
+
|
69
|
+
private static void SetCreatePropertyData(CanonicalDataCase canonicalDataCase)
|
70
|
+
{
|
71
|
+
var validExpected = (long)canonicalDataCase.Expected >= 0;
|
72
|
+
|
73
|
+
canonicalDataCase.UseVariableForTested = validExpected;
|
74
|
+
canonicalDataCase.ExceptionThrown = validExpected ? null : typeof(ArgumentOutOfRangeException);
|
75
|
+
canonicalDataCase.Description = validExpected ? canonicalDataCase.Description + " does not throw exception" : canonicalDataCase.Description;
|
76
|
+
|
77
|
+
var coordinates = GetCoordinatesFromPosition(canonicalDataCase.Input["queen"]);
|
78
|
+
canonicalDataCase.Input = new Dictionary<string, object>
|
79
|
+
{
|
80
|
+
["X"] = coordinates.Item1,
|
81
|
+
["Y"] = coordinates.Item2
|
82
|
+
};
|
83
|
+
}
|
84
|
+
}
|
85
|
+
}
|
data/tracks/d/README.md
CHANGED
@@ -32,10 +32,11 @@ exercises/circular-buffer/
|
|
32
32
|
2 directories, 3 files
|
33
33
|
```
|
34
34
|
|
35
|
-
## Contributing
|
35
|
+
## Contributing
|
36
36
|
|
37
|
-
|
37
|
+
If you're having trouble getting this project set up locally, please open an issue and we'll help you get it sorted (and then see about improving the documentation).
|
38
38
|
|
39
|
+
There is useful Exercism-wide documentation about contributing to language tracks in the [exercism/docs](https://github.com/exercism/docs/blob/master/language-tracks/README.md) repository.
|
39
40
|
|
40
41
|
### D icon
|
41
42
|
The D "Digital Mars" logo is owned by Digital Mars, Inc. Digital Mars, Inc. allows anyone to use, modify and redistribute the logo provided that the copyright holder is properly attributed. The original image is part of the D programming language "dlang.org" source repository, released under version 1.0 of the Boost Software License. We have modified the image, changing the colour scheme, to create the D icon for Exercism.
|
@@ -7,6 +7,8 @@ import std.math : sqrt, floor, ceil;
|
|
7
7
|
import std.conv : to;
|
8
8
|
|
9
9
|
import std.stdio;
|
10
|
+
import std.algorithm : map, filter;
|
11
|
+
import std.ascii : isAlphaNum;
|
10
12
|
|
11
13
|
|
12
14
|
class Cipher
|
@@ -14,7 +16,7 @@ class Cipher
|
|
14
16
|
public:
|
15
17
|
this (const string text)
|
16
18
|
{
|
17
|
-
this.normalized =
|
19
|
+
this.normalized = text.filter!isAlphaNum.map!toLower.to!string;
|
18
20
|
}
|
19
21
|
|
20
22
|
string normalizePlainText ()
|
@@ -65,7 +67,7 @@ public:
|
|
65
67
|
{
|
66
68
|
string result = normalizedCipherText();
|
67
69
|
|
68
|
-
return result.
|
70
|
+
return result.replace(" ", "");
|
69
71
|
}
|
70
72
|
|
71
73
|
string normalizedCipherText ()
|
@@ -42,13 +42,13 @@ packages:
|
|
42
42
|
name: cli_util
|
43
43
|
url: "https://pub.dartlang.org"
|
44
44
|
source: hosted
|
45
|
-
version: "0.1.
|
45
|
+
version: "0.1.2"
|
46
46
|
collection:
|
47
47
|
description:
|
48
48
|
name: collection
|
49
49
|
url: "https://pub.dartlang.org"
|
50
50
|
source: hosted
|
51
|
-
version: "1.14.
|
51
|
+
version: "1.14.3"
|
52
52
|
convert:
|
53
53
|
description:
|
54
54
|
name: convert
|
@@ -60,7 +60,7 @@ packages:
|
|
60
60
|
name: crypto
|
61
61
|
url: "https://pub.dartlang.org"
|
62
62
|
source: hosted
|
63
|
-
version: "2.0.
|
63
|
+
version: "2.0.2"
|
64
64
|
csslib:
|
65
65
|
description:
|
66
66
|
name: csslib
|
@@ -90,7 +90,7 @@ packages:
|
|
90
90
|
name: http
|
91
91
|
url: "https://pub.dartlang.org"
|
92
92
|
source: hosted
|
93
|
-
version: "0.11.3+
|
93
|
+
version: "0.11.3+14"
|
94
94
|
http_multi_server:
|
95
95
|
description:
|
96
96
|
name: http_multi_server
|
@@ -109,6 +109,12 @@ packages:
|
|
109
109
|
url: "https://pub.dartlang.org"
|
110
110
|
source: hosted
|
111
111
|
version: "1.0.0"
|
112
|
+
js:
|
113
|
+
description:
|
114
|
+
name: js
|
115
|
+
url: "https://pub.dartlang.org"
|
116
|
+
source: hosted
|
117
|
+
version: "0.6.1"
|
112
118
|
kernel:
|
113
119
|
description:
|
114
120
|
name: kernel
|
@@ -126,25 +132,31 @@ packages:
|
|
126
132
|
name: matcher
|
127
133
|
url: "https://pub.dartlang.org"
|
128
134
|
source: hosted
|
129
|
-
version: "0.12.1+
|
135
|
+
version: "0.12.1+2"
|
130
136
|
meta:
|
131
137
|
description:
|
132
138
|
name: meta
|
133
139
|
url: "https://pub.dartlang.org"
|
134
140
|
source: hosted
|
135
|
-
version: "1.
|
141
|
+
version: "1.1.1"
|
136
142
|
mime:
|
137
143
|
description:
|
138
144
|
name: mime
|
139
145
|
url: "https://pub.dartlang.org"
|
140
146
|
source: hosted
|
141
147
|
version: "0.9.3"
|
148
|
+
node_preamble:
|
149
|
+
description:
|
150
|
+
name: node_preamble
|
151
|
+
url: "https://pub.dartlang.org"
|
152
|
+
source: hosted
|
153
|
+
version: "1.4.0"
|
142
154
|
package_config:
|
143
155
|
description:
|
144
156
|
name: package_config
|
145
157
|
url: "https://pub.dartlang.org"
|
146
158
|
source: hosted
|
147
|
-
version: "1.0.
|
159
|
+
version: "1.0.2"
|
148
160
|
package_resolver:
|
149
161
|
description:
|
150
162
|
name: package_resolver
|
@@ -162,7 +174,7 @@ packages:
|
|
162
174
|
name: plugin
|
163
175
|
url: "https://pub.dartlang.org"
|
164
176
|
source: hosted
|
165
|
-
version: "0.2.0"
|
177
|
+
version: "0.2.0+1"
|
166
178
|
pool:
|
167
179
|
description:
|
168
180
|
name: pool
|
@@ -180,19 +192,19 @@ packages:
|
|
180
192
|
name: shelf
|
181
193
|
url: "https://pub.dartlang.org"
|
182
194
|
source: hosted
|
183
|
-
version: "0.
|
195
|
+
version: "0.7.0"
|
184
196
|
shelf_packages_handler:
|
185
197
|
description:
|
186
198
|
name: shelf_packages_handler
|
187
199
|
url: "https://pub.dartlang.org"
|
188
200
|
source: hosted
|
189
|
-
version: "1.0.
|
201
|
+
version: "1.0.2"
|
190
202
|
shelf_static:
|
191
203
|
description:
|
192
204
|
name: shelf_static
|
193
205
|
url: "https://pub.dartlang.org"
|
194
206
|
source: hosted
|
195
|
-
version: "0.2.
|
207
|
+
version: "0.2.5"
|
196
208
|
shelf_web_socket:
|
197
209
|
description:
|
198
210
|
name: shelf_web_socket
|
@@ -222,7 +234,7 @@ packages:
|
|
222
234
|
name: stack_trace
|
223
235
|
url: "https://pub.dartlang.org"
|
224
236
|
source: hosted
|
225
|
-
version: "1.
|
237
|
+
version: "1.8.0"
|
226
238
|
stream_channel:
|
227
239
|
description:
|
228
240
|
name: stream_channel
|
@@ -246,13 +258,13 @@ packages:
|
|
246
258
|
name: test
|
247
259
|
url: "https://pub.dartlang.org"
|
248
260
|
source: hosted
|
249
|
-
version: "0.12.
|
261
|
+
version: "0.12.24+2"
|
250
262
|
typed_data:
|
251
263
|
description:
|
252
264
|
name: typed_data
|
253
265
|
url: "https://pub.dartlang.org"
|
254
266
|
source: hosted
|
255
|
-
version: "1.1.
|
267
|
+
version: "1.1.4"
|
256
268
|
utf:
|
257
269
|
description:
|
258
270
|
name: utf
|
@@ -270,7 +282,7 @@ packages:
|
|
270
282
|
name: web_socket_channel
|
271
283
|
url: "https://pub.dartlang.org"
|
272
284
|
source: hosted
|
273
|
-
version: "1.0.
|
285
|
+
version: "1.0.5"
|
274
286
|
yaml:
|
275
287
|
description:
|
276
288
|
name: yaml
|
@@ -278,4 +290,4 @@ packages:
|
|
278
290
|
source: hosted
|
279
291
|
version: "2.1.12"
|
280
292
|
sdks:
|
281
|
-
dart: ">=1.23.0 <2.0.0"
|
293
|
+
dart: ">=1.23.0 <2.0.0-dev.infinity"
|