binpacker 0.3.0 → 0.5.0
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/exe/binpacker-worker +12 -2
- data/lib/binpacker/cli.rb +85 -47
- data/lib/binpacker/orchestrator.rb +98 -40
- data/lib/binpacker/progress.rb +15 -9
- data/lib/binpacker/report.rb +33 -3
- data/lib/binpacker/shard.rb +62 -0
- data/lib/binpacker/shard_check.rb +127 -0
- data/lib/binpacker/timing.rb +122 -24
- data/lib/binpacker/version.rb +1 -1
- data/lib/binpacker/worker_queue.rb +1 -1
- data/lib/binpacker.rb +16 -14
- data/sig/binpacker/orchestrator.rbs +26 -1
- data/sig/binpacker/report.rbs +2 -1
- data/sig/binpacker/scheduler.rbs +11 -0
- data/sig/binpacker/shard.rbs +13 -0
- data/sig/binpacker/shard_check.rbs +29 -0
- data/sig/binpacker/timing.rbs +6 -0
- data/sig/binpacker/worker_queue.rbs +11 -0
- metadata +5 -1
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
module Binpacker
|
|
2
|
+
class Shard
|
|
3
|
+
attr_reader index: Integer
|
|
4
|
+
attr_reader total: Integer
|
|
5
|
+
|
|
6
|
+
def self.parse: (String?) -> Binpacker::Shard?
|
|
7
|
+
|
|
8
|
+
def initialize: (index: Integer, total: Integer) -> void
|
|
9
|
+
def to_s: () -> String
|
|
10
|
+
def whole_suite?: () -> bool
|
|
11
|
+
def select: (tests: Array[untyped], timings: Hash[untyped, Float], scheduler: Binpacker::Scheduler) -> Array[untyped]
|
|
12
|
+
end
|
|
13
|
+
end
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
module Binpacker
|
|
2
|
+
class ShardCheck
|
|
3
|
+
class Result
|
|
4
|
+
attr_accessor ok: bool
|
|
5
|
+
attr_accessor problems: Array[String]
|
|
6
|
+
attr_accessor summary: String
|
|
7
|
+
|
|
8
|
+
def ok?: () -> bool
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
@paths: Array[String]
|
|
12
|
+
|
|
13
|
+
def self.call: (Array[String]) -> Binpacker::ShardCheck::Result
|
|
14
|
+
|
|
15
|
+
def initialize: (Array[String]) -> void
|
|
16
|
+
def call: () -> Binpacker::ShardCheck::Result
|
|
17
|
+
|
|
18
|
+
private
|
|
19
|
+
|
|
20
|
+
def load_reports: () -> [Array[[String, untyped]], Array[String]]
|
|
21
|
+
def shard_of: (String, untyped) -> Hash[Symbol, untyped]?
|
|
22
|
+
def check: (Array[Hash[Symbol, untyped]]) -> Array[String]
|
|
23
|
+
def agreement_problems: (Array[Hash[Symbol, untyped]], Symbol, String) -> Array[String]
|
|
24
|
+
def completeness_problems: (Array[Hash[Symbol, untyped]]) -> Array[String]
|
|
25
|
+
def coverage_problems: (Array[Hash[Symbol, untyped]]) -> Array[String]
|
|
26
|
+
def success: (Array[Hash[Symbol, untyped]]) -> Binpacker::ShardCheck::Result
|
|
27
|
+
def failure: (Array[String]) -> Binpacker::ShardCheck::Result
|
|
28
|
+
end
|
|
29
|
+
end
|
data/sig/binpacker/timing.rbs
CHANGED
|
@@ -1,10 +1,16 @@
|
|
|
1
1
|
module Binpacker
|
|
2
2
|
class Timing
|
|
3
3
|
def initialize: (untyped) -> void
|
|
4
|
+
DEFAULT_WEIGHT: Float
|
|
5
|
+
MAX_SAMPLES_PER_TEST: Integer
|
|
6
|
+
def calibrated?: () -> bool
|
|
7
|
+
def load_with_fallback: (untyped) -> Hash[untyped, Float]
|
|
4
8
|
def load_raw: () -> (Hash[[String, untyped], untyped] | {})
|
|
5
9
|
def load_per_file: () -> (Hash[String, untyped] | {})
|
|
6
10
|
def normalize_path: (untyped) -> String
|
|
7
11
|
def measured?: (file: untyped, name: untyped) -> bool
|
|
12
|
+
def compact!: () -> nil
|
|
13
|
+
def append_all: (untyped) -> nil
|
|
8
14
|
class Entry
|
|
9
15
|
end
|
|
10
16
|
end
|
|
@@ -1,6 +1,17 @@
|
|
|
1
1
|
module Binpacker
|
|
2
2
|
class WorkerQueue
|
|
3
|
+
include Enumerable[untyped]
|
|
4
|
+
|
|
5
|
+
attr_reader worker_id: Integer
|
|
6
|
+
|
|
3
7
|
def initialize: (untyped, ?untyped) -> void
|
|
4
8
|
def empty?: () -> (false | true)
|
|
9
|
+
def pop: () -> untyped
|
|
10
|
+
def peek: () -> untyped
|
|
11
|
+
def size: () -> Integer
|
|
12
|
+
def remaining: () -> Array[untyped]
|
|
13
|
+
def total_weight: (Hash[untyped, Float]) -> Float
|
|
14
|
+
def push: (untyped) -> untyped
|
|
15
|
+
def each: () { (untyped) -> void } -> void
|
|
5
16
|
end
|
|
6
17
|
end
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: binpacker
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.5.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- megurine
|
|
@@ -29,6 +29,8 @@ files:
|
|
|
29
29
|
- lib/binpacker/project_state.rb
|
|
30
30
|
- lib/binpacker/report.rb
|
|
31
31
|
- lib/binpacker/scheduler.rb
|
|
32
|
+
- lib/binpacker/shard.rb
|
|
33
|
+
- lib/binpacker/shard_check.rb
|
|
32
34
|
- lib/binpacker/skills.rb
|
|
33
35
|
- lib/binpacker/test_discovery.rb
|
|
34
36
|
- lib/binpacker/test_runner.rb
|
|
@@ -44,6 +46,8 @@ files:
|
|
|
44
46
|
- sig/binpacker/project_state.rbs
|
|
45
47
|
- sig/binpacker/report.rbs
|
|
46
48
|
- sig/binpacker/scheduler.rbs
|
|
49
|
+
- sig/binpacker/shard.rbs
|
|
50
|
+
- sig/binpacker/shard_check.rbs
|
|
47
51
|
- sig/binpacker/skills.rbs
|
|
48
52
|
- sig/binpacker/test_discovery.rbs
|
|
49
53
|
- sig/binpacker/test_runner.rbs
|