echoe 3.0.2 → 3.1

Sign up to get free protection for your applications and to get access to all the features.
data.tar.gz.sig CHANGED
Binary file
data/CHANGELOG CHANGED
@@ -1,3 +1,6 @@
1
+
2
+ v3.1. Fix some bugs; become Ruby 1.9 compatible.
3
+
1
4
  v3.0.2. Support for alternative Rakefile naming.
2
5
 
3
6
  v3.0.1. Compatibility with Rubygems 1.3.
data/Manifest CHANGED
@@ -3,6 +3,7 @@ echoe.gemspec
3
3
  lib/echoe/client.rb
4
4
  lib/echoe/extensions.rb
5
5
  lib/echoe/platform.rb
6
+ lib/echoe/rubygems.rb
6
7
  lib/echoe.rb
7
8
  LICENSE
8
9
  Manifest
data/Rakefile CHANGED
@@ -7,7 +7,7 @@ Echoe.new('echoe') do |p|
7
7
  p.summary = 'A Rubygems packaging tool that provides Rake tasks for documentation, extension compiling, testing, and deployment.'
8
8
  p.url = 'http://blog.evanweaver.com/files/doc/fauna/echoe/'
9
9
  p.docs_host = 'blog.evanweaver.com:~/www/bax/public/files/doc/'
10
- p.runtime_dependencies = ['rake', 'rubyforge >=1.0.0', 'highline']
10
+ p.runtime_dependencies = ['rubyforge >=1.0.0', 'highline']
11
11
  p.development_dependencies = []
12
12
  p.retain_gemspec = true
13
13
  p.require_signed = true
@@ -2,22 +2,22 @@
2
2
 
3
3
  Gem::Specification.new do |s|
4
4
  s.name = %q{echoe}
5
- s.version = "3.0.2"
5
+ s.version = "3.1"
6
6
 
7
7
  s.required_rubygems_version = Gem::Requirement.new(">= 1.2") if s.respond_to? :required_rubygems_version=
8
8
  s.authors = ["Evan Weaver"]
9
9
  s.cert_chain = ["/Users/eweaver/p/configuration/gem_certificates/evan_weaver-original-public_cert.pem"]
10
- s.date = %q{2008-10-26}
10
+ s.date = %q{2009-02-03}
11
11
  s.description = %q{A Rubygems packaging tool that provides Rake tasks for documentation, extension compiling, testing, and deployment.}
12
12
  s.email = %q{}
13
- s.extra_rdoc_files = ["CHANGELOG", "lib/echoe/client.rb", "lib/echoe/extensions.rb", "lib/echoe/platform.rb", "lib/echoe.rb", "LICENSE", "README", "TODO"]
14
- s.files = ["CHANGELOG", "echoe.gemspec", "lib/echoe/client.rb", "lib/echoe/extensions.rb", "lib/echoe/platform.rb", "lib/echoe.rb", "LICENSE", "Manifest", "MIT-LICENSE", "Rakefile", "README", "TODO"]
13
+ s.extra_rdoc_files = ["CHANGELOG", "lib/echoe/client.rb", "lib/echoe/extensions.rb", "lib/echoe/platform.rb", "lib/echoe/rubygems.rb", "lib/echoe.rb", "LICENSE", "README", "TODO"]
14
+ s.files = ["CHANGELOG", "echoe.gemspec", "lib/echoe/client.rb", "lib/echoe/extensions.rb", "lib/echoe/platform.rb", "lib/echoe/rubygems.rb", "lib/echoe.rb", "LICENSE", "Manifest", "MIT-LICENSE", "Rakefile", "README", "TODO"]
15
15
  s.has_rdoc = true
16
16
  s.homepage = %q{http://blog.evanweaver.com/files/doc/fauna/echoe/}
17
17
  s.rdoc_options = ["--line-numbers", "--inline-source", "--title", "Echoe", "--main", "README"]
18
18
  s.require_paths = ["lib"]
19
19
  s.rubyforge_project = %q{fauna}
20
- s.rubygems_version = %q{1.3.0}
20
+ s.rubygems_version = %q{1.3.1}
21
21
  s.signing_key = %q{/Users/eweaver/p/configuration/gem_certificates/evan_weaver-original-private_key.pem}
22
22
  s.summary = %q{A Rubygems packaging tool that provides Rake tasks for documentation, extension compiling, testing, and deployment.}
23
23
 
@@ -26,16 +26,13 @@ Gem::Specification.new do |s|
26
26
  s.specification_version = 2
27
27
 
28
28
  if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
29
- s.add_runtime_dependency(%q<rake>, [">= 0"])
30
29
  s.add_runtime_dependency(%q<rubyforge>, [">= 1.0.0"])
31
30
  s.add_runtime_dependency(%q<highline>, [">= 0"])
32
31
  else
33
- s.add_dependency(%q<rake>, [">= 0"])
34
32
  s.add_dependency(%q<rubyforge>, [">= 1.0.0"])
35
33
  s.add_dependency(%q<highline>, [">= 0"])
36
34
  end
37
35
  else
38
- s.add_dependency(%q<rake>, [">= 0"])
39
36
  s.add_dependency(%q<rubyforge>, [">= 1.0.0"])
40
37
  s.add_dependency(%q<highline>, [">= 0"])
41
38
  end
@@ -1,6 +1,7 @@
1
- require 'rubygems'
2
1
 
3
- require 'rubyforge'
2
+ $HERE = File.dirname(__FILE__)
3
+ require "#{$HERE}/echoe/platform"
4
+ require "#{$HERE}/echoe/extensions"
4
5
 
5
6
  require 'rake'
6
7
  require 'rake/clean'
@@ -10,22 +11,17 @@ require 'rake/rdoctask'
10
11
  require 'rake/testtask'
11
12
  require 'rbconfig'
12
13
  require 'open-uri'
13
- require 'highline/import'
14
14
 
15
- begin
16
- require 'rcov/rcovtask'
17
- rescue LoadError
18
- end
15
+ require 'rubygems'
16
+ require "#{$HERE}/echoe/rubygems"
19
17
 
20
- begin
21
- require 'load_multi_rails_rake_tasks'
22
- rescue LoadError
23
- end
18
+ require 'rubyforge'
19
+ require "#{$HERE}/echoe/client"
20
+
21
+ require 'highline/import'
24
22
 
25
- $LOAD_PATH << File.dirname(__FILE__)
26
- require 'echoe/platform'
27
- require 'echoe/extensions'
28
- require 'echoe/client'
23
+ begin; require 'rcov/rcovtask'; rescue LoadError; end
24
+ begin; require 'load_multi_rails_rake_tasks'; rescue LoadError; end
29
25
 
30
26
  =begin rdoc
31
27
 
@@ -37,7 +33,7 @@ For example, a simple <tt>Rakefile</tt> might look like this:
37
33
 
38
34
  Echoe.new("uncapitalizer") do |p|
39
35
  p.author = "Evan Weaver"
40
- p.summary = "A library that uncapitalizes strings. It's awesome."
36
+ p.summary = "A library that uncapitalizes strings."
41
37
  p.url = "http://www.uncapitalizer.com"
42
38
  p.docs_host = "uncapitalizer.com:~/www/files/doc/"
43
39
  p.runtime_dependencies = ["string_tools >=1.4.0"]
@@ -151,7 +147,7 @@ class Echoe
151
147
  attr_accessor :author, :changes, :clean_pattern, :description, :email, :runtime_dependencies, :development_dependencies, :need_tgz, :need_tar_gz, :need_gem, :need_zip, :rdoc_pattern, :project, :summary, :test_pattern, :url, :version, :docs_host, :rdoc_template, :manifest_name, :install_message, :extension_pattern, :private_key, :certificate_chain, :require_signed, :ruby_version, :platform, :ignore_pattern, :executable_pattern, :changelog, :rcov_options, :gemspec_format
152
148
 
153
149
  # best left alone
154
- attr_accessor :name, :lib_files, :test_files, :bin_files, :spec, :rdoc_options, :rubyforge_name, :has_rdoc, :include_gemspec, :include_rakefile, :gemspec_name, :retain_gemspec, :rakefile_name, :eval, :files, :changelog_patterns, :rubygems_version, :use_sudo
150
+ attr_accessor :name, :lib_files, :test_files, :bin_files, :spec, :rdoc_options, :rubyforge_name, :has_rdoc, :include_gemspec, :include_rakefile, :gemspec_name, :retain_gemspec, :rakefile_name, :eval, :files, :changelog_patterns, :rubygems_version, :use_sudo, :gem_bin
155
151
 
156
152
  # legacy
157
153
  attr_accessor :extra_deps, :rdoc_files, :extensions, :dependencies
@@ -165,7 +161,7 @@ class Echoe
165
161
  self.url = ""
166
162
  self.author = ""
167
163
  self.email = ""
168
- self.clean_pattern = ["pkg", "doc", 'build/*', '**/coverage', '**/*.o', '**/*.so', '**/*.a', 'lib/*-*', '**/*.log', "{ext,lib}/*.{bundle,so,obj,pdb,lib,def,exp}", "ext/Makefile", "{ext,lib}/**/*.{bundle,so,obj,pdb,lib,def,exp}", "ext/**/Makefile", "pkg", "*.gem", ".config"]
164
+ self.clean_pattern = ["pkg", "doc", 'build/*', '**/coverage', '**/*.o', '**/*.so', '**/*.a', '**/*.log', "{ext,lib}/*.{bundle,so,obj,pdb,lib,def,exp}", "ext/Makefile", "{ext,lib}/**/*.{bundle,so,obj,pdb,lib,def,exp}", "ext/**/Makefile", "pkg", "*.gem", ".config"]
169
165
  self.test_pattern = File.exist?("test/test_all.rb") ? "test/test_all.rb" : ['test/**/test_*.rb', 'test/**/*_test.rb']
170
166
  self.ignore_pattern = /^(pkg|doc)|\.svn|CVS|\.bzr|\.DS|\.git/
171
167
 
@@ -185,7 +181,8 @@ class Echoe
185
181
  self.install_message = nil
186
182
  self.executable_pattern = /^bin\//
187
183
  self.has_rdoc = true
188
- self.use_sudo = RUBY_PLATFORM !~ /mswin32|cygwin/
184
+ self.use_sudo = !Platform.windows?
185
+ self.gem_bin = "gem#{Platform.suffix}"
189
186
  self.rcov_options = []
190
187
  self.rdoc_pattern = /^(lib|bin|tasks|ext)|^README|^CHANGELOG|^TODO|^LICENSE|^COPYING$/
191
188
 
@@ -198,7 +195,7 @@ class Echoe
198
195
  self.rdoc_options += ['--main', readme] if readme
199
196
 
200
197
  self.runtime_dependencies = []
201
- self.development_dependencies = ["echoe"]
198
+ self.development_dependencies = [] # These appear to not work at all
202
199
  self.manifest_name = "Manifest"
203
200
  self.extension_pattern = ["ext/**/extconf.rb", "ext/extconf.rb"]
204
201
  self.private_key = ENV['GEM_PRIVATE_KEY']
@@ -381,6 +378,13 @@ class Echoe
381
378
  pkg.need_tar_gz = @need_tar_gz
382
379
  pkg.need_zip = @need_zip
383
380
  end
381
+
382
+ desc "Display Echoe's knowledge of your system"
383
+ task :details do
384
+ (self.instance_variables.sort - ['@spec']).each do |var|
385
+ puts "#{var}: #{instance_variable_get(var).inspect}"
386
+ end
387
+ end
384
388
 
385
389
  task :build_gemspec do
386
390
  # Construct the gemspec file, if needed.
@@ -428,19 +432,19 @@ class Echoe
428
432
 
429
433
  desc 'Install the gem'
430
434
  task :install => [:clean, :package, :uninstall] do
431
- system "#{'sudo' if use_sudo} gem install pkg/*.gem -P MediumSecurity --no-update-sources"
435
+ system "#{'sudo' if use_sudo} #{gem_bin} install pkg/*.gem -P MediumSecurity --no-update-sources"
432
436
  end
433
437
 
434
438
  namespace :install do
435
439
  desc 'Install the gem including development dependencies'
436
440
  task :development => [:clean, :package, :uninstall] do
437
- system "#{'sudo' if use_sudo} gem install pkg/*.gem -P MediumSecurity --no-update-sources --development"
441
+ system "#{'sudo' if use_sudo} #{gem_bin} install pkg/*.gem -P MediumSecurity --no-update-sources --development"
438
442
  end
439
443
  end
440
444
 
441
445
  desc 'Uninstall the gem'
442
446
  task :uninstall do
443
- system "#{'sudo' if use_sudo} gem uninstall #{name} -a -I -x"
447
+ system "#{'sudo' if use_sudo} #{gem_bin} uninstall #{name} -a -I -x"
444
448
  end
445
449
 
446
450
  desc 'Package and upload the release to Rubyforge'
@@ -469,7 +473,7 @@ class Echoe
469
473
  (@need_gem ? pkg_gem : nil)].compact
470
474
 
471
475
  puts "Releasing #{name} v. #{version}"
472
- self.version = self.version.ljust(3)
476
+ self.version = self.version.to_s.ljust(3)
473
477
 
474
478
  rf.add_release project, name, version, *files
475
479
  end
@@ -491,7 +495,7 @@ class Echoe
491
495
  lib_target = nil
492
496
  Dir.chdir(ext_dir) do
493
497
  ruby File.basename(extension)
494
- system(PLATFORM =~ /win32/ ? 'nmake' : 'make')
498
+ system(RUBY_PLATFORM =~ /win32/ ? 'nmake' : 'make')
495
499
  lib_target = open('Makefile').readlines.grep(/target_prefix = /).first.split('=').last.chomp("\n").strip
496
500
  end
497
501
  Dir["#{ext_dir}/*.#{Config::CONFIG['DLEXT']}"].each do |file|
@@ -22,53 +22,15 @@ module Platform
22
22
  !@java.nil?
23
23
  end
24
24
 
25
+ def self.suffix
26
+ @suffix ||= Gem.default_exec_format[2..-1]
27
+ end
28
+
25
29
  def self.rake
26
- windows? ? 'rake.bat' : 'rake'
30
+ windows? ? "rake#{suffix}.bat" : "rake#{suffix}"
27
31
  end
28
32
 
29
33
  def self.make
30
34
  msvc? ? 'nmake' : 'make'
31
35
  end
32
36
  end
33
-
34
- ### Overrides for cross packaging, which Rubygems 0.9.5 doesn't do
35
-
36
- module Gem
37
- class Specification
38
-
39
- alias :old_validate :validate
40
-
41
- PLATFORM_CROSS_TARGETS = ["aix", "cygwin", "darwin", "freebsd", "hpux", "java", "linux", "mingw", "mswin", "netbsdelf", "openbsd", "solaris", "_platform", "jruby"]
42
-
43
- def validate
44
- begin
45
- old_validate
46
- rescue Gem::InvalidSpecificationException
47
- if platform =~ /(#{PLATFORM_CROSS_TARGETS.join("|")})/i
48
- true
49
- else
50
- raise Gem::InvalidSpecificationException, "Unknown package target \"#{platform}\"."
51
- end
52
- end
53
- end
54
-
55
- end
56
- end
57
-
58
- ### Some runtime Echoe hacks
59
-
60
- $platform = "ruby" # or Gem::PLATFORM::RUBY maybe
61
-
62
- def reset_target target #:nodoc:
63
- $platform = target
64
- Object.send(:remove_const, "RUBY_PLATFORM")
65
- Object.send(:const_set, "RUBY_PLATFORM", target)
66
- end
67
-
68
- if target = ARGV.detect do |arg|
69
- # Hack to get the platform set before the Rakefile evaluates
70
- Gem::Specification::PLATFORM_CROSS_TARGETS.include? arg
71
- end
72
- reset_target target
73
- end
74
-
@@ -0,0 +1,41 @@
1
+ ### Overrides for cross packaging, which Rubygems 0.9.5 doesn't do
2
+
3
+ module Gem
4
+ class Specification
5
+
6
+ alias :old_validate :validate
7
+
8
+ PLATFORM_CROSS_TARGETS = ["aix", "cygwin", "darwin", "freebsd", "hpux", "java", "linux", "mingw", "mswin", "netbsdelf", "openbsd", "solaris", "_platform", "jruby"]
9
+
10
+ def validate
11
+ begin
12
+ old_validate
13
+ rescue Gem::InvalidSpecificationException
14
+ if platform =~ /(#{PLATFORM_CROSS_TARGETS.join("|")})/i
15
+ true
16
+ else
17
+ raise Gem::InvalidSpecificationException, "Unknown package target \"#{platform}\"."
18
+ end
19
+ end
20
+ end
21
+
22
+ end
23
+ end
24
+
25
+ ### Some runtime Echoe hacks
26
+
27
+ $platform = "ruby" # or Gem::PLATFORM::RUBY maybe
28
+
29
+ def reset_target target #:nodoc:
30
+ $platform = target
31
+ Object.send(:remove_const, "RUBY_PLATFORM")
32
+ Object.send(:const_set, "RUBY_PLATFORM", target)
33
+ end
34
+
35
+ if target = ARGV.detect do |arg|
36
+ # Hack to get the platform set before the Rakefile evaluates
37
+ Gem::Specification::PLATFORM_CROSS_TARGETS.include? arg
38
+ end
39
+ reset_target target
40
+ end
41
+
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: echoe
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.2
4
+ version: "3.1"
5
5
  platform: ruby
6
6
  authors:
7
7
  - Evan Weaver
@@ -30,19 +30,9 @@ cert_chain:
30
30
  yZ0=
31
31
  -----END CERTIFICATE-----
32
32
 
33
- date: 2008-10-26 00:00:00 -07:00
33
+ date: 2009-02-03 00:00:00 -08:00
34
34
  default_executable:
35
35
  dependencies:
36
- - !ruby/object:Gem::Dependency
37
- name: rake
38
- type: :runtime
39
- version_requirement:
40
- version_requirements: !ruby/object:Gem::Requirement
41
- requirements:
42
- - - ">="
43
- - !ruby/object:Gem::Version
44
- version: "0"
45
- version:
46
36
  - !ruby/object:Gem::Dependency
47
37
  name: rubyforge
48
38
  type: :runtime
@@ -74,6 +64,7 @@ extra_rdoc_files:
74
64
  - lib/echoe/client.rb
75
65
  - lib/echoe/extensions.rb
76
66
  - lib/echoe/platform.rb
67
+ - lib/echoe/rubygems.rb
77
68
  - lib/echoe.rb
78
69
  - LICENSE
79
70
  - README
@@ -84,6 +75,7 @@ files:
84
75
  - lib/echoe/client.rb
85
76
  - lib/echoe/extensions.rb
86
77
  - lib/echoe/platform.rb
78
+ - lib/echoe/rubygems.rb
87
79
  - lib/echoe.rb
88
80
  - LICENSE
89
81
  - Manifest
@@ -118,7 +110,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
118
110
  requirements: []
119
111
 
120
112
  rubyforge_project: fauna
121
- rubygems_version: 1.3.0
113
+ rubygems_version: 1.3.1
122
114
  signing_key:
123
115
  specification_version: 2
124
116
  summary: A Rubygems packaging tool that provides Rake tasks for documentation, extension compiling, testing, and deployment.
metadata.gz.sig CHANGED
Binary file