echoe 3.0.2 → 3.1

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.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