lab_tech 0.1.0 → 0.1.5

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.
data/spec/examples.txt CHANGED
@@ -1,79 +1,83 @@
1
1
  example_id | status | run_time |
2
2
  ---------------------------------------------------- | ------ | --------------- |
3
- ./spec/models/lab_tech/default_cleaner_spec.rb[1:1] | passed | 0.00112 seconds |
4
- ./spec/models/lab_tech/default_cleaner_spec.rb[1:2] | passed | 0.0078 seconds |
5
- ./spec/models/lab_tech/default_cleaner_spec.rb[1:3] | passed | 0.00039 seconds |
3
+ ./spec/models/lab_tech/default_cleaner_spec.rb[1:1] | passed | 0.00035 seconds |
4
+ ./spec/models/lab_tech/default_cleaner_spec.rb[1:2] | passed | 0.00158 seconds |
5
+ ./spec/models/lab_tech/default_cleaner_spec.rb[1:3] | passed | 0.0004 seconds |
6
6
  ./spec/models/lab_tech/default_cleaner_spec.rb[1:4] | passed | 0.00198 seconds |
7
- ./spec/models/lab_tech/experiment_spec.rb[1:1:1:1] | passed | 0.00335 seconds |
8
- ./spec/models/lab_tech/experiment_spec.rb[1:1:2:1] | passed | 0.07101 seconds |
9
- ./spec/models/lab_tech/experiment_spec.rb[1:1:2:2] | passed | 0.01402 seconds |
10
- ./spec/models/lab_tech/experiment_spec.rb[1:1:2:3:1] | passed | 0.01324 seconds |
11
- ./spec/models/lab_tech/experiment_spec.rb[1:1:2:3:2] | passed | 0.01055 seconds |
12
- ./spec/models/lab_tech/experiment_spec.rb[1:1:2:4:1] | passed | 0.00826 seconds |
13
- ./spec/models/lab_tech/percentile_spec.rb[1:1:1:1] | passed | 0.00044 seconds |
14
- ./spec/models/lab_tech/percentile_spec.rb[1:1:1:2] | passed | 0.00034 seconds |
15
- ./spec/models/lab_tech/percentile_spec.rb[1:1:1:3] | passed | 0.00033 seconds |
16
- ./spec/models/lab_tech/percentile_spec.rb[1:1:1:4] | passed | 0.00043 seconds |
17
- ./spec/models/lab_tech/percentile_spec.rb[1:1:1:5] | passed | 0.00039 seconds |
7
+ ./spec/models/lab_tech/experiment_spec.rb[1:1:1:1] | passed | 0.00245 seconds |
8
+ ./spec/models/lab_tech/experiment_spec.rb[1:1:2:1] | passed | 0.04398 seconds |
9
+ ./spec/models/lab_tech/experiment_spec.rb[1:1:2:2] | passed | 0.03791 seconds |
10
+ ./spec/models/lab_tech/experiment_spec.rb[1:1:2:3:1] | passed | 0.01052 seconds |
11
+ ./spec/models/lab_tech/experiment_spec.rb[1:1:2:3:2] | passed | 0.0102 seconds |
12
+ ./spec/models/lab_tech/experiment_spec.rb[1:1:2:4:1] | passed | 0.00988 seconds |
13
+ ./spec/models/lab_tech/experiment_spec.rb[1:1:2:4:2] | passed | 0.01138 seconds |
14
+ ./spec/models/lab_tech/experiment_spec.rb[1:1:2:5:1] | passed | 0.00849 seconds |
15
+ ./spec/models/lab_tech/experiment_spec.rb[1:1:2:6:1] | passed | 0.0257 seconds |
16
+ ./spec/models/lab_tech/experiment_spec.rb[1:1:2:6:2] | passed | 0.02477 seconds |
17
+ ./spec/models/lab_tech/percentile_spec.rb[1:1:1:1] | passed | 0.00032 seconds |
18
+ ./spec/models/lab_tech/percentile_spec.rb[1:1:1:2] | passed | 0.00032 seconds |
19
+ ./spec/models/lab_tech/percentile_spec.rb[1:1:1:3] | passed | 0.00032 seconds |
20
+ ./spec/models/lab_tech/percentile_spec.rb[1:1:1:4] | passed | 0.00037 seconds |
21
+ ./spec/models/lab_tech/percentile_spec.rb[1:1:1:5] | passed | 0.00032 seconds |
18
22
  ./spec/models/lab_tech/percentile_spec.rb[1:1:1:6] | passed | 0.00033 seconds |
19
23
  ./spec/models/lab_tech/percentile_spec.rb[1:1:1:7] | passed | 0.00032 seconds |
20
24
  ./spec/models/lab_tech/percentile_spec.rb[1:1:1:8] | passed | 0.00034 seconds |
21
- ./spec/models/lab_tech/percentile_spec.rb[1:1:1:9] | passed | 0.00038 seconds |
22
- ./spec/models/lab_tech/percentile_spec.rb[1:1:1:10] | passed | 0.00038 seconds |
23
- ./spec/models/lab_tech/percentile_spec.rb[1:1:2:1] | passed | 0.00039 seconds |
24
- ./spec/models/lab_tech/percentile_spec.rb[1:1:2:2] | passed | 0.00034 seconds |
25
- ./spec/models/lab_tech/percentile_spec.rb[1:1:2:3] | passed | 0.00033 seconds |
26
- ./spec/models/lab_tech/percentile_spec.rb[1:1:2:4] | passed | 0.00031 seconds |
27
- ./spec/models/lab_tech/percentile_spec.rb[1:1:3:1] | passed | 0.00034 seconds |
25
+ ./spec/models/lab_tech/percentile_spec.rb[1:1:1:9] | passed | 0.00033 seconds |
26
+ ./spec/models/lab_tech/percentile_spec.rb[1:1:1:10] | passed | 0.00033 seconds |
27
+ ./spec/models/lab_tech/percentile_spec.rb[1:1:2:1] | passed | 0.00033 seconds |
28
+ ./spec/models/lab_tech/percentile_spec.rb[1:1:2:2] | passed | 0.00038 seconds |
29
+ ./spec/models/lab_tech/percentile_spec.rb[1:1:2:3] | passed | 0.00035 seconds |
30
+ ./spec/models/lab_tech/percentile_spec.rb[1:1:2:4] | passed | 0.00033 seconds |
31
+ ./spec/models/lab_tech/percentile_spec.rb[1:1:3:1] | passed | 0.00036 seconds |
28
32
  ./spec/models/lab_tech/percentile_spec.rb[1:1:3:2] | passed | 0.00032 seconds |
29
- ./spec/models/lab_tech/percentile_spec.rb[1:1:3:3] | passed | 0.00031 seconds |
30
- ./spec/models/lab_tech/percentile_spec.rb[1:1:3:4] | passed | 0.0003 seconds |
31
- ./spec/models/lab_tech/percentile_spec.rb[1:2:1] | passed | 0.00044 seconds |
32
- ./spec/models/lab_tech/percentile_spec.rb[1:2:2] | passed | 0.00043 seconds |
33
- ./spec/models/lab_tech/percentile_spec.rb[1:2:3] | passed | 0.00035 seconds |
34
- ./spec/models/lab_tech/percentile_spec.rb[1:2:4] | passed | 0.00036 seconds |
35
- ./spec/models/lab_tech/percentile_spec.rb[1:2:5] | passed | 0.00037 seconds |
36
- ./spec/models/lab_tech/percentile_spec.rb[1:3:1] | passed | 0.00047 seconds |
37
- ./spec/models/lab_tech/percentile_spec.rb[1:3:2] | passed | 0.00045 seconds |
38
- ./spec/models/lab_tech/percentile_spec.rb[1:3:3] | passed | 0.00044 seconds |
39
- ./spec/models/lab_tech/percentile_spec.rb[1:3:4] | passed | 0.00043 seconds |
40
- ./spec/models/lab_tech/percentile_spec.rb[1:3:5] | passed | 0.00045 seconds |
41
- ./spec/models/lab_tech/result_spec.rb[1:1:1] | passed | 0.01435 seconds |
42
- ./spec/models/lab_tech/result_spec.rb[1:1:2:1:1] | passed | 0.00917 seconds |
43
- ./spec/models/lab_tech/result_spec.rb[1:1:2:2:1] | passed | 0.01049 seconds |
44
- ./spec/models/lab_tech/result_spec.rb[1:1:2:3:1] | passed | 0.00984 seconds |
45
- ./spec/models/lab_tech/result_spec.rb[1:1:2:3:2] | passed | 0.00965 seconds |
46
- ./spec/models/lab_tech/result_spec.rb[1:1:2:4:1] | passed | 0.00998 seconds |
47
- ./spec/models/lab_tech/result_spec.rb[1:1:3:1] | passed | 0.00759 seconds |
48
- ./spec/models/lab_tech/result_spec.rb[1:1:4:1] | passed | 0.01068 seconds |
49
- ./spec/models/lab_tech/result_spec.rb[1:1:5:1] | passed | 0.01141 seconds |
50
- ./spec/models/lab_tech/result_spec.rb[1:1:6] | passed | 0.01769 seconds |
51
- ./spec/models/lab_tech/speedup_spec.rb[1:1] | passed | 0.00127 seconds |
52
- ./spec/models/lab_tech/speedup_spec.rb[1:2] | passed | 0.0004 seconds |
53
- ./spec/models/lab_tech/speedup_spec.rb[1:3] | passed | 0.00037 seconds |
54
- ./spec/models/lab_tech/speedup_spec.rb[1:4] | passed | 0.00036 seconds |
55
- ./spec/models/lab_tech/speedup_spec.rb[1:5] | passed | 0.00036 seconds |
56
- ./spec/models/lab_tech/speedup_spec.rb[1:6] | passed | 0.00036 seconds |
57
- ./spec/models/lab_tech/speedup_spec.rb[1:7] | passed | 0.00035 seconds |
58
- ./spec/models/lab_tech/speedup_spec.rb[1:8] | passed | 0.00036 seconds |
59
- ./spec/models/lab_tech/speedup_spec.rb[1:9] | passed | 0.00055 seconds |
60
- ./spec/models/lab_tech/speedup_spec.rb[1:10] | passed | 0.00045 seconds |
61
- ./spec/models/lab_tech/speedup_spec.rb[1:11] | passed | 0.00037 seconds |
62
- ./spec/models/lab_tech/speedup_spec.rb[1:12] | passed | 0.00047 seconds |
63
- ./spec/models/lab_tech/speedup_spec.rb[1:13] | passed | 0.00048 seconds |
64
- ./spec/models/lab_tech/summary_spec.rb[1:1:1] | passed | 0.0045 seconds |
65
- ./spec/models/lab_tech/summary_spec.rb[1:2:1] | passed | 0.03011 seconds |
66
- ./spec/models/lab_tech/summary_spec.rb[1:3:1] | passed | 0.01405 seconds |
67
- ./spec/models/lab_tech/summary_spec.rb[1:4:1] | passed | 0.01349 seconds |
68
- ./spec/models/lab_tech/summary_spec.rb[1:5:1] | passed | 0.01768 seconds |
69
- ./spec/models/lab_tech/summary_spec.rb[1:5:2] | passed | 0.01745 seconds |
70
- ./spec/models/lab_tech/summary_spec.rb[1:6:1:1] | passed | 0.0281 seconds |
71
- ./spec/models/lab_tech/summary_spec.rb[1:6:1:2] | passed | 0.02124 seconds |
72
- ./spec/models/lab_tech/summary_spec.rb[1:6:2:1] | passed | 0.02179 seconds |
73
- ./spec/models/lab_tech/summary_spec.rb[1:6:3:1] | passed | 0.02039 seconds |
74
- ./spec/models/lab_tech/summary_spec.rb[1:6:4:1] | passed | 0.07298 seconds |
75
- ./spec/models/lab_tech/summary_spec.rb[1:6:4:2] | passed | 0.05676 seconds |
76
- ./spec/models/lab_tech/summary_spec.rb[1:6:4:3] | passed | 0.05425 seconds |
77
- ./spec/models/lab_tech/summary_spec.rb[1:6:5:1] | passed | 0.16329 seconds |
78
- ./spec/models/lab_tech/summary_spec.rb[1:6:6:1] | passed | 0.16302 seconds |
79
- ./spec/models/lab_tech_spec.rb[1:1:1] | passed | 0.00093 seconds |
33
+ ./spec/models/lab_tech/percentile_spec.rb[1:1:3:3] | passed | 0.00032 seconds |
34
+ ./spec/models/lab_tech/percentile_spec.rb[1:1:3:4] | passed | 0.00032 seconds |
35
+ ./spec/models/lab_tech/percentile_spec.rb[1:2:1] | passed | 0.00033 seconds |
36
+ ./spec/models/lab_tech/percentile_spec.rb[1:2:2] | passed | 0.00045 seconds |
37
+ ./spec/models/lab_tech/percentile_spec.rb[1:2:3] | passed | 0.00034 seconds |
38
+ ./spec/models/lab_tech/percentile_spec.rb[1:2:4] | passed | 0.00033 seconds |
39
+ ./spec/models/lab_tech/percentile_spec.rb[1:2:5] | passed | 0.00036 seconds |
40
+ ./spec/models/lab_tech/percentile_spec.rb[1:3:1] | passed | 0.00042 seconds |
41
+ ./spec/models/lab_tech/percentile_spec.rb[1:3:2] | passed | 0.00042 seconds |
42
+ ./spec/models/lab_tech/percentile_spec.rb[1:3:3] | passed | 0.00043 seconds |
43
+ ./spec/models/lab_tech/percentile_spec.rb[1:3:4] | passed | 0.00045 seconds |
44
+ ./spec/models/lab_tech/percentile_spec.rb[1:3:5] | passed | 0.0005 seconds |
45
+ ./spec/models/lab_tech/result_spec.rb[1:1:1] | passed | 0.01439 seconds |
46
+ ./spec/models/lab_tech/result_spec.rb[1:1:2:1:1] | passed | 0.01034 seconds |
47
+ ./spec/models/lab_tech/result_spec.rb[1:1:2:2:1] | passed | 0.00937 seconds |
48
+ ./spec/models/lab_tech/result_spec.rb[1:1:2:3:1] | passed | 0.00928 seconds |
49
+ ./spec/models/lab_tech/result_spec.rb[1:1:2:3:2] | passed | 0.00961 seconds |
50
+ ./spec/models/lab_tech/result_spec.rb[1:1:2:4:1] | passed | 0.02164 seconds |
51
+ ./spec/models/lab_tech/result_spec.rb[1:1:3:1] | passed | 0.01739 seconds |
52
+ ./spec/models/lab_tech/result_spec.rb[1:1:4:1] | passed | 0.01178 seconds |
53
+ ./spec/models/lab_tech/result_spec.rb[1:1:5:1] | passed | 0.01725 seconds |
54
+ ./spec/models/lab_tech/result_spec.rb[1:1:6] | passed | 0.01156 seconds |
55
+ ./spec/models/lab_tech/speedup_spec.rb[1:1] | passed | 0.00192 seconds |
56
+ ./spec/models/lab_tech/speedup_spec.rb[1:2] | passed | 0.00043 seconds |
57
+ ./spec/models/lab_tech/speedup_spec.rb[1:3] | passed | 0.00046 seconds |
58
+ ./spec/models/lab_tech/speedup_spec.rb[1:4] | passed | 0.0004 seconds |
59
+ ./spec/models/lab_tech/speedup_spec.rb[1:5] | passed | 0.00054 seconds |
60
+ ./spec/models/lab_tech/speedup_spec.rb[1:6] | passed | 0.00053 seconds |
61
+ ./spec/models/lab_tech/speedup_spec.rb[1:7] | passed | 0.00074 seconds |
62
+ ./spec/models/lab_tech/speedup_spec.rb[1:8] | passed | 0.00042 seconds |
63
+ ./spec/models/lab_tech/speedup_spec.rb[1:9] | passed | 0.00068 seconds |
64
+ ./spec/models/lab_tech/speedup_spec.rb[1:10] | passed | 0.00057 seconds |
65
+ ./spec/models/lab_tech/speedup_spec.rb[1:11] | passed | 0.00047 seconds |
66
+ ./spec/models/lab_tech/speedup_spec.rb[1:12] | passed | 0.00058 seconds |
67
+ ./spec/models/lab_tech/speedup_spec.rb[1:13] | passed | 0.00056 seconds |
68
+ ./spec/models/lab_tech/summary_spec.rb[1:1:1] | passed | 0.00452 seconds |
69
+ ./spec/models/lab_tech/summary_spec.rb[1:2:1] | passed | 0.0245 seconds |
70
+ ./spec/models/lab_tech/summary_spec.rb[1:3:1] | passed | 0.0205 seconds |
71
+ ./spec/models/lab_tech/summary_spec.rb[1:4:1] | passed | 0.01767 seconds |
72
+ ./spec/models/lab_tech/summary_spec.rb[1:5:1] | passed | 0.01795 seconds |
73
+ ./spec/models/lab_tech/summary_spec.rb[1:5:2] | passed | 0.01774 seconds |
74
+ ./spec/models/lab_tech/summary_spec.rb[1:6:1:1] | passed | 0.01794 seconds |
75
+ ./spec/models/lab_tech/summary_spec.rb[1:6:1:2] | passed | 0.01742 seconds |
76
+ ./spec/models/lab_tech/summary_spec.rb[1:6:2:1] | passed | 0.02218 seconds |
77
+ ./spec/models/lab_tech/summary_spec.rb[1:6:3:1] | passed | 0.02999 seconds |
78
+ ./spec/models/lab_tech/summary_spec.rb[1:6:4:1] | passed | 0.0679 seconds |
79
+ ./spec/models/lab_tech/summary_spec.rb[1:6:4:2] | passed | 0.05004 seconds |
80
+ ./spec/models/lab_tech/summary_spec.rb[1:6:4:3] | passed | 0.04788 seconds |
81
+ ./spec/models/lab_tech/summary_spec.rb[1:6:5:1] | passed | 0.07049 seconds |
82
+ ./spec/models/lab_tech/summary_spec.rb[1:6:6:1] | passed | 0.2158 seconds |
83
+ ./spec/models/lab_tech_spec.rb[1:1:1] | passed | 0.00087 seconds |
@@ -49,7 +49,9 @@ RSpec.describe LabTech::Experiment do
49
49
  end
50
50
 
51
51
  it "records the results when the experiment is run" do
52
- expect( LabTech::Result ).to receive( :record_a_science ).with( experiment, instance_of(Scientist::Result) )
52
+ expect( LabTech::Result ).to \
53
+ receive( :record_a_science ) \
54
+ .with( experiment, instance_of(Scientist::Result), anything )
53
55
 
54
56
  LabTech.science "wibble" do |e|
55
57
  e.use { :wibble }
@@ -90,6 +92,36 @@ RSpec.describe LabTech::Experiment do
90
92
  end
91
93
  end
92
94
 
95
+ describe "diff-generating behavior" do
96
+ let(:result) { experiment.results.first }
97
+
98
+ specify "if a #diff block IS provided, it is used" do
99
+ LabTech.science "wibble" do |e|
100
+ e.use { :control }
101
+ e.try { :candidate }
102
+
103
+ e.diff { |control, candidate| "this is a diff" }
104
+ end
105
+
106
+ result = experiment.results.first
107
+ expect( result ).to be_kind_of( LabTech::Result )
108
+
109
+ expect( result.control .diff ).to be_blank # because it's the reference against which candidates are diffed
110
+ expect( result.candidates.first .diff ).to eq( "this is a diff" )
111
+ end
112
+
113
+ specify "if a #diff block IS NOT provided, nothing untoward occurs" do
114
+ LabTech.science "wibble" do |e|
115
+ e.use { :control }
116
+ e.try { :candidate }
117
+ end
118
+
119
+ result = experiment.results.first
120
+ expect( result.control .diff ).to be_blank # because it's the reference against which candidates are diffed
121
+ expect( result.candidates.first .diff ).to be_blank # because no block was provided
122
+ end
123
+ end
124
+
93
125
  describe "result counts" do
94
126
  specify "when results are equivalent" do
95
127
  LabTech.science "wibble" do |e|
@@ -104,7 +136,38 @@ RSpec.describe LabTech::Experiment do
104
136
  expect( experiment.other_error_count ).to eq( 0 )
105
137
  end
106
138
  end
107
- end
139
+ end
140
+
141
+ describe "summary output" do
142
+ before do
143
+ LabTech.science "wibble" do |e|
144
+ e.use { :wibble } ; e.try { :wibble }
145
+ end
146
+ LabTech.science "wibble" do |e|
147
+ e.use { :wibble } ; e.try { :florp }
148
+ end
149
+ LabTech.science "wibble" do |e|
150
+ e.use { :wibble } ; e.try { fail "nope" }
151
+ end
152
+ end
153
+
154
+ specify "compare_mismatches" do
155
+ io = StringIO.new
156
+ LabTech.compare_mismatches "wibble", io: io
157
+ out = io.string
158
+ expect(out).to match( /Comparing results for wibble:/ )
159
+ expect(out).to match( /control # => :wibble/ )
160
+ expect(out).to match( /candidate # => :florp/ )
161
+ end
162
+
163
+ specify "summarize_errors" do
164
+ io = StringIO.new
165
+ LabTech.summarize_errors "wibble", io: io
166
+ out = io.string
167
+ expect(out).to match( /Summarizing errors for wibble:/ )
168
+ expect(out).to include( " * RuntimeError: nope" )
169
+ end
170
+ end
108
171
  end
109
172
  end
110
173
  end
@@ -12,20 +12,6 @@ RSpec.describe LabTech::Summary do
12
12
  e.try { cand.respond_to?(:call) ? cand.call : cand }
13
13
  end
14
14
 
15
- #######################################
16
-
17
- ######## ##### ###### #####
18
- ## ## ## ## ## ## ##
19
- ## ## ## ## ## ## ##
20
- ## ## ## ## ## ## ##
21
- ## ## ## ## ## ## ##
22
- ## ## ## ## ## ## ##
23
- ## ##### ###### #####
24
-
25
- #######################################
26
- # TODO: use Scientist's fabricate_durations_for_testing_purposes to make
27
- # the below comment (and code?) unnecessary
28
- #######################################
29
15
  # Don't bother stubbing Scientist's clock; you'll get the wrong results 50%
30
16
  # of the time because it runs the `try` and `use` blocks in random order,
31
17
  # and then you'll be very very confused.
@@ -45,7 +31,7 @@ RSpec.describe LabTech::Summary do
45
31
 
46
32
  if baseline && comparison && speedup_factor
47
33
  result = experiment.results.last
48
- result.update_attributes({
34
+ result.update({
49
35
  control_duration: baseline,
50
36
  candidate_duration: comparison,
51
37
  speedup_factor: speedup_factor,
@@ -53,8 +39,8 @@ RSpec.describe LabTech::Summary do
53
39
  })
54
40
 
55
41
  # Technically, we only needed to update the result... but for consistency, let's update the observations too.
56
- result.control .update_attributes duration: baseline
57
- result.candidates.first .update_attributes duration: comparison
42
+ result.control .update duration: baseline
43
+ result.candidates.first .update duration: comparison
58
44
  end
59
45
 
60
46
  end # LabTech.publish_results_in_test_mode do
metadata CHANGED
@@ -1,29 +1,35 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lab_tech
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sam Livingston-Gray
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-08-23 00:00:00.000000000 Z
11
+ date: 2021-02-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - "~>"
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: 5.1.0
20
+ - - "<"
18
21
  - !ruby/object:Gem::Version
19
- version: '5.1'
22
+ version: 6.1.0
20
23
  type: :runtime
21
24
  prerelease: false
22
25
  version_requirements: !ruby/object:Gem::Requirement
23
26
  requirements:
24
- - - "~>"
27
+ - - ">="
28
+ - !ruby/object:Gem::Version
29
+ version: 5.1.0
30
+ - - "<"
25
31
  - !ruby/object:Gem::Version
26
- version: '5.1'
32
+ version: 6.1.0
27
33
  - !ruby/object:Gem::Dependency
28
34
  name: scientist
29
35
  requirement: !ruby/object:Gem::Requirement
@@ -58,14 +64,14 @@ dependencies:
58
64
  requirements:
59
65
  - - "~>"
60
66
  - !ruby/object:Gem::Version
61
- version: '3.8'
67
+ version: '4.0'
62
68
  type: :development
63
69
  prerelease: false
64
70
  version_requirements: !ruby/object:Gem::Requirement
65
71
  requirements:
66
72
  - - "~>"
67
73
  - !ruby/object:Gem::Version
68
- version: '3.8'
74
+ version: '4.0'
69
75
  - !ruby/object:Gem::Dependency
70
76
  name: awesome_print
71
77
  requirement: !ruby/object:Gem::Requirement
@@ -113,8 +119,11 @@ files:
113
119
  - app/models/lab_tech/result.rb
114
120
  - app/models/lab_tech/speedup.rb
115
121
  - app/models/lab_tech/summary.rb
122
+ - app/models/lab_tech/summary/count.rb
123
+ - app/models/lab_tech/summary/speedup_line.rb
116
124
  - config/routes.rb
117
125
  - db/migrate/20190815192130_create_experiment_tables.rb
126
+ - db/migrate/20210205225332_add_observation_diff.rb
118
127
  - lib/lab_tech.rb
119
128
  - lib/lab_tech/engine.rb
120
129
  - lib/lab_tech/version.rb
@@ -150,6 +159,7 @@ files:
150
159
  - spec/dummy/config/puma.rb
151
160
  - spec/dummy/config/routes.rb
152
161
  - spec/dummy/config/spring.rb
162
+ - spec/dummy/db/development.sqlite3
153
163
  - spec/dummy/db/schema.rb
154
164
  - spec/dummy/db/test.sqlite3
155
165
  - spec/dummy/log/development.log
@@ -169,7 +179,7 @@ homepage: https://github.com/RealGeeks/lab_tech
169
179
  licenses:
170
180
  - MIT
171
181
  metadata: {}
172
- post_install_message:
182
+ post_install_message:
173
183
  rdoc_options: []
174
184
  require_paths:
175
185
  - lib
@@ -185,7 +195,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
185
195
  version: '0'
186
196
  requirements: []
187
197
  rubygems_version: 3.0.3
188
- signing_key:
198
+ signing_key:
189
199
  specification_version: 4
190
200
  summary: Tools for using GitHub's 'Scientist' library with ActiveRecord, for those
191
201
  of us not operating apps at ROFLscale
@@ -224,6 +234,7 @@ test_files:
224
234
  - spec/dummy/Rakefile
225
235
  - spec/dummy/db/schema.rb
226
236
  - spec/dummy/db/test.sqlite3
237
+ - spec/dummy/db/development.sqlite3
227
238
  - spec/dummy/log/test.log
228
239
  - spec/dummy/log/development.log
229
240
  - spec/examples.txt