hitimes 1.3.1 → 3.0.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.
Files changed (50) hide show
  1. checksums.yaml +4 -4
  2. data/CONTRIBUTING.md +1 -12
  3. data/HISTORY.md +26 -2
  4. data/Manifest.txt +5 -31
  5. data/README.md +44 -59
  6. data/hitimes.gemspec +26 -0
  7. data/lib/hitimes/initialize.rb +104 -0
  8. data/lib/hitimes/instant.rb +41 -0
  9. data/lib/hitimes/interval.rb +171 -0
  10. data/lib/hitimes/metric.rb +18 -22
  11. data/lib/hitimes/mutexed_stats.rb +3 -20
  12. data/lib/hitimes/paths.rb +16 -14
  13. data/lib/hitimes/stats.rb +119 -22
  14. data/lib/hitimes/timed_metric.rb +43 -42
  15. data/lib/hitimes/timed_value_metric.rb +43 -43
  16. data/lib/hitimes/value_metric.rb +16 -15
  17. data/lib/hitimes/version.rb +3 -1
  18. data/lib/hitimes.rb +14 -41
  19. metadata +24 -157
  20. data/Rakefile +0 -28
  21. data/examples/benchmarks.rb +0 -113
  22. data/examples/stats.rb +0 -31
  23. data/ext/hitimes/c/extconf.rb +0 -24
  24. data/ext/hitimes/c/hitimes.c +0 -37
  25. data/ext/hitimes/c/hitimes_instant_clock_gettime.c +0 -28
  26. data/ext/hitimes/c/hitimes_instant_osx.c +0 -48
  27. data/ext/hitimes/c/hitimes_instant_windows.c +0 -27
  28. data/ext/hitimes/c/hitimes_interval.c +0 -370
  29. data/ext/hitimes/c/hitimes_interval.h +0 -73
  30. data/ext/hitimes/c/hitimes_stats.c +0 -269
  31. data/ext/hitimes/c/hitimes_stats.h +0 -30
  32. data/ext/hitimes/java/src/hitimes/Hitimes.java +0 -63
  33. data/ext/hitimes/java/src/hitimes/HitimesInterval.java +0 -176
  34. data/ext/hitimes/java/src/hitimes/HitimesService.java +0 -16
  35. data/ext/hitimes/java/src/hitimes/HitimesStats.java +0 -112
  36. data/spec/hitimes_spec.rb +0 -24
  37. data/spec/interval_spec.rb +0 -136
  38. data/spec/metric_spec.rb +0 -28
  39. data/spec/mutex_stats_spec.rb +0 -36
  40. data/spec/paths_spec.rb +0 -11
  41. data/spec/spec_helper.rb +0 -11
  42. data/spec/stats_spec.rb +0 -98
  43. data/spec/timed_metric_spec.rb +0 -155
  44. data/spec/timed_value_metric_spec.rb +0 -171
  45. data/spec/value_metric_spec.rb +0 -108
  46. data/spec/version_spec.rb +0 -7
  47. data/tasks/default.rake +0 -242
  48. data/tasks/extension.rake +0 -38
  49. data/tasks/this.rb +0 -208
  50. /data/{LICENSE → LICENSE.txt} +0 -0
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  #--
2
4
  # Copyright (c) 2008, 2009 Jeremy Hinegardner
3
5
  # All rights reserved. See LICENSE and/or COPYING for details.
@@ -10,7 +12,7 @@ module Hitimes
10
12
  #
11
13
  # tm = TimedValueMetric.new( 'my-batch-method' )
12
14
  #
13
- # 42.times do
15
+ # 42.times do
14
16
  # tm.start
15
17
  # number_of_items_processed = do_something
16
18
  # tm.stop( number_of_items_processed )
@@ -40,10 +42,10 @@ module Hitimes
40
42
  #
41
43
  # Return a TimedValueMetric that has been started
42
44
  #
43
- def now( name, additional_data = {} )
44
- t = TimedValueMetric.new( name, additional_data )
45
- t.start
46
- return t
45
+ def now(name, additional_data = {})
46
+ tvm = TimedValueMetric.new(name, additional_data)
47
+ tvm.start
48
+ tvm
47
49
  end
48
50
  end
49
51
 
@@ -55,8 +57,8 @@ module Hitimes
55
57
  # Create a new TimedValueMetric giving it a name and additional data.
56
58
  # +additional_data+ may be anything that follows the +to_hash+ protocol
57
59
  #
58
- def initialize( name, additional_data = {} )
59
- super( name, additional_data )
60
+ def initialize(name, additional_data = {})
61
+ super(name, additional_data)
60
62
  @timed_stats = Stats.new
61
63
  @value_stats = Stats.new
62
64
  @current_interval = Interval.new
@@ -72,17 +74,17 @@ module Hitimes
72
74
  @current_interval.running?
73
75
  end
74
76
 
75
- #
77
+ #
76
78
  # :call-seq:
77
79
  # timed_value_metric.start -> nil
78
80
  #
79
81
  # Start the current timer, if the current timer is already started, then
80
- # this is a noop.
82
+ # this is a noop.
81
83
  #
82
84
  def start
83
- if not @current_interval.running? then
85
+ unless @current_interval.running?
84
86
  @current_interval.start
85
- @sampling_start_time ||= self.utc_microseconds()
87
+ @sampling_start_time ||= utc_microseconds
86
88
  @sampling_start_interval ||= Interval.now
87
89
  end
88
90
  nil
@@ -101,21 +103,21 @@ module Hitimes
101
103
  # the current interval. If the metric is stopped then the duration of the
102
104
  # last Interval is returned. If the metric was already stopped before this
103
105
  # call, then false is returned and no stats are updated.
104
- #
105
106
  #
106
- def stop( value )
107
- if @current_interval.running? then
108
- d = @current_interval.stop
109
- @timed_stats.update( d )
107
+ #
108
+ def stop(value)
109
+ if @current_interval.running?
110
+ duration = @current_interval.stop
111
+ @timed_stats.update(duration)
110
112
  @current_interval = Interval.new
111
- @value_stats.update( value )
113
+ @value_stats.update(value)
112
114
 
113
115
  # update the lenght of time we have been sampling
114
116
  @sampling_delta = @sampling_start_interval.duration_so_far
115
117
 
116
- return d
118
+ return duration
117
119
  end
118
- return false
120
+ false
119
121
  end
120
122
 
121
123
  #
@@ -126,15 +128,15 @@ module Hitimes
126
128
  # The return value is the return value of the block. A value must be passed
127
129
  # into +measure+ to update the +value_stats+ portion of the TimedValueMetric.
128
130
  #
129
- def measure( value, &block )
131
+ def measure(value)
130
132
  return_value = nil
131
133
  begin
132
134
  start
133
135
  return_value = yield
134
136
  ensure
135
- stop( value )
137
+ stop(value)
136
138
  end
137
- return return_value
139
+ return_value
138
140
  end
139
141
 
140
142
  #
@@ -148,19 +150,19 @@ module Hitimes
148
150
  #
149
151
  # If the metric is running, then split returns the duration of the previous
150
152
  # interval, i.e. the split-time. If the metric is not running, nothing
151
- # happens, no stats are updated, and false is returned.
153
+ # happens, no stats are updated, and false is returned.
152
154
  #
153
155
  #
154
- def split( value )
155
- if @current_interval.running? then
156
+ def split(value)
157
+ if @current_interval.running?
156
158
  next_interval = @current_interval.split
157
- d = @current_interval.duration
158
- @timed_stats.update( d )
159
- @value_stats.update( value )
160
- @current_interval = next_interval
161
- return d
162
- end
163
- return false
159
+ duration = @current_interval.duration
160
+ @timed_stats.update(duration)
161
+ @value_stats.update(value)
162
+ @current_interval = next_interval
163
+ return duration
164
+ end
165
+ false
164
166
  end
165
167
 
166
168
  #
@@ -192,7 +194,7 @@ module Hitimes
192
194
  # associated with a quantity of things done during that unit of time. So
193
195
  # the +rate+ for a TimedValueMetric is the (sum of all quantities sampled) /
194
196
  # ( sum of all durations measured )
195
- #
197
+ #
196
198
  # For example, say you were measuring, using a TimedValueMetric batch jobs
197
199
  # that had individual units of work.
198
200
  #
@@ -208,7 +210,7 @@ module Hitimes
208
210
  # At this point the rate of units per second is calculated as ( 12 + 42 ) / ( duration1 + duration2 )
209
211
  #
210
212
  # some_batch_rate = tvm.rate # returns ( 34 / ( duration1+duration2 ) )
211
- #
213
+ #
212
214
  def rate
213
215
  @value_stats.sum / @timed_stats.sum
214
216
  end
@@ -216,18 +218,16 @@ module Hitimes
216
218
  #
217
219
  # :call-seq:
218
220
  # metric.to_hash -> Hash
219
- #
221
+ #
220
222
  # Convert the metric to a hash
221
223
  #
222
224
  def to_hash
223
- h = super
224
- h['timed_stats'] = @timed_stats.to_hash
225
- h['value_stats'] = @value_stats.to_hash( Stats::STATS - %w[ rate ] )
226
- h['rate'] = self.rate
227
- h['unit_count'] = self.unit_count
228
- return h
225
+ result = super
226
+ result["timed_stats"] = @timed_stats.to_hash
227
+ result["value_stats"] = @value_stats.to_hash(Stats::STATS - %w[rate])
228
+ result["rate"] = rate
229
+ result["unit_count"] = unit_count
230
+ result
229
231
  end
230
-
231
-
232
232
  end
233
233
  end
@@ -1,9 +1,11 @@
1
+ # frozen_string_literal: true
2
+
1
3
  #--
2
4
  # Copyright (c) 2008, 2009 Jeremy Hinegardner
3
5
  # All rights reserved. See LICENSE and/or COPYING for details.
4
6
  #++
5
7
 
6
- require 'forwardable'
8
+ require "forwardable"
7
9
  module Hitimes
8
10
  #
9
11
  # A ValueMetric holds the data from measuring a single value over a period of
@@ -12,15 +14,14 @@ module Hitimes
12
14
  #
13
15
  # A good example of a ValueMetric is measuring the number of items in a queue.
14
16
  #
15
- # A ValueMetric contains a Stats object, therefore ValueMetric has +count+, +max+,
17
+ # A ValueMetric contains a Stats object, therefore ValueMetric has +count+, +max+,
16
18
  # +mean+, +min+, +stddev+, +sum+, +sumsq+ methods that delegate to that Stats
17
19
  # object for convenience.
18
20
  #
19
21
  class ValueMetric < Metric
20
-
21
22
  # holds all the statistics
22
23
  attr_reader :stats
23
-
24
+
24
25
  #
25
26
  # :call-seq:
26
27
  # ValueMetric.new( 'my_metric' ) -> ValueMetric
@@ -29,8 +30,8 @@ module Hitimes
29
30
  # Create a new ValueMetric giving it a name and additional data.
30
31
  # +additional_data+ may be anything that follows the +to_hash+ protocol.
31
32
  #
32
- def initialize( name, additional_data = {} )
33
- super( name, additional_data )
33
+ def initialize(name, additional_data = {})
34
+ super(name, additional_data)
34
35
  @stats = Stats.new
35
36
  end
36
37
 
@@ -40,12 +41,12 @@ module Hitimes
40
41
  #
41
42
  # Give the +value+ as the measurement to the metric. The value is returned
42
43
  #
43
- def measure( value )
44
- @sampling_start_time ||= self.utc_microseconds()
44
+ def measure(value)
45
+ @sampling_start_time ||= utc_microseconds
45
46
  @sampling_start_interval ||= Interval.now
46
47
 
47
- @stats.update( value )
48
-
48
+ @stats.update(value)
49
+
49
50
  # update the length of time we have been sampling
50
51
  @sampling_delta = @sampling_start_interval.duration_so_far
51
52
  end
@@ -53,15 +54,15 @@ module Hitimes
53
54
  #
54
55
  # :call-seq:
55
56
  # metric.to_hash -> Hash
56
- #
57
+ #
57
58
  # Convert the metric to a hash
58
59
  #
59
60
  def to_hash
60
- h = super
61
- (Stats::STATS - %w[ rate ]).each do |s|
62
- h[s] = self.send( s )
61
+ result = super
62
+ (Stats::STATS - %w[rate]).each do |stat|
63
+ result[stat] = send(stat)
63
64
  end
64
- return h
65
+ result
65
66
  end
66
67
 
67
68
  # forward appropriate calls directly to the stats object
@@ -1,8 +1,10 @@
1
+ # frozen_string_literal: true
2
+
1
3
  #--
2
4
  # Copyright (c) 2008 Jeremy Hinegardner
3
5
  # All rights reserved. See LICENSE and/or COPYING for details
4
6
  #++
5
7
 
6
8
  module Hitimes
7
- VERSION = "1.3.1"
9
+ VERSION = "3.0.0"
8
10
  end
data/lib/hitimes.rb CHANGED
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  #--
2
4
  # Copyright (c) 2008 Jeremy Hinegardner
3
5
  # All rights reserved. See LICENSE and/or COPYING for details.
@@ -23,44 +25,15 @@ module Hitimes
23
25
  Hitimes::Interval.measure(&block)
24
26
  end
25
27
  end
26
- require 'hitimes/paths'
27
- require 'hitimes/version'
28
-
29
- # Load the binary extension, try loading one for the specific version of ruby
30
- # and if that fails, then fall back to one in the top of the library.
31
- # this is the method recommended by rake-compiler
32
-
33
- attempts = [
34
- "hitimes/#{RUBY_VERSION.sub(/\.\d+$/,'')}/hitimes",
35
- "hitimes/hitimes"
36
- ]
37
- loaded = false
38
-
39
- path_exceptions = []
40
- attempts.each do |path|
41
- begin
42
- require path
43
- loaded = true
44
- break
45
- rescue LoadError => load_error
46
- full_path = File.expand_path(path)
47
- path_exceptions << [ full_path, load_error.message ]
48
- end
49
- end
50
-
51
- if !loaded then
52
- msg = ["Unable to find binary extension, was hitimes installed correctly? The following paths were tried."]
53
- path_exceptions.each do |path, message|
54
- msg << "#{path} : #{message}"
55
- end
56
- raise LoadError, msg.join("\n")
57
- end
58
-
59
- require 'hitimes/stats'
60
- require 'hitimes/mutexed_stats'
61
-
62
- require 'hitimes/metric'
63
- require 'hitimes/value_metric'
64
- require 'hitimes/timed_metric'
65
- require 'hitimes/timed_value_metric'
66
-
28
+ require "hitimes/paths"
29
+ require "hitimes/version"
30
+ require "hitimes/instant"
31
+ require "hitimes/interval"
32
+
33
+ require "hitimes/stats"
34
+ require "hitimes/mutexed_stats"
35
+
36
+ require "hitimes/metric"
37
+ require "hitimes/value_metric"
38
+ require "hitimes/timed_metric"
39
+ require "hitimes/timed_value_metric"
metadata CHANGED
@@ -1,148 +1,36 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hitimes
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.1
4
+ version: 3.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jeremy Hinegardner
8
- autorequire:
9
- bindir: bin
8
+ autorequire:
9
+ bindir: exe
10
10
  cert_chain: []
11
- date: 2019-01-18 00:00:00.000000000 Z
12
- dependencies:
13
- - !ruby/object:Gem::Dependency
14
- name: rake
15
- requirement: !ruby/object:Gem::Requirement
16
- requirements:
17
- - - "~>"
18
- - !ruby/object:Gem::Version
19
- version: '12.0'
20
- type: :development
21
- prerelease: false
22
- version_requirements: !ruby/object:Gem::Requirement
23
- requirements:
24
- - - "~>"
25
- - !ruby/object:Gem::Version
26
- version: '12.0'
27
- - !ruby/object:Gem::Dependency
28
- name: minitest
29
- requirement: !ruby/object:Gem::Requirement
30
- requirements:
31
- - - "~>"
32
- - !ruby/object:Gem::Version
33
- version: '5.5'
34
- type: :development
35
- prerelease: false
36
- version_requirements: !ruby/object:Gem::Requirement
37
- requirements:
38
- - - "~>"
39
- - !ruby/object:Gem::Version
40
- version: '5.5'
41
- - !ruby/object:Gem::Dependency
42
- name: rdoc
43
- requirement: !ruby/object:Gem::Requirement
44
- requirements:
45
- - - "~>"
46
- - !ruby/object:Gem::Version
47
- version: '5.0'
48
- type: :development
49
- prerelease: false
50
- version_requirements: !ruby/object:Gem::Requirement
51
- requirements:
52
- - - "~>"
53
- - !ruby/object:Gem::Version
54
- version: '5.0'
55
- - !ruby/object:Gem::Dependency
56
- name: json
57
- requirement: !ruby/object:Gem::Requirement
58
- requirements:
59
- - - "~>"
60
- - !ruby/object:Gem::Version
61
- version: '2.0'
62
- type: :development
63
- prerelease: false
64
- version_requirements: !ruby/object:Gem::Requirement
65
- requirements:
66
- - - "~>"
67
- - !ruby/object:Gem::Version
68
- version: '2.0'
69
- - !ruby/object:Gem::Dependency
70
- name: rake-compiler
71
- requirement: !ruby/object:Gem::Requirement
72
- requirements:
73
- - - "~>"
74
- - !ruby/object:Gem::Version
75
- version: '1.0'
76
- type: :development
77
- prerelease: false
78
- version_requirements: !ruby/object:Gem::Requirement
79
- requirements:
80
- - - "~>"
81
- - !ruby/object:Gem::Version
82
- version: '1.0'
83
- - !ruby/object:Gem::Dependency
84
- name: rake-compiler-dock
85
- requirement: !ruby/object:Gem::Requirement
86
- requirements:
87
- - - "~>"
88
- - !ruby/object:Gem::Version
89
- version: '0.6'
90
- type: :development
91
- prerelease: false
92
- version_requirements: !ruby/object:Gem::Requirement
93
- requirements:
94
- - - "~>"
95
- - !ruby/object:Gem::Version
96
- version: '0.6'
97
- - !ruby/object:Gem::Dependency
98
- name: simplecov
99
- requirement: !ruby/object:Gem::Requirement
100
- requirements:
101
- - - "~>"
102
- - !ruby/object:Gem::Version
103
- version: '0.14'
104
- type: :development
105
- prerelease: false
106
- version_requirements: !ruby/object:Gem::Requirement
107
- requirements:
108
- - - "~>"
109
- - !ruby/object:Gem::Version
110
- version: '0.14'
111
- description: A fast, high resolution timer library for recording peformance metrics.
112
- * (http://github.com/copiousfreetime/hitimes) * (http://github.com.org/copiousfreetime/hitimes)
113
- * email jeremy at copiousfreetime dot org * `git clone url git://github.com/copiousfreetime/hitimes.git`
11
+ date: 2024-05-01 00:00:00.000000000 Z
12
+ dependencies: []
13
+ description: A fast, high resolution timer library for recording performance metrics.
114
14
  email: jeremy@copiousfreetime.org
115
15
  executables: []
116
- extensions:
117
- - ext/hitimes/c/extconf.rb
16
+ extensions: []
118
17
  extra_rdoc_files:
119
18
  - CONTRIBUTING.md
120
19
  - HISTORY.md
20
+ - LICENSE.txt
121
21
  - Manifest.txt
122
22
  - README.md
123
23
  files:
124
24
  - CONTRIBUTING.md
125
25
  - HISTORY.md
126
- - LICENSE
26
+ - LICENSE.txt
127
27
  - Manifest.txt
128
28
  - README.md
129
- - Rakefile
130
- - examples/benchmarks.rb
131
- - examples/stats.rb
132
- - ext/hitimes/c/extconf.rb
133
- - ext/hitimes/c/hitimes.c
134
- - ext/hitimes/c/hitimes_instant_clock_gettime.c
135
- - ext/hitimes/c/hitimes_instant_osx.c
136
- - ext/hitimes/c/hitimes_instant_windows.c
137
- - ext/hitimes/c/hitimes_interval.c
138
- - ext/hitimes/c/hitimes_interval.h
139
- - ext/hitimes/c/hitimes_stats.c
140
- - ext/hitimes/c/hitimes_stats.h
141
- - ext/hitimes/java/src/hitimes/Hitimes.java
142
- - ext/hitimes/java/src/hitimes/HitimesInterval.java
143
- - ext/hitimes/java/src/hitimes/HitimesService.java
144
- - ext/hitimes/java/src/hitimes/HitimesStats.java
29
+ - hitimes.gemspec
145
30
  - lib/hitimes.rb
31
+ - lib/hitimes/initialize.rb
32
+ - lib/hitimes/instant.rb
33
+ - lib/hitimes/interval.rb
146
34
  - lib/hitimes/metric.rb
147
35
  - lib/hitimes/mutexed_stats.rb
148
36
  - lib/hitimes/paths.rb
@@ -151,25 +39,15 @@ files:
151
39
  - lib/hitimes/timed_value_metric.rb
152
40
  - lib/hitimes/value_metric.rb
153
41
  - lib/hitimes/version.rb
154
- - spec/hitimes_spec.rb
155
- - spec/interval_spec.rb
156
- - spec/metric_spec.rb
157
- - spec/mutex_stats_spec.rb
158
- - spec/paths_spec.rb
159
- - spec/spec_helper.rb
160
- - spec/stats_spec.rb
161
- - spec/timed_metric_spec.rb
162
- - spec/timed_value_metric_spec.rb
163
- - spec/value_metric_spec.rb
164
- - spec/version_spec.rb
165
- - tasks/default.rake
166
- - tasks/extension.rake
167
- - tasks/this.rb
168
42
  homepage: http://github.com/copiousfreetime/hitimes
169
43
  licenses:
170
44
  - ISC
171
- metadata: {}
172
- post_install_message:
45
+ metadata:
46
+ bug_tracker_uri: https://github.com/copiousfreetime/hitimes/issues
47
+ changelog_uri: https://github.com/copiousfreetime/hitimes/blob/master/HISTORY.md
48
+ homepage_uri: https://github.com/copiousfreetime/hitimes
49
+ source_code_uri: https://github.com/copiousfreetime/hitimes
50
+ post_install_message:
173
51
  rdoc_options:
174
52
  - "--main"
175
53
  - README.md
@@ -181,26 +59,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
181
59
  requirements:
182
60
  - - ">="
183
61
  - !ruby/object:Gem::Version
184
- version: 2.2.2
62
+ version: 3.0.0
185
63
  required_rubygems_version: !ruby/object:Gem::Requirement
186
64
  requirements:
187
65
  - - ">="
188
66
  - !ruby/object:Gem::Version
189
67
  version: '0'
190
68
  requirements: []
191
- rubygems_version: 3.0.1
192
- signing_key:
69
+ rubygems_version: 3.5.9
70
+ signing_key:
193
71
  specification_version: 4
194
- summary: A fast, high resolution timer library for recording peformance metrics.
195
- test_files:
196
- - spec/hitimes_spec.rb
197
- - spec/interval_spec.rb
198
- - spec/metric_spec.rb
199
- - spec/mutex_stats_spec.rb
200
- - spec/paths_spec.rb
201
- - spec/spec_helper.rb
202
- - spec/stats_spec.rb
203
- - spec/timed_metric_spec.rb
204
- - spec/timed_value_metric_spec.rb
205
- - spec/value_metric_spec.rb
206
- - spec/version_spec.rb
72
+ summary: A fast, high resolution timer library for recording performance metrics.
73
+ test_files: []
data/Rakefile DELETED
@@ -1,28 +0,0 @@
1
- # vim: syntax=ruby
2
- load 'tasks/this.rb'
3
-
4
- This.name = "hitimes"
5
- This.author = "Jeremy Hinegardner"
6
- This.email = "jeremy@copiousfreetime.org"
7
- This.homepage = "http://github.com/copiousfreetime/#{ This.name }"
8
-
9
- This.ruby_gemspec do |spec|
10
- spec.add_development_dependency( 'rake' , '~> 12.0')
11
- spec.add_development_dependency( 'minitest' , '~> 5.5' )
12
- spec.add_development_dependency( 'rdoc' , '~> 5.0' )
13
- spec.add_development_dependency( 'json' , '~> 2.0' )
14
- spec.add_development_dependency( 'rake-compiler', '~> 1.0' )
15
- spec.add_development_dependency( 'rake-compiler-dock', '~> 0.6' )
16
- spec.add_development_dependency( 'simplecov' , '~> 0.14' )
17
-
18
- spec.extensions.concat This.extension_conf_files
19
- spec.license = "ISC"
20
- end
21
-
22
- This.java_gemspec( This.ruby_gemspec ) do |spec|
23
- spec.extensions.clear
24
- spec.files << "lib/hitimes/hitimes.jar"
25
- end
26
-
27
- load 'tasks/default.rake'
28
- load 'tasks/extension.rake'