geminstaller 0.4.0 → 0.4.1

Sign up to get free protection for your applications and to get access to all the features.
data/History.txt CHANGED
@@ -1,3 +1,6 @@
1
+ == 0.4.1 / 2008-04-12
2
+ * Fix bug with warnings for outdated/incompatible rubygems versions.
3
+
1
4
  == 0.4.0 / 2008-04-10
2
5
  * Fix multiplatform bug on windows where ruby platform requiring compile was selected over native mswin platform.
3
6
  * deprecate support of rubygems 0.9.5, 1.0.0, and 1.1.0.
data/Manifest.txt CHANGED
@@ -48,6 +48,7 @@ lib/geminstaller/ruby_gem.rb
48
48
  lib/geminstaller/rubygems_exit.rb
49
49
  lib/geminstaller/rubygems_extensions.rb
50
50
  lib/geminstaller/rubygems_version_checker.rb
51
+ lib/geminstaller/rubygems_version_warnings.rb
51
52
  lib/geminstaller/source_index_search_adapter.rb
52
53
  lib/geminstaller/unauthorized_dependency_prompt_error.rb
53
54
  lib/geminstaller/unexpected_prompt_error.rb
data/Rakefile CHANGED
@@ -99,7 +99,7 @@ task :publish_website => [:clean, :website] do
99
99
  end
100
100
 
101
101
  desc 'Run All Smoketests'
102
- task :smoketest => [:clean] do
102
+ task :all_smoketest => [:clean] do
103
103
  run_smoketest 'test/test_all_smoketests.rb'
104
104
  end
105
105
 
data/cruise_config.rb CHANGED
@@ -8,9 +8,7 @@ Project.configure do |project|
8
8
  rubygems_version.gsub!('-','.')
9
9
  ENV['RUBYGEMS_VERSION'] = rubygems_version
10
10
  end
11
- if project.name =~ /debug_smoketest/i # debug smoketest project
12
- project.rake_task = 'debug_smoketest'
13
- elsif project.name =~ /smoketest/i # smoketest project
14
- project.rake_task = 'smoketest'
11
+ if project.name =~ /smoketest/i # smoketest project
12
+ project.rake_task = project.name
15
13
  end
16
14
  end
@@ -5,28 +5,8 @@ require 'rubygems'
5
5
 
6
6
  # backward compability and version-checking stuff - must be required before it is used
7
7
  require File.expand_path("#{dir}/rubygems_version_checker")
8
-
9
- unless defined? ALLOW_UNSUPPORTED_RUBYGEMS_VERSION or GemInstaller::RubyGemsVersionChecker.matches?('>=0.9.5')
10
- print "\n\n----------------------------------------------------------------\n" +
11
- "WARNING: You are using RubyGems version #{Gem::RubyGemsVersion}.\n" +
12
- "You should update to RubyGems version 1.0.1 or above,\n" +
13
- "because gems created for newer RubyGems versions\n" +
14
- "might be incompatible.\n" +
15
- "To update rubygems (recommended), use 'gem update --system'.\n" +
16
- "----------------------------------------------------------------\n\n"
17
- end
18
-
19
-
20
- if !(defined? ALLOW_UNSUPPORTED_RUBYGEMS_VERSION) or
21
- GemInstaller::RubyGemsVersionChecker.matches?('=0.9.5') or
22
- GemInstaller::RubyGemsVersionChecker.matches?('=1.1.0')
23
- print "\n\n----------------------------------------------------------------\n" +
24
- "WARNING: You are using RubyGems version #{Gem::RubyGemsVersion}.\n" +
25
- "This version is known to have bugs and/or compatibility issues\n" +
26
- "with GemInstaller. Update RubyGems, or continue at your risk.\n" +
27
- "To update rubygems (recommended), use 'gem update --system'.\n" +
28
- "----------------------------------------------------------------\n\n"
29
- end
8
+ require File.expand_path("#{dir}/rubygems_version_warnings")
9
+ GemInstaller::RubyGemsVersionWarnings.print_warnings
30
10
 
31
11
  # requires for rubygems internal classes
32
12
  require 'rubygems/doc_manager'
@@ -0,0 +1,38 @@
1
+ module GemInstaller
2
+ class RubyGemsVersionWarnings
3
+ def self.outdated_warning(options = {})
4
+ return nil if allow_unsupported?
5
+ return nil if GemInstaller::RubyGemsVersionChecker.matches?('>=0.9.5', options)
6
+ return "\n\n----------------------------------------------------------------\n" +
7
+ "WARNING: You are using RubyGems version #{Gem::RubyGemsVersion}.\n" +
8
+ "You should update to RubyGems version 1.0.1 or above,\n" +
9
+ "because gems created for newer RubyGems versions\n" +
10
+ "might be incompatible.\n" +
11
+ "To update rubygems (recommended), use 'gem update --system'.\n" +
12
+ "----------------------------------------------------------------\n\n"
13
+ end
14
+
15
+ def self.incompatible_warning(options = {})
16
+ return nil if allow_unsupported?
17
+ return nil unless (
18
+ GemInstaller::RubyGemsVersionChecker.matches?('=0.9.5', options) or
19
+ GemInstaller::RubyGemsVersionChecker.matches?('=1.1.0', options)
20
+ )
21
+ return "\n\n----------------------------------------------------------------\n" +
22
+ "WARNING: You are using RubyGems version #{Gem::RubyGemsVersion}.\n" +
23
+ "This version is known to have bugs and/or compatibility issues\n" +
24
+ "with GemInstaller. Update RubyGems, or continue at your risk.\n" +
25
+ "To update rubygems (recommended), use 'gem update --system'.\n" +
26
+ "----------------------------------------------------------------\n\n"
27
+ end
28
+
29
+ def self.allow_unsupported?
30
+ defined? ALLOW_UNSUPPORTED_RUBYGEMS_VERSION
31
+ end
32
+
33
+ def self.print_warnings(options = {})
34
+ warnings = [self.outdated_warning, self.incompatible_warning].compact!
35
+ warnings.each {|warning| print warning}
36
+ end
37
+ end
38
+ end
data/lib/geminstaller.rb CHANGED
@@ -34,7 +34,7 @@ module GemInstaller
34
34
  end
35
35
 
36
36
  def self.version
37
- "0.4.0"
37
+ "0.4.1"
38
38
  end
39
39
 
40
40
  def self.create_application(args = [], registry = nil)
@@ -19,7 +19,7 @@ GemInstaller provides automated management of RubyGems. It uses a simple YAML c
19
19
 
20
20
  GemInstaller can be used from the command line, or embedded to run automatically on startup for a Rails app or any other Ruby program.
21
21
 
22
- It has been tested on all major platforms (mac, linux, windows), and has an "extensive suite of tests":code/coverage/index.html which are "automatically run by Continuous Integration":http://ci.thewoolleyweb.com against recent versions of RubyGems (0.8.x through 1.0.1)..
22
+ It has been tested on all major platforms (mac, linux, windows), and has an "extensive suite of tests":code/coverage/index.html which are "automatically run by Continuous Integration":http://ci.thewoolleyweb.com against recent versions of RubyGems (> 1.0.1 releases and trunk)..
23
23
 
24
24
  h2. How do I get it?
25
25
 
@@ -35,29 +35,27 @@ GemInstaller was created by "Chad Woolley":http://www.thewoolleyweb.com.
35
35
 
36
36
  h2(#news). News
37
37
 
38
- Version 0.4.0 of GemInstaller is released. This is tested and working against RubyGems 1.1.1.
38
+ Version 0.4.0 of GemInstaller is released. This is tested and working against RubyGems 1.1.1. Version 1.1.0 of RubyGems had some problems with GemInstaller, and is not supported.
39
39
 
40
40
  h2(#known_issues). Known Issues
41
41
 
42
- Currently, the only _major_ known issue is related to auto-installing the Rails or Mongrel gems via boot.rb or config/preinitializer.rb during startup of Mongrel or Webrick. This is because the old version is already on the load path before GemInstaller installs the new version. The simple workaround is to just restart Rails anytime GemInstaller auto-installs a Rails/Mongrel gem upgrade during app startup. For Rails and other deployable apps, you can also "run GemInstaller from Capistrano":documentation/tutorials.html#running_geminstaller_from_capistrano to avoid this problem in demo/production environments.
43
-
44
- There's also some leakage of gem doc warning messages even if you turn down --rubygems-output, but these can be ignored (these same messages can show up when installing gems manually).
45
-
46
- I bet there's another bug or twoo, so please "report them if you find them":http://rubyforge.org/tracker/?group_id=1902!
42
+ Please "report them if you find them":http://rubyforge.org/tracker/?group_id=1902!
47
43
 
48
44
  h2(#history). History
49
45
 
46
+ * 0.4.1
47
+ ** Fix bug with warnings for outdated/incompatible rubygems versions.
50
48
  * 0.4.0
51
49
  ** Fix multiplatform bug on windows where ruby platform requiring compile was selected over native mswin platform.
52
50
  ** deprecate support of rubygems 0.9.5, 1.0.0, and 1.1.0.
53
51
  ** Change handling of platforms on rubygems on Rubygems > 0.9.5, let RubyGems handle default.
54
- ** rename GemInstaller.run method to GemInstaller.install, keep run as an alias for install
55
- ** add‍warning‍if‍a‍gem‍version‍error‍is‍detected,‍with instructions‍to‍run‍geminstaller‍to‍install‍the‍missing‍version
56
- ** Rubygems‍1.x‍compatibility
57
- ** better internal support for uninstall options
58
- ** use‍new,‍correct‍x86-mswin32‍format‍for‍mswin32‍platform‍gems
59
- ** update‍warning‍message‍for‍older‍rubygems‍versions
60
- ** made tests run on Mac OS X Leopard w/RubyGems 1.0.1
52
+ ** Rename GemInstaller.run method to GemInstaller.install, keep 'run' as an alias for 'install'
53
+ ** Include instructions ‍to‍ run‍ geminstaller‍ to‍ install‍ the‍ missing‍ version when‍ gem‍ version‍ error‍ is‍ detected.
54
+ ** Rubygems‍ 1.x ‍compatibility.
55
+ ** Better internal support for uninstall options.
56
+ ** Use new,‍ correct‍ x86-mswin32‍ format‍ for‍ mswin32‍ platform‍ gems.
57
+ ** Update warning‍ message‍ for‍ older‍ rubygems‍ versions.
58
+ ** Made tests run on Mac OS X Leopard w/RubyGems 1.0.1.
61
59
  * 0.3.0
62
60
  ** Changes to work with RubyGems >= 0.9.5 and take advantage of new platform and auto-install features. See "notes on RubyGems version compatibility":code/index.html#rubygems_compatibility
63
61
  ** On Linux/Mac, you can now specify a RUBYGEMS_VERSION environment var to test against a specific version of RubyGems.
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: geminstaller
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.0
4
+ version: 0.4.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Chad Woolley
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2008-04-10 00:00:00 -07:00
12
+ date: 2008-04-12 00:00:00 -07:00
13
13
  default_executable:
14
14
  dependencies: []
15
15
 
@@ -76,6 +76,7 @@ files:
76
76
  - lib/geminstaller/rubygems_exit.rb
77
77
  - lib/geminstaller/rubygems_extensions.rb
78
78
  - lib/geminstaller/rubygems_version_checker.rb
79
+ - lib/geminstaller/rubygems_version_warnings.rb
79
80
  - lib/geminstaller/source_index_search_adapter.rb
80
81
  - lib/geminstaller/unauthorized_dependency_prompt_error.rb
81
82
  - lib/geminstaller/unexpected_prompt_error.rb
@@ -123,7 +124,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
123
124
  requirements: []
124
125
 
125
126
  rubyforge_project: geminstaller
126
- rubygems_version: 1.1.0
127
+ rubygems_version: 1.1.1
127
128
  signing_key:
128
129
  specification_version: 2
129
130
  summary: GemInstaller provides automated management of RubyGems.