rubygems-update 0.9.4 → 0.9.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (225) hide show
  1. data/ChangeLog +587 -0
  2. data/README +0 -1
  3. data/Rakefile +39 -12
  4. data/TODO +0 -5
  5. data/bin/gem +7 -7
  6. data/bin/update_rubygems +1 -1
  7. data/examples/application/an-app.gemspec +1 -1
  8. data/gemspecs/cgikit-1.1.0.gemspec +1 -2
  9. data/gemspecs/jabber4r.gemspec +1 -1
  10. data/gemspecs/linguistics.gemspec +1 -1
  11. data/gemspecs/ook.gemspec +1 -1
  12. data/gemspecs/progressbar.gemspec +1 -1
  13. data/gemspecs/redcloth.gemspec +1 -1
  14. data/gemspecs/rublog.gemspec +1 -1
  15. data/gemspecs/ruby-doom.gemspec +1 -1
  16. data/gemspecs/rubyjdwp.gemspec +1 -1
  17. data/gemspecs/statistics.gemspec +1 -1
  18. data/lib/rubygems.rb +167 -105
  19. data/lib/rubygems/builder.rb +12 -10
  20. data/lib/rubygems/command.rb +177 -60
  21. data/lib/rubygems/command_manager.rb +30 -38
  22. data/lib/rubygems/commands/build_command.rb +42 -46
  23. data/lib/rubygems/commands/cert_command.rb +72 -69
  24. data/lib/rubygems/commands/check_command.rb +63 -63
  25. data/lib/rubygems/commands/cleanup_command.rb +25 -7
  26. data/lib/rubygems/commands/contents_command.rb +70 -62
  27. data/lib/rubygems/commands/dependency_command.rb +131 -86
  28. data/lib/rubygems/commands/environment_command.rb +67 -46
  29. data/lib/rubygems/commands/fetch_command.rb +62 -0
  30. data/lib/rubygems/commands/generate_index_command.rb +57 -0
  31. data/lib/rubygems/commands/help_command.rb +163 -73
  32. data/lib/rubygems/commands/install_command.rb +114 -128
  33. data/lib/rubygems/commands/list_command.rb +10 -8
  34. data/lib/rubygems/commands/lock_command.rb +101 -0
  35. data/lib/rubygems/commands/mirror_command.rb +105 -0
  36. data/lib/rubygems/commands/outdated_command.rb +24 -15
  37. data/lib/rubygems/commands/pristine_command.rb +118 -88
  38. data/lib/rubygems/commands/query_command.rb +109 -77
  39. data/lib/rubygems/commands/rdoc_command.rb +13 -10
  40. data/lib/rubygems/commands/search_command.rb +10 -8
  41. data/lib/rubygems/commands/server_command.rb +48 -0
  42. data/lib/rubygems/commands/sources_command.rb +104 -83
  43. data/lib/rubygems/commands/specification_command.rb +65 -51
  44. data/lib/rubygems/commands/uninstall_command.rb +17 -12
  45. data/lib/rubygems/commands/unpack_command.rb +68 -68
  46. data/lib/rubygems/commands/update_command.rb +72 -25
  47. data/lib/rubygems/commands/which_command.rb +86 -0
  48. data/lib/rubygems/config_file.rb +202 -78
  49. data/lib/rubygems/custom_require.rb +7 -88
  50. data/lib/rubygems/dependency.rb +65 -0
  51. data/lib/rubygems/dependency_installer.rb +232 -0
  52. data/lib/rubygems/dependency_list.rb +133 -105
  53. data/lib/rubygems/digest/md5.rb +4 -1
  54. data/lib/rubygems/digest/sha2.rb +1 -1
  55. data/lib/rubygems/doc_manager.rb +41 -19
  56. data/lib/rubygems/exceptions.rb +63 -0
  57. data/lib/rubygems/ext.rb +18 -0
  58. data/lib/rubygems/ext/builder.rb +56 -0
  59. data/lib/rubygems/ext/configure_builder.rb +24 -0
  60. data/lib/rubygems/ext/ext_conf_builder.rb +23 -0
  61. data/lib/rubygems/ext/rake_builder.rb +27 -0
  62. data/lib/rubygems/format.rb +16 -6
  63. data/lib/rubygems/gem_openssl.rb +43 -6
  64. data/lib/rubygems/gem_path_searcher.rb +84 -0
  65. data/lib/rubygems/gem_runner.rb +20 -5
  66. data/lib/rubygems/indexer.rb +163 -0
  67. data/lib/rubygems/indexer/abstract_index_builder.rb +80 -0
  68. data/lib/rubygems/indexer/marshal_index_builder.rb +17 -0
  69. data/lib/rubygems/indexer/master_index_builder.rb +53 -0
  70. data/lib/rubygems/indexer/quick_index_builder.rb +48 -0
  71. data/lib/rubygems/install_update_options.rb +87 -0
  72. data/lib/rubygems/installer.rb +316 -562
  73. data/lib/rubygems/local_remote_options.rb +106 -0
  74. data/lib/rubygems/old_format.rb +5 -13
  75. data/lib/rubygems/open-uri.rb +2 -0
  76. data/lib/rubygems/package.rb +28 -32
  77. data/lib/rubygems/platform.rb +187 -0
  78. data/lib/rubygems/remote_fetcher.rb +46 -29
  79. data/lib/rubygems/remote_installer.rb +11 -18
  80. data/lib/rubygems/requirement.rb +157 -0
  81. data/lib/rubygems/rubygems_version.rb +1 -1
  82. data/lib/rubygems/security.rb +715 -457
  83. data/lib/rubygems/server.rb +77 -59
  84. data/lib/rubygems/source_index.rb +154 -83
  85. data/lib/rubygems/source_info_cache.rb +73 -30
  86. data/lib/rubygems/source_info_cache_entry.rb +12 -3
  87. data/lib/rubygems/specification.rb +378 -145
  88. data/lib/rubygems/uninstaller.rb +183 -0
  89. data/lib/rubygems/user_interaction.rb +38 -9
  90. data/lib/rubygems/validator.rb +53 -24
  91. data/lib/rubygems/version.rb +126 -289
  92. data/lib/rubygems/version_option.rb +49 -0
  93. data/pkgs/sources/lib/sources.rb +1 -4
  94. data/pkgs/sources/sources.gemspec +3 -3
  95. data/scripts/gemdoc.rb +0 -1
  96. data/setup.rb +166 -1505
  97. data/test/bogussources.rb +0 -1
  98. data/test/data/gem-private_key.pem +27 -0
  99. data/test/data/gem-public_cert.pem +20 -0
  100. data/test/functional.rb +3 -105
  101. data/test/gemutilities.rb +145 -24
  102. data/test/insure_session.rb +0 -1
  103. data/test/{test_datadir.rb → test_config.rb} +7 -13
  104. data/test/test_gem.rb +360 -9
  105. data/test/test_gem_builder.rb +34 -0
  106. data/test/{test_command.rb → test_gem_command.rb} +119 -62
  107. data/test/{test_parse_commands.rb → test_gem_command_manager.rb} +64 -40
  108. data/test/test_gem_commands_build_command.rb +75 -0
  109. data/test/test_gem_commands_cert_command.rb +122 -0
  110. data/test/test_gem_commands_check_command.rb +25 -0
  111. data/test/test_gem_commands_contents_command.rb +92 -0
  112. data/test/test_gem_commands_dependency_command.rb +108 -0
  113. data/test/test_gem_commands_environment_command.rb +117 -0
  114. data/test/test_gem_commands_fetch_command.rb +34 -0
  115. data/test/test_gem_commands_generate_index_command.rb +32 -0
  116. data/test/test_gem_commands_install_command.rb +160 -0
  117. data/test/test_gem_commands_mirror_command.rb +56 -0
  118. data/test/test_gem_commands_pristine_command.rb +100 -0
  119. data/test/test_gem_commands_query_command.rb +82 -0
  120. data/test/test_gem_commands_sources_command.rb +147 -0
  121. data/test/test_gem_commands_specification_command.rb +93 -0
  122. data/test/test_gem_commands_unpack_command.rb +55 -0
  123. data/test/test_gem_config_file.rb +210 -0
  124. data/test/test_gem_dependency.rb +89 -0
  125. data/test/test_gem_dependency_installer.rb +542 -0
  126. data/test/test_gem_dependency_list.rb +212 -0
  127. data/test/test_gem_doc_manager.rb +32 -0
  128. data/test/test_gem_ext_configure_builder.rb +13 -17
  129. data/test/test_gem_ext_ext_conf_builder.rb +9 -9
  130. data/test/test_gem_ext_rake_builder.rb +23 -11
  131. data/test/test_gem_format.rb +69 -0
  132. data/test/test_gem_gem_path_searcher.rb +57 -0
  133. data/test/test_gem_gem_runner.rb +35 -0
  134. data/test/test_gem_indexer.rb +119 -0
  135. data/test/test_gem_install_update_options.rb +40 -0
  136. data/test/test_gem_installer.rb +796 -0
  137. data/test/test_gem_local_remote_options.rb +84 -0
  138. data/test/test_gem_outdated_command.rb +11 -9
  139. data/test/test_gem_platform.rb +240 -0
  140. data/test/{test_remote_fetcher.rb → test_gem_remote_fetcher.rb} +124 -55
  141. data/test/{test_remote_installer.rb → test_gem_remote_installer.rb} +3 -4
  142. data/test/test_gem_requirement.rb +223 -0
  143. data/test/test_gem_server.rb +71 -0
  144. data/test/test_gem_source_index.rb +429 -0
  145. data/test/test_gem_source_info_cache.rb +79 -17
  146. data/test/test_gem_source_info_cache_entry.rb +11 -9
  147. data/test/test_gem_specification.rb +738 -0
  148. data/test/test_gem_stream_ui.rb +117 -0
  149. data/test/test_gem_validator.rb +70 -0
  150. data/test/test_gem_version.rb +191 -0
  151. data/test/test_gem_version_option.rb +77 -0
  152. data/test/{test_require_gem.rb → test_kernel.rb} +19 -12
  153. data/test/test_open_uri.rb +1 -2
  154. data/test/test_package.rb +45 -34
  155. metadata +116 -141
  156. data/Releases +0 -127
  157. data/bin/gem_mirror +0 -73
  158. data/bin/gem_server +0 -6
  159. data/bin/gemlock +0 -127
  160. data/bin/gemri +0 -24
  161. data/bin/gemwhich +0 -89
  162. data/bin/index_gem_repository.rb +0 -302
  163. data/lib/gemconfigure.rb +0 -24
  164. data/lib/rubygems/gem_commands.rb +0 -273
  165. data/pkgs/sources/sources-0.0.1.gem +0 -0
  166. data/post-install.rb +0 -121
  167. data/test/brokenbuildgem.rb +0 -35
  168. data/test/data/PostMessage-0.0.1.gem +0 -0
  169. data/test/data/a-0.0.1.gem +0 -0
  170. data/test/data/a-0.0.2.gem +0 -0
  171. data/test/data/b-0.0.2.gem +0 -0
  172. data/test/data/broken-1.0.0.gem +0 -0
  173. data/test/data/broken_build/broken-build.gemspec +0 -20
  174. data/test/data/broken_build/ext/extconf.rb +0 -3
  175. data/test/data/broken_build/ext/foo.c +0 -1
  176. data/test/data/c-1.2.gem +0 -0
  177. data/test/data/gemhome/cache/a-0.0.1.gem +0 -0
  178. data/test/data/gemhome/cache/a-0.0.2.gem +0 -0
  179. data/test/data/gemhome/cache/b-0.0.2.gem +0 -0
  180. data/test/data/gemhome/cache/c-1.2.gem +0 -0
  181. data/test/data/gemhome/gems/a-0.0.1/lib/code.rb +0 -1
  182. data/test/data/gemhome/gems/a-0.0.2/lib/code.rb +0 -1
  183. data/test/data/gemhome/gems/b-0.0.2/lib/code.rb +0 -1
  184. data/test/data/gemhome/gems/c-1.2/lib/code.rb +0 -1
  185. data/test/data/gemhome/specifications/a-0.0.1.gemspec +0 -8
  186. data/test/data/gemhome/specifications/a-0.0.2.gemspec +0 -8
  187. data/test/data/gemhome/specifications/b-0.0.2.gemspec +0 -8
  188. data/test/data/gemhome/specifications/c-1.2.gemspec +0 -8
  189. data/test/data/legacy/keyedlist-0.4.0.ruby +0 -11
  190. data/test/data/legacy/keyedlist-0.4.0.yaml +0 -16
  191. data/test/data/lib/code.rb +0 -1
  192. data/test/data/one/README.one +0 -1
  193. data/test/data/one/lib/one.rb +0 -9
  194. data/test/data/one/one-0.0.1.gem +0 -0
  195. data/test/data/one/one.gemspec +0 -17
  196. data/test/data/one/one.yaml +0 -40
  197. data/test/data/post_install.gemspec +0 -19
  198. data/test/functional_extension_gems.rb +0 -48
  199. data/test/functional_generate_yaml_index.rb +0 -104
  200. data/test/gemenvironment.rb +0 -59
  201. data/test/io_capture.rb +0 -33
  202. data/test/mock/gems/gems/sources-0.0.1/lib/sources.rb +0 -11
  203. data/test/mock/gems/specifications/sources-0.0.1.gemspec +0 -8
  204. data/test/onegem.rb +0 -35
  205. data/test/test_builder.rb +0 -34
  206. data/test/test_check_command.rb +0 -34
  207. data/test/test_configfile.rb +0 -42
  208. data/test/test_dependency_list.rb +0 -169
  209. data/test/test_file_list.rb +0 -101
  210. data/test/test_format.rb +0 -49
  211. data/test/test_gem_sources_command.rb +0 -135
  212. data/test/test_gemloadpaths.rb +0 -51
  213. data/test/test_gempaths.rb +0 -170
  214. data/test/test_installer.rb +0 -369
  215. data/test/test_loadmanager.rb +0 -48
  216. data/test/test_process_commands.rb +0 -52
  217. data/test/test_source_index.rb +0 -231
  218. data/test/test_specific_extras.rb +0 -46
  219. data/test/test_specification.rb +0 -565
  220. data/test/test_user_interaction.rb +0 -48
  221. data/test/test_validator.rb +0 -59
  222. data/test/test_version_comparison.rb +0 -321
  223. data/test/testgem.rc +0 -7
  224. data/test/user_capture.rb +0 -7
  225. data/test/yaml_data.rb +0 -63
data/ChangeLog CHANGED
@@ -1,3 +1,590 @@
1
+ 2007-11-19 Eric Hodel <drbrain@segment7.net>
2
+
3
+ * lib/rubygems/rubygems_version.rb: 0.9.5.
4
+
5
+ 2007-11-16 Eric Hodel <drbrain@segment7.net>
6
+
7
+ * test/gemutilities: Add a legacy platform gem to the default test
8
+ gems list.
9
+ * lib/rubygems/specification.rb: Add Gem::Specification#original_name
10
+ for legacy purposes
11
+ * lib/rubygems/indexer.rb: Use #original_name to make the indexer
12
+ backwards compatible.
13
+ * lib/rubygems/master_index_builder.rb: Reduce memory consumption.
14
+
15
+ 2007-11-13 Eric Hodel <drbrain@segment7.net>
16
+
17
+ * lib/rubygems/rubygems_version.rb: 0.9.4.7 beta.
18
+ * lib/rubygems.rb: Patch for RUBY_FRAMEWORK for OS X 10.5. Patch
19
+ submitted by Laurent Sansonetti.
20
+ * lib/rubygems.rb: cygwin, djgpp, mingw are Windows platforms. Fixes
21
+ bug #15537 by Roger Pack.
22
+
23
+ 2007-11-11 Eric Hodel <drbrain@segment7.net>
24
+
25
+ * Rakefile: Tasks for maintaining ruby trunk export of RubyGems.
26
+ * lib/rubygems/specification.rb: Preserve original platform across
27
+ serialization.
28
+ * lib/rubygems/dependency_installer.rb: Retry with original platform
29
+ name on fetch error.
30
+
31
+ 2007-11-09 Eric Hodel <drbrain@segment7.net>
32
+
33
+ * lib/rubygems/specification.rb: Set #original_platform only once.
34
+ * lib/rubygems/indexer.rb: Handle legacy platforms.
35
+ * lib/rubygems/platform.rb: Gem::Platform is a valid argument. Bug
36
+ #15511 submitted by Daniel Berger.
37
+ * lib/rubygems/custom_require.rb: Fix compatibility with 1.8.2. Bug
38
+ #14933 submitted by Aaron Patterson.
39
+ * lib/rubygems/command.rb: Now '-V' enables verbose. Bug #14951
40
+ submitted by Sasa Ebach.
41
+ * lib/rubygems/commands/check_command.rb: Change use of '-v', '-V' to
42
+ match above.
43
+ * lib/rubygems/package.rb: #send! is gone again.
44
+ * lib/rubygems.rb: Don't add custom_require for 1.9.
45
+ * test/*: Make compatible with 1.9 import.
46
+
47
+ 2007-10-30 Eric Hodel <drbrain@segment7.net>
48
+
49
+ * lib/rubygems/specification.rb: Don't re-use @platform to maintain
50
+ backwards compatibility.
51
+ * lib/rubygems/platform.rb: Handle nil and 'ruby' platforms in ::new.
52
+
53
+ 2007-10-20 Daniel Berger <djberg96@gmail.com>
54
+
55
+ * lib/rubygems/uninstaller.rb: Changed '.cmd' to '.bat' in the
56
+ remove_executables method for MS Windows. Patch from Luis Lavena.
57
+
58
+ 2007-10-18 Eric Hodel <drbrain@segment7.net>
59
+
60
+ * lib/rubygems/rubygems_version.rb: 0.9.4.6 beta.
61
+
62
+ 2007-10-19 Eric Hodel <drbrain@segment7.net>
63
+
64
+ * lib/rubygems/commands/update_command.rb: Don't install with
65
+ dependencies when updating. This is a hack.
66
+
67
+ 2007-10-19 Daniel Berger <djberg96@gmail.com>
68
+
69
+ * setup.rb: gem.cmd stub is now gem.cmd, and the stub generation was
70
+ changed - now better for NT. Patch #14725 (Luis Lavena).
71
+ * lib/rubygems/installer.rb: Same as for setup.rb.
72
+
73
+ 2007-10-18 Daniel Berger <djberg96@gmail.com>
74
+
75
+ * lib/rubygems/platform.rb: Modified the Platform.local method for MS
76
+ Windows for versions built with VC++ 6. Patch #14727 (Luis Lavena).
77
+ * test/test_gem_specification.rb: Added version independent tests for
78
+ MS Windows. Patch #14727 (Luis Lavena).
79
+
80
+ 2007-10-18 Eric Hodel <drbrain@segment7.net>
81
+
82
+ * lib/rubygems/remote_fetcher.rb: Add platform to User-Agent.
83
+ * lib/rubygems/commands/install_command.rb: Fix typo. Debian bug
84
+ #443135 submitted by Reuben Thomas.
85
+ * lib/rubygems/dependency_installer.rb: Don't install dropped
86
+ dependencies. Fixes bug #14724 submitted by Luis Lavena.
87
+
88
+ 2007-10-17 Eric Hodel <drbrain@segment7.net>
89
+
90
+ * lib/rubygems/commands/update_command.rb: Unset RUBYOPT when running
91
+ setup.rb
92
+ * setup.rb: Re-exec without RUBYOPT if it is set. Fixes bug #14683
93
+ submitted by Lyle Johnson.
94
+
95
+ 2007-10-16 Daniel Berger <djberg96@gmail.com>
96
+
97
+ * lib/rubygems/indexer/abstract_index_builder.rb: The compress method
98
+ now does a binary read to make MS Windows happy.
99
+
100
+ 2007-10-16 Eric Hodel <drbrain@segment7.net>
101
+
102
+ * setup.rb: Installs bin stubs that warn when you try to use the old
103
+ commands. Simple mswin deprecation stubs by Luis Lavena.
104
+
105
+ 2007-10-12 Eric Hodel <drbrain@segment7.net>
106
+
107
+ * setup.rb: Remove source caches on install.
108
+ * doc/release_notes/rel_0_9_5.rdoc: Draft added.
109
+ * lib/rubygems/rubygems_version.rb: 0.9.4.5 beta.
110
+
111
+ 2007-10-10 Eric Hodel <drbrain@segment7.net>
112
+
113
+ * lib/rubygems/dependency_installer.rb: Fix small bug found by Alan C.
114
+ Francis.
115
+
116
+ 2007-10-09 Eric Hodel <drbrain@segment7.net>
117
+
118
+ * lib/rubygems/dependency_installer.rb: Use install_dir so custom gem
119
+ repos can be used.
120
+ * lib/rubygems/specification.rb: Always set required attributes, even
121
+ if they match the default.
122
+
123
+ 2007-10-08 Ryan Davis <ryan@wrath.local>
124
+
125
+ * lib/rubygems.rb: Fixed require order so custom_require is
126
+ last. Added HACK tag to remind Jim to release rake.
127
+ * test/test_gem_source_index.rb: Fixed latest_specs' tests so
128
+ failures were much more readable.
129
+ * lib/rubygems/source_index.rb: Fixed latest_specs to deal with
130
+ platforms appropriately. Returns array again.
131
+
132
+ 2007-10-08 Eric Hodel <drbrain@segment7.net>
133
+
134
+ * lib/rubygems/config_file.rb: Boost bulk_threshold to 1000, Marshal
135
+ format is smaller than yaml format quick index.
136
+ * lib/rubygems/installer.rb: Make #shebang correctly rewrite env
137
+ shebangs.
138
+ * lib/rubygems/specification.rb: Mark Time.today for removal, too much
139
+ depends upon it now.
140
+
141
+ 2007-10-07 Eric Hodel <drbrain@segment7.net>
142
+
143
+ * lib/rubygems/specification.rb: Sped up ::_load.
144
+ * lib/rubygems/source_index.rb: Sped up #search.
145
+ * lib/rubygems/version.rb: Replace #to_ints with #ints, and cache
146
+ result.
147
+ * lib/rubygems/source_info_cache.rb: Only flush cache when it changes.
148
+
149
+ 2007-10-05 Eric Hodel <drbrain@segment7.net>
150
+
151
+ * lib/rubygems/user_interaction.rb: Allow customization of completion
152
+ message for progress reporters.
153
+ * lib/rubygems/command.rb: Add --quiet option.
154
+ * lib/rubygems/commands/generate_index_command.rb: Add description.
155
+
156
+ 2007-10-04 Eric Hodel <drbrain@segment7.net>
157
+
158
+ * lib/rubygems/uninstaller.rb: Also check and uninstall old platform
159
+ name to ensure legacy platform gems are uninstalled.
160
+ * lib/rubygems/doc_manager.rb: Remove existing rdoc and ri directory
161
+ so regenerating docs succeeds even if previously interrupted.
162
+
163
+ 2007-10-02 Eric Hodel <drbrain@segment7.net>
164
+
165
+ * lib/rubygems/source_index.rb: Make #outdated search only for gems
166
+ matching the current platform.
167
+ * lib/rubygems/commands/dependency_command.rb: Add --platform.
168
+ * lib/rubygems/commands/outdated_command.rb: Ditto.
169
+ * lib/rubygems/commands/specification_command.rb: Ditto.
170
+ * lib/rubygems/commands/update_command.rb: Ditto.
171
+
172
+ 2007-10-02 Wilson Bilkovich <wilson@supremetyrant.com>
173
+
174
+ * lib/rubygems/specification.rb: Custom Marshal format to reduce index
175
+ size.
176
+ * lib/rubygems/requirement.rb: Ditto
177
+ * lib/rubygems/version.rb: Ditto
178
+
179
+ 2007-10-01 Eric Hodel <drbrain@segment7.net>
180
+
181
+ * lib/rubygems/platform.rb: Handle mswin32 on VC6. Partial patch and
182
+ assistance by Luis Lavena. Handle cpu-os-version style platforms for
183
+ command-line arguments.
184
+
185
+ 2007-09-30 Eric Hodel <drbrain@segment7.net>
186
+
187
+ * lib/rubygems/specification.rb: Gem::Specification is now
188
+ forward-compatible while loading.
189
+
190
+ 2007-09-29 Eric Hodel <drbrain@segment7.net>
191
+
192
+ * lib/rubygems/source_info_cache_entry.rb: Correctly handle URIs.
193
+ * lib/rubygems/remote_fetcher.rb: ditto.
194
+ * lib/rubygems/remote_options.rb: Add --update-sources option. Patch
195
+ #14246 submitted by Alan Francis.
196
+ * lib/rubygems/config_file.rb: Add update_sources setting to control
197
+ automatic refreshing of sources (patch #14246). Fix bug where things
198
+ would be overwritten in ~/.gemrc when they shouldn't.
199
+
200
+ 2007-09-28 Eric Hodel <drbrain@segment7.net>
201
+
202
+ * lib/rubygems/rubygems.rb: Gem.ruby now returns the full path. Added
203
+ Gem.prefix to make self updating work right.
204
+ * setup.rb, pre-install.rb, post-install.rb: Replace with a small,
205
+ simple setup script that works.
206
+ * lib/rubygems/commands/update_command.rb: Pass rdoc, ri and prefix
207
+ flags down to setup.rb when self updating.
208
+
209
+ 2007-09-26 Eric Hodel <drbrain@segment7.net>
210
+
211
+ * lib/rubygems/version_option.rb: Always include RUBY platform,
212
+ allow RUBY platform as an option.
213
+ * lib/rubygems/specification.rb: Gems with non-ruby platform sort
214
+ last (first in preference for installation).
215
+ * lib/rubygems/platform.rb: Allow matching of legacy platforms.
216
+ * lib/rubygems/source_index.rb: Add only_platform option to #search.
217
+
218
+ 2007-09-24 Wilson Bilkovich <wilson@supremetyrant.com>
219
+ * lib/rubygems/indexer.rb: Generate a Marshal index in parallel to YAML
220
+ * lib/rubygems/source_index.rb: Fetch a Marshal index if it exists, to
221
+ avoid the memory cost of parsing a huge YAML file
222
+ * lib/rubygems/commands/mirror_command.rb: Check for Marshal first
223
+ * lib/rubygems/indexer/abstract_index_builder.rb: Index refactoring
224
+ * lib/rubygems/indexer/marshal_index_builder.rb: Build Marshal index
225
+ * lib/rubygems/indexer/master_index_builder.rb: Simplify YAML generation
226
+ * lib/rubygems/indexer/quick_index_builder.rb: Build Marshal quickindex
227
+ * lib/rubygems/server.rb: Serve up Marshal index as well as YAML
228
+ * lib/rubygems/source_info_cache_entry.rb: Expect a Marshal index
229
+
230
+ 2007-09-23 Eric Hodel <drbrain@segment7.net>
231
+
232
+ * lib/rubygems/commands/fetch_command.rb: `gem fetch` downloads a gem
233
+ to the current directory. Feature request #10752 by Bret Pettichord.
234
+ * lib/rubygems/commands/local_remote_options.rb, etc.: Fix spelling of
235
+ 'threshold'.
236
+ * lib/rubygems/installer.rb: Revert feature request #8818, it
237
+ interferes with `ruby -S` and multiple versions of ruby (1.8 and 1.9).
238
+ * lib/rubygems/dependency_installer.rb: Fix a bug where the wrong
239
+ platform gem would be installed.
240
+ * lib/rubygems/version_option.rb: Add --platform.
241
+ * lib/rubygems/install_update_options.rb: Verify --security-policy.
242
+ * lib/rubygems/local_remote_options.rb: Verify --source, --http-proxy.
243
+
244
+ 2007-09-22 Eric Hodel <drbrain@segment7.net>
245
+
246
+ * lib/rubygems/open-uri.rb: Don't document our OpenURI.
247
+ * lib/rubygems/commands/generate_index_command.rb: Fix Indexer class
248
+ change.
249
+ * lib/rubygems/commands/mirror_command.rb: Fix for 1.9.
250
+ * lib/rubygems/commands/pristine_command.rb: Have `gem pristine`
251
+ give a better report of what it accomplished.
252
+ * lib/rubygems/command.rb: Add optional description field.
253
+ * lib/rubygems/installer.rb: Hack around broken Pathname#absolute? on
254
+ windows. Patch #14139 by Jim Hughes.
255
+
256
+ 2007-09-20 Eric Hodel <drbrain@segment7.net>
257
+
258
+ * misc files: Tests pass on 1.9.
259
+ * test/gemutilities.rb: Added Object#send! stub for 1.8.
260
+ * test/test_open_uri.rb: Require gem_open_uri.rb to avoid warnings.
261
+ * lib/rubygems/commands/sources_command.rb: Clarify `gem sources -c`
262
+ and what `gem sources` does. Patch by Hugh Sasse.
263
+
264
+ 2007-09-19 Eric Hodel <drbrain@segment7.net>
265
+
266
+ * lib/rubygems/platform.rb: Make Gem::Platform a class.
267
+ * lib/rubygems/specification.rb: Gem::Specification#validate returns
268
+ true, non-Gem::Platform platforms are no longer allowed.
269
+ * test/gemutilities.rb: 1.9 compatiblity fixes.
270
+ * lib/rubygems/dependency_installer.rb: Work around a bug in URI.parse
271
+ which misinterprets "C:/". Patch #13537 submitted by Daniel Berger.
272
+ * lib/rubygems/format.rb: Ensure file handles are closed. Patch
273
+ #13533 submitted by Daniel Berger.
274
+ * test/test_gem_installer.rb: Win32 path fix. Patch #13528 submitted
275
+ by Daniel Berger.
276
+ * test/gemutilities.rb: Make the platform be a win32 platform on
277
+ win32. Fixes confusion in generate_bin_symlink tests. Patch #13529
278
+ submitted by Daniel Berger.
279
+ * test/test_gem_specification.rb: Sequel to above. Patch
280
+ #13535 submitted by Daniel Berger.
281
+ * lib/rubygems/source_index.rb: Make the updating cache message more
282
+ clear. Patch #12778 submitted by Bil Kleb.
283
+ * lib/rubygems/server.rb: Allow gem's rdoc-style.css to be used.
284
+ Patch #13589 by Stephen Bannasch.
285
+ * lib/rubygems/indexer.rb: Fail on missing builder gem only when
286
+ trying to use the indexer. Fixes bug #13939 by Bryan Stearns.
287
+ * lib/rubygems/indexer/indexer.rb: Move Indexer up one level in
288
+ nesting.
289
+ * lib/rubygems/indexer/compressor.rb: Only used in
290
+ Gem::Indexer::AbstractIndexBuilder subclasses, merged there.
291
+ * lib/rubygems/command_aids.rb: Merged Gem::CommandAids into
292
+ Gem::Command since that's the only place it gets used.
293
+ * misc other files: mswin fixes. Paired with Daniel Berger.
294
+
295
+ 2007-08-24 Eric Hodel <drbrain@segment7.net>
296
+
297
+ * lib/rubygems/specification.rb: Fix #full_name for versionless
298
+ platforms.
299
+ * lib/rubygems/command_manager.rb: We're only looking for NameError.
300
+ * lib/rubygems/command.rb: 1.9 fix.
301
+ * lib/rubygems/format.rb: ditto.
302
+ * lib/rubygems/installer.rb: ditto.
303
+
304
+ 2007-08-24 Eric Hodel <drbrain@segment7.net>
305
+
306
+ * lib/rubygems/rubygems_version.rb: 0.9.4.4
307
+
308
+ 2007-08-23 Eric Hodel <drbrain@segment7.net>
309
+
310
+ * lib/rubygems/platform.rb: Add HPUX, AIX and NetBSD. Thanks to
311
+ Daniel Berger, Yutaka KANEMOTO and Andre Nathan respectively.
312
+ * lib/rubygems/installer.rb: Move all option setting to #initialize to
313
+ make `gem pristine` work again.
314
+ * lib/rubygems/commands/environment_command.rb: Include platforms.
315
+ * lib/rubygems/dependency_installer.rb: Support local non-root
316
+ installation.
317
+
318
+ 2007-08-22 Eric Hodel <drbrain@segment7.net>
319
+
320
+ * lib/rubygems/dependency_installer.rb: Don't reinstall dependencies
321
+ existing in the install dir. Don't install dependencies for older
322
+ versions of the gem we're installing. #installed_gems now contains
323
+ loaded gemspecs. Always prefer local gems. Handle globs correctly.
324
+ All deps are now installed into the install_dir.
325
+ * lib/rubygems/commands/install_command.rb: Switch to
326
+ Gem::DependencyInstaller. Warn when -y is given, it will be removed.
327
+ Try our best to install everything the user asked.
328
+ * lib/rubygems.rb: Gem.bindir now handles Pathname correctly.
329
+ * lib/rubygems/remote_fetcher.rb: Don't downcase anymore.
330
+
331
+ 2007-08-21 Eric Hodel <drbrain@segment7.net>
332
+
333
+ * lib/rubygems/dependency_installer.rb: Add installation from local
334
+ gems. Install gems in the correct order. Handle -E, -f,
335
+ --ignore-dependencies, -i, -r, -l, -b, -P, -w, -v options for `gem
336
+ install`
337
+ * test/gemutilities.rb: Work around OS X /private/tmp.
338
+ * lib/rubygems/platform.rb: Switch to using arch instead of target_*
339
+ for JRuby compatibility. Thanks to Nick Sieger.
340
+
341
+ 2007-08-20 Eric Hodel <drbrain@segment7.net>
342
+
343
+ * lib/rubygems/dependency_installer.rb: Add working but unfinished
344
+ Gem::DependencyInstaller.
345
+ * lib/rubygems/source_info_cache.rb: Add #search_with_source.
346
+ * lib/rubygems/dependency_list.rb: Move #fill_dependencies to
347
+ Gem::DependencyInstaller
348
+ * lib/rubygems/platform.rb: Split from specification.rb. Add methods
349
+ to recognize platforms from Config::CONFIG.
350
+ * lib/rubygems.rb: Add Gem::platforms.
351
+ * lib/rubygems/specification.rb: Disallow String platforms.
352
+
353
+ 2007-08-18 Eric Hodel <drbrain@segment7.net>
354
+
355
+ * lib/rubygems/source_info_cache.rb: Search by Gem::Dependenency.
356
+ * lib/rubygems/source_index: Search by Gem::Dependenency.
357
+ * lib/rubygems/version.rb: Version can be String or Integer.
358
+ Gem::Requirement::default is now >= 0. Gem::Requirement can be built
359
+ from a Gem::Dependency.
360
+ * lib/rubygems/dependency_list.rb: Uses TSort now. Add
361
+ Gem::DependencyList#fill_dependencies.
362
+ * lib/rubygems/server.rb: Support quick index.
363
+
364
+ 2007-08-17 Eric Hodel <drbrain@segment7.net>
365
+
366
+ * lib/rubygems/dependency_list.rb: For diamond dependencies with
367
+ different versions on the bottom of the diamond, trim all but the
368
+ latest dependency. This will prevent gems like hoe from being
369
+ installed multiple times.
370
+
371
+ 2007-08-15 Eric Hodel <drbrain@segment7.net>
372
+
373
+ * lib/rubygems/installer.rb: Support building mkrf extensions. Fixes
374
+ bug #11313. Patch by Jeremy Hinegardner.
375
+ * lib/rubygems/installer.rb: Ensure bin files are executable. Fixes
376
+ bug #8985 submitted by Ara Howard.
377
+ * lib/rubygems/installer.rb: Insert installing gem home dir into bin
378
+ wrapper. Patch #8818 by Ara Howard.
379
+
380
+ 2007-08-13 Eric Hodel <drbrain@segment7.net>
381
+
382
+ * lib/rubygems/commands/uninstall_command.rb: Gems with version of 0
383
+ can now be uninstalled.
384
+
385
+ 2007-08-11 Eric Hodel <drbrain@segment7.net>
386
+
387
+ * lib/rubygems/config_file.rb: Command-line args override ~/.gemrc
388
+ now. Gem.sources is pulled from ~/.gemrc now. Gem::ConfigFile can
389
+ write itself out now.
390
+ * lib/rubygems/commands/sources_command.rb: Now writes out
391
+ Gem.configuration on changes. No longer checks source cache on
392
+ --list.
393
+
394
+ 2007-08-09 Eric Hodel <drbrain@segment7.net>
395
+
396
+ * lib/rubygems/source_info_cache.rb: Make Gem::SourceInfoCache#search
397
+ only search gems in Gem.sources.
398
+ * lib/rubygems.rb: Make Gem::configuration a real Gem::ConfigFile
399
+ object.
400
+ * lib/rubygems/commands/query_command.rb: Fix `gem query --details`.
401
+ Add `gem query --no-versions`.
402
+ * lib/rubygems/local_remote_options.rb: Make `gem mumble --source URL`
403
+ only use that source.
404
+ * lib/rubygems/config_file.rb: Fix Gem::ConfigFile#[]= to match
405
+ Gem::ConfigFile#[].
406
+
407
+ 2007-08-08 Eric Hodel <drbrain@segment7.net>
408
+
409
+ * lib/rubygems/commands/specification_command.rb: Match only exact gem
410
+ names. Fixes bug #9681. Patch by Michael DeCandia.
411
+ * lib/rubygems/commands/unpack_command.rb: Match only exact gem names.
412
+ Fixes bug #9681. Patch by Michael DeCandia.
413
+ * lib/rubygems/commands/contents_command.rb: Match only exact gem
414
+ names. Fixes bug #9681. Patch by Michael DeCandia
415
+ * lib/rubygems/remote_fetcher.rb: Perform a GET request if the HEAD
416
+ request doesn't have Content-Length. Fixes bug #9771. Patch by Ben
417
+ Bleything.
418
+ * lib/rubygems.rb: Clear Gem::searcher when we Gem::clear_paths.
419
+ Fixes bug #12886. Submitted by Peter Williams.
420
+ * lib/rubygems.rb: Add #default_sources and rework #sources to use it.
421
+ * post-install.rb: No longer runs install_sources.
422
+ * pkgs/sources: Updated to something what a 0.0.2 would look like, if
423
+ we ever make one.
424
+
425
+ 2007-08-02 Eric Hodel <drbrain@segment7.net>
426
+
427
+ * lib/rubygems/gem_commands.rb: Removed and broken up into individual
428
+ files.
429
+ * lib/rubygems/command_manager.rb: Lazily loads gem commands. Now to
430
+ use CommandManager just "require 'rubygems/command_manager'" and
431
+ everything will be there.
432
+
433
+ 2007-08-01 Eric Hodel <drbrain@segment7.net>
434
+
435
+ * lib/*, test/*: Pushed down dependencies as far as reasonable.
436
+ Removed Gem::manage_gems. Now only 14 files are loaded with "require
437
+ 'rubygems'". Added tests for `gem build` and `gem cert`.
438
+ * lib/rubygems/extensions.rb: Added common place for all extensions.
439
+
440
+ 2007-07-26 Eric Hodel <drbrain@segment7.net>
441
+
442
+ * test/test_gem_ext_configure_builder.rb: Linux has different behavior
443
+ for `sh ./configure` when configure is missing. Fix adapted from
444
+ Patch #10019 by Donavan Pantke.
445
+ * lib/rubygems/commands/pristine_command.rb: Compare fully-qualified
446
+ paths. Fixes bug #7976 by Lyle Johnson.
447
+ * lib/rubygems/config_file.rb: Add ConfigFile#[]=, so --proxy
448
+ command-line option works. Fixes #8152 by Justin Sabelkko.
449
+ * lib/rubygems/post-install.rb: Make sure we use the
450
+ latest-and-greatest RubyGems when running post-install.rb. Fixes Bug
451
+ #8411 by Duy Nguyen.
452
+ * lib/rubygems/remote_fetcher.rb: An empty HTTP_PROXY means no proxy.
453
+ Fixes Bug #9042 by Michael Brodhead.
454
+ * lib/rubygems/version.rb: Disallow newlines in version string. Strip
455
+ spaces from version string. Fixes Bug #9499 by Bryce Kerley.
456
+ * lib/rubygems/commands/sources_command.rb: Fix spelling error. Fixes
457
+ Bug #11064 by Chris Eskow.
458
+
459
+ 2007-07-25 Eric Hodel <drbrain@segment7.net>
460
+
461
+ * lib/rubygems/indexer.rb: Create the index in /tmp, then move it into
462
+ place when we're done. This will prevent spurious bulk index updates
463
+ from occurring while the quick index is missing. Remove the option to
464
+ not build the quick index.
465
+ * lib/rubygems/commands/generate_index_command.rb: --no-quick is gone.
466
+ * lib/rubygems/user_interaction.rb: If stdin is not a tty, it is
467
+ unlikely that gem is going to get a response when asking a question.
468
+ Patch #10660 by Paul Brannan.
469
+ * lib/rubygems/validator.rb: Output test failures when using install
470
+ -t. Patch #10659 by Paul Brannan.
471
+ * lib/rubygems/custom_require.rb (Kernel#require): Only rescue a
472
+ LoadError that matches the file we are requiring. Patch #10723 by
473
+ Tyler Rick.
474
+ * lib/rubygems/remote_fetcher.rb: Support HTTP basic authentication.
475
+ Patch #8121 by Max Dunn.
476
+ * lib/rubygems/commands/install_command.rb: Don't raise an error when
477
+ a gem has no tests. Patch #11824 by Katsuyuki MIYAMUKO.
478
+
479
+ 2007-07-23 Eric Hodel <drbrain@segment7.net>
480
+
481
+ * lib/commands/contents_command.rb: Add --lib-only option, remove
482
+ useless --list option. Feature request #9498 by Martin DeMello.
483
+ * lib/rubygems/specification.rb: Restrict to only files in
484
+ #require_paths. Add #required_rubygems_version. Feature request
485
+ #7780 by Eric Hodel.
486
+ * lib/rubygems/commands/dependency_command.rb: Display dependencies for
487
+ remote gems. Feature request #12133 by Eric Hodel. -r for reverse
488
+ dependencies is now -R.
489
+ * lib/rubygems/commands/specification_command.rb: Display
490
+ specifications for remote gems. Feature request #12133 by Eric Hodel.
491
+ * lib/rubygems/installer.rb (Gem::Installer#install): Check
492
+ required_rubygems_version.
493
+ * lib/rubygems/user_interaction.rb
494
+ (Gem::UserInteraction#choose_from_list): Check result for EOF. Fixes
495
+ bug #8018. Patch by Jos Backus.
496
+ * post-install.rb: Install using absolute path. Fixes bug #10675.
497
+ Patch by Jeremy Burks.
498
+ * lib/rubygems/commands/environment_command.rb: Add RUBY VERSION to
499
+ environment output.
500
+ * lib/rubygems/command.rb: Don't worry about duplicated command-line
501
+ options, OptionParser takes care of them for us.
502
+
503
+ 2007-07-22 Eric Hodel <drbrain@segment7.net>
504
+
505
+ * lib/rubygems/specification.rb (Gem::Specification#files): Make it
506
+ faster
507
+ * lib/rubygems/command.rb: Better documentation. -v flag now lets you
508
+ get to "really verbose" mode which makes the verbose progress meter
509
+ work. Add command groups to separate types of commands easily.
510
+ * lib/rubygems/commands/which_command.rb, bin/gemwhich: Move `gemwhich`
511
+ under `gem`.
512
+ * lib/rubygems/commands/mirror_command.rb, bin/gem_mirror: Move
513
+ `gem_mirror` under `gem`.
514
+ * lib/rubygems/commands/lock_command.rb, bin/gemlock: Move `gemlock`
515
+ under `gem`.
516
+ * lib/rubygems/commands/server_command.rb, bin/gem_server: Move
517
+ `gem_server` under `gem`.
518
+ * lib/rubygems/doc_manager.rb (Gem::DocManager#initialize): Only raise
519
+ when operating on the filesystem.
520
+ * lib/rubygems/server.rb: Remove option processing, now in
521
+ Gem::Commands::ServerCommand.
522
+ * lib/rubygems/commands/generate_index.rb, bin/index_gem_repository.rb:
523
+ Move `index_gem_repository.rb` to `gem generate_index`.
524
+ * lib/rubygems/indexer (Gem::Indexer): Extract from
525
+ index_gem_repository.rb and merge RubyForge changes.
526
+ * lib/rubygems/command_manager.rb (Gem::CommandManager#run): Print
527
+ backtrace when --debug is set too.
528
+ * lib/rubygems/command_manager.rb (Gem::CommandManager#load_and_instantiate):
529
+ Don't infinitely loop in retry.
530
+ * bin/gemri: Removed. Everybody should have ri integration now.
531
+ * lib/rubygems/config_file.rb: Allow settings to be examined. Pull
532
+ settings from .gemrc.
533
+ * lib/rubygems/commands/environment_command.rb: Add ruby executable
534
+ and configuration settings to `gem env`.
535
+ * lib/rubygems/indexer/indexer.rb (Gem::Indexer::Indexer#build_index):
536
+ Now uses UserInteraction.
537
+ * various: Use UserInteraction for output.
538
+ * lib/gemconfigure.rb: Removed. Same as multiple gem commands.
539
+ * lib/rubygems/commands/contents_command.rb: Removed extra --verbose
540
+ option.
541
+ * lib/rubygems/gem_commands.rb (Gem::LocalRemoteOptions): Moved -B,
542
+ --source, -p from Gem::Commands::common_options.
543
+
544
+ 2007-07-22 Chad Fowler <chad@chadfowler.com>
545
+
546
+ * lib/rubygems/gem_commands.rb: Added another example to the gem
547
+ example output (Gile Bowkett)
548
+ * test/test_documentation_generation.rb, lib/rubygems/doc_manager.rb:
549
+ Added a test for documentation generation and fixed a bug when doc
550
+ location is not writable.
551
+
552
+ 2007-06-16 Eric Hodel <drbrain@segment7.net>
553
+
554
+ * lib/rubygems/gem_path_searcher.rb (Gem::GemPathSearcher): Moved out
555
+ of lib/rubygems/custom_require.rb and added tests.
556
+
557
+ 2007-06-02 Jim Weirich <jim@weirichhouse.org>
558
+
559
+ * lib/rubygems/source_info_cache.rb (Gem::try_file): Fix for issue
560
+ where a non-existing source cache file causes the gem command to
561
+ not find a gem. This fixes it by marshalling out an empty
562
+ hash. (Thanks to Nick Sieger for this fix).
563
+
564
+ 2007-06-01 Jim Weirich <jim@weirichhouse.org>
565
+
566
+ * lib/rubygems.rb
567
+ (Gem::OperationNotSupportedError::latest_partials): Changed from
568
+ match data style to $1 style regexp (on the recommendation of
569
+ better performance).
570
+
571
+ 2007-05-30 Jim Weirich <jim@weirichhouse.org>
572
+
573
+ * lib/rubygems/source_index.rb (Gem::SourceIndex::update):
574
+ Modified to get the bulk_threshhold from the configuration.
575
+ (Gem::SourceIndex::convert_specs): Ryan removed the "reduce_specs"
576
+ method because it is not needed any more and is creating memory
577
+ overhead.
578
+
579
+ * lib/rubygems/config_file.rb (Gem::ConfigFile): Added
580
+ bulk_threshhold field to ConfigFile.
581
+ (Gem::ConfigFile::initialize): Initialize bulk threshhold to 500.
582
+
583
+ * lib/rubygems/command.rb
584
+ (Gem::Command::specific_extra_args_hash): Added
585
+ -B (--bulk-threshhold) option to allow user specified bulk
586
+ download threshhold.
587
+
1
588
  2007-05-23 Jim Weirich <jim@weirichhouse.org>
2
589
 
3
590
  * lib/rubygems/commands/sources_command.rb