gemrage 0.3.2 → 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (165) hide show
  1. data/Gemfile +1 -0
  2. data/Gemfile.lock +6 -0
  3. data/VERSION +1 -1
  4. data/gemrage.gemspec +160 -2
  5. data/lib/rubygems/commands/scan_command.rb +26 -7
  6. data/spec/spec_helper.rb +2 -1
  7. data/vendor/ruby/1.8/bin/launchy +19 -0
  8. data/vendor/ruby/1.8/bin/rake +19 -0
  9. data/vendor/ruby/1.8/cache/configuration-1.1.0.gem +0 -0
  10. data/vendor/ruby/1.8/cache/launchy-0.3.7.gem +0 -0
  11. data/vendor/ruby/1.8/cache/rake-0.8.7.gem +0 -0
  12. data/vendor/ruby/1.8/gems/configuration-1.1.0/README +197 -0
  13. data/vendor/ruby/1.8/gems/configuration-1.1.0/README.erb +69 -0
  14. data/vendor/ruby/1.8/gems/configuration-1.1.0/Rakefile +241 -0
  15. data/vendor/ruby/1.8/gems/configuration-1.1.0/config/a.rb +5 -0
  16. data/vendor/ruby/1.8/gems/configuration-1.1.0/config/b.rb +19 -0
  17. data/vendor/ruby/1.8/gems/configuration-1.1.0/config/c.rb +8 -0
  18. data/vendor/ruby/1.8/gems/configuration-1.1.0/config/d.rb +5 -0
  19. data/vendor/ruby/1.8/gems/configuration-1.1.0/config/e.rb +13 -0
  20. data/vendor/ruby/1.8/gems/configuration-1.1.0/configuration.gemspec +28 -0
  21. data/vendor/ruby/1.8/gems/configuration-1.1.0/lib/configuration.rb +199 -0
  22. data/vendor/ruby/1.8/gems/configuration-1.1.0/samples/a.rb +11 -0
  23. data/vendor/ruby/1.8/gems/configuration-1.1.0/samples/b.rb +11 -0
  24. data/vendor/ruby/1.8/gems/configuration-1.1.0/samples/c.rb +11 -0
  25. data/vendor/ruby/1.8/gems/configuration-1.1.0/samples/d.rb +14 -0
  26. data/vendor/ruby/1.8/gems/configuration-1.1.0/samples/e.rb +12 -0
  27. data/vendor/ruby/1.8/gems/launchy-0.3.7/HISTORY +71 -0
  28. data/vendor/ruby/1.8/gems/launchy-0.3.7/LICENSE +16 -0
  29. data/vendor/ruby/1.8/gems/launchy-0.3.7/README +53 -0
  30. data/vendor/ruby/1.8/gems/launchy-0.3.7/Rakefile +62 -0
  31. data/vendor/ruby/1.8/gems/launchy-0.3.7/bin/launchy +12 -0
  32. data/vendor/ruby/1.8/gems/launchy-0.3.7/gemspec.rb +41 -0
  33. data/vendor/ruby/1.8/gems/launchy-0.3.7/lib/launchy/application.rb +178 -0
  34. data/vendor/ruby/1.8/gems/launchy-0.3.7/lib/launchy/browser.rb +98 -0
  35. data/vendor/ruby/1.8/gems/launchy-0.3.7/lib/launchy/command_line.rb +48 -0
  36. data/vendor/ruby/1.8/gems/launchy-0.3.7/lib/launchy/paths.rb +53 -0
  37. data/vendor/ruby/1.8/gems/launchy-0.3.7/lib/launchy/version.rb +17 -0
  38. data/vendor/ruby/1.8/gems/launchy-0.3.7/lib/launchy.rb +53 -0
  39. data/vendor/ruby/1.8/gems/launchy-0.3.7/spec/application_spec.rb +62 -0
  40. data/vendor/ruby/1.8/gems/launchy-0.3.7/spec/browser_spec.rb +58 -0
  41. data/vendor/ruby/1.8/gems/launchy-0.3.7/spec/launchy_spec.rb +18 -0
  42. data/vendor/ruby/1.8/gems/launchy-0.3.7/spec/paths_spec.rb +15 -0
  43. data/vendor/ruby/1.8/gems/launchy-0.3.7/spec/spec_helper.rb +5 -0
  44. data/vendor/ruby/1.8/gems/launchy-0.3.7/spec/tattle-host-os.yml +427 -0
  45. data/vendor/ruby/1.8/gems/launchy-0.3.7/spec/version_spec.rb +11 -0
  46. data/vendor/ruby/1.8/gems/launchy-0.3.7/tasks/announce.rake +39 -0
  47. data/vendor/ruby/1.8/gems/launchy-0.3.7/tasks/config.rb +107 -0
  48. data/vendor/ruby/1.8/gems/launchy-0.3.7/tasks/distribution.rake +46 -0
  49. data/vendor/ruby/1.8/gems/launchy-0.3.7/tasks/documentation.rake +32 -0
  50. data/vendor/ruby/1.8/gems/launchy-0.3.7/tasks/rspec.rake +37 -0
  51. data/vendor/ruby/1.8/gems/launchy-0.3.7/tasks/rubyforge.rake +52 -0
  52. data/vendor/ruby/1.8/gems/launchy-0.3.7/tasks/utils.rb +80 -0
  53. data/vendor/ruby/1.8/gems/rake-0.8.7/CHANGES +440 -0
  54. data/vendor/ruby/1.8/gems/rake-0.8.7/MIT-LICENSE +21 -0
  55. data/vendor/ruby/1.8/gems/rake-0.8.7/README +196 -0
  56. data/vendor/ruby/1.8/gems/rake-0.8.7/Rakefile +430 -0
  57. data/vendor/ruby/1.8/gems/rake-0.8.7/TODO +20 -0
  58. data/vendor/ruby/1.8/gems/rake-0.8.7/bin/rake +31 -0
  59. data/vendor/ruby/1.8/gems/rake-0.8.7/doc/command_line_usage.rdoc +102 -0
  60. data/vendor/ruby/1.8/gems/rake-0.8.7/doc/example/Rakefile1 +38 -0
  61. data/vendor/ruby/1.8/gems/rake-0.8.7/doc/example/Rakefile2 +35 -0
  62. data/vendor/ruby/1.8/gems/rake-0.8.7/doc/example/a.c +6 -0
  63. data/vendor/ruby/1.8/gems/rake-0.8.7/doc/example/b.c +6 -0
  64. data/vendor/ruby/1.8/gems/rake-0.8.7/doc/example/main.c +11 -0
  65. data/vendor/ruby/1.8/gems/rake-0.8.7/doc/glossary.rdoc +51 -0
  66. data/vendor/ruby/1.8/gems/rake-0.8.7/doc/jamis.rb +591 -0
  67. data/vendor/ruby/1.8/gems/rake-0.8.7/doc/proto_rake.rdoc +127 -0
  68. data/vendor/ruby/1.8/gems/rake-0.8.7/doc/rake.1.gz +0 -0
  69. data/vendor/ruby/1.8/gems/rake-0.8.7/doc/rakefile.rdoc +534 -0
  70. data/vendor/ruby/1.8/gems/rake-0.8.7/doc/rational.rdoc +151 -0
  71. data/vendor/ruby/1.8/gems/rake-0.8.7/doc/release_notes/rake-0.4.14.rdoc +23 -0
  72. data/vendor/ruby/1.8/gems/rake-0.8.7/doc/release_notes/rake-0.4.15.rdoc +35 -0
  73. data/vendor/ruby/1.8/gems/rake-0.8.7/doc/release_notes/rake-0.5.0.rdoc +53 -0
  74. data/vendor/ruby/1.8/gems/rake-0.8.7/doc/release_notes/rake-0.5.3.rdoc +78 -0
  75. data/vendor/ruby/1.8/gems/rake-0.8.7/doc/release_notes/rake-0.5.4.rdoc +46 -0
  76. data/vendor/ruby/1.8/gems/rake-0.8.7/doc/release_notes/rake-0.6.0.rdoc +141 -0
  77. data/vendor/ruby/1.8/gems/rake-0.8.7/doc/release_notes/rake-0.7.0.rdoc +119 -0
  78. data/vendor/ruby/1.8/gems/rake-0.8.7/doc/release_notes/rake-0.7.1.rdoc +59 -0
  79. data/vendor/ruby/1.8/gems/rake-0.8.7/doc/release_notes/rake-0.7.2.rdoc +121 -0
  80. data/vendor/ruby/1.8/gems/rake-0.8.7/doc/release_notes/rake-0.7.3.rdoc +47 -0
  81. data/vendor/ruby/1.8/gems/rake-0.8.7/doc/release_notes/rake-0.8.0.rdoc +114 -0
  82. data/vendor/ruby/1.8/gems/rake-0.8.7/doc/release_notes/rake-0.8.2.rdoc +165 -0
  83. data/vendor/ruby/1.8/gems/rake-0.8.7/doc/release_notes/rake-0.8.3.rdoc +112 -0
  84. data/vendor/ruby/1.8/gems/rake-0.8.7/doc/release_notes/rake-0.8.4.rdoc +147 -0
  85. data/vendor/ruby/1.8/gems/rake-0.8.7/doc/release_notes/rake-0.8.5.rdoc +53 -0
  86. data/vendor/ruby/1.8/gems/rake-0.8.7/doc/release_notes/rake-0.8.6.rdoc +55 -0
  87. data/vendor/ruby/1.8/gems/rake-0.8.7/doc/release_notes/rake-0.8.7.rdoc +55 -0
  88. data/vendor/ruby/1.8/gems/rake-0.8.7/install.rb +88 -0
  89. data/vendor/ruby/1.8/gems/rake-0.8.7/lib/rake/alt_system.rb +108 -0
  90. data/vendor/ruby/1.8/gems/rake-0.8.7/lib/rake/classic_namespace.rb +8 -0
  91. data/vendor/ruby/1.8/gems/rake-0.8.7/lib/rake/clean.rb +33 -0
  92. data/vendor/ruby/1.8/gems/rake-0.8.7/lib/rake/contrib/compositepublisher.rb +24 -0
  93. data/vendor/ruby/1.8/gems/rake-0.8.7/lib/rake/contrib/ftptools.rb +153 -0
  94. data/vendor/ruby/1.8/gems/rake-0.8.7/lib/rake/contrib/publisher.rb +75 -0
  95. data/vendor/ruby/1.8/gems/rake-0.8.7/lib/rake/contrib/rubyforgepublisher.rb +18 -0
  96. data/vendor/ruby/1.8/gems/rake-0.8.7/lib/rake/contrib/sshpublisher.rb +47 -0
  97. data/vendor/ruby/1.8/gems/rake-0.8.7/lib/rake/contrib/sys.rb +209 -0
  98. data/vendor/ruby/1.8/gems/rake-0.8.7/lib/rake/gempackagetask.rb +97 -0
  99. data/vendor/ruby/1.8/gems/rake-0.8.7/lib/rake/loaders/makefile.rb +42 -0
  100. data/vendor/ruby/1.8/gems/rake-0.8.7/lib/rake/packagetask.rb +184 -0
  101. data/vendor/ruby/1.8/gems/rake-0.8.7/lib/rake/rake_test_loader.rb +5 -0
  102. data/vendor/ruby/1.8/gems/rake-0.8.7/lib/rake/rdoctask.rb +209 -0
  103. data/vendor/ruby/1.8/gems/rake-0.8.7/lib/rake/ruby182_test_unit_fix.rb +23 -0
  104. data/vendor/ruby/1.8/gems/rake-0.8.7/lib/rake/runtest.rb +23 -0
  105. data/vendor/ruby/1.8/gems/rake-0.8.7/lib/rake/tasklib.rb +23 -0
  106. data/vendor/ruby/1.8/gems/rake-0.8.7/lib/rake/testtask.rb +161 -0
  107. data/vendor/ruby/1.8/gems/rake-0.8.7/lib/rake/win32.rb +55 -0
  108. data/vendor/ruby/1.8/gems/rake-0.8.7/lib/rake.rb +2506 -0
  109. data/vendor/ruby/1.8/gems/rake-0.8.7/test/capture_stdout.rb +26 -0
  110. data/vendor/ruby/1.8/gems/rake-0.8.7/test/check_expansion.rb +5 -0
  111. data/vendor/ruby/1.8/gems/rake-0.8.7/test/check_no_expansion.rb +5 -0
  112. data/vendor/ruby/1.8/gems/rake-0.8.7/test/contrib/test_sys.rb +47 -0
  113. data/vendor/ruby/1.8/gems/rake-0.8.7/test/data/chains/Rakefile +15 -0
  114. data/vendor/ruby/1.8/gems/rake-0.8.7/test/data/default/Rakefile +19 -0
  115. data/vendor/ruby/1.8/gems/rake-0.8.7/test/data/dryrun/Rakefile +22 -0
  116. data/vendor/ruby/1.8/gems/rake-0.8.7/test/data/file_creation_task/Rakefile +33 -0
  117. data/vendor/ruby/1.8/gems/rake-0.8.7/test/data/imports/Rakefile +19 -0
  118. data/vendor/ruby/1.8/gems/rake-0.8.7/test/data/imports/deps.mf +1 -0
  119. data/vendor/ruby/1.8/gems/rake-0.8.7/test/data/multidesc/Rakefile +17 -0
  120. data/vendor/ruby/1.8/gems/rake-0.8.7/test/data/namespace/Rakefile +57 -0
  121. data/vendor/ruby/1.8/gems/rake-0.8.7/test/data/rakelib/test1.rb +3 -0
  122. data/vendor/ruby/1.8/gems/rake-0.8.7/test/data/rbext/rakefile.rb +3 -0
  123. data/vendor/ruby/1.8/gems/rake-0.8.7/test/data/sample.mf +14 -0
  124. data/vendor/ruby/1.8/gems/rake-0.8.7/test/data/statusreturn/Rakefile +8 -0
  125. data/vendor/ruby/1.8/gems/rake-0.8.7/test/data/unittest/Rakefile +1 -0
  126. data/vendor/ruby/1.8/gems/rake-0.8.7/test/filecreation.rb +32 -0
  127. data/vendor/ruby/1.8/gems/rake-0.8.7/test/functional.rb +15 -0
  128. data/vendor/ruby/1.8/gems/rake-0.8.7/test/in_environment.rb +30 -0
  129. data/vendor/ruby/1.8/gems/rake-0.8.7/test/rake_test_setup.rb +24 -0
  130. data/vendor/ruby/1.8/gems/rake-0.8.7/test/reqfile.rb +3 -0
  131. data/vendor/ruby/1.8/gems/rake-0.8.7/test/reqfile2.rb +3 -0
  132. data/vendor/ruby/1.8/gems/rake-0.8.7/test/session_functional.rb +339 -0
  133. data/vendor/ruby/1.8/gems/rake-0.8.7/test/shellcommand.rb +3 -0
  134. data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_application.rb +675 -0
  135. data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_clean.rb +14 -0
  136. data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_definitions.rb +85 -0
  137. data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_earlytime.rb +35 -0
  138. data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_extension.rb +63 -0
  139. data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_file_creation_task.rb +62 -0
  140. data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_file_task.rb +143 -0
  141. data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_filelist.rb +623 -0
  142. data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_fileutils.rb +251 -0
  143. data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_ftp.rb +59 -0
  144. data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_invocation_chain.rb +81 -0
  145. data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_makefile_loader.rb +26 -0
  146. data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_multitask.rb +45 -0
  147. data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_namespace.rb +55 -0
  148. data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_package_task.rb +118 -0
  149. data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_pathmap.rb +210 -0
  150. data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_pseudo_status.rb +26 -0
  151. data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_rake.rb +41 -0
  152. data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_rdoc_task.rb +88 -0
  153. data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_require.rb +35 -0
  154. data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_rules.rb +349 -0
  155. data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_task_arguments.rb +89 -0
  156. data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_task_manager.rb +173 -0
  157. data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_tasklib.rb +12 -0
  158. data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_tasks.rb +374 -0
  159. data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_test_task.rb +77 -0
  160. data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_top_level_functions.rb +86 -0
  161. data/vendor/ruby/1.8/gems/rake-0.8.7/test/test_win32.rb +72 -0
  162. data/vendor/ruby/1.8/specifications/configuration-1.1.0.gemspec +27 -0
  163. data/vendor/ruby/1.8/specifications/launchy-0.3.7.gemspec +44 -0
  164. data/vendor/ruby/1.8/specifications/rake-0.8.7.gemspec +32 -0
  165. metadata +163 -5
@@ -0,0 +1,46 @@
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(Launchy::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/#{Launchy::GEM_SPEC.full_name}.gem"
22
+ end
23
+
24
+ desc "Uninstall gem"
25
+ task :uninstall do
26
+ sh "sudo gem uninstall -x #{Launchy::GEM_SPEC.name}"
27
+ end
28
+
29
+ desc "dump gemspec"
30
+ task :gemspec do
31
+ puts Launchy::GEM_SPEC.to_ruby
32
+ end
33
+
34
+ desc "reinstall gem"
35
+ task :reinstall => [:uninstall, :repackage, :install]
36
+
37
+ desc "distribute copiously"
38
+ task :copious => :package do
39
+ gems = [ "#{Launchy::GEM_SPEC.full_name}.gem" ]
40
+ Rake::SshFilePublisher.new('jeremy@copiousfreetime.org',
41
+ '/var/www/vhosts/www.copiousfreetime.org/htdocs/gems/gems',
42
+ 'pkg', *gems).upload
43
+ sh "ssh jeremy@copiousfreetime.org rake -f /var/www/vhosts/www.copiousfreetime.org/htdocs/gems/Rakefile"
44
+ end
45
+ end
46
+ end
@@ -0,0 +1,32 @@
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
+
@@ -0,0 +1,37 @@
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( :rcov ) do |r|
15
+ r.ruby_opts = spec_config.ruby_opts
16
+ r.libs = [ Launchy::Paths.lib_path,
17
+ Launchy::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
+ Spec::Rake::SpecTask.new( :spec ) do |r|
29
+ r.ruby_opts = spec_config.ruby_opts
30
+ r.libs = [ Launchy::Paths.lib_path,
31
+ Launchy::Paths.root_dir ]
32
+ r.spec_files = spec_config.files
33
+ r.spec_opts = spec_config.options
34
+ end
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,52 @@
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 ] 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)[Launchy::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?(Launchy::GEM_SPEC.name) and releases[Launchy::GEM_SPEC.name][Launchy::VERSION] then
29
+ abort("Release #{Launchy::VERSION} already exists! Unable to release.")
30
+ end
31
+
32
+ puts "Uploading to rubyforge..."
33
+ files = FileList[File.join("pkg","#{Launchy::GEM_SPEC.name}-#{Launchy::VERSION}*.*")].to_a
34
+ rubyforge.login
35
+ rubyforge.add_release(Launchy::GEM_SPEC.rubyforge_project, Launchy::GEM_SPEC.name, Launchy::VERSION, *files)
36
+ puts "done."
37
+ end
38
+ end
39
+
40
+ namespace :announce do
41
+ desc "Post news of #{proj_conf.name} to #{rf_conf.project} on rubyforge"
42
+ task :rubyforge do
43
+ info = Utils.announcement
44
+ rubyforge = RubyForge.new
45
+ rubyforge.configure
46
+ rubyforge.login
47
+ rubyforge.post_news(rf_conf.project, info[:subject], "#{info[:title]}\n\n#{info[:urls]}\n\n#{info[:release_notes]}")
48
+ puts "Posted to rubyforge"
49
+ end
50
+
51
+ end
52
+ end
@@ -0,0 +1,80 @@
1
+ require 'launchy/version'
2
+
3
+ #-------------------------------------------------------------------------------
4
+ # Additions to the Configuration class that are useful
5
+ #-------------------------------------------------------------------------------
6
+ class Configuration
7
+ class << self
8
+ def exist?( name )
9
+ Configuration::Table.has_key?( name )
10
+ end
11
+
12
+ def for_if_exist?( name )
13
+ if self.exist?( name ) then
14
+ self.for( name )
15
+ end
16
+ end
17
+ end
18
+ end
19
+
20
+ #-------------------------------------------------------------------------------
21
+ # some useful utilitiy methods for the tasks
22
+ #-------------------------------------------------------------------------------
23
+ module Utils
24
+ class << self
25
+
26
+ # Try to load the given _library_ using the built-in require, but do not
27
+ # raise a LoadError if unsuccessful. Returns +true+ if the _library_ was
28
+ # successfully loaded; returns +false+ otherwise.
29
+ #
30
+ def try_require( lib )
31
+ require lib
32
+ true
33
+ rescue LoadError
34
+ false
35
+ end
36
+
37
+ # partition an rdoc file into sections, and return the text of the section
38
+ # given.
39
+ def section_of(file, section_name)
40
+ File.read(file).split(/^(?==)/).each do |section|
41
+ lines = section.split("\n")
42
+ return lines[1..-1].join("\n").strip if lines.first =~ /#{section_name}/i
43
+ end
44
+ nil
45
+ end
46
+
47
+ # Get an array of all the changes in the application for a particular
48
+ # release. This is done by looking in the history file and grabbing the
49
+ # information for the most recent release. The history file is assumed to
50
+ # be in RDoc format and version release are 2nd tier sections separated by
51
+ # '== Version X.Y.Z'
52
+ #
53
+ # returns:: A hash of notes keyed by version number
54
+ #
55
+ def release_notes_from(history_file)
56
+ releases = {}
57
+ File.read(history_file).split(/^(?=== Version)/).each do |section|
58
+ lines = section.split("\n")
59
+ md = %r{Version ((\w+\.)+\w+)}.match(lines.first)
60
+ next unless md
61
+ releases[md[1]] = lines[1..-1].join("\n").strip
62
+ end
63
+ return releases
64
+ end
65
+
66
+ # return a hash of useful information for the latest release
67
+ # urls, subject, title, description and latest release notes
68
+ #
69
+ def announcement
70
+ cfg = Configuration.for("project")
71
+ {
72
+ :subject => "#{cfg.name} #{Launchy::VERSION} Released",
73
+ :title => "#{cfg.name} version #{Launchy::VERSION} has been released.",
74
+ :urls => "#{cfg.homepage}",
75
+ :description => "#{cfg.description.rstrip}",
76
+ :release_notes => Utils.release_notes_from(cfg.history)[Launchy::VERSION].rstrip
77
+ }
78
+ end
79
+ end
80
+ end # << self
@@ -0,0 +1,440 @@
1
+
2
+ = Rake Changelog
3
+
4
+ == Version 0.8.7
5
+
6
+ * Fixed EXEEXT for JRuby on windows.
7
+
8
+ == Version 0.8.6
9
+
10
+ * Minor fixes to the RDoc generation (removed dependency on darkfish
11
+ and removed inline source option).
12
+
13
+ == Version 0.8.5
14
+
15
+ * Better support for the system command on Windows.
16
+
17
+ == Version 0.8.4
18
+
19
+ * Preserve case when locating rakefiles (patch from James
20
+ M. Lawrence/quix)
21
+
22
+ * Better support for windows paths in the test task (patch from Simon
23
+ Chiang/bahuvrihi)
24
+
25
+ * Windows system dir search order is now: HOME, HOMEDRIVE + HOMEPATH,
26
+ APPDATA, USERPROFILE (patch from Luis Lavena)
27
+
28
+ * MingGW is now recognized as a windows platform. (patch from Luis
29
+ Lavena)
30
+
31
+ * Numerous fixes to the windows test suite (patch from Luis Lavena).
32
+
33
+ * Improved Rakefile case insensitivity testing (patch from Luis
34
+ Lavena).
35
+
36
+ * Fixed stray ARGV option problem that was interfering with
37
+ Test::Unit::Runner.
38
+
39
+ * Fixed default verbose mode (was accidently changed to false).
40
+
41
+ * Removed reference to manage_gem to fix the warning produced by the
42
+ gem package task.
43
+
44
+ == Version 0.8.3
45
+
46
+ * Enhanced the system directory detection in windows. We now check
47
+ HOMEDRIVE/HOMEPATH and USERPROFILE if APPDATA isn't found. (Patch
48
+ supplied by James Tucker). Rake no long aborts if it can't find the
49
+ directory.
50
+
51
+ * Added fix to handle ruby installations in directories with spaces in
52
+ their name.
53
+
54
+ == Version 0.8.2
55
+
56
+ * Fixed bug in package task so that it will include the subdir
57
+ directory in the package for testing. (Bug found by Adam Majer)
58
+
59
+ * Added ENV var to rakefile to prevent OS X from including extended
60
+ attribute junk in a tar file. (Bug found by Adam Majer)
61
+
62
+ * Fixed filename dependency order bug in test_inspect_pending and
63
+ test_to_s_pending. (Bug found by Adam Majer)
64
+
65
+ * Fixed check for file utils options to make them immune to the
66
+ symbol/string differences. (Patch supplied by Edwin Pratomo)
67
+
68
+ * Fixed bug with rules involving multiple source (Patch supplied by
69
+ Emanuel Inderm�hle)
70
+
71
+ * Switched from getoptlong to optparse (patches supplied by Edwin
72
+ Pratomo)
73
+
74
+ * The -T option will now attempt to dynamically sense the size of the
75
+ terminal. RAKE_COLUMNS will override any dynamic sensing.
76
+
77
+ * FileList#clone and FileList#dup have better sematics w.r.t. taint
78
+ and freeze.
79
+
80
+ * Added ability clear prerequisites, and/or actions from an existing
81
+ task.
82
+
83
+ * Added the ability to reenable a task to be invoked a second time.
84
+
85
+ * Changed RDoc test task to have no default template. This makes it
86
+ easier for the tempate to pick up the template from the environment.
87
+
88
+ * Changed from using Mutex to Monitor. Evidently Mutex causes thread
89
+ join errors when Ruby is compiled with -disable-pthreads. (Patch
90
+ supplied by Ittay Dror)
91
+
92
+ * Fixed bug in makefile parser that had problems with extra spaces in
93
+ file task names. (Patch supplied by Ittay Dror)
94
+
95
+ * Added a performance patch for reading large makefile dependency
96
+ files. (Patch supplied by Ittay Dror)
97
+
98
+ * Default values for task arguments can easily be specified with the
99
+ :with_defaults method. (Idea for default argument merging supplied
100
+ by (Adam Q. Salter)
101
+
102
+ * The -T output will only self-truncate if the output is a tty.
103
+ However, if RAKE_COLUMNS is explicitly set, it will be honored in
104
+ any case. (Patch provided by Gavin Stark).
105
+
106
+ * Numerous fixes for running under windows. A big thanks to Bheeshmar
107
+ Redheendran for spending a good part of the afternoon at the
108
+ Lonestar Ruby Conference to help me work out these issues.
109
+
110
+ == Version 0.8.1
111
+
112
+ * Removed requires on parsedate.rb (in Ftptools)
113
+ * Removed ftools from rake.rb. Made it options in sys.rb
114
+
115
+ == Version 0.8.0
116
+
117
+ * Added task parameters (e.g. "rake build[version7]")
118
+ * Made task parameters passable to prerequisites.
119
+ * Comments are limited to 80 columns or so (suggested by Jamis Buck).
120
+ * Added -D to display full comments (suggested by Jamis Buck).
121
+ * The rake program will set the status value used in any explicit
122
+ exit(n) calls. (patch provided by Stephen Touset)
123
+ * Fixed error in functional tests that were not including session (and
124
+ silently skipping the functionl tests.
125
+ * Removed --usage and make -h the same as -H.
126
+ * Make a prettier inspect for tasks.
127
+
128
+ == Version 0.7.3
129
+
130
+ * Added existing and existing! methods to FileList
131
+ * FileLists now claim to be Arrays (via is_a?) to get better support
132
+ from the FileUtil module.
133
+ * Added init and top_level for custom rake applications.
134
+
135
+ == Version 0.7.2
136
+
137
+ * Error messages are now send to stderr rather than stdout (from
138
+ Payton Quackenbush).
139
+ * Better error handling on invalid command line arguments (from Payton
140
+ Quackenbush).
141
+ * Added rcov task and updated unit testing for better code coverage.
142
+ * Fixed some bugs where the application object was going to the global
143
+ appliation instead of using its own data.
144
+ * Added square and curly bracket patterns to FileList#include (Tilman
145
+ Sauerbeck).
146
+ * Added plain filename support to rule dependents (suggested by Nobu
147
+ Nakada).
148
+ * Added pathmap support to rule dependents.
149
+ * Added a 'tasks' method to a namespace to get a list of tasks
150
+ associated with the namespace.
151
+ * Fixed the method name leak from FileUtils (bug found by Glenn
152
+ Vanderburg).
153
+ * Added rake_extension to handle detection of extension collisions.
154
+ * Added test for noop, bad_option and verbose flags to sh command.
155
+ * Removed dependency on internal fu_xxx functions from FileUtils.
156
+ * Added a 'shame' task to the Rakefile.
157
+ * Added tar_command and zip_command options to the Package task.
158
+ * Added a description to the gem task in GemPackageTask.
159
+ * Fixed a bug when rules have multiple prerequisites (patch by Joel
160
+ VanderWerf)
161
+ * Added a protected 'require "rubygems"' to test/test_application to
162
+ unbreak cruisecontrol.rb.
163
+ * Added the handful of RakeFileUtils to the private method as well.
164
+ * Added block based exclusion.
165
+ * The clean task will no longer delete 'core' if it is a directory.
166
+ * Removed rake_dup. Now we just simply rescue a bad dup.
167
+ * Refactored the FileList reject logic to remove duplication.
168
+ * Removed if __FILE__ at the end of the rake.rb file.
169
+
170
+ == Version 0.7.1
171
+
172
+ * Added optional filter parameter to the --tasks command line option.
173
+ * Added flatten to allow rule transform procs to return lists of
174
+ prereqs (Joel VanderWerf provided patch).
175
+ * Added pathmap to String and FileList.
176
+ * The -r option will now load .rake files (but a straight require
177
+ doesn't yet). NOTE: This is experimental ... it may be
178
+ discontinued.
179
+ * The -f option without a value will disable the search for a
180
+ Rakefile. The assumption is that the -r files are adequate.
181
+ * Fixed the safe_ln function to fall back to cp in more error
182
+ scenarios.
183
+
184
+ == Version 0.7.0
185
+
186
+ * Added Rake.original_dir to return the original starting directory of
187
+ the rake application.
188
+ * Added safe_ln support for openAFS (from Ludvig Omholt).
189
+ * Added --trace reminder on short exception messages (David Heinemeier
190
+ Hansson suggestion).
191
+ * Added multitask declaration that executes prerequisites in
192
+ parallel. (Doug Young providied an initial implementation).
193
+ * Fixed missing_const hack to be compatible with Rails. (Jamis Buck
194
+ supplied test case).
195
+ * Made the RDoc task default to internal (in-process) RDoc formatting.
196
+ The old behavior is still available by setting the +external+ flag
197
+ to true.
198
+ * Rakefiles are now loaded with the expanded path to prevent
199
+ accidental polution from the Ruby load path.
200
+ * The +namespace+ command now returns a NameSpace object that can be
201
+ used to lookup tasks defined in that namespace. This allows for
202
+ better anonymous namespace behavior.
203
+ * Task objects my now be used in prerequisite lists directly.
204
+
205
+ == Version 0.6.1
206
+
207
+ * Rebuilt 0.6.0 gem without signing.
208
+
209
+ == Version 0.6.0
210
+
211
+ * Fixed file creation bug in the unit tests (caused infinite loop on
212
+ windows).
213
+ * Fixed bug where session based functional tests were run under
214
+ windows.
215
+ * Fixed bug in directory tasks so that updating a directory will not
216
+ retrigger file tasks depending on the directory (see
217
+ FileCreationTask and EarlyTime).
218
+ * Added egrep to FileList
219
+ * ruby command now runs same ruby version as rake.
220
+ * Added investigation to task object. (suggested by Martin Fowler)
221
+ * Added ruby_opts to the test task to allow arbitrary ruby options to
222
+ be passed to the test script. (Greg Fast)
223
+ * Fixed the test loader to ignore options. (Greg Fast)
224
+ * Moved Task, FileTask, FileCreationTask and RakeApp into the Rake
225
+ module namespace. Old style namespace behavior can be invoked via
226
+ the --classic-namespace option. (requested by Kelly Felkins).
227
+ * GemTask is now sensitive to the gem platform (Masao Mutoh).
228
+ * A non-existing file prerequisite will no longer cause an exception
229
+ (Philipp Neubeck).
230
+ * Multiple prerequisites on Rake rules now allowed (initial patch
231
+ supplied by Stuart Jansen).
232
+
233
+ == Version 0.5.4
234
+
235
+ * Added double quotes to the test runner.
236
+ * Added .svn to default ignore list.
237
+ * Updated FileList#include to support nested arrays and filelists.
238
+
239
+ == Version 0.5.3
240
+
241
+ * Added support for importing Rakefile and other dependencies.
242
+ * Fixed bug so that now rules can chain off of existing tasks as well
243
+ as existing files.
244
+ * Fixed verbose flag bug in the testing task. Shortened some failure
245
+ messages.
246
+ * Make FileUtils methods private at the top level module to avoid
247
+ accidental method leaking into other objects.
248
+ * Added test loader option to test task. "testrb" is no longer the
249
+ default test loader. It is now eating syntax errors that should
250
+ halt the unit tests.
251
+ * Revamped FileList so that it works more like and array (addressed
252
+ flatten bug). Added many tests around file list.
253
+ * Added +ext+ method to both String and FileList.
254
+
255
+ == Version 0.5.0
256
+
257
+ * Fixed documentation that was lacking the Rake module name (Tilman
258
+ Sauerbeck).
259
+ * Added tar.gz and tar.bz2 support to package task (Tilman Sauerbeck).
260
+ * Recursive rules are now supported (Tilman Sauerbeck).
261
+ * Added warning option for the Test Task (requested by Eric Hodel).
262
+ * The jamis rdoc template is only used if it exists.
263
+ * Added fix for Ruby 1.8.2 test/unit and rails problem.
264
+ * Added contributed rake man file (Jani Monoses).
265
+ * Added Brian Candler's fix for problems in --trace and --dry-run
266
+ mode.
267
+
268
+ == Version 0.4.15
269
+
270
+ * Fixed a bug that prevented the TESTOPTS flag from working with the
271
+ revised for 1.8.2 test task.
272
+ * Updated the docs on --trace to indicate that it also enables a full
273
+ backtrace on errors.
274
+
275
+ == Version 0.4.14
276
+
277
+ * Modified the TestTask to workaround the Ruby 1.8.2 change in
278
+ autoexecuting unit tests.
279
+
280
+ == Version 0.4.13
281
+
282
+ * Fixed the dry-run flag so it is operating again.
283
+ * Multiple arguments to sh and ruby commands will not be interpreted
284
+ by the shell (patch provided by Jonathan Paisley).
285
+
286
+ == Version 0.4.12
287
+
288
+ * Added --silent (-s) to suppress the (in directory) rake message.
289
+
290
+ == Version 0.4.11
291
+
292
+ * Changed the "don't know how to rake" message (finally)
293
+ * Changes references to a literal "Rakefile" to reference the global
294
+ variable $rakefile (which contains the actual name of the rakefile).
295
+
296
+ == Version 0.4.10
297
+
298
+ * Added block support to the "sh" command, allowing users to take
299
+ special actions on the result of the system call. E.g.
300
+
301
+ sh "shell_command" do |ok, res|
302
+ puts "Program returned #{res.exitstatus}" if ! ok
303
+ end
304
+
305
+ == Version 0.4.9
306
+
307
+ * Switched to Jamis Buck's RDoc template.
308
+ * Removed autorequire from Rake's gem spec. This prevents the Rake
309
+ libraries from loading while using rails.
310
+
311
+ == Version 0.4.8
312
+
313
+ * Added support for .rb versions of Rakefile.
314
+ * Removed \\\n's from test task.
315
+ * Fixed Ruby 1.9 compatibility issue with FileList.
316
+
317
+ == Version 0.4.7
318
+
319
+ * Fixed problem in FileList that caused Ruby 1.9 to go into infinite
320
+ recursion. Since to_a was removed from Object, it does not need to
321
+ added back into the list of methods to rewrite in FileList. (Thanks
322
+ to Kent Sibilev for pointing this out).
323
+
324
+ == Version 0.4.6
325
+ * Removed test version of ln in FileUtils that prevented safe_ln from
326
+ using ln.
327
+
328
+ == Version 0.4.5
329
+ * Upgraded comments in TestTask.
330
+ * FileList to_s and inspect now automatically resolve pending changes.
331
+ * FileList#exclude properly returns the FileList.
332
+
333
+ == Version 0.4.4
334
+ * Fixed initialization problem with @comment.
335
+ * Now using multi -r technique in TestTask. Switch Rakefile back to
336
+ using the built-in test task macros because the rake runtime is no
337
+ longer needed.
338
+ * Added 'TEST=filename' and 'TESTOPTS=options' to the Test Task
339
+ macros.
340
+ * Allow a +test_files+ attribute in test tasks. This allows more
341
+ flexibility in specifying test files.
342
+
343
+ == Version 0.4.3
344
+ * Fixed Comment leakage.
345
+
346
+ == Version 0.4.2
347
+ * Added safe_ln that falls back to a copy if a file link is not supported.
348
+ * Package builder now uses safe_ln.
349
+
350
+ == Version 0.4.1
351
+ * Task comments are now additive, combined with "/".
352
+ * Works with (soon to be released) rubygems 0.6.2 (or 0.7.0)
353
+
354
+ == Version 0.4.0
355
+ * FileList now uses deferred loading. The file system is not searched
356
+ until the first call that needs the file names.
357
+ * VAR=VALUE options are now accepted on the command line and are
358
+ treated like environment variables. The values may be tested in a
359
+ Rakefile by referencing ENV['VAR'].
360
+ * File.mtime is now used (instead of File.new().mtime).
361
+
362
+ == Version 0.3.2.x
363
+
364
+ * Removed some hidden dependencies on rubygems. Tests now will test
365
+ gems only if they are installed.
366
+ * Removed Sys from some example files. I believe that is that last
367
+ reference to Sys outside of the contrib area.
368
+ * Updated all copyright notices to include 2004.
369
+
370
+ == Version 0.3.2
371
+
372
+ * GEM Installation now works with the application stub.
373
+
374
+ == Version 0.3.1
375
+
376
+ * FileLists now automatically ignore CVS, .bak, !
377
+ * GEM Installation now works.
378
+
379
+ == Version 0.3.0
380
+
381
+ Promoted 0.2.10.
382
+
383
+ == Version 0.2.10
384
+ General
385
+
386
+ * Added title to Rake's rdocs
387
+ * Contrib packages are no longer included in the documentation.
388
+
389
+ RDoc Issues
390
+
391
+ * Removed default for the '--main' option
392
+ * Fixed rendering of the rdoc options
393
+ * Fixed clean/clobber confusion with rerdoc
394
+ * 'title' attribute added
395
+
396
+ Package Task Library Issues
397
+
398
+ * Version (or explicit :noversion) is required.
399
+ * +package_file+ attribute is now writable
400
+
401
+ FileList Issues
402
+
403
+ * Dropped bang version of exclude. Now using ant-like include/exclude semantics.
404
+ * Enabled the "yield self" idiom in FileList#initialize.
405
+
406
+ == Version 0.2.9
407
+
408
+ This version contains numerous changes as the RubyConf.new(2003)
409
+ presentation was being prepared. The changes include:
410
+
411
+ * The monolithic rubyapp task library is in the process of being
412
+ dropped in favor of lighter weight task libraries.
413
+
414
+ == Version 0.2.7
415
+
416
+ * Added "desc" for task descriptions.
417
+ * -T will now display tasks with descriptions.
418
+ * -P will display tasks and prerequisites.
419
+ * Dropped the Sys module in favor of the 1.8.x FileUtils module. Sys
420
+ is still supported in the contrib area.
421
+
422
+ == Version 0.2.6
423
+
424
+ * Moved to RubyForge
425
+
426
+ == Version 0.2.5
427
+
428
+ * Switched to standard ruby app builder.
429
+ * Added no_match option to file matcher.
430
+
431
+ == Version 0.2.4
432
+
433
+ * Fixed indir, which neglected to actually change directories.
434
+
435
+ == Version 0.2.3
436
+
437
+ * Added rake module for a help target
438
+ * Added 'for_files' to Sys
439
+ * Added a $rakefile constant
440
+ * Added test for selecting proper rule with multiple targets.