hitimes 1.1.1-x86-mswin32 → 1.2.0-x86-mswin32
Sign up to get free protection for your applications and to get access to all the features.
- data/CONTRIBUTING.md +45 -0
- data/{HISTORY → HISTORY.rdoc} +14 -1
- data/LICENSE +11 -8
- data/Manifest.txt +44 -0
- data/{README → README.rdoc} +18 -5
- data/Rakefile +20 -62
- data/ext/hitimes/{extconf.rb → c/extconf.rb} +3 -3
- data/ext/hitimes/{hitimes_ext.c → c/hitimes.c} +1 -1
- data/ext/hitimes/{hitimes_instant_clock_gettime.c → c/hitimes_instant_clock_gettime.c} +0 -0
- data/ext/hitimes/c/hitimes_instant_osx.c +45 -0
- data/ext/hitimes/{hitimes_instant_windows.c → c/hitimes_instant_windows.c} +0 -0
- data/ext/hitimes/{hitimes_interval.c → c/hitimes_interval.c} +15 -7
- data/ext/hitimes/{hitimes_interval.h → c/hitimes_interval.h} +5 -5
- data/ext/hitimes/{hitimes_stats.c → c/hitimes_stats.c} +0 -0
- data/ext/hitimes/{hitimes_stats.h → c/hitimes_stats.h} +0 -0
- data/ext/hitimes/java/src/hitimes/Hitimes.java +54 -0
- data/ext/hitimes/java/src/hitimes/HitimesInterval.java +181 -0
- data/ext/hitimes/java/src/hitimes/HitimesService.java +16 -0
- data/ext/hitimes/java/src/hitimes/HitimesStats.java +112 -0
- data/lib/hitimes.rb +15 -5
- data/lib/hitimes/1.8/hitimes.so +0 -0
- data/lib/hitimes/1.9/hitimes.so +0 -0
- data/lib/hitimes/version.rb +1 -50
- data/spec/hitimes_spec.rb +14 -0
- data/spec/interval_spec.rb +24 -21
- data/spec/metric_spec.rb +8 -10
- data/spec/mutex_stats_spec.rb +8 -6
- data/spec/paths_spec.rb +1 -3
- data/spec/spec_helper.rb +7 -3
- data/spec/stats_spec.rb +26 -28
- data/spec/timed_metric_spec.rb +33 -33
- data/spec/timed_value_metric_spec.rb +45 -46
- data/spec/value_metric_spec.rb +21 -23
- data/spec/version_spec.rb +4 -30
- data/tasks/default.rake +267 -0
- data/tasks/extension.rake +31 -101
- data/tasks/this.rb +209 -0
- metadata +89 -88
- data/ext/hitimes/hitimes_instant_osx.c +0 -16
- data/gemspec.rb +0 -64
- data/lib/hitimes/1.8/hitimes_ext.so +0 -0
- data/lib/hitimes/1.9/hitimes_ext.so +0 -0
- data/tasks/announce.rake +0 -42
- data/tasks/config.rb +0 -109
- data/tasks/distribution.rake +0 -93
- data/tasks/documentation.rake +0 -32
- data/tasks/rspec.rake +0 -33
- data/tasks/rubyforge.rake +0 -55
- data/tasks/utils.rb +0 -80
data/tasks/extension.rake
CHANGED
@@ -1,108 +1,38 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
#
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
ruby conf.to_s
|
18
|
-
sh "make"
|
19
|
-
|
20
|
-
# install into requireable location so specs will run
|
21
|
-
subdir = "hitimes/#{RUBY_VERSION.sub(/\.\d$/,'')}"
|
22
|
-
dest_dir = Hitimes::Paths.lib_path( subdir )
|
23
|
-
mkdir_p dest_dir, :verbose => true
|
24
|
-
cp "hitimes_ext.#{Config::CONFIG['DLEXT']}", dest_dir, :verbose => true
|
25
|
-
end
|
26
|
-
end
|
27
|
-
end
|
28
|
-
|
29
|
-
if RUBY_PLATFORM == "java" then
|
30
|
-
desc "Build the jruby extension"
|
31
|
-
task :build_java => [ :clobber, "lib/hitimes/hitimes.jar" ]
|
32
|
-
|
33
|
-
file "lib/hitimes/hitimes.jar" => FileList["ext/java/src/hitimes/*.java"] do |t|
|
34
|
-
jruby_home = Config::CONFIG['prefix']
|
35
|
-
jruby_jar = File.join( jruby_home, 'lib', 'jruby.jar' )
|
36
|
-
|
37
|
-
mkdir_p 'pkg/classes'
|
38
|
-
sh "javac -classpath #{jruby_jar} -d pkg/classes #{t.prerequisites.join(' ')}"
|
39
|
-
|
40
|
-
dest_dir = File.dirname(t.name)
|
41
|
-
sh "jar cf #{t.name} -C pkg/classes ."
|
42
|
-
end
|
1
|
+
# To be used if the gem has extensions.
|
2
|
+
# If this task set is inclueded then you will need to also have
|
3
|
+
#
|
4
|
+
# spec.add_development_dependency( 'rake-compiler', '~> 0.8.1' )
|
5
|
+
#
|
6
|
+
# in your top level rakefile
|
7
|
+
begin
|
8
|
+
require 'rake/extensiontask'
|
9
|
+
require 'rake/javaextensiontask'
|
10
|
+
|
11
|
+
if RUBY_PLATFORM == "java" then
|
12
|
+
|
13
|
+
Rake::JavaExtensionTask.new( This.name) do |ext|
|
14
|
+
ext.ext_dir = File.join( 'ext', This.name, "java" )
|
15
|
+
ext.lib_dir = File.join( 'lib', This.name )
|
16
|
+
ext.gem_spec = This.java_gemspec
|
43
17
|
end
|
44
18
|
|
19
|
+
else
|
45
20
|
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
Hitimes::GEM_SPEC.extensions.each do |extension|
|
51
|
-
path = Pathname.new(extension)
|
52
|
-
parts = path.split
|
53
|
-
conf = parts.last
|
54
|
-
rvm = File.expand_path( "~/.rvm/bin/rvm" )
|
55
|
-
Dir.chdir(path.dirname) do |d|
|
56
|
-
if File.exist?( "Makefile" ) then
|
57
|
-
sh "make clean distclean"
|
58
|
-
end
|
59
|
-
cp "#{rbconfig}", "rbconfig.rb"
|
60
|
-
rubylib = ENV['RUBYLIB']
|
61
|
-
ENV['RUBYLIB'] = "."
|
62
|
-
sh %[#{rvm} #{version} -S extconf.rb]
|
63
|
-
ENV['RUBYLIB'] = rubylib
|
64
|
-
sh "make"
|
65
|
-
end
|
66
|
-
end
|
67
|
-
end
|
68
|
-
|
69
|
-
win_builds = []
|
70
|
-
ext_config.cross_rbconfig.keys.each do |v|
|
71
|
-
s = v.split("-").last
|
72
|
-
desc "Build the extension for windows version #{s}"
|
73
|
-
win_bname = "build_win-#{s}"
|
74
|
-
win_builds << win_bname
|
75
|
-
task win_bname => :clean do
|
76
|
-
build_win( s )
|
77
|
-
end
|
78
|
-
end
|
21
|
+
Rake::ExtensionTask.new( This.name ) do |ext|
|
22
|
+
ext.ext_dir = File.join( 'ext', This.name, "c" )
|
23
|
+
ext.lib_dir = File.join( 'lib', This.name )
|
24
|
+
ext.gem_spec = This.ruby_gemspec
|
79
25
|
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
parts = path.split
|
84
|
-
conf = parts.last
|
85
|
-
Dir.chdir(path.dirname) do |d|
|
86
|
-
if File.exist?( "Makefile" ) then
|
87
|
-
sh "make clean"
|
88
|
-
end
|
89
|
-
rm_f "rbconfig.rb"
|
90
|
-
end
|
91
|
-
end
|
92
|
-
end
|
93
|
-
|
94
|
-
task :clobber do
|
95
|
-
ext_config.configs.each do |extension|
|
96
|
-
path = Pathname.new(extension)
|
97
|
-
parts = path.split
|
98
|
-
conf = parts.last
|
99
|
-
Dir.chdir(path.dirname) do |d|
|
100
|
-
if File.exist?( "Makefile" ) then
|
101
|
-
sh "make distclean"
|
102
|
-
end
|
103
|
-
rm_f "rbconfig.rb"
|
104
|
-
end
|
105
|
-
end
|
26
|
+
ext.cross_compile = true # enable cross compilation (requires cross compile toolchain)
|
27
|
+
ext.cross_platform = 'i386-mswin32' # forces the Windows platform instead of the default one
|
28
|
+
# configure options only for cross compile
|
106
29
|
end
|
107
30
|
end
|
31
|
+
|
32
|
+
task :test_requirements => :compile
|
33
|
+
rescue LoadError
|
34
|
+
This.task_warning( 'extension' )
|
108
35
|
end
|
36
|
+
|
37
|
+
CLOBBER << FileList["lib/**/*.{jar,so,bundle}"]
|
38
|
+
CLOBBER << FileList["lib/#{This.name}/1.{8,9}/"]
|
data/tasks/this.rb
ADDED
@@ -0,0 +1,209 @@
|
|
1
|
+
require 'pathname'
|
2
|
+
|
3
|
+
# Public: A Class containing all the metadata and utilities needed to manage a
|
4
|
+
# ruby project.
|
5
|
+
class ThisProject
|
6
|
+
# The name of this project
|
7
|
+
attr_accessor :name
|
8
|
+
|
9
|
+
# The author's name
|
10
|
+
attr_accessor :author
|
11
|
+
|
12
|
+
# The email address of the author(s)
|
13
|
+
attr_accessor :email
|
14
|
+
|
15
|
+
# The homepage of this project
|
16
|
+
attr_accessor :homepage
|
17
|
+
|
18
|
+
# The regex of files to exclude from the manifest
|
19
|
+
attr_accessor :exclude_from_manifest
|
20
|
+
|
21
|
+
# The hash of Gem::Specifications keyed' by platform
|
22
|
+
attr_accessor :gemspecs
|
23
|
+
|
24
|
+
# Public: Initialize ThisProject
|
25
|
+
#
|
26
|
+
# Yields self
|
27
|
+
def initialize(&block)
|
28
|
+
@exclude_from_manifest = %r/\.(git|DS_Store)|^(doc|coverage|pkg|tmp)|Gemfile*|\.(gemspec|swp|jar|bundle|so|rvmrc)$|~$/
|
29
|
+
@gemspecs = Hash.new
|
30
|
+
yield self if block_given?
|
31
|
+
end
|
32
|
+
|
33
|
+
# Public: return the version of ThisProject
|
34
|
+
#
|
35
|
+
# Search the ruby files in the project looking for the one that has the
|
36
|
+
# version string in it. This does not eval any code in the project, it parses
|
37
|
+
# the source code looking for the string.
|
38
|
+
#
|
39
|
+
# Returns a String version
|
40
|
+
def version
|
41
|
+
[ "lib/#{ name }.rb", "lib/#{ name }/version.rb" ].each do |v|
|
42
|
+
path = project_path( v )
|
43
|
+
line = path.read[/^\s*VERSION\s*=\s*.*/]
|
44
|
+
if line then
|
45
|
+
return line.match(/.*VERSION\s*=\s*['"](.*)['"]/)[1]
|
46
|
+
end
|
47
|
+
end
|
48
|
+
end
|
49
|
+
|
50
|
+
# Internal: Return a section of an RDoc file with the given section name
|
51
|
+
#
|
52
|
+
# path - the relative path in the project of the file to parse
|
53
|
+
# section_name - the section out of the file from which to parse data
|
54
|
+
#
|
55
|
+
# Retuns the text of the section as an array of paragrphs.
|
56
|
+
def section_of( file, section_name )
|
57
|
+
re = /^=+ (.*)$/
|
58
|
+
sectional = project_path( file )
|
59
|
+
parts = sectional.read.split( re )[1..-1]
|
60
|
+
parts.map! { |p| p.strip }
|
61
|
+
|
62
|
+
sections = Hash.new
|
63
|
+
Hash[*parts].each do |k,v|
|
64
|
+
sections[k] = v.split("\n\n")
|
65
|
+
end
|
66
|
+
return sections[section_name]
|
67
|
+
end
|
68
|
+
|
69
|
+
# Internal: print out a warning about the give task
|
70
|
+
def task_warning( task )
|
71
|
+
warn "WARNING: '#{task}' tasks are not defined. Please run 'rake develop'"
|
72
|
+
end
|
73
|
+
|
74
|
+
# Internal: Return the full path to the file that is relative to the project
|
75
|
+
# root.
|
76
|
+
#
|
77
|
+
# path - the relative path of the file from the project root
|
78
|
+
#
|
79
|
+
# Returns the Pathname of the file
|
80
|
+
def project_path( *relative_path )
|
81
|
+
project_root.join( *relative_path )
|
82
|
+
end
|
83
|
+
|
84
|
+
# Internal: The absolute path of this file
|
85
|
+
#
|
86
|
+
# Returns the Pathname of this file.
|
87
|
+
def this_file_path
|
88
|
+
Pathname.new( __FILE__ ).expand_path
|
89
|
+
end
|
90
|
+
|
91
|
+
# Internal: The root directory of this project
|
92
|
+
#
|
93
|
+
# This is defined as being the directory that is in the path of this project
|
94
|
+
# that has the first Rakefile
|
95
|
+
#
|
96
|
+
# Returns the Pathname of the directory
|
97
|
+
def project_root
|
98
|
+
this_file_path.ascend do |p|
|
99
|
+
rakefile = p.join( 'Rakefile' )
|
100
|
+
return p if rakefile.exist?
|
101
|
+
end
|
102
|
+
end
|
103
|
+
|
104
|
+
# Internal: Returns the contents of the Manifest.txt file as an array
|
105
|
+
#
|
106
|
+
# Returns an Array of strings
|
107
|
+
def manifest
|
108
|
+
manifest_file = project_path( "Manifest.txt" )
|
109
|
+
abort "You need a Manifest.txt" unless manifest_file.readable?
|
110
|
+
manifest_file.readlines.map { |l| l.strip }
|
111
|
+
end
|
112
|
+
|
113
|
+
# Internal: Return the files that define the extensions
|
114
|
+
#
|
115
|
+
# Returns an Array
|
116
|
+
def extension_conf_files
|
117
|
+
manifest.grep( /extconf.rb\Z/ )
|
118
|
+
end
|
119
|
+
|
120
|
+
# Internal: Returns the gemspace associated with the current ruby platform
|
121
|
+
def platform_gemspec
|
122
|
+
gemspecs[platform]
|
123
|
+
end
|
124
|
+
|
125
|
+
def core_gemspec
|
126
|
+
Gem::Specification.new do |spec|
|
127
|
+
spec.name = name
|
128
|
+
spec.version = version
|
129
|
+
spec.author = author
|
130
|
+
spec.email = email
|
131
|
+
spec.homepage = homepage
|
132
|
+
|
133
|
+
spec.summary = summary
|
134
|
+
spec.description = description
|
135
|
+
|
136
|
+
spec.files = manifest
|
137
|
+
spec.executables = spec.files.grep(/^bin/) { |f| File.basename(f) }
|
138
|
+
spec.test_files = spec.files.grep(/^spec/)
|
139
|
+
|
140
|
+
spec.extra_rdoc_files += spec.files.grep(/(txt|rdoc)$/)
|
141
|
+
spec.rdoc_options = [ "--main" , 'README.rdoc',
|
142
|
+
"--markup", "tomdoc" ]
|
143
|
+
end
|
144
|
+
end
|
145
|
+
|
146
|
+
# Internal: Return the gemspec for the ruby platform
|
147
|
+
def ruby_gemspec( core = core_gemspec, &block )
|
148
|
+
yielding_gemspec( 'ruby', core, &block )
|
149
|
+
end
|
150
|
+
|
151
|
+
# Internal: Return the gemspec for the jruby platform
|
152
|
+
def java_gemspec( core = core_gemspec, &block )
|
153
|
+
yielding_gemspec( 'java', core, &block )
|
154
|
+
end
|
155
|
+
|
156
|
+
# Internal: give an initial spec and a key, create a new gemspec based off of
|
157
|
+
# it.
|
158
|
+
#
|
159
|
+
# This will force the new gemspecs 'platform' to be that of the key, since the
|
160
|
+
# only reason you would have multiple gemspecs at this point is to deal with
|
161
|
+
# different platforms.
|
162
|
+
def yielding_gemspec( key, core )
|
163
|
+
spec = gemspecs[key] ||= core.dup
|
164
|
+
spec.platform = key
|
165
|
+
yield spec if block_given?
|
166
|
+
return spec
|
167
|
+
end
|
168
|
+
|
169
|
+
# Internal: Set the recovery gem development dependency
|
170
|
+
#
|
171
|
+
# These are dynamically set since they cannot be hard coded as there is
|
172
|
+
# no way to ship them correctly in the gemspec
|
173
|
+
#
|
174
|
+
# Returns nothing.
|
175
|
+
def set_coverage_gem
|
176
|
+
if RUBY_VERSION < "1.9.0"
|
177
|
+
platform_gemspec.add_development_dependency( 'rcov', '~> 1.0.0' )
|
178
|
+
else
|
179
|
+
platform_gemspec.add_development_dependency( 'simplecov', '~> 0.7.1' )
|
180
|
+
end
|
181
|
+
end
|
182
|
+
|
183
|
+
# Internal: Return the platform of ThisProject at the current moment in time.
|
184
|
+
def platform
|
185
|
+
(RUBY_PLATFORM == "java") ? 'java' : Gem::Platform::RUBY
|
186
|
+
end
|
187
|
+
|
188
|
+
# Internal: Return the DESCRIPTION section of the README.rdoc file
|
189
|
+
def description_section
|
190
|
+
section_of( 'README.rdoc', 'DESCRIPTION')
|
191
|
+
end
|
192
|
+
|
193
|
+
# Internal: Return the summary text from the README
|
194
|
+
def summary
|
195
|
+
description_section.first
|
196
|
+
end
|
197
|
+
|
198
|
+
# Internal: Return the full description text from the READEM
|
199
|
+
def description
|
200
|
+
description_section.join(" ").tr("\n", ' ').gsub(/[{}]/,'').gsub(/\[[^\]]+\]/,'') # strip rdoc
|
201
|
+
end
|
202
|
+
|
203
|
+
# Internal: The path to the gemspec file
|
204
|
+
def gemspec_file
|
205
|
+
project_path( "#{ name }.gemspec" )
|
206
|
+
end
|
207
|
+
end
|
208
|
+
|
209
|
+
This = ThisProject.new
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: hitimes
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
5
|
-
prerelease:
|
4
|
+
hash: 31
|
5
|
+
prerelease:
|
6
6
|
segments:
|
7
7
|
- 1
|
8
|
-
-
|
9
|
-
-
|
10
|
-
version: 1.
|
8
|
+
- 2
|
9
|
+
- 0
|
10
|
+
version: 1.2.0
|
11
11
|
platform: x86-mswin32
|
12
12
|
authors:
|
13
13
|
- Jeremy Hinegardner
|
@@ -15,8 +15,7 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date:
|
19
|
-
default_executable:
|
18
|
+
date: 2013-02-09 00:00:00 Z
|
20
19
|
dependencies:
|
21
20
|
- !ruby/object:Gem::Dependency
|
22
21
|
name: rake
|
@@ -26,107 +25,110 @@ dependencies:
|
|
26
25
|
requirements:
|
27
26
|
- - ~>
|
28
27
|
- !ruby/object:Gem::Version
|
29
|
-
hash:
|
28
|
+
hash: 73
|
30
29
|
segments:
|
30
|
+
- 10
|
31
31
|
- 0
|
32
|
-
-
|
33
|
-
|
34
|
-
version: 0.8.1
|
32
|
+
- 3
|
33
|
+
version: 10.0.3
|
35
34
|
type: :development
|
36
35
|
version_requirements: *id001
|
37
36
|
- !ruby/object:Gem::Dependency
|
38
|
-
name:
|
37
|
+
name: rspec
|
39
38
|
prerelease: false
|
40
39
|
requirement: &id002 !ruby/object:Gem::Requirement
|
41
40
|
none: false
|
42
41
|
requirements:
|
43
42
|
- - ~>
|
44
43
|
- !ruby/object:Gem::Version
|
45
|
-
hash:
|
44
|
+
hash: 63
|
46
45
|
segments:
|
46
|
+
- 2
|
47
|
+
- 12
|
47
48
|
- 0
|
48
|
-
|
49
|
-
- 5
|
50
|
-
version: 0.0.5
|
49
|
+
version: 2.12.0
|
51
50
|
type: :development
|
52
51
|
version_requirements: *id002
|
53
52
|
- !ruby/object:Gem::Dependency
|
54
|
-
name:
|
53
|
+
name: rdoc
|
55
54
|
prerelease: false
|
56
55
|
requirement: &id003 !ruby/object:Gem::Requirement
|
57
56
|
none: false
|
58
57
|
requirements:
|
59
58
|
- - ~>
|
60
59
|
- !ruby/object:Gem::Version
|
61
|
-
hash:
|
60
|
+
hash: 31
|
62
61
|
segments:
|
63
|
-
- 1
|
64
|
-
- 1
|
65
62
|
- 3
|
66
|
-
|
63
|
+
- 12
|
64
|
+
version: "3.12"
|
67
65
|
type: :development
|
68
66
|
version_requirements: *id003
|
69
67
|
- !ruby/object:Gem::Dependency
|
70
|
-
name:
|
68
|
+
name: json
|
71
69
|
prerelease: false
|
72
70
|
requirement: &id004 !ruby/object:Gem::Requirement
|
73
71
|
none: false
|
74
72
|
requirements:
|
75
73
|
- - ~>
|
76
74
|
- !ruby/object:Gem::Version
|
77
|
-
hash:
|
75
|
+
hash: 7
|
78
76
|
segments:
|
79
|
-
-
|
80
|
-
-
|
81
|
-
-
|
82
|
-
version:
|
77
|
+
- 1
|
78
|
+
- 7
|
79
|
+
- 6
|
80
|
+
version: 1.7.6
|
83
81
|
type: :development
|
84
82
|
version_requirements: *id004
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: rake-compiler
|
85
|
+
prerelease: false
|
86
|
+
requirement: &id005 !ruby/object:Gem::Requirement
|
87
|
+
none: false
|
88
|
+
requirements:
|
89
|
+
- - ~>
|
90
|
+
- !ruby/object:Gem::Version
|
91
|
+
hash: 61
|
92
|
+
segments:
|
93
|
+
- 0
|
94
|
+
- 8
|
95
|
+
- 1
|
96
|
+
version: 0.8.1
|
97
|
+
type: :development
|
98
|
+
version_requirements: *id005
|
99
|
+
description: "Hitimes is a fast, high resolution timer library for recording performance metrics. It uses the appropriate low method calls for each system to get the highest granularity time increments possible. It currently supports any of the following systems: * any system with the POSIX call <tt>clock_gettime()</tt>, * Mac OS X * Windows * JRuby Using Hitimes can be faster than using a series of +Time.new+ calls, and it will have a much higher granularity. It is definitely faster than using +Process.times+."
|
100
100
|
email: jeremy@copiousfreetime.org
|
101
101
|
executables: []
|
102
102
|
|
103
103
|
extensions: []
|
104
104
|
|
105
105
|
extra_rdoc_files:
|
106
|
-
-
|
107
|
-
-
|
108
|
-
-
|
109
|
-
- lib/hitimes/metric.rb
|
110
|
-
- lib/hitimes/mutexed_stats.rb
|
111
|
-
- lib/hitimes/paths.rb
|
112
|
-
- lib/hitimes/stats.rb
|
113
|
-
- lib/hitimes/timed_metric.rb
|
114
|
-
- lib/hitimes/timed_value_metric.rb
|
115
|
-
- lib/hitimes/value_metric.rb
|
116
|
-
- lib/hitimes/version.rb
|
117
|
-
- lib/hitimes.rb
|
106
|
+
- HISTORY.rdoc
|
107
|
+
- Manifest.txt
|
108
|
+
- README.rdoc
|
118
109
|
files:
|
110
|
+
- CONTRIBUTING.md
|
111
|
+
- HISTORY.rdoc
|
112
|
+
- LICENSE
|
113
|
+
- Manifest.txt
|
114
|
+
- README.rdoc
|
115
|
+
- Rakefile
|
119
116
|
- examples/benchmarks.rb
|
120
117
|
- examples/stats.rb
|
121
|
-
- ext/hitimes/
|
122
|
-
- ext/hitimes/
|
123
|
-
- ext/hitimes/
|
124
|
-
- ext/hitimes/
|
125
|
-
- ext/hitimes/
|
126
|
-
- ext/hitimes/
|
127
|
-
- ext/hitimes/hitimes_interval.h
|
128
|
-
- ext/hitimes/hitimes_stats.
|
129
|
-
- ext/hitimes/
|
118
|
+
- ext/hitimes/c/extconf.rb
|
119
|
+
- ext/hitimes/c/hitimes.c
|
120
|
+
- ext/hitimes/c/hitimes_instant_clock_gettime.c
|
121
|
+
- ext/hitimes/c/hitimes_instant_osx.c
|
122
|
+
- ext/hitimes/c/hitimes_instant_windows.c
|
123
|
+
- ext/hitimes/c/hitimes_interval.c
|
124
|
+
- ext/hitimes/c/hitimes_interval.h
|
125
|
+
- ext/hitimes/c/hitimes_stats.c
|
126
|
+
- ext/hitimes/c/hitimes_stats.h
|
127
|
+
- ext/hitimes/java/src/hitimes/Hitimes.java
|
128
|
+
- ext/hitimes/java/src/hitimes/HitimesInterval.java
|
129
|
+
- ext/hitimes/java/src/hitimes/HitimesService.java
|
130
|
+
- ext/hitimes/java/src/hitimes/HitimesStats.java
|
131
|
+
- lib/hitimes.rb
|
130
132
|
- lib/hitimes/metric.rb
|
131
133
|
- lib/hitimes/mutexed_stats.rb
|
132
134
|
- lib/hitimes/paths.rb
|
@@ -135,7 +137,7 @@ files:
|
|
135
137
|
- lib/hitimes/timed_value_metric.rb
|
136
138
|
- lib/hitimes/value_metric.rb
|
137
139
|
- lib/hitimes/version.rb
|
138
|
-
-
|
140
|
+
- spec/hitimes_spec.rb
|
139
141
|
- spec/interval_spec.rb
|
140
142
|
- spec/metric_spec.rb
|
141
143
|
- spec/mutex_stats_spec.rb
|
@@ -146,33 +148,22 @@ files:
|
|
146
148
|
- spec/timed_value_metric_spec.rb
|
147
149
|
- spec/value_metric_spec.rb
|
148
150
|
- spec/version_spec.rb
|
149
|
-
-
|
150
|
-
- HISTORY
|
151
|
-
- LICENSE
|
152
|
-
- tasks/announce.rake
|
153
|
-
- tasks/distribution.rake
|
154
|
-
- tasks/documentation.rake
|
151
|
+
- tasks/default.rake
|
155
152
|
- tasks/extension.rake
|
156
|
-
- tasks/
|
157
|
-
-
|
158
|
-
-
|
159
|
-
|
160
|
-
- Rakefile
|
161
|
-
- gemspec.rb
|
162
|
-
- lib/hitimes/1.8/hitimes_ext.so
|
163
|
-
- lib/hitimes/1.9/hitimes_ext.so
|
164
|
-
has_rdoc: true
|
165
|
-
homepage: http://copiousfreetime.rubyforge.org/hitimes/
|
153
|
+
- tasks/this.rb
|
154
|
+
- lib/hitimes/1.8/hitimes.so
|
155
|
+
- lib/hitimes/1.9/hitimes.so
|
156
|
+
homepage: http://github.com/copiousfreetime/hitimes
|
166
157
|
licenses: []
|
167
158
|
|
168
159
|
post_install_message:
|
169
160
|
rdoc_options:
|
170
|
-
- --line-numbers
|
171
161
|
- --main
|
172
|
-
- README
|
162
|
+
- README.rdoc
|
163
|
+
- --markup
|
164
|
+
- tomdoc
|
173
165
|
require_paths:
|
174
166
|
- lib
|
175
|
-
- ext
|
176
167
|
required_ruby_version: !ruby/object:Gem::Requirement
|
177
168
|
none: false
|
178
169
|
requirements:
|
@@ -193,10 +184,20 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
193
184
|
version: "0"
|
194
185
|
requirements: []
|
195
186
|
|
196
|
-
rubyforge_project:
|
197
|
-
rubygems_version: 1.
|
187
|
+
rubyforge_project:
|
188
|
+
rubygems_version: 1.8.25
|
198
189
|
signing_key:
|
199
190
|
specification_version: 3
|
200
|
-
summary: Hitimes is a fast, high resolution timer library for recording performance metrics
|
201
|
-
test_files:
|
202
|
-
|
191
|
+
summary: Hitimes is a fast, high resolution timer library for recording performance metrics. It uses the appropriate low method calls for each system to get the highest granularity time increments possible.
|
192
|
+
test_files:
|
193
|
+
- spec/hitimes_spec.rb
|
194
|
+
- spec/interval_spec.rb
|
195
|
+
- spec/metric_spec.rb
|
196
|
+
- spec/mutex_stats_spec.rb
|
197
|
+
- spec/paths_spec.rb
|
198
|
+
- spec/spec_helper.rb
|
199
|
+
- spec/stats_spec.rb
|
200
|
+
- spec/timed_metric_spec.rb
|
201
|
+
- spec/timed_value_metric_spec.rb
|
202
|
+
- spec/value_metric_spec.rb
|
203
|
+
- spec/version_spec.rb
|