Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

For reals, RubyGems 1.1.0.

git-svn-id: http://rubygems.rubyforge.org/svn/tags/REL_1_1_0@1678 3d4018f9-ac1a-0410-99e9-8a154d859a19
  • Loading branch information...
commit b1311d11acf27c83b5a47fb0e1e779b589f717f8 2 parents 5a44794 + a5eb203
drbrain authored
Showing with 53 additions and 33,597 deletions.
  1. +4 −0 ChangeLog
  2. +6 −3 doc/release_notes/rel_1_1_0.rdoc
  3. +1 −1  lib/rubygems/commands/query_command.rb
  4. +1 −1  lib/rubygems/commands/sources_command.rb
  5. +9 −2 lib/rubygems/source_index.rb
  6. +23 −12 lib/rubygems/source_info_cache.rb
  7. +3 −0  test/test_gem_commands_query_command.rb
  8. +2 −0  test/test_gem_commands_sources_command.rb
  9. +4 −2 test/test_gem_source_index.rb
  10. +0 −18 trunk/.autotest
  11. +0 −4 trunk/.document
  12. +0 −4,477 trunk/ChangeLog
  13. +0 −340 trunk/GPL.txt
  14. +0 −53 trunk/LICENSE.txt
  15. +0 −71 trunk/README
  16. +0 −429 trunk/Rakefile
  17. +0 −1  trunk/TODO
  18. +0 −28 trunk/bin/gem
  19. +0 −38 trunk/bin/update_rubygems
  20. BIN  trunk/doc/design/RubyGemsRemoteInstallerUML.png
  21. BIN  trunk/doc/design/rubygems_uml.jude
  22. +0 −73 trunk/doc/doc.css
  23. +0 −10 trunk/doc/makedoc.rb
  24. +0 −569 trunk/doc/rdoc_templates/jamis.rb
  25. +0 −29 trunk/doc/release_notes/docs-rubygems-announce.rdoc
  26. +0 −4 trunk/doc/release_notes/rel_0_2_0.rdoc
  27. +0 −21 trunk/doc/release_notes/rel_0_3_0.rdoc
  28. +0 −4 trunk/doc/release_notes/rel_0_4_0.rdoc
  29. +0 −26 trunk/doc/release_notes/rel_0_5_0.rdoc
  30. +0 −16 trunk/doc/release_notes/rel_0_6_0.rdoc
  31. +0 −4 trunk/doc/release_notes/rel_0_7_0.rdoc
  32. +0 −23 trunk/doc/release_notes/rel_0_8_0.rdoc
  33. +0 −4 trunk/doc/release_notes/rel_0_8_1.rdoc
  34. +0 −70 trunk/doc/release_notes/rel_0_8_10.rdoc
  35. +0 −102 trunk/doc/release_notes/rel_0_8_11.rdoc
  36. +0 −113 trunk/doc/release_notes/rel_0_8_3.rdoc
  37. +0 −51 trunk/doc/release_notes/rel_0_8_4.rdoc
  38. +0 −117 trunk/doc/release_notes/rel_0_8_5.rdoc
  39. +0 −135 trunk/doc/release_notes/rel_0_8_7.rdoc
  40. +0 −109 trunk/doc/release_notes/rel_0_9_0.rdoc
  41. +0 −69 trunk/doc/release_notes/rel_0_9_2.rdoc
  42. +0 −66 trunk/doc/release_notes/rel_0_9_3.rdoc
  43. +0 −67 trunk/doc/release_notes/rel_0_9_4.rdoc
  44. +0 −108 trunk/doc/release_notes/rel_0_9_5.rdoc
  45. +0 −67 trunk/doc/release_notes/rel_1_0_0.rdoc
  46. +0 −56 trunk/doc/release_notes/rel_1_0_1.rdoc
  47. +0 −82 trunk/doc/release_notes/rel_1_1_0.rdoc
  48. +0 −30 trunk/examples/application/an-app.gemspec
  49. +0 −3  trunk/examples/application/bin/myapp
  50. +0 −139 trunk/examples/application/ext/Makefile
  51. +0 −3  trunk/examples/application/ext/extconf.rb
  52. +0 −1  trunk/examples/application/ext/foo.c
  53. +0 −9 trunk/examples/application/lib/somefunctionality.rb
  54. +0 −4 trunk/gemspecs/README
  55. +0 −17 trunk/gemspecs/cgikit-1.1.0.gemspec
  56. +0 −26 trunk/gemspecs/jabber4r.gemspec
  57. +0 −22 trunk/gemspecs/linguistics.gemspec
  58. +0 −21 trunk/gemspecs/ook.gemspec
  59. +0 −22 trunk/gemspecs/progressbar.gemspec
  60. +0 −22 trunk/gemspecs/redcloth.gemspec
  61. +0 −23 trunk/gemspecs/rublog.gemspec
  62. +0 −21 trunk/gemspecs/ruby-doom.gemspec
  63. +0 −21 trunk/gemspecs/rubyjdwp.gemspec
  64. +0 −21 trunk/gemspecs/statistics.gemspec
  65. +0 −24 trunk/lib/rbconfig/datadir.rb
  66. +0 −694 trunk/lib/rubygems.rb
  67. +0 −88 trunk/lib/rubygems/builder.rb
  68. +0 −406 trunk/lib/rubygems/command.rb
  69. +0 −145 trunk/lib/rubygems/command_manager.rb
  70. +0 −53 trunk/lib/rubygems/commands/build_command.rb
  71. +0 −86 trunk/lib/rubygems/commands/cert_command.rb
  72. +0 −74 trunk/lib/rubygems/commands/check_command.rb
  73. +0 −91 trunk/lib/rubygems/commands/cleanup_command.rb
  74. +0 −74 trunk/lib/rubygems/commands/contents_command.rb
  75. +0 −150 trunk/lib/rubygems/commands/dependency_command.rb
  76. +0 −86 trunk/lib/rubygems/commands/environment_command.rb
  77. +0 −60 trunk/lib/rubygems/commands/fetch_command.rb
  78. +0 −57 trunk/lib/rubygems/commands/generate_index_command.rb
  79. +0 −172 trunk/lib/rubygems/commands/help_command.rb
  80. +0 −133 trunk/lib/rubygems/commands/install_command.rb
  81. +0 −33 trunk/lib/rubygems/commands/list_command.rb
  82. +0 −101 trunk/lib/rubygems/commands/lock_command.rb
  83. +0 −111 trunk/lib/rubygems/commands/mirror_command.rb
  84. +0 −30 trunk/lib/rubygems/commands/outdated_command.rb
  85. +0 −133 trunk/lib/rubygems/commands/pristine_command.rb
  86. +0 −167 trunk/lib/rubygems/commands/query_command.rb
  87. +0 −78 trunk/lib/rubygems/commands/rdoc_command.rb
  88. +0 −37 trunk/lib/rubygems/commands/search_command.rb
  89. +0 −48 trunk/lib/rubygems/commands/server_command.rb
  90. +0 −124 trunk/lib/rubygems/commands/sources_command.rb
  91. +0 −76 trunk/lib/rubygems/commands/specification_command.rb
  92. +0 −73 trunk/lib/rubygems/commands/uninstall_command.rb
  93. +0 −95 trunk/lib/rubygems/commands/unpack_command.rb
  94. +0 −157 trunk/lib/rubygems/commands/update_command.rb
  95. +0 −86 trunk/lib/rubygems/commands/which_command.rb
  96. +0 −224 trunk/lib/rubygems/config_file.rb
  97. +0 −38 trunk/lib/rubygems/custom_require.rb
  98. +0 −53 trunk/lib/rubygems/defaults.rb
  99. +0 −65 trunk/lib/rubygems/dependency.rb
  100. +0 −211 trunk/lib/rubygems/dependency_installer.rb
  101. +0 −165 trunk/lib/rubygems/dependency_list.rb
  102. +0 −40 trunk/lib/rubygems/digest/digest_adapter.rb
  103. +0 −23 trunk/lib/rubygems/digest/md5.rb
  104. +0 −17 trunk/lib/rubygems/digest/sha1.rb
  105. +0 −17 trunk/lib/rubygems/digest/sha2.rb
  106. +0 −161 trunk/lib/rubygems/doc_manager.rb
  107. +0 −84 trunk/lib/rubygems/exceptions.rb
  108. +0 −18 trunk/lib/rubygems/ext.rb
  109. +0 −56 trunk/lib/rubygems/ext/builder.rb
  110. +0 −24 trunk/lib/rubygems/ext/configure_builder.rb
  111. +0 −23 trunk/lib/rubygems/ext/ext_conf_builder.rb
  112. +0 −27 trunk/lib/rubygems/ext/rake_builder.rb
  113. +0 −87 trunk/lib/rubygems/format.rb
  114. +0 −83 trunk/lib/rubygems/gem_openssl.rb
  115. +0 −84 trunk/lib/rubygems/gem_path_searcher.rb
  116. +0 −58 trunk/lib/rubygems/gem_runner.rb
  117. +0 −176 trunk/lib/rubygems/indexer.rb
  118. +0 −88 trunk/lib/rubygems/indexer/abstract_index_builder.rb
  119. +0 −35 trunk/lib/rubygems/indexer/latest_index_builder.rb
  120. +0 −17 trunk/lib/rubygems/indexer/marshal_index_builder.rb
  121. +0 −54 trunk/lib/rubygems/indexer/master_index_builder.rb
  122. +0 −50 trunk/lib/rubygems/indexer/quick_index_builder.rb
  123. +0 −100 trunk/lib/rubygems/install_update_options.rb
  124. +0 −479 trunk/lib/rubygems/installer.rb
  125. +0 −106 trunk/lib/rubygems/local_remote_options.rb
  126. +0 −148 trunk/lib/rubygems/old_format.rb
  127. +0 −95 trunk/lib/rubygems/package.rb
  128. +0 −24 trunk/lib/rubygems/package/f_sync_dir.rb
  129. +0 −245 trunk/lib/rubygems/package/tar_header.rb
  130. +0 −219 trunk/lib/rubygems/package/tar_input.rb
  131. +0 −143 trunk/lib/rubygems/package/tar_output.rb
  132. +0 −86 trunk/lib/rubygems/package/tar_reader.rb
  133. +0 −99 trunk/lib/rubygems/package/tar_reader/entry.rb
  134. +0 −180 trunk/lib/rubygems/package/tar_writer.rb
  135. +0 −181 trunk/lib/rubygems/platform.rb
  136. +0 −283 trunk/lib/rubygems/remote_fetcher.rb
  137. +0 −15 trunk/lib/rubygems/require_paths_builder.rb
  138. +0 −159 trunk/lib/rubygems/requirement.rb
  139. +0 −6 trunk/lib/rubygems/rubygems_version.rb
  140. +0 −786 trunk/lib/rubygems/security.rb
  141. +0 −500 trunk/lib/rubygems/server.rb
  142. +0 −519 trunk/lib/rubygems/source_index.rb
  143. +0 −365 trunk/lib/rubygems/source_info_cache.rb
  144. +0 −56 trunk/lib/rubygems/source_info_cache_entry.rb
  145. +0 −971 trunk/lib/rubygems/specification.rb
  146. +0 −25 trunk/lib/rubygems/timer.rb
  147. +0 −207 trunk/lib/rubygems/uninstaller.rb
  148. +0 −285 trunk/lib/rubygems/user_interaction.rb
  149. +0 −186 trunk/lib/rubygems/validator.rb
  150. +0 −165 trunk/lib/rubygems/version.rb
  151. +0 −49 trunk/lib/rubygems/version_option.rb
  152. +0 −10 trunk/lib/ubygems.rb
  153. +0 −1  trunk/pkgs/sources/.cvsignore
  154. +0 −3  trunk/pkgs/sources/lib/sources.rb
  155. +0 −14 trunk/pkgs/sources/sources.gemspec
  156. +0 −433 trunk/redist/session.gem
  157. +0 −2  trunk/scripts/.cvsignore
  158. +0 −31 trunk/scripts/buildtests.rb
  159. +0 −617 trunk/scripts/gemdoc.data
  160. +0 −67 trunk/scripts/gemdoc.rb
  161. +0 −40 trunk/scripts/runtest.rb
  162. +0 −33 trunk/scripts/specdoc.data
  163. +0 −171 trunk/scripts/specdoc.rb
  164. +0 −433 trunk/scripts/specdoc.yaml
  165. +0 −140 trunk/scripts/upload_gemdoc.rb
  166. +0 −307 trunk/setup.rb
  167. +0 −8 trunk/test/bogussources.rb
  168. +0 −27 trunk/test/data/gem-private_key.pem
  169. +0 −20 trunk/test/data/gem-public_cert.pem
  170. +0 −7 trunk/test/fake_certlib/openssl.rb
  171. +0 −95 trunk/test/functional.rb
  172. +0 −86 trunk/test/gem_installer_test_case.rb
  173. +0 −146 trunk/test/gem_package_tar_test_case.rb
  174. +0 −400 trunk/test/gemutilities.rb
  175. +0 −51 trunk/test/insure_session.rb
  176. +0 −43 trunk/test/mockgemui.rb
  177. +0 −27 trunk/test/private_key.pem
  178. +0 −20 trunk/test/public_cert.pem
  179. +0 −72 trunk/test/simple_gem.rb
  180. +0 −26 trunk/test/test_config.rb
  181. +0 −388 trunk/test/test_gem.rb
  182. +0 −34 trunk/test/test_gem_builder.rb
  183. +0 −196 trunk/test/test_gem_command.rb
  184. +0 −213 trunk/test/test_gem_command_manager.rb
  185. +0 −75 trunk/test/test_gem_commands_build_command.rb
  186. +0 −126 trunk/test/test_gem_commands_cert_command.rb
  187. +0 −25 trunk/test/test_gem_commands_check_command.rb
  188. +0 −92 trunk/test/test_gem_commands_contents_command.rb
  189. +0 −108 trunk/test/test_gem_commands_dependency_command.rb
  190. +0 −133 trunk/test/test_gem_commands_environment_command.rb
  191. +0 −35 trunk/test/test_gem_commands_fetch_command.rb
  192. +0 −32 trunk/test/test_gem_commands_generate_index_command.rb
  193. +0 −168 trunk/test/test_gem_commands_install_command.rb
  194. +0 −61 trunk/test/test_gem_commands_mirror_command.rb
  195. +0 −100 trunk/test/test_gem_commands_pristine_command.rb
  196. +0 −210 trunk/test/test_gem_commands_query_command.rb
  197. +0 −27 trunk/test/test_gem_commands_server_command.rb
  198. +0 −205 trunk/test/test_gem_commands_sources_command.rb
  199. +0 −94 trunk/test/test_gem_commands_specification_command.rb
  200. +0 −115 trunk/test/test_gem_commands_unpack_command.rb
  201. +0 −174 trunk/test/test_gem_commands_update_command.rb
  202. +0 −210 trunk/test/test_gem_config_file.rb
  203. +0 −89 trunk/test/test_gem_dependency.rb
  204. +0 −527 trunk/test/test_gem_dependency_installer.rb
  205. +0 −212 trunk/test/test_gem_dependency_list.rb
  206. +0 −44 trunk/test/test_gem_digest.rb
  207. +0 −32 trunk/test/test_gem_doc_manager.rb
  208. +0 −87 trunk/test/test_gem_ext_configure_builder.rb
  209. +0 −122 trunk/test/test_gem_ext_ext_conf_builder.rb
  210. +0 −73 trunk/test/test_gem_ext_rake_builder.rb
  211. +0 −69 trunk/test/test_gem_format.rb
  212. +0 −57 trunk/test/test_gem_gem_path_searcher.rb
  213. +0 −35 trunk/test/test_gem_gem_runner.rb
  214. +0 −124 trunk/test/test_gem_indexer.rb
  215. +0 −40 trunk/test/test_gem_install_update_options.rb
  216. +0 −806 trunk/test/test_gem_installer.rb
  217. +0 −84 trunk/test/test_gem_local_remote_options.rb
  218. +0 −40 trunk/test/test_gem_outdated_command.rb
  219. +0 −137 trunk/test/test_gem_package_tar_header.rb
  220. +0 −119 trunk/test/test_gem_package_tar_input.rb
  221. +0 −104 trunk/test/test_gem_package_tar_output.rb
  222. +0 −53 trunk/test/test_gem_package_tar_reader.rb
  223. +0 −116 trunk/test/test_gem_package_tar_reader_entry.rb
  224. +0 −151 trunk/test/test_gem_package_tar_writer.rb
  225. +0 −259 trunk/test/test_gem_platform.rb
  226. +0 −606 trunk/test/test_gem_remote_fetcher.rb
  227. +0 −223 trunk/test/test_gem_requirement.rb
  228. +0 −115 trunk/test/test_gem_server.rb
  229. +0 −676 trunk/test/test_gem_source_index.rb
  230. +0 −425 trunk/test/test_gem_source_info_cache.rb
  231. +0 −77 trunk/test/test_gem_source_info_cache_entry.rb
  232. +0 −870 trunk/test/test_gem_specification.rb
  233. +0 −117 trunk/test/test_gem_stream_ui.rb
  234. +0 −43 trunk/test/test_gem_uninstaller.rb
  235. +0 −70 trunk/test/test_gem_validator.rb
  236. +0 −206 trunk/test/test_gem_version.rb
  237. +0 −77 trunk/test/test_gem_version_option.rb
  238. +0 −65 trunk/test/test_kernel.rb
  239. +0 −214 trunk/util/gem_prelude.rb
View
4 ChangeLog
@@ -4,6 +4,10 @@
* lib/rubygems.rb: Added Gem.ruby_version, Gem.read_binary,
Gem.binary_mode.
* lib/, test/: Read files in binary mode for windows and ruby 1.9.
+ * lib/rubygems/commands/update_command.rb: Only update once.
+ * lib/rubygems/commands/sources_command.rb: Ditto.
+ * lib/rubygems/source_index.rb: Fix #remove_extra, #find_missing so
+ legacy platform gems don't get updated repeatedly.
* doc/release_notes/rel_1_1_0.rdoc: RubyGems 1.1.0 release notes.
* lib/rubygems/rubygems_version.rb: 1.1.0.
View
9 doc/release_notes/rel_1_1_0.rdoc
@@ -7,7 +7,10 @@ New features:
* RubyGems now uses persistent connections on index updates. Index updates are
much faster now.
* RubyGems only updates from a latest index by default, cutting candidate gems
- for updates to roughly 1/4 (at present).
+ for updates to roughly 1/4 (at present). Index updates are even faster
+ still.
+ * `gem list -r` may only show the latest version of a gem, add --all to see
+ all gems.
* `gem spec` now extracts specifications from .gem files.
* `gem query --installed` to aid automation of checking for gems.
@@ -40,8 +43,8 @@ For a full list of changes to RubyGems, see the ChangeLog file.
== How can I get RubyGems?
-NOTE: If you have installed RubyGems using a package you may want to install a
-new RubyGems through the same packaging system.
+NOTE: If you have installed RubyGems using a package system you may want to
+install a new RubyGems through the same packaging system.
If you have a recent version of RubyGems (0.8.5 or later), then all
you need to do is:
View
2  lib/rubygems/commands/query_command.rb
@@ -83,7 +83,7 @@ def execute
say
begin
- Gem::SourceInfoCache.cache.refresh options[:all]
+ Gem::SourceInfoCache.cache options[:all]
rescue Gem::RemoteFetcher::FetchError
# no network
end
View
2  lib/rubygems/commands/sources_command.rb
@@ -69,7 +69,7 @@ def execute
end
if options[:update] then
- Gem::SourceInfoCache.cache.refresh true
+ Gem::SourceInfoCache.cache true
Gem::SourceInfoCache.cache.flush
say "source cache successfully updated"
View
11 lib/rubygems/source_index.rb
@@ -430,15 +430,22 @@ def fetch_quick_index(source_uri, all)
# Make a list of full names for all the missing gemspecs.
def find_missing(spec_names)
+ unless defined? @originals then
+ @originals = {}
+ each do |full_name, spec|
+ @originals[spec.original_name] = spec
+ end
+ end
+
spec_names.find_all { |full_name|
- specification(full_name).nil?
+ @originals[full_name].nil?
}
end
def remove_extra(spec_names)
dictionary = spec_names.inject({}) { |h, k| h[k] = true; h }
each do |name, spec|
- remove_spec name unless dictionary.include? name
+ remove_spec name unless dictionary.include? spec.original_name
end
end
View
35 lib/rubygems/source_info_cache.rb
@@ -31,14 +31,14 @@ class Gem::SourceInfoCache
include Gem::UserInteraction
- @cache = nil
- @system_cache_file = nil
- @user_cache_file = nil
+ ##
+ # The singleton Gem::SourceInfoCache. If +all+ is true, a full refresh will
+ # be performed if the singleton instance is being initialized.
- def self.cache
+ def self.cache(all = false)
return @cache if @cache
@cache = new
- @cache.refresh false if Gem.configuration.update_sources
+ @cache.refresh all if Gem.configuration.update_sources
@cache
end
@@ -63,6 +63,15 @@ def self.latest_user_cache_file
end
##
+ # Reset all singletons, discarding any changes.
+
+ def self.reset
+ @cache = nil
+ @system_cache_file = nil
+ @user_cache_file = nil
+ end
+
+ ##
# Search all source indexes. See Gem::SourceInfoCache#search.
def self.search(*args)
@@ -122,13 +131,6 @@ def cache_file
try_file(user_cache_file) or
raise "unable to locate a writable cache file")
end
-
- ##
- # Force cache file to be reset, useful for integration testing of rubygems
-
- def reset_cache_file
- @cache_file = nil
- end
##
# Write the cache to a local file (if it is dirty).
@@ -246,6 +248,13 @@ def reset_cache_data
end
##
+ # Force cache file to be reset, useful for integration testing of rubygems
+
+ def reset_cache_file
+ @cache_file = nil
+ end
+
+ ##
# Searches all source indexes. See Gem::SourceIndex#search for details on
# +pattern+ and +platform_only+. If +all+ is set to true, the full index
# will be loaded before searching.
@@ -350,5 +359,7 @@ def write_cache
end
end
+ reset
+
end
View
3  test/test_gem_commands_query_command.rb
@@ -26,6 +26,7 @@ def test_execute
cache.update
cache.write_cache
cache.reset_cache_data
+ Gem::SourceInfoCache.reset
a2_name = @a2.full_name
@fetcher.data["#{@gem_repo}/quick/latest_index.rz"] = util_zip a2_name
@@ -44,6 +45,7 @@ def test_execute
*** REMOTE GEMS ***
a (2)
+pl (1)
EOF
assert_equal expected, @ui.output
@@ -55,6 +57,7 @@ def test_execute_all
cache.update
cache.write_cache
cache.reset_cache_data
+ Gem::SourceInfoCache.reset
a1_name = @a1.full_name
a2_name = @a2.full_name
View
2  test/test_gem_commands_sources_command.rb
@@ -181,6 +181,8 @@ def test_execute_update
@cmd.handle_options %w[--update]
util_setup_source_info_cache
+ Gem::SourceInfoCache.reset
+
util_setup_fake_fetcher
si = Gem::SourceIndex.new
si.add_spec @a1
View
6 test/test_gem_source_index.rb
@@ -398,10 +398,12 @@ def test_outdated
def test_remove_extra
@source_index.add_spec @a1
@source_index.add_spec @a2
+ @source_index.add_spec @pl1
- @source_index.remove_extra [@a1.full_name]
+ @source_index.remove_extra [@a1.full_name, @pl1.full_name]
- assert_equal [@a1.full_name], @source_index.gems.map { |n,s| n }
+ assert_equal [@a1.full_name],
+ @source_index.gems.map { |n,s| n }.sort
end
def test_remove_extra_no_changes
View
18 trunk/.autotest
@@ -1,18 +0,0 @@
-Autotest.add_hook :initialize do |at|
- at.order = :natural # I am a bad person - Eric Hodel
-
- at.add_exception %r%/\.svn/%
- at.add_exception %r%\.rbc$%
-
- at.find_directories.clear
- at.find_directories.push 'lib', 'test'
-
- at.add_mapping %r%^lib/rubygems.rb$% do |_, m|
- "test/test_gem.rb"
- end
-
- at.add_mapping %r%^lib/rubygems/(.*).rb$% do |_, m|
- "test/test_gem_#{m[1].gsub '/', '_'}.rb"
- end
-end
-
View
4 trunk/.document
@@ -1,4 +0,0 @@
-README.txt
-lib
-GPL.txt
-LICENSE.txt
View
4,477 trunk/ChangeLog
0 additions, 4,477 deletions not shown
View
340 trunk/GPL.txt
@@ -1,340 +0,0 @@
- GNU GENERAL PUBLIC LICENSE
- Version 2, June 1991
-
- Copyright (C) 1989, 1991 Free Software Foundation, Inc.
- 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
- Preamble
-
- The licenses for most software are designed to take away your
-freedom to share and change it. By contrast, the GNU General Public
-License is intended to guarantee your freedom to share and change free
-software--to make sure the software is free for all its users. This
-General Public License applies to most of the Free Software
-Foundation's software and to any other program whose authors commit to
-using it. (Some other Free Software Foundation software is covered by
-the GNU Library General Public License instead.) You can apply it to
-your programs, too.
-
- When we speak of free software, we are referring to freedom, not
-price. Our General Public Licenses are designed to make sure that you
-have the freedom to distribute copies of free software (and charge for
-this service if you wish), that you receive source code or can get it
-if you want it, that you can change the software or use pieces of it
-in new free programs; and that you know you can do these things.
-
- To protect your rights, we need to make restrictions that forbid
-anyone to deny you these rights or to ask you to surrender the rights.
-These restrictions translate to certain responsibilities for you if you
-distribute copies of the software, or if you modify it.
-
- For example, if you distribute copies of such a program, whether
-gratis or for a fee, you must give the recipients all the rights that
-you have. You must make sure that they, too, receive or can get the
-source code. And you must show them these terms so they know their
-rights.
-
- We protect your rights with two steps: (1) copyright the software, and
-(2) offer you this license which gives you legal permission to copy,
-distribute and/or modify the software.
-
- Also, for each author's protection and ours, we want to make certain
-that everyone understands that there is no warranty for this free
-software. If the software is modified by someone else and passed on, we
-want its recipients to know that what they have is not the original, so
-that any problems introduced by others will not reflect on the original
-authors' reputations.
-
- Finally, any free program is threatened constantly by software
-patents. We wish to avoid the danger that redistributors of a free
-program will individually obtain patent licenses, in effect making the
-program proprietary. To prevent this, we have made it clear that any
-patent must be licensed for everyone's free use or not licensed at all.
-
- The precise terms and conditions for copying, distribution and
-modification follow.
-
- GNU GENERAL PUBLIC LICENSE
- TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-
- 0. This License applies to any program or other work which contains
-a notice placed by the copyright holder saying it may be distributed
-under the terms of this General Public License. The "Program", below,
-refers to any such program or work, and a "work based on the Program"
-means either the Program or any derivative work under copyright law:
-that is to say, a work containing the Program or a portion of it,
-either verbatim or with modifications and/or translated into another
-language. (Hereinafter, translation is included without limitation in
-the term "modification".) Each licensee is addressed as "you".
-
-Activities other than copying, distribution and modification are not
-covered by this License; they are outside its scope. The act of
-running the Program is not restricted, and the output from the Program
-is covered only if its contents constitute a work based on the
-Program (independent of having been made by running the Program).
-Whether that is true depends on what the Program does.
-
- 1. You may copy and distribute verbatim copies of the Program's
-source code as you receive it, in any medium, provided that you
-conspicuously and appropriately publish on each copy an appropriate
-copyright notice and disclaimer of warranty; keep intact all the
-notices that refer to this License and to the absence of any warranty;
-and give any other recipients of the Program a copy of this License
-along with the Program.
-
-You may charge a fee for the physical act of transferring a copy, and
-you may at your option offer warranty protection in exchange for a fee.
-
- 2. You may modify your copy or copies of the Program or any portion
-of it, thus forming a work based on the Program, and copy and
-distribute such modifications or work under the terms of Section 1
-above, provided that you also meet all of these conditions:
-
- a) You must cause the modified files to carry prominent notices
- stating that you changed the files and the date of any change.
-
- b) You must cause any work that you distribute or publish, that in
- whole or in part contains or is derived from the Program or any
- part thereof, to be licensed as a whole at no charge to all third
- parties under the terms of this License.
-
- c) If the modified program normally reads commands interactively
- when run, you must cause it, when started running for such
- interactive use in the most ordinary way, to print or display an
- announcement including an appropriate copyright notice and a
- notice that there is no warranty (or else, saying that you provide
- a warranty) and that users may redistribute the program under
- these conditions, and telling the user how to view a copy of this
- License. (Exception: if the Program itself is interactive but
- does not normally print such an announcement, your work based on
- the Program is not required to print an announcement.)
-
-These requirements apply to the modified work as a whole. If
-identifiable sections of that work are not derived from the Program,
-and can be reasonably considered independent and separate works in
-themselves, then this License, and its terms, do not apply to those
-sections when you distribute them as separate works. But when you
-distribute the same sections as part of a whole which is a work based
-on the Program, the distribution of the whole must be on the terms of
-this License, whose permissions for other licensees extend to the
-entire whole, and thus to each and every part regardless of who wrote it.
-
-Thus, it is not the intent of this section to claim rights or contest
-your rights to work written entirely by you; rather, the intent is to
-exercise the right to control the distribution of derivative or
-collective works based on the Program.
-
-In addition, mere aggregation of another work not based on the Program
-with the Program (or with a work based on the Program) on a volume of
-a storage or distribution medium does not bring the other work under
-the scope of this License.
-
- 3. You may copy and distribute the Program (or a work based on it,
-under Section 2) in object code or executable form under the terms of
-Sections 1 and 2 above provided that you also do one of the following:
-
- a) Accompany it with the complete corresponding machine-readable
- source code, which must be distributed under the terms of Sections
- 1 and 2 above on a medium customarily used for software interchange; or,
-
- b) Accompany it with a written offer, valid for at least three
- years, to give any third party, for a charge no more than your
- cost of physically performing source distribution, a complete
- machine-readable copy of the corresponding source code, to be
- distributed under the terms of Sections 1 and 2 above on a medium
- customarily used for software interchange; or,
-
- c) Accompany it with the information you received as to the offer
- to distribute corresponding source code. (This alternative is
- allowed only for noncommercial distribution and only if you
- received the program in object code or executable form with such
- an offer, in accord with Subsection b above.)
-
-The source code for a work means the preferred form of the work for
-making modifications to it. For an executable work, complete source
-code means all the source code for all modules it contains, plus any
-associated interface definition files, plus the scripts used to
-control compilation and installation of the executable. However, as a
-special exception, the source code distributed need not include
-anything that is normally distributed (in either source or binary
-form) with the major components (compiler, kernel, and so on) of the
-operating system on which the executable runs, unless that component
-itself accompanies the executable.
-
-If distribution of executable or object code is made by offering
-access to copy from a designated place, then offering equivalent
-access to copy the source code from the same place counts as
-distribution of the source code, even though third parties are not
-compelled to copy the source along with the object code.
-
- 4. You may not copy, modify, sublicense, or distribute the Program
-except as expressly provided under this License. Any attempt
-otherwise to copy, modify, sublicense or distribute the Program is
-void, and will automatically terminate your rights under this License.
-However, parties who have received copies, or rights, from you under
-this License will not have their licenses terminated so long as such
-parties remain in full compliance.
-
- 5. You are not required to accept this License, since you have not
-signed it. However, nothing else grants you permission to modify or
-distribute the Program or its derivative works. These actions are
-prohibited by law if you do not accept this License. Therefore, by
-modifying or distributing the Program (or any work based on the
-Program), you indicate your acceptance of this License to do so, and
-all its terms and conditions for copying, distributing or modifying
-the Program or works based on it.
-
- 6. Each time you redistribute the Program (or any work based on the
-Program), the recipient automatically receives a license from the
-original licensor to copy, distribute or modify the Program subject to
-these terms and conditions. You may not impose any further
-restrictions on the recipients' exercise of the rights granted herein.
-You are not responsible for enforcing compliance by third parties to
-this License.
-
- 7. If, as a consequence of a court judgment or allegation of patent
-infringement or for any other reason (not limited to patent issues),
-conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License. If you cannot
-distribute so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you
-may not distribute the Program at all. For example, if a patent
-license would not permit royalty-free redistribution of the Program by
-all those who receive copies directly or indirectly through you, then
-the only way you could satisfy both it and this License would be to
-refrain entirely from distribution of the Program.
-
-If any portion of this section is held invalid or unenforceable under
-any particular circumstance, the balance of the section is intended to
-apply and the section as a whole is intended to apply in other
-circumstances.
-
-It is not the purpose of this section to induce you to infringe any
-patents or other property right claims or to contest validity of any
-such claims; this section has the sole purpose of protecting the
-integrity of the free software distribution system, which is
-implemented by public license practices. Many people have made
-generous contributions to the wide range of software distributed
-through that system in reliance on consistent application of that
-system; it is up to the author/donor to decide if he or she is willing
-to distribute software through any other system and a licensee cannot
-impose that choice.
-
-This section is intended to make thoroughly clear what is believed to
-be a consequence of the rest of this License.
-
- 8. If the distribution and/or use of the Program is restricted in
-certain countries either by patents or by copyrighted interfaces, the
-original copyright holder who places the Program under this License
-may add an explicit geographical distribution limitation excluding
-those countries, so that distribution is permitted only in or among
-countries not thus excluded. In such case, this License incorporates
-the limitation as if written in the body of this License.
-
- 9. The Free Software Foundation may publish revised and/or new versions
-of the General Public License from time to time. Such new versions will
-be similar in spirit to the present version, but may differ in detail to
-address new problems or concerns.
-
-Each version is given a distinguishing version number. If the Program
-specifies a version number of this License which applies to it and "any
-later version", you have the option of following the terms and conditions
-either of that version or of any later version published by the Free
-Software Foundation. If the Program does not specify a version number of
-this License, you may choose any version ever published by the Free Software
-Foundation.
-
- 10. If you wish to incorporate parts of the Program into other free
-programs whose distribution conditions are different, write to the author
-to ask for permission. For software which is copyrighted by the Free
-Software Foundation, write to the Free Software Foundation; we sometimes
-make exceptions for this. Our decision will be guided by the two goals
-of preserving the free status of all derivatives of our free software and
-of promoting the sharing and reuse of software generally.
-
- NO WARRANTY
-
- 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
-FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
-OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
-PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
-OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
-TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
-PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
-REPAIR OR CORRECTION.
-
- 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
-WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
-REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
-INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
-OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
-TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
-YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
-PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
-POSSIBILITY OF SUCH DAMAGES.
-
- END OF TERMS AND CONDITIONS
-
- How to Apply These Terms to Your New Programs
-
- If you develop a new program, and you want it to be of the greatest
-possible use to the public, the best way to achieve this is to make it
-free software which everyone can redistribute and change under these terms.
-
- To do so, attach the following notices to the program. It is safest
-to attach them to the start of each source file to most effectively
-convey the exclusion of warranty; and each file should have at least
-the "copyright" line and a pointer to where the full notice is found.
-
- <one line to give the program's name and a brief idea of what it does.>
- Copyright (C) 19yy <name of author>
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-
-
-Also add information on how to contact you by electronic and paper mail.
-
-If the program is interactive, make it output a short notice like this
-when it starts in an interactive mode:
-
- Gnomovision version 69, Copyright (C) 19yy name of author
- Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
- This is free software, and you are welcome to redistribute it
- under certain conditions; type `show c' for details.
-
-The hypothetical commands `show w' and `show c' should show the appropriate
-parts of the General Public License. Of course, the commands you use may
-be called something other than `show w' and `show c'; they could even be
-mouse-clicks or menu items--whatever suits your program.
-
-You should also get your employer (if you work as a programmer) or your
-school, if any, to sign a "copyright disclaimer" for the program, if
-necessary. Here is a sample; alter the names:
-
- Yoyodyne, Inc., hereby disclaims all copyright interest in the program
- `Gnomovision' (which makes passes at compilers) written by James Hacker.
-
- <signature of Ty Coon>, 1 April 1989
- Ty Coon, President of Vice
-
-This General Public License does not permit incorporating your program into
-proprietary programs. If your program is a subroutine library, you may
-consider it more useful to permit linking proprietary applications with the
-library. If this is what you want to do, use the GNU Library General
-Public License instead of this License.
View
53 trunk/LICENSE.txt
@@ -1,53 +0,0 @@
-RubyGems is copyrighted free software by Chad Fowler, Rich Kilmer, Jim
-Weirich and others. You can redistribute it and/or modify it under
-either the terms of the GPL (see the GPL.txt file), or the conditions
-below:
-
- 1. You may make and give away verbatim copies of the source form of the
- software without restriction, provided that you duplicate all of the
- original copyright notices and associated disclaimers.
-
- 2. You may modify your copy of the software in any way, provided that
- you do at least ONE of the following:
-
- a) place your modifications in the Public Domain or otherwise
- make them Freely Available, such as by posting said
- modifications to Usenet or an equivalent medium, or by allowing
- the author to include your modifications in the software.
-
- b) use the modified software only within your corporation or
- organization.
-
- c) rename any non-standard executables so the names do not conflict
- with standard executables, which must also be provided.
-
- d) make other distribution arrangements with the author.
-
- 3. You may distribute the software in object code or executable
- form, provided that you do at least ONE of the following:
-
- a) distribute the executables and library files of the software,
- together with instructions (in the manual page or equivalent)
- on where to get the original distribution.
-
- b) accompany the distribution with the machine-readable source of
- the software.
-
- c) give non-standard executables non-standard names, with
- instructions on where to get the original software distribution.
-
- d) make other distribution arrangements with the author.
-
- 4. You may modify and include the part of the software into any other
- software (possibly commercial).
-
- 5. The scripts and library files supplied as input to or produced as
- output from the software do not automatically fall under the
- copyright of the software, but belong to whomever generated them,
- and may be sold commercially, and may be aggregated with this
- software.
-
- 6. THIS SOFTWARE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR
- IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- PURPOSE.
View
71 trunk/README
@@ -1,71 +0,0 @@
-= RubyGems
-
-(See Releases for release-specific information)
-
-== Installation
-
-Get it from RubyForge (http://rubygems.rubyforge.org) and run (as root, if appropriate and necessary)
-
- ruby setup.rb
-
-For more details and other options, see:
-
- ruby setup.rb --help
-
-* {User Guide/Installation}[http://docs.rubygems.org/read/chapter/3]
-
-== For User Documentation, see
-
-* {RubyGems User Guide}[http://docs.rubygems.org/read/book/1]
-* {Frequently Asked Questions}[http://docs.rubygems.org/read/book/3]
-
-== For developer docs see
-
-* {Creating Gems}[http://docs.rubygems.org/read/chapter/5]
-* {GEM Specification}[http://docs.rubygems.org/read/chapter/20]
-
-== The home page of the RubyGems Documentation
-
-* {RubyGems Home}[http://rubygems.rubyforge.org]
-
-== Additional directories
-
-[./bin/...] binary commands (gem, gem_server, etc)
-[./lib/...] the RubyGems library
-[./packages/...] default RubyGems packages (currently only 'sources')
-[./test/...] unit and functional tests
-[./examples/...] example library w/gemspec for generating and installing gems
-[./gemspecs/...] example gemspecs
-
-== Credits
-
-RubyGems was originally developed at RubyConf 2003 by:
-
-* Rich Kilmer -- rich(at)infoether.com
-* Chad Fowler -- chad(at)chadfowler.com
-* David Black -- dblack(at)wobblini.net
-* Paul Brannan -- paul(at)atdesk.com
-* Jim Weirch -- {jim(at)weirichhouse.org}[mailto:jim@weirichhouse.org]
-
-== Contributors since then
-
-* Gavin Sinclair -- gsinclair(at)soyabean.com.au
-* George Marrows-- george.marrows(at)ntlworld.com
-* Dick Davies -- rasputnik(at)hellooperator.net
-* Mauricio Fernandez -- batsman.geo(at)yahoo.com
-* Simon Strandgaard -- neoneye(at)adslhome.dk
-* Dave Glasser -- glasser(at)mit.edu
-* Paul Duncan -- pabs(at)pablotron.org
-* Ville Aine -- vaine(at)cs.helsinki.fi
-* Ryan Davis --
-* Eric Hodel -- drbrain(at)segment7.net
-
-(If your name is missing, PLEASE let us know!)
-
-== Feedback
-
-Please provide us feedback at http://rubyforge.org/projects/rubygems
-
-Thanks!
-
--The RubyGems Team
View
429 trunk/Rakefile
@@ -1,429 +0,0 @@
-# Rakefile for RubyGems -*- ruby -*-
-
-#--
-# Copyright 2006 by Chad Fowler, Rich Kilmer, Jim Weirich and others.
-# All rights reserved.
-# See LICENSE.txt for permissions.
-#++
-
-require 'rubygems'
-require 'rake/clean'
-require 'rake/testtask'
-require 'rake/packagetask'
-require 'rake/gempackagetask'
-require 'rake/rdoctask'
-
-def announce(msg='')
- STDERR.puts msg
-end
-
-# Disable certs for now.
-if RUBY_PLATFORM.match('mswin')
- ENV['CERT_DIR'] ||= (File.join(ENV['USERPROFILE'], '.gem'))
-else
- ENV['CERT_DIR'] ||= File.expand_path(File.join('~', '.gem'))
-end
-
-PKG_NAME = 'rubygems'
-def package_version
- `ruby -Ilib bin/gem environment packageversion`.chomp
-end
-
-if ENV['REL']
- PKG_VERSION = ENV['REL']
- CURRENT_VERSION = package_version
-else
- PKG_VERSION = package_version
- CURRENT_VERSION = PKG_VERSION
-end
-
-CLEAN.include("COMMENTS")
-CLOBBER.include(
- 'InstalledFiles',
- "test/data/one/one-*0.0.1.gem",
- "test/temp",
- 'test/mock/gem/doc',
- 'test/mock/gem/cache',
- 'test/data/gemhome',
- 'test/data/[a-z]*.gem',
- 'scripts/*.hieraki',
- 'data__',
- 'html',
- 'pkgs/sources/sources*.gem',
- '.config',
- '**/debug.log',
- 'logs',
- '*.out'
- )
-CLOBBER.exclude('test/data/broken-1.0.0.gem')
-
-desc "Run all tests"
-task :default => [:test]
-
-desc "Run unit tests (functionals fail on win32)"
-task :test => [:test_units]
-
-desc "Run just the unit tests"
-Rake::TestTask.new(:test_units) do |t|
- t.test_files = FileList['test/test*.rb']
- t.warning = true
-end
-
-desc "Run just the functional tests"
-Rake::TestTask.new(:test_functional) do |t|
- t.test_files = FileList['test/functional*.rb']
- t.warning = true
-end
-
-desc "Run the unit and functional tests"
-Rake::TestTask.new(:test_all) do |t|
- t.test_files = FileList['test/{test,functional}*.rb']
- t.warning = true
-end
-
-desc "Run the tests for a build"
-task :build_tests do
- html_dir = ENV['TESTRESULTS'] || 'html/tests'
- ruby %{-Ilib scripts/buildtests.rb #{html_dir}}
- open("#{html_dir}/summary.html") do |inf|
- open("#{html_dir}/summary.new", "w") do |outf|
- inf.each do |line|
- if line =~ /td align/
- line = " <td align=\"left\">#{Time.now}</td><td align=\"right\">"
- end
- outf.puts line
- end
- end
- end
- mv "#{html_dir}/summary.html", "#{html_dir}/summary.old"
- mv "#{html_dir}/summary.new", "#{html_dir}/summary.html"
-end
-
-# Shortcuts for test targets
-task :tf => [:test_functional]
-task :tu => [:test_units]
-task :ta => [:test_all]
-
-task :gemtest do
- ruby %{-Ilib -rscripts/runtest -e 'run_tests("test/test_gempaths.rb", true)'}
-end
-
-# --------------------------------------------------------------------
-# Creating a release
-
-desc "Make a new release"
-task :release => [
- :prerelease,
- :clobber,
- :test_all,
- :update_version,
- :package,
- :tag] do
-
- announce
- announce "**************************************************************"
- announce "* Release #{PKG_VERSION} Complete."
- announce "* Packages ready to upload."
- announce "**************************************************************"
- announce
-end
-
-# Validate that everything is ready to go for a release.
-task :prerelease do
- announce
- announce "**************************************************************"
- announce "* Making RubyGem Release #{PKG_VERSION}"
- announce "* (current version #{CURRENT_VERSION})"
- announce "**************************************************************"
- announce
-
- # Is a release number supplied?
- unless ENV['REL']
- fail "Usage: rake release REL=x.y.z [REUSE=tag_suffix]"
- end
-
- # Is the release different than the current release.
- # (or is REUSE set?)
- if PKG_VERSION == CURRENT_VERSION && ! ENV['REUSE']
- fail "Current version is #{PKG_VERSION}, must specify REUSE=tag_suffix to reuse version"
- end
-
- # Are all source files checked in?
- if ENV['RELTEST']
- announce "Release Task Testing, skipping checked-in file test"
- else
- announce "Checking for unchecked-in files..."
- data = `svn st`
- unless data =~ /^$/
- abort "svn status is not clean ... do you have unchecked-in files?"
- end
- announce "No outstanding checkins found ... OK"
- end
-end
-
-task :update_version => [:prerelease] do
- if PKG_VERSION == CURRENT_VERSION
- announce "No version change ... skipping version update"
- else
- announce "Updating RubyGem version to #{PKG_VERSION}"
- open("lib/rubygems/rubygems_version.rb", "w") do |f|
- f.puts "# DO NOT EDIT"
- f.puts "# This file is auto-generated by build scripts."
- f.puts "# See: rake update_version"
- f.puts "module Gem"
- f.puts " RubyGemsVersion = '#{PKG_VERSION}'"
- f.puts "end"
- end
- if ENV['RELTEST']
- announce "Release Task Testing, skipping commiting of new version"
- else
- sh %{svn commit -m "Updated to version #{PKG_VERSION}" lib/rubygems/rubygems_version.rb} # "
- end
- end
-end
-
-task :tag => [:prerelease] do
- reltag = "REL_#{PKG_VERSION.gsub(/\./, '_')}"
- reltag = "REL_#{ENV['REUSE'].gsub(/\./, '_')}" if ENV['REUSE']
- announce "Tagging SVN with [#{reltag}]"
- software_dir = File.basename(Dir.pwd)
- if ENV['RELTEST']
- announce "Release Task Testing, skipping SVN tagging (in dir #{software_dir})"
- else
- sh %{svn copy svn+ssh://rubyforge.org/var/svn/rubygems/trunk svn+ssh://rubyforge.org/var/svn/rubygems/tags/#{reltag}}
- end
-end
-
-# --------------------------------------------------------------------
-
-begin # rcov
- require 'rcov/rcovtask'
-
- Rcov::RcovTask.new do |t|
- t.libs << "test"
- t.rcov_opts = ['-xRakefile', '-xrakefile', '-xpublish.rf', '--text-report']
- t.test_files = FileList[
- 'test/{functional,test}*.rb'
- ]
- t.verbose = true
- end
-rescue LoadError
-end
-
-# --------------------------------------------------------------------
-# Create a task to build the RDOC documentation tree.
-
-desc "Create the RDOC html files"
-rd = Rake::RDocTask.new("rdoc") { |rdoc|
- rdoc.rdoc_dir = 'html'
- rdoc.title = "RubyGems"
- rdoc.options << '--line-numbers' << '--inline-source' << '--main' << 'README'
- rdoc.rdoc_files.include('README', 'TODO', 'LICENSE.txt', 'GPL.txt')
- rdoc.rdoc_files.include('lib/**/*.rb')
- rdoc.rdoc_files.include('doc/**/*.rdoc')
-# rdoc.rdoc_files.include('test/**/*.rb')
-}
-
-desc "Publish the RDOCs on RubyForge"
-task :publish_rdoc => ["html/index.html"] do
- # NOTE: This task assumes that you have an SSH alias setup for rubyforge.
- mkdir_p "emptydir"
- sh "scp -rq emptydir rubyforge:/var/www/gforge-projects/rubygems/rdoc"
- sh "scp -rq html/* rubyforge:/var/www/gforge-projects/rubygems/rdoc"
- rm_r "emptydir"
-end
-
-# Wiki Doc Targets
-
-desc "Upload the Hieraki Data"
-task :upload => [:upload_gemdoc]
-
-task :upload_gemdoc => ['scripts/gemdoc.hieraki'] do
- ruby %{scripts/upload_gemdoc.rb}
-end
-
-desc "Build the Hieraki documentation"
-task :hieraki => ['scripts/gemdoc.hieraki', 'scripts/specdoc.hieraki']
-
-file 'scripts/gemdoc.hieraki' => ['scripts/gemdoc.rb', 'scripts/gemdoc.data'] do
- chdir('scripts') do
- ruby %{-I../lib gemdoc.rb <gemdoc.data >gemdoc.hieraki}
- end
-end
-
-file 'scripts/specdoc.hieraki' =>
- ['scripts/specdoc.rb', 'scripts/specdoc.data', 'scripts/specdoc.yaml'] do
- chdir('scripts') do
- ruby %{-I../lib specdoc.rb >specdoc.hieraki}
- end
-end
-
-# Package tasks
-
-PKG_FILES = FileList[
- "Rakefile", "ChangeLog", "TODO", "README", "LICENSE.txt",
- "GPL.txt",
- "setup.rb",
- "bin/*",
- "doc/*.css", "doc/*.rb",
- "examples/**/*",
- "gemspecs/**/*",
- "lib/**/*.rb",
- "pkgs/**/*",
- "redist/*.gem",
- "scripts/*.rb",
- "test/**/*",
- ".document"
-]
-PKG_FILES.exclude(%r(^test/temp(/|$)))
-
-Rake::PackageTask.new("package") do |p|
- p.name = PKG_NAME
- p.version = PKG_VERSION
- p.need_tar = true
- p.need_zip = true
- p.package_files = PKG_FILES
-end
-
-Spec = Gem::Specification.new do |s|
- s.name = PKG_NAME + "-update"
- s.version = PKG_VERSION
- s.required_ruby_version = Gem::Requirement.new '> 1.8.3'
- s.summary = "RubyGems Update GEM"
- s.description = %{RubyGems is a package management framework for Ruby. This Gem
-is a update for the base RubyGems software. You must have a base
-installation of RubyGems before this update can be applied.
-}
- s.files = PKG_FILES.to_a
- s.require_path = 'lib'
- s.authors = ['Jim Weirich', 'Chad Fowler', 'Eric Hodel']
- s.email = "rubygems-developers@rubyforge.org"
- s.homepage = "http://rubygems.rubyforge.org"
- s.rubyforge_project = "rubygems"
- s.bindir = "bin" # Use these for applications.
- s.executables = ["update_rubygems"]
- certdir = ENV['CERT_DIR']
- if certdir
- s.signing_key = File.join(certdir, 'gem-private_key.pem')
- s.cert_chain = [File.join(certdir, 'gem-public_cert.pem')]
- end
-end
-
-# Add console output about signing the Gem
-file "pkg/#{Spec.full_name}.gem" do
- puts "Signed with certificates in '#{ENV['CERT_DIR']}'" if ENV['CERT_DIR']
-end
-
-Rake::GemPackageTask.new(Spec) do |p| end
-
-desc "Build the Gem spec file for the rubygems-update package"
-task :gemspec => "pkg/rubygems-update.gemspec"
-file "pkg/rubygems-update.gemspec" => ["pkg", "Rakefile"] do |t|
- open(t.name, "w") do |f| f.puts Spec.to_yaml end
-end
-
-# Install RubyGems
-
-desc "Install RubyGems"
-task :install do
- ruby 'setup.rb'
-end
-
-# Run 'gem' (using local bin and lib directories).
-# e.g.
-# rake rungem -- install -r blahblah --test
-
-desc "Run local 'gem'"
-task :rungem do
- ARGV.shift
- exec "ruby -Ilib bin/gem #{ARGV.join(' ')}"
-end
-
-# Misc Tasks ---------------------------------------------------------
-
-def egrep(pattern)
- Dir['**/*.rb'].each do |fn|
- count = 0
- open(fn) do |f|
- while line = f.gets
- count += 1
- if line =~ pattern
- puts "#{fn}:#{count}:#{line}"
- end
- end
- end
- end
-end
-
-desc "Look for TODO and FIXME tags in the code"
-task :todo do
- egrep /#.*(FIXME|TODO|TBD)/
-end
-
-desc "Look for Debugging print lines"
-task :dbg do
- egrep /\bDBG|\bbreakpoint\b/
-end
-
-desc "List all ruby files"
-task :rubyfiles do
- puts Dir['**/*.rb'].reject { |fn| fn =~ /^pkg/ }
- puts Dir['bin/*'].reject { |fn| fn =~ /CVS|(~$)|(\.rb$)/ }
-end
-
-task :rf => :rubyfiles
-
-# These tasks expect to have the following directory structure:
-#
-# git/git.rubini.us/code # Rubinius git HEAD checkout
-# svn/ruby/trunk # ruby subversion HEAD checkout
-# svn/rubygems/trunk # RubyGems subversion HEAD checkout
-#
-# If you don't have this directory structure, set RUBY_PATH and/or
-# RUBINIUS_PATH.
-
-diff_options = "-urpN --exclude '*svn*' --exclude '*swp' --exclude '*rbc'"
-rsync_options = "-avP --exclude '*svn*' --exclude '*swp' --exclude '*rbc' --exclude '*.rej' --exclude '*.orig'"
-
-rubinius_dir = ENV['RUBINIUS_PATH'] || '../../../git/git.rubini.us/code'
-ruby_dir = ENV['RUBY_PATH'] || '../../ruby/trunk'
-
-desc "Updates Ruby HEAD with the currently checked-out copy of RubyGems."
-task :update_ruby do
- sh "rsync #{rsync_options} bin/gem #{ruby_dir}/bin/gem"
- sh "rsync #{rsync_options} lib/ #{ruby_dir}/lib"
- sh "rsync #{rsync_options} test/ #{ruby_dir}/test/rubygems"
- sh "rsync #{rsync_options} util/gem_prelude.rb #{ruby_dir}/gem_prelude.rb"
-end
-
-desc "Diffs Ruby HEAD with the currently checked-out copy of RubyGems."
-task :diff_ruby do
- options = "-urpN --exclude '*svn*' --exclude '*swp' --exclude '*rbc'"
-
- sh "diff #{diff_options} bin/gem #{ruby_dir}/bin/gem; true"
- sh "diff #{diff_options} lib/ubygems.rb #{ruby_dir}/lib/ubygems.rb; true"
- sh "diff #{diff_options} lib/rubygems.rb #{ruby_dir}/lib/rubygems.rb; true"
- sh "diff #{diff_options} lib/rubygems #{ruby_dir}/lib/rubygems; true"
- sh "diff #{diff_options} lib/rbconfig #{ruby_dir}/lib/rbconfig; true"
- sh "diff #{diff_options} test #{ruby_dir}/test/rubygems; true"
- sh "diff #{diff_options} util/gem_prelude.rb #{ruby_dir}/gem_prelude.rb; true"
-end
-
-desc "Updates Rubinius HEAD with the currently checked-out copy of RubyGems."
-task :update_rubinius do
- sh "rsync #{rsync_options} bin/gem #{rubinius_dir}/lib/bin/gem.rb"
- sh "rsync #{rsync_options} lib/ #{rubinius_dir}/lib"
- sh "rsync #{rsync_options} test/ #{rubinius_dir}/test/rubygems"
- sh "rsync #{rsync_options} util/gem_prelude.rb #{rubinius_dir}/kernel/core/gem_prelude.rb"
-end
-
-desc "Diffs Rubinius HEAD with the currently checked-out copy of RubyGems."
-task :diff_rubinius do
- sh "diff #{diff_options} bin/gem #{rubinius_dir}/lib/bin/gem.rb; true"
- sh "diff #{diff_options} lib/ubygems.rb #{rubinius_dir}/lib/ubygems.rb; true"
- sh "diff #{diff_options} lib/rubygems.rb #{rubinius_dir}/lib/rubygems.rb; true"
- sh "diff #{diff_options} lib/rubygems #{rubinius_dir}/lib/rubygems; true"
- sh "diff #{diff_options} lib/rbconfig #{rubinius_dir}/lib/rbconfig; true"
- sh "diff #{diff_options} test #{rubinius_dir}/test/rubygems; true"
- sh "diff #{diff_options} util/gem_prelude.rb #{rubinius_dir}/kernel/core/gem_prelude.rb; true"
-end
View
1  trunk/TODO
@@ -1 +0,0 @@
-* optional dependencies: "semitar can use REXML, but it works better if you have the ruby raptor library installed", or not so optional as in: "you need Ruby/RSS > = 1.0 OR rss > 0.91 for this library to work"
View
28 trunk/bin/gem
@@ -1,28 +0,0 @@
-#!/usr/bin/env ruby
-#--
-# Copyright 2006 by Chad Fowler, Rich Kilmer, Jim Weirich and others.
-# All rights reserved.
-# See LICENSE.txt for permissions.
-#++
-
-require 'rubygems'
-require 'rubygems/gem_runner'
-require 'rubygems/exceptions'
-
-required_version = Gem::Requirement.new "> 1.8.3"
-
-unless required_version.satisfied_by? Gem.ruby_version then
- abort "Expected Ruby Version #{required_version}, was #{Gem.ruby_version}"
-end
-
-# We need to preserve the original ARGV to use for passing gem options
-# to source gems. If there is a -- in the line, strip all options after
-# it...its for the source building process.
-args = !ARGV.include?("--") ? ARGV.clone : ARGV[0...ARGV.index("--")]
-
-begin
- Gem::GemRunner.new.run args
-rescue Gem::SystemExitException => e
- exit e.exit_code
-end
-
View
38 trunk/bin/update_rubygems
@@ -1,38 +0,0 @@
-#!/usr/bin/env ruby
-#--
-# Copyright 2006 by Chad Fowler, Rich Kilmer, Jim Weirich and others.
-# All rights reserved.
-# See LICENSE.txt for permissions.
-#++
-
-require 'rubygems'
-
-if ARGV.include? '-h' or ARGV.include? '--help' then
- puts "rubygems_update [options]"
- puts
- puts "This will install the latest version of RubyGems."
- puts
- puts "\t--version=X.Y\tUpdate rubygems from the X.Y version."
- exit
-end
-
-unless ARGV.grep(/--version=([\d\.]*)/).empty? then
- exec "#{Gem.ruby} -S #{$PROGRAM_NAME} _#{$1}_"
-end
-
-update_dir = $LOAD_PATH.find { |fn| fn =~ /rubygems-update/ }
-
-if update_dir.nil?
- puts "Error: Cannot find RubyGems Update Path!"
- puts
- puts "RubyGems has already been updated."
- puts "The rubygems-update gem may now be uninstalled."
- puts "E.g. gem uninstall rubygems-update"
-else
- update_dir = File.dirname(update_dir)
- Dir.chdir update_dir
- update_dir =~ /([0-9.]*)$/
- RGVERSION = $1
- puts "Installing RubyGems #{RGVERSION}"
- system "#{Gem.ruby} setup.rb #{ARGV.join(' ')}"
-end
View
BIN  trunk/doc/design/RubyGemsRemoteInstallerUML.png
Deleted file not rendered
View
BIN  trunk/doc/design/rubygems_uml.jude
Binary file not shown
View
73 trunk/doc/doc.css
@@ -1,73 +0,0 @@
-BODY
-{
-font-size:10.5pt;
-font-family:verdana,sans-serif;
-}
-
-th
-{
-font-size:10.5pt;
-font-family:verdana,sans-serif;
-}
-
-td
-{
-font-size:10.5pt;
-font-family:verdana,sans-serif;
-}
-
-
-code
-{
-background-color:yellow;
-}
-
-#HEADLINE
-{
-font-size:12pt;
-font-family:verdana,sans-serif;
-}
-
-A
-{
-color:#993300;
-
-font-family:verdana,sans-serif;
-text-decoration:none;
-
-}
-
-A:hover
-{
-color:#404040;
-font-family:verdana,sans-serif;
-text-decoration:none;
-}
-
-h2 {
- color:#993300;
- background: #cccccc;
- border-bottom: #646464 1px solid;
- padding-top: 0.1em;
- padding-left: 0.5em;
- padding-bottom: 0.0em;
- font-size:12pt;
-
-}
-
-pre {
- border-right: #646464 1px solid;
- padding-right: 0.5em;
- border-top: #646464 1px solid;
- padding-top: 0.5em;
- border-left: #646464 1px solid;
- padding-left: 0.5em;
- border-bottom: #646464 1px solid;
- padding-bottom: 0.5em;
- margin-left: 1em;
- margin-right: 2em;
- white-space: pre;
- background-color: #e6e6e6;
- color: black;
-}
-
View
10 trunk/doc/makedoc.rb
@@ -1,10 +0,0 @@
-#--
-# Copyright 2006 by Chad Fowler, Rich Kilmer, Jim Weirich and others.
-# All rights reserved.
-# See LICENSE.txt for permissions.
-#++
-
-Dir.glob("*.txt").each do |file|
- htmlfile = File.basename(file)[0...-(File.extname(file).size)]+".html"
- `wiki2html -b . -s doc.css -t "RubyGems" -o #{htmlfile} #{file}`
-end
View
569 trunk/doc/rdoc_templates/jamis.rb
@@ -1,569 +0,0 @@
-#--
-# Copyright 2006 by Chad Fowler, Rich Kilmer, Jim Weirich and others.
-# All rights reserved.
-# See LICENSE.txt for permissions.
-#++
-
-module RDoc
-module Page
-
-FONTS = "\"Bitstream Vera Sans\", Verdana, Arial, Helvetica, sans-serif"
-
-STYLE = <<CSS
-a {
- color: #00F;
- text-decoration: none;
-}
-
-a:hover {
- color: #77F;
- text-decoration: underline;
-}
-
-body, td, p {
- font-family: %fonts%;
- background: #FFF;
- color: #000;
- margin: 0px;
- font-size: small;
-}
-
-#content {
- margin: 2em;
-}
-
-#description p {
- margin-bottom: 0.5em;
-}
-
-.sectiontitle {
- margin-top: 1em;
- margin-bottom: 1em;
- padding: 0.5em;
- padding-left: 2em;
- background: #005;
- color: #FFF;
- font-weight: bold;
- border: 1px dotted black;
-}
-
-.attr-rw {
- padding-left: 1em;
- padding-right: 1em;
- text-align: center;
- color: #055;
-}
-
-.attr-name {
- font-weight: bold;
-}
-
-.attr-desc {
-}
-
-.attr-value {
- font-family: monospace;
-}
-
-.file-title-prefix {
- font-size: large;
-}
-
-.file-title {
- font-size: large;
- font-weight: bold;
- background: #005;
- color: #FFF;
-}
-
-.banner {
- background: #005;
- color: #FFF;
- border: 1px solid black;
- padding: 1em;
-}
-
-.banner td {
- background: transparent;
- color: #FFF;
-}
-
-h1 a, h2 a, .sectiontitle a, .banner a {
- color: #FF0;
-}
-
-h1 a:hover, h2 a:hover, .sectiontitle a:hover, .banner a:hover {
- color: #FF7;
-}
-
-.dyn-source {
- display: none;
- background: #FFE;
- color: #000;
- border: 1px dotted black;
- margin: 0.5em 2em 0.5em 2em;
- padding: 0.5em;
-}
-
-.dyn-source .cmt {
- color: #00F;
- font-style: italic;
-}
-
-.dyn-source .kw {
- color: #070;
- font-weight: bold;
-}
-
-.method {
- margin-left: 1em;
- margin-right: 1em;
- margin-bottom: 1em;
-}
-
-.description pre {
- padding: 0.5em;
- border: 1px dotted black;
- background: #FFE;
-}
-
-.method .title {
- font-family: monospace;
- font-size: large;
- border-bottom: 1px dashed black;
- margin-bottom: 0.3em;
- padding-bottom: 0.1em;
-}
-
-.method .description, .method .sourcecode {
- margin-left: 1em;
-}
-
-.description p, .sourcecode p {
- margin-bottom: 0.5em;
-}
-
-.method .sourcecode p.source-link {
- text-indent: 0em;
- margin-top: 0.5em;
-}
-
-.method .aka {
- margin-top: 0.3em;
- margin-left: 1em;
- font-style: italic;
- text-indent: 2em;
-}
-
-h1 {
- padding: 1em;
- border: 1px solid black;
- font-size: x-large;
- font-weight: bold;
- color: #FFF;
- background: #007;
-}
-
-h2 {
- padding: 0.5em 1em 0.5em 1em;
- border: 1px solid black;
- font-size: large;
- font-weight: bold;
- color: #FFF;
- background: #009;
-}
-
-h3, h4, h5, h6 {
- padding: 0.2em 1em 0.2em 1em;
- border: 1px dashed black;
- color: #000;
- background: #AAF;
-}
-
-.sourcecode > pre {
- padding: 0.5em;
- border: 1px dotted black;
- background: #FFE;
-}
-
-CSS
-
-BODY = <<HTML
-<html>
- <head>
- <title>%title%</title>
- <meta http-equiv="Content-Type" content="text/html; charset=%charset%" />
- <link rel="stylesheet" href="%style_url%" type="text/css" media="screen" />
-
- <script type="text/javascript" language="JavaScript">
- <!--
- function toggleSource( id )
- {
- var elem
- var link
-
- if( document.all )
- {
- elem = eval( "document.all." + id )
- link = eval( "document.all.l_" + id )
- }
- else
- {
- elem = document.getElementById( id )
- link = document.getElementById( "l_" + id )
- }
-
- if( elem.style.display == "block" )
- {
- elem.style.display = "none"
- link.innerHTML = "show source"
- }
- else
- {
- elem.style.display = "block"
- link.innerHTML = "hide source"
- }
- }
-
- function openCode( url )
- {
- window.open( url, "SOURCE_CODE", "width=400,height=400,scrollbars=yes" )
- }
- //-->
- </script>
- </head>
-
- <body>
-!INCLUDE! <!-- banner header -->
-
- <div id="content">
-IF:diagram
- <table cellpadding='0' cellspacing='0' border='0' width="100%"><tr><td align="center">
- %diagram%
- </td></tr></table>
-ENDIF:diagram
-
-IF:description
- <div class="description">%description%</div>
-ENDIF:description
-
-IF:requires
- <div class="sectiontitle">Required Files</div>
- <ul>
-START:requires
- <li>HREF:aref:name:</li>
-END:requires
- </ul>
-ENDIF:requires
-
-IF:methods
- <div class="sectiontitle">Methods</div>
- <ul>
-START:methods
- <li>HREF:aref:name:</li>
-END:methods
- </ul>
-ENDIF:methods
-
-IF:constants
- <div class="sectiontitle">Constants</div>
- <table border='0' cellpadding='5'>
-START:constants
- <tr valign='top'>
- <td class="attr-name">%name%</td>
- <td>=</td>
- <td class="attr-value">%value%</td>
- </tr>
-IF:desc
- <tr valign='top'>
- <td>&nbsp;</td>
- <td colspan="2" class="attr-desc">%desc%</td>
- </tr>
-ENDIF:desc
-END:constants
- </table>
-ENDIF:constants
-
-IF:attributes
- <div class="sectiontitle">Attributes</div>
- <table border='0' cellpadding='5'>
-START:attributes
- <tr valign='top'>
- <td class='attr-rw'>
-IF:rw
-[%rw%]
-ENDIF:rw
- </td>
- <td class='attr-name'>%name%</td>
- <td class='attr-desc'>%a_desc%</td>
- </tr>
-END:attributes
- </table>
-ENDIF:attributes
-
-IF:classlist
- <div class="sectiontitle">Classes and Modules</div>
- %classlist%
-ENDIF:classlist
-
-!INCLUDE! <!-- method descriptions -->
-
- </div>
- </body>
-</html>
-HTML
-
-FILE_PAGE = <<HTML
-<table border='0' cellpadding='0' cellspacing='0' width="100%" class='banner'>
- <tr><td>
- <table width="100%" border='0' cellpadding='0' cellspacing='0'><tr>
- <td class="file-title" colspan="2"><span class="file-title-prefix">File</span><br />%short_name%</td>
- <td align="right">
- <table border='0' cellspacing="0" cellpadding="2">
- <tr>
- <td>Path:</td>
- <td>%full_path%
-IF:cvsurl
- &nbsp;(<a href="%cvsurl%">CVS</a>)
-ENDIF:cvsurl
- </td>
- </tr>
- <tr>
- <td>Modified:</td>
- <td>%dtm_modified%</td>
- </tr>
- </table>
- </td></tr>
- </table>
- </td></tr>
-</table><br>
-HTML
-
-###################################################################
-
-CLASS_PAGE = <<HTML
-<table width="100%" border='0' cellpadding='0' cellspacing='0' class='banner'><tr>
- <td class="file-title"><span class="file-title-prefix">%classmod%</span><br />%full_name%</td>
- <td align="right">
- <table cellspacing=0 cellpadding=2>
- <tr valign="top">
- <td>In:</td>
- <td>
-START:infiles
-HREF:full_path_url:full_path:
-IF:cvsurl
-&nbsp;(<a href="%cvsurl%">CVS</a>)
-ENDIF:cvsurl
-END:infiles
- </td>
- </tr>
-IF:parent
- <tr>
- <td>Parent:</td>
- <td>
-IF:par_url
- <a href="%par_url%">
-ENDIF:par_url
-%parent%
-IF:par_url
- </a>
-ENDIF:par_url
- </td>
- </tr>
-ENDIF:parent
- </table>
- </td>
- </tr>
- </table>
-HTML
-
-###################################################################
-
-METHOD_LIST = <<HTML
-IF:includes
-<div class="sectiontitle">Included Modules</div>
-<ul>
-START:includes
- <li>HREF:aref:name:</li>
-END:includes
-</ul>
-ENDIF:includes
-
-IF:method_list
-START:method_list
-IF:methods
-<div class="sectiontitle">%type% %category% methods</div>
-START:methods
-<div class="method">
- <div class="title">
-IF:callseq
- <a name="%aref%"></a><b>%callseq%</b>
-ENDIF:callseq
-IFNOT:callseq
- <a name="%aref%"></a><b>%name%</b>%params%
-ENDIF:callseq
-IF:codeurl
-[ <a href="javascript:openCode('%codeurl%')">source</a> ]
-ENDIF:codeurl
- </div>
-IF:m_desc
- <div class="description">
- %m_desc%
- </div>
-ENDIF:m_desc
-IF:aka
-<div class="aka">
- This method is also aliased as
-START:aka
- <a href="%aref%">%name%</a>
-END:aka
-</div>
-ENDIF:aka
-IF:sourcecode
-<div class="sourcecode">
- <p class="source-link">[ <a href="javascript:toggleSource('%aref%-source')" id="l_%aref%-source">show source</a> ]</p>
- <div id="%aref%-source" class="dyn-source">
-<pre>
-%sourcecode%
-</pre>
- </div>
-</div>
-ENDIF:sourcecode
-</div>
-END:methods
-ENDIF:methods
-END:method_list
-ENDIF:method_list
-HTML
-
-=begin
-=end
-
-########################## Source code ##########################
-
-SRC_PAGE = <<HTML
-<html>
-<head><title>%title%</title>
-<meta http-equiv="Content-Type" content="text/html; charset=%charset%">
-<style>
-.ruby-comment { color: green; font-style: italic }
-.ruby-constant { color: #4433aa; font-weight: bold; }
-.ruby-identifier { color: #222222; }
-.ruby-ivar { color: #2233dd; }
-.ruby-keyword { color: #3333FF; font-weight: bold }
-.ruby-node { color: #777777; }
-.ruby-operator { color: #111111; }
-.ruby-regexp { color: #662222; }
-.ruby-value { color: #662222; font-style: italic }
- .kw { color: #3333FF; font-weight: bold }
- .cmt { color: green; font-style: italic }
- .str { color: #662222; font-style: italic }
- .re { color: #662222; }
-</style>
-</head>
-<body bgcolor="white">
-<pre>%code%</pre>
-</body>
-</html>
-HTML
-
-########################## Index ################################
-
-FR_INDEX_BODY = <<HTML
-!INCLUDE!
-HTML
-
-FILE_INDEX = <<HTML
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=%charset%">
-<style>
-<!--
- body {
- background-color: #EEE;
- font-family: #{FONTS};
- color: #000;
- margin: 0px;
- }
- .banner {
- background: #005;
- color: #FFF;
- padding: 0.2em;
- font-size: small;
- font-weight: bold;
- text-align: center;
- }
- .entries {
- margin: 0.25em 1em 0 1em;
- font-size: x-small;
- }
- a {
- color: #00F;
- text-decoration: none;
- }
- a:hover {
- color: #77F;
- text-decoration: underline;
- }
--->
-</style>
-<base target="docwin">
-</head>
-<body>
-<div class="banner">%list_title%</div>
-<div class="entries">
-START:entries
-<a href="%href%">%name%</a><br>
-END:entries
-</div>
-</body></html>
-HTML
-
-CLASS_INDEX = FILE_INDEX
-METHOD_INDEX = FILE_INDEX
-
-INDEX = <<HTML
-<html>
-<head>
- <title>%title%</title>
- <meta http-equiv="Content-Type" content="text/html; charset=%charset%">
-</head>
-
-<frameset cols="20%,*">
- <frameset rows="15%,35%,50%">
- <frame src="fr_file_index.html" title="Files" name="Files" />
- <frame src="fr_class_index.html" name="Classes" />
- <frame src="fr_method_index.html" name="Methods" />
- </frameset>
-IF:inline_source
- <frame src="%initial_page%" name="docwin">
-ENDIF:inline_source
-IFNOT:inline_source
- <frameset rows="80%,20%">
- <frame src="%initial_page%" name="docwin">
- <frame src="blank.html" name="source">
- </frameset>
-ENDIF:inline_source
- <noframes>
- <body bgcolor="white">
- Click <a href="html/index.html">here</a> for a non-frames
- version of this page.
- </body>
- </noframes>
-</frameset>
-
-</html>
-HTML
-
-# and a blank page to use as a target
-BLANK = %{
-<html><body bgcolor="white"></body></html>
-}
-
-def write_extra_pages
- template = TemplatePage.new(BLANK)
- File.open("blank.html", "w") { |f| template.write_html_on(f, {}) }
-end
-
-end
-end
View
29 trunk/doc/release_notes/docs-rubygems-announce.rdoc
@@ -1,29 +0,0 @@
-== Announcing the RubyGems Documentation Site
-
-http://docs.rubygems.org
-
-Concurrent with RubyGems 0.8.7, I am very pleased to announce the
-public release of the RubyGems documentation website. This site is
-built upon the excellent Hieraki application (the same one used to
-document Ruby on Rails).
-
-After fighting with wiki spammers and missing data, the RubyGems team
-decided to move the documentation to something a little more durable
-than a wiki page. The content from the wiki pages have been reviewed,
-reorganized, and moved to the docs.rubygems.org site.
-
-The move is not complete, there is still information on the wiki that
-has not made it into the RubyGems document set yet. But we will
-continue to convert the site as time goes on.
-
-We feel the Hieraki application gives us a much better opportunity to
-provide quality documentation for the RubyGems system. We hope you
-enjoy it.
-
-Thanks to Tobias Lütke for Hieraki and to Bruce Williams for the
-RubyGems icon.
-
-If you are interested in helping with the RubyGems documentation,
-please contact Jim Weirich (jim@weirichhouse.org) or Chad Fowler
-(chad@chadfowler.com) about becoming an RubyGems document author.
-
View
4 trunk/doc/release_notes/rel_0_2_0.rdoc
@@ -1,4 +0,0 @@
-== Release 0.2.0: March 14, 2004
-
-* Initial public release
-
View
21 trunk/doc/release_notes/rel_0_3_0.rdoc
@@ -1,21 +0,0 @@
-== Release 0.3.0: April 30, 2004
-
-* Cleanup of command-line arguments and handling. Most commands accept a
- --local or --remote modifier.
-* Creation of Application Gems (packages that include executable programs).
- See http://rubygems.rubyforge.org/wiki/wiki.pl?DeveloperGuide for information
- on how to use it.
-* Basic functionality for installing binary gems from source (:extensions
- property of gem specification holds an array of paths to extconf.rb files to
- be used for compilation)
-* Install library "stub" allowing a normal 'require' to work (which then does
- the rubygems require and 'require_gem'
-* --run-tests runs the test suite specified by the "test_suite_file" property
- of a gem specification
-* HTTP Proxy support works. Rewrite of HTTP code.
-* Unit and functional tests added (see Rakefile).
-* Prompt before remote-installing dependencies during gem installation.
-* Config file for storing preferences for 'gem' command usage.
-* Generally improved error messages (still more work to do)
-* Rearranged gem directory structure for cleanliness.
-
View
4 trunk/doc/release_notes/rel_0_4_0.rdoc
@@ -1,4 +0,0 @@
-== Release 0.4.0: May 31, 2004
-
-* Minor bug fixes including Windows compatability issues
-