hitimes 1.1.1-x86-mswin32 → 1.2.0-x86-mswin32
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/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
@@ -1,16 +0,0 @@
|
|
1
|
-
#ifdef USE_INSTANT_OSX
|
2
|
-
|
3
|
-
#include "hitimes_interval.h"
|
4
|
-
#include <CoreServices/CoreServices.h>
|
5
|
-
|
6
|
-
/*
|
7
|
-
* returns the number of nanoseconds since the machine was booted
|
8
|
-
*/
|
9
|
-
hitimes_instant_t hitimes_get_current_instant( )
|
10
|
-
{
|
11
|
-
Nanoseconds nano = AbsoluteToNanoseconds( UpTime() );
|
12
|
-
|
13
|
-
return *( hitimes_instant_t *)&nano;
|
14
|
-
}
|
15
|
-
|
16
|
-
#endif
|
data/gemspec.rb
DELETED
@@ -1,64 +0,0 @@
|
|
1
|
-
require 'rubygems'
|
2
|
-
require 'hitimes/version'
|
3
|
-
require 'tasks/config'
|
4
|
-
|
5
|
-
Hitimes::GEM_SPEC = Gem::Specification.new do |spec|
|
6
|
-
proj = Configuration.for('project')
|
7
|
-
spec.name = proj.name
|
8
|
-
spec.version = Hitimes::VERSION
|
9
|
-
|
10
|
-
spec.author = proj.author
|
11
|
-
spec.email = proj.email
|
12
|
-
spec.homepage = proj.homepage
|
13
|
-
spec.summary = proj.summary
|
14
|
-
spec.description = proj.description
|
15
|
-
spec.platform = Gem::Platform::RUBY
|
16
|
-
|
17
|
-
|
18
|
-
pkg = Configuration.for('packaging')
|
19
|
-
spec.files = pkg.files.all
|
20
|
-
spec.executables = pkg.files.bin.collect { |b| File.basename(b) }
|
21
|
-
|
22
|
-
# add dependencies here
|
23
|
-
spec.add_development_dependency("rake", "~> 0.8.1")
|
24
|
-
spec.add_development_dependency("configuration", " ~> 0.0.5")
|
25
|
-
spec.add_development_dependency( "json", "~> 1.1.3")
|
26
|
-
spec.add_development_dependency( "rake-compiler", "~> 0.5.0")
|
27
|
-
|
28
|
-
if ext_conf = Configuration.for_if_exist?("extension") then
|
29
|
-
spec.extensions << ext_conf.configs
|
30
|
-
spec.require_paths << 'ext'
|
31
|
-
spec.extensions.flatten!
|
32
|
-
end
|
33
|
-
|
34
|
-
if rdoc = Configuration.for_if_exist?('rdoc') then
|
35
|
-
spec.has_rdoc = true
|
36
|
-
spec.extra_rdoc_files = pkg.files.rdoc
|
37
|
-
spec.rdoc_options = rdoc.options + [ "--main" , rdoc.main_page ]
|
38
|
-
else
|
39
|
-
spec.has_rdoc = false
|
40
|
-
end
|
41
|
-
|
42
|
-
if test = Configuration.for_if_exist?('testing') then
|
43
|
-
spec.test_files = test.files
|
44
|
-
end
|
45
|
-
|
46
|
-
if rf = Configuration.for_if_exist?('rubyforge') then
|
47
|
-
spec.rubyforge_project = rf.project
|
48
|
-
end
|
49
|
-
end
|
50
|
-
|
51
|
-
Hitimes::GEM_SPEC_MSWIN32 = Hitimes::GEM_SPEC.clone
|
52
|
-
Hitimes::GEM_SPEC_MSWIN32.platform = ::Gem::Platform.new( "i386-mswin32" )
|
53
|
-
Hitimes::GEM_SPEC_MSWIN32.extensions = []
|
54
|
-
|
55
|
-
Hitimes::GEM_SPEC_MINGW32= Hitimes::GEM_SPEC.clone
|
56
|
-
Hitimes::GEM_SPEC_MINGW32.platform = ::Gem::Platform.new( "i386-mingw32" )
|
57
|
-
Hitimes::GEM_SPEC_MINGW32.extensions = []
|
58
|
-
|
59
|
-
Hitimes::GEM_SPEC_JAVA = Hitimes::GEM_SPEC.clone
|
60
|
-
Hitimes::GEM_SPEC_JAVA.platform = ::Gem::Platform.new( 'java' )
|
61
|
-
Hitimes::GEM_SPEC_JAVA.extensions = []
|
62
|
-
|
63
|
-
Hitimes::SPECS = [ Hitimes::GEM_SPEC, Hitimes::GEM_SPEC_MSWIN32, Hitimes::GEM_SPEC_MINGW32, Hitimes::GEM_SPEC_JAVA ]
|
64
|
-
|
Binary file
|
Binary file
|
data/tasks/announce.rake
DELETED
@@ -1,42 +0,0 @@
|
|
1
|
-
require 'tasks/config'
|
2
|
-
#-------------------------------------------------------------------------------
|
3
|
-
# announcement methods
|
4
|
-
#-------------------------------------------------------------------------------
|
5
|
-
|
6
|
-
proj_config = Configuration.for('project')
|
7
|
-
namespace :announce do
|
8
|
-
desc "create email for ruby-talk"
|
9
|
-
task :email do
|
10
|
-
info = Utils.announcement
|
11
|
-
|
12
|
-
File.open("email.txt", "w") do |mail|
|
13
|
-
mail.puts "From: #{proj_config.author} <#{proj_config.email}>"
|
14
|
-
mail.puts "To: ruby-talk@ruby-lang.org"
|
15
|
-
mail.puts "Date: #{Time.now.rfc2822}"
|
16
|
-
mail.puts "Subject: [ANN] #{info[:subject]}"
|
17
|
-
mail.puts
|
18
|
-
mail.puts info[:title]
|
19
|
-
mail.puts
|
20
|
-
mail.puts "{{ Release notes for Version #{Hitimes::VERSION} }}"
|
21
|
-
mail.puts
|
22
|
-
mail.puts info[:release_notes]
|
23
|
-
mail.puts
|
24
|
-
mail.puts " #{info[:urls]}"
|
25
|
-
mail.puts
|
26
|
-
mail.puts "=== Installation"
|
27
|
-
mail.puts
|
28
|
-
mail.puts " gem install #{Hitimes::GEM_SPEC.name}"
|
29
|
-
mail.puts
|
30
|
-
mail.puts "=== Description"
|
31
|
-
mail.puts
|
32
|
-
mail.puts info[:description]
|
33
|
-
end
|
34
|
-
puts "Created the following as email.txt:"
|
35
|
-
puts "-" * 72
|
36
|
-
puts File.read("email.txt")
|
37
|
-
puts "-" * 72
|
38
|
-
end
|
39
|
-
|
40
|
-
CLOBBER << "email.txt"
|
41
|
-
end
|
42
|
-
|
data/tasks/config.rb
DELETED
@@ -1,109 +0,0 @@
|
|
1
|
-
require 'configuration'
|
2
|
-
|
3
|
-
require 'rake'
|
4
|
-
require 'tasks/utils'
|
5
|
-
require 'yaml'
|
6
|
-
|
7
|
-
#-----------------------------------------------------------------------
|
8
|
-
# General project configuration
|
9
|
-
#-----------------------------------------------------------------------
|
10
|
-
Configuration.for('project') {
|
11
|
-
name "hitimes"
|
12
|
-
version Hitimes::Version.to_s
|
13
|
-
author "Jeremy Hinegardner"
|
14
|
-
email "jeremy at copiousfreetime dot org"
|
15
|
-
homepage "http://copiousfreetime.rubyforge.org/hitimes/"
|
16
|
-
description Utils.section_of("README", "description")
|
17
|
-
summary description.split(".").first
|
18
|
-
history "HISTORY"
|
19
|
-
license FileList["LICENSE"]
|
20
|
-
readme "README"
|
21
|
-
}
|
22
|
-
|
23
|
-
#-----------------------------------------------------------------------
|
24
|
-
# Packaging
|
25
|
-
#-----------------------------------------------------------------------
|
26
|
-
Configuration.for('packaging') {
|
27
|
-
# files in the project
|
28
|
-
proj_conf = Configuration.for('project')
|
29
|
-
files {
|
30
|
-
bin FileList["bin/*"]
|
31
|
-
ext FileList["ext/hitimes/*.{c,h,rb}"]
|
32
|
-
examples FileList["examples/*.rb"]
|
33
|
-
lib FileList["lib/**/*.rb"]
|
34
|
-
test FileList["spec/**/*.rb", "test/**/*.rb"]
|
35
|
-
data FileList["data/**/*"]
|
36
|
-
tasks FileList["tasks/**/*.r{ake,b}"]
|
37
|
-
rdoc FileList[proj_conf.readme, proj_conf.history,
|
38
|
-
proj_conf.license] + lib + FileList["ext/*.c"]
|
39
|
-
all bin + examples + ext + lib + test + data + rdoc + tasks + FileList["Rakefile"]
|
40
|
-
}
|
41
|
-
|
42
|
-
# ways to package the results
|
43
|
-
formats {
|
44
|
-
tgz true
|
45
|
-
zip true
|
46
|
-
rubygem Configuration::Table.has_key?('gem')
|
47
|
-
}
|
48
|
-
}
|
49
|
-
|
50
|
-
#-----------------------------------------------------------------------
|
51
|
-
# Gem packaging
|
52
|
-
#-----------------------------------------------------------------------
|
53
|
-
Configuration.for("gem") {
|
54
|
-
spec "gemspec.rb"
|
55
|
-
Configuration.for('packaging').files.all << spec
|
56
|
-
}
|
57
|
-
|
58
|
-
#-----------------------------------------------------------------------
|
59
|
-
# Testing
|
60
|
-
# - change mode to 'testunit' to use unit testing
|
61
|
-
#-----------------------------------------------------------------------
|
62
|
-
Configuration.for('test') {
|
63
|
-
mode "spec"
|
64
|
-
files Configuration.for("packaging").files.test
|
65
|
-
options %w[ --format specdoc --color ]
|
66
|
-
ruby_opts %w[ ]
|
67
|
-
}
|
68
|
-
|
69
|
-
#-----------------------------------------------------------------------
|
70
|
-
# Rcov
|
71
|
-
#-----------------------------------------------------------------------
|
72
|
-
Configuration.for('rcov') {
|
73
|
-
output_dir "coverage"
|
74
|
-
libs %w[ lib ]
|
75
|
-
rcov_opts %w[ --html ]
|
76
|
-
ruby_opts %w[ ]
|
77
|
-
test_files Configuration.for('packaging').files.test
|
78
|
-
}
|
79
|
-
|
80
|
-
#-----------------------------------------------------------------------
|
81
|
-
# Rdoc
|
82
|
-
#-----------------------------------------------------------------------
|
83
|
-
Configuration.for('rdoc') {
|
84
|
-
files Configuration.for('packaging').files.rdoc
|
85
|
-
main_page files.first
|
86
|
-
title Configuration.for('project').name
|
87
|
-
options %w[ --line-numbers ]
|
88
|
-
output_dir "doc"
|
89
|
-
}
|
90
|
-
|
91
|
-
#-----------------------------------------------------------------------
|
92
|
-
# Extension
|
93
|
-
#-----------------------------------------------------------------------
|
94
|
-
Configuration.for('extension') {
|
95
|
-
configs Configuration.for('packaging').files.ext.find_all { |x| %w[ mkrf_conf.rb extconf.rb ].include?(File.basename(x)) }
|
96
|
-
cross_rbconfig ::YAML::load_file( File.expand_path("~/.rake-compiler/config.yml"))
|
97
|
-
}
|
98
|
-
|
99
|
-
#-----------------------------------------------------------------------
|
100
|
-
# Rubyforge
|
101
|
-
#-----------------------------------------------------------------------
|
102
|
-
Configuration.for('rubyforge') {
|
103
|
-
project "copiousfreetime"
|
104
|
-
user "jjh"
|
105
|
-
host "rubyforge.org"
|
106
|
-
rdoc_location "#{user}@#{host}:/var/www/gforge-projects/#{project}/hitimes"
|
107
|
-
}
|
108
|
-
|
109
|
-
|
data/tasks/distribution.rake
DELETED
@@ -1,93 +0,0 @@
|
|
1
|
-
require 'tasks/config'
|
2
|
-
|
3
|
-
#-------------------------------------------------------------------------------
|
4
|
-
# Distribution and Packaging
|
5
|
-
#-------------------------------------------------------------------------------
|
6
|
-
if pkg_config = Configuration.for_if_exist?("packaging") then
|
7
|
-
|
8
|
-
require 'gemspec'
|
9
|
-
require 'rake/gempackagetask'
|
10
|
-
require 'rake/contrib/sshpublisher'
|
11
|
-
|
12
|
-
namespace :dist do
|
13
|
-
|
14
|
-
Rake::GemPackageTask.new(Hitimes::GEM_SPEC) do |pkg|
|
15
|
-
pkg.need_tar = pkg_config.formats.tgz
|
16
|
-
pkg.need_zip = pkg_config.formats.zip
|
17
|
-
end
|
18
|
-
|
19
|
-
desc "Install as a gem"
|
20
|
-
task :install => [:clobber, :package] do
|
21
|
-
sh "sudo gem install pkg/#{Hitimes::GEM_SPEC.full_name}.gem"
|
22
|
-
end
|
23
|
-
|
24
|
-
desc "Uninstall gem"
|
25
|
-
task :uninstall do
|
26
|
-
sh "sudo gem uninstall -x #{Hitimes::GEM_SPEC.name}"
|
27
|
-
end
|
28
|
-
|
29
|
-
desc "dump gemspec"
|
30
|
-
task :gemspec do
|
31
|
-
puts Hitimes::GEM_SPEC.to_ruby
|
32
|
-
end
|
33
|
-
|
34
|
-
desc "dump gemspec for win"
|
35
|
-
task :gemspec_win do
|
36
|
-
puts Hitimes::GEM_SPEC_WIN.to_ruby
|
37
|
-
end
|
38
|
-
|
39
|
-
desc "dump gemspec for java"
|
40
|
-
task :gemspec_java do
|
41
|
-
puts Hitimes::GEM_SPEC_JAVA.to_ruby
|
42
|
-
end
|
43
|
-
|
44
|
-
desc "reinstall gem"
|
45
|
-
task :reinstall => [:uninstall, :repackage, :install]
|
46
|
-
|
47
|
-
desc "package up a windows gem"
|
48
|
-
task :package_win => :clean do
|
49
|
-
Configuration.for("extension").cross_rbconfig.keys.each do |rbconfig|
|
50
|
-
v = rbconfig.split("-").last
|
51
|
-
s = v.sub(/\.\d$/,'')
|
52
|
-
sh "rake ext:build_win-#{v}"
|
53
|
-
mkdir_p "lib/hitimes/#{s}", :verbose => true
|
54
|
-
cp "ext/hitimes/hitimes_ext.so", "lib/hitimes/#{s}/", :verbose => true
|
55
|
-
end
|
56
|
-
|
57
|
-
Hitimes::SPECS.each do |spec|
|
58
|
-
next if spec.platform == "ruby"
|
59
|
-
spec.files += FileList["lib/hitimes/{1.8,1.9}/**.{dll,so}"]
|
60
|
-
Gem::Builder.new( spec ).build
|
61
|
-
mkdir "pkg" unless File.directory?( 'pkg' )
|
62
|
-
mv Dir["*.gem"].first, "pkg"
|
63
|
-
end
|
64
|
-
end
|
65
|
-
|
66
|
-
if RUBY_PLATFORM == "java" then
|
67
|
-
desc "package up a jruby gem"
|
68
|
-
task :package_java => "ext:build_java" do
|
69
|
-
Hitimes::GEM_SPEC_JAVA.files += FileList["lib/hitimes/*.jar"]
|
70
|
-
Hitimes::GEM_SPEC_JAVA.files += FileList["ext/java/src/hitimes/*.java"]
|
71
|
-
Gem::Builder.new( Hitimes::GEM_SPEC_JAVA ).build
|
72
|
-
mv Dir["*.gem"].first, "pkg"
|
73
|
-
end
|
74
|
-
end
|
75
|
-
|
76
|
-
task :clobber do
|
77
|
-
rm_rf "lib/hitimes/1.8"
|
78
|
-
rm_rf "lib/hitimes/1.9"
|
79
|
-
rm_rf "lib/hitimes/*.jar"
|
80
|
-
end
|
81
|
-
|
82
|
-
task :prep => [:clean, :package, :package_win, :package_java ]
|
83
|
-
|
84
|
-
desc "distribute copiously"
|
85
|
-
task :copious => [:clean, :package, :package_win, :package_java ] do
|
86
|
-
gems = Hitimes::SPECS.collect { |s| "#{s.full_name}.gem" }
|
87
|
-
Rake::SshFilePublisher.new('jeremy@copiousfreetime.org',
|
88
|
-
'/var/www/vhosts/www.copiousfreetime.org/htdocs/gems/gems',
|
89
|
-
'pkg', *gems).upload
|
90
|
-
sh "ssh jeremy@copiousfreetime.org rake -f /var/www/vhosts/www.copiousfreetime.org/htdocs/gems/Rakefile"
|
91
|
-
end
|
92
|
-
end
|
93
|
-
end
|
data/tasks/documentation.rake
DELETED
@@ -1,32 +0,0 @@
|
|
1
|
-
require 'tasks/config'
|
2
|
-
|
3
|
-
#-----------------------------------------------------------------------
|
4
|
-
# Documentation
|
5
|
-
#-----------------------------------------------------------------------
|
6
|
-
|
7
|
-
if rdoc_config = Configuration.for_if_exist?('rdoc') then
|
8
|
-
|
9
|
-
namespace :doc do
|
10
|
-
|
11
|
-
require 'rdoc'
|
12
|
-
require 'rake/rdoctask'
|
13
|
-
|
14
|
-
# generating documentation locally
|
15
|
-
Rake::RDocTask.new do |rdoc|
|
16
|
-
rdoc.rdoc_dir = rdoc_config.output_dir
|
17
|
-
rdoc.options = rdoc_config.options
|
18
|
-
rdoc.rdoc_files = rdoc_config.files.sort
|
19
|
-
rdoc.title = rdoc_config.title
|
20
|
-
rdoc.main = rdoc_config.main_page
|
21
|
-
end
|
22
|
-
|
23
|
-
if rubyforge_config = Configuration.for_if_exist?('rubyforge') then
|
24
|
-
desc "Deploy the RDoc documentation to #{rubyforge_config.rdoc_location}"
|
25
|
-
task :deploy => :rerdoc do
|
26
|
-
sh "rsync -zav --delete #{rdoc_config.output_dir}/ #{rubyforge_config.rdoc_location}"
|
27
|
-
end
|
28
|
-
end
|
29
|
-
|
30
|
-
end
|
31
|
-
end
|
32
|
-
|
data/tasks/rspec.rake
DELETED
@@ -1,33 +0,0 @@
|
|
1
|
-
|
2
|
-
require 'tasks/config'
|
3
|
-
|
4
|
-
#--------------------------------------------------------------------------------
|
5
|
-
# configuration for running rspec. This shows up as the test:default task
|
6
|
-
#--------------------------------------------------------------------------------
|
7
|
-
if spec_config = Configuration.for_if_exist?("test") then
|
8
|
-
if spec_config.mode == "spec" then
|
9
|
-
namespace :test do
|
10
|
-
|
11
|
-
task :default => :spec
|
12
|
-
|
13
|
-
require 'spec/rake/spectask'
|
14
|
-
Spec::Rake::SpecTask.new do |r|
|
15
|
-
r.ruby_opts = spec_config.ruby_opts
|
16
|
-
r.libs = [ Hitimes::Paths.lib_path,
|
17
|
-
Hitimes::Paths.root_dir ]
|
18
|
-
r.spec_files = spec_config.files
|
19
|
-
r.spec_opts = spec_config.options
|
20
|
-
|
21
|
-
if rcov_config = Configuration.for_if_exist?('rcov') then
|
22
|
-
r.rcov = true
|
23
|
-
r.rcov_dir = rcov_config.output_dir
|
24
|
-
r.rcov_opts = rcov_config.rcov_opts
|
25
|
-
end
|
26
|
-
end
|
27
|
-
|
28
|
-
pre_req = "ext:build"
|
29
|
-
pre_req += "_java" if RUBY_PLATFORM == "java"
|
30
|
-
task :spec => pre_req
|
31
|
-
end
|
32
|
-
end
|
33
|
-
end
|
data/tasks/rubyforge.rake
DELETED
@@ -1,55 +0,0 @@
|
|
1
|
-
require 'tasks/config'
|
2
|
-
|
3
|
-
#-----------------------------------------------------------------------
|
4
|
-
# Rubyforge additions to the task library
|
5
|
-
#-----------------------------------------------------------------------
|
6
|
-
if rf_conf = Configuration.for_if_exist?("rubyforge") then
|
7
|
-
|
8
|
-
abort("rubyforge gem not installed 'gem install rubyforge'") unless Utils.try_require('rubyforge')
|
9
|
-
|
10
|
-
proj_conf = Configuration.for('project')
|
11
|
-
|
12
|
-
namespace :dist do
|
13
|
-
desc "Release files to rubyforge"
|
14
|
-
task :rubyforge => [:clean, :package, :package_win] do
|
15
|
-
|
16
|
-
rubyforge = RubyForge.new
|
17
|
-
|
18
|
-
config = {}
|
19
|
-
config["release_notes"] = proj_conf.description
|
20
|
-
config["release_changes"] = Utils.release_notes_from(proj_conf.history)[Hitimes::VERSION]
|
21
|
-
config["Prefomatted"] = true
|
22
|
-
|
23
|
-
|
24
|
-
rubyforge.configure config
|
25
|
-
|
26
|
-
# make sure this release doesn't already exist
|
27
|
-
releases = rubyforge.autoconfig['release_ids']
|
28
|
-
if releases.has_key?(Hitimes::GEM_SPEC.name) and releases[Hitimes::GEM_SPEC.name][Hitimes::VERSION] then
|
29
|
-
abort("Release #{Hitimes::VERSION} already exists! Unable to release.")
|
30
|
-
end
|
31
|
-
|
32
|
-
puts "Uploading to rubyforge..."
|
33
|
-
files = FileList[File.join("pkg","#{Hitimes::GEM_SPEC.name}-#{Hitimes::VERSION}*.*")].to_a
|
34
|
-
files.each do |f|
|
35
|
-
puts " * #{f}"
|
36
|
-
end
|
37
|
-
rubyforge.login
|
38
|
-
rubyforge.add_release(Hitimes::GEM_SPEC.rubyforge_project, Hitimes::GEM_SPEC.name, Hitimes::VERSION, *files)
|
39
|
-
puts "done."
|
40
|
-
end
|
41
|
-
end
|
42
|
-
|
43
|
-
namespace :announce do
|
44
|
-
desc "Post news of #{proj_conf.name} to #{rf_conf.project} on rubyforge"
|
45
|
-
task :rubyforge do
|
46
|
-
info = Utils.announcement
|
47
|
-
rubyforge = RubyForge.new
|
48
|
-
rubyforge.configure
|
49
|
-
rubyforge.login
|
50
|
-
rubyforge.post_news(rf_conf.project, info[:subject], "#{info[:title]}\n\n#{info[:urls]}\n\n#{info[:release_notes]}")
|
51
|
-
puts "Posted to rubyforge"
|
52
|
-
end
|
53
|
-
|
54
|
-
end
|
55
|
-
end
|