libgems 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (177) hide show
  1. data/ChangeLog +5811 -0
  2. data/History.txt +887 -0
  3. data/LICENSE.txt +51 -0
  4. data/README.md +87 -0
  5. data/Rakefile +113 -0
  6. data/lib/gauntlet_libgems.rb +50 -0
  7. data/lib/libgems.rb +1246 -0
  8. data/lib/libgems/builder.rb +102 -0
  9. data/lib/libgems/command.rb +534 -0
  10. data/lib/libgems/command_manager.rb +182 -0
  11. data/lib/libgems/commands/build_command.rb +53 -0
  12. data/lib/libgems/commands/cert_command.rb +86 -0
  13. data/lib/libgems/commands/check_command.rb +80 -0
  14. data/lib/libgems/commands/cleanup_command.rb +106 -0
  15. data/lib/libgems/commands/contents_command.rb +98 -0
  16. data/lib/libgems/commands/dependency_command.rb +195 -0
  17. data/lib/libgems/commands/environment_command.rb +133 -0
  18. data/lib/libgems/commands/fetch_command.rb +67 -0
  19. data/lib/libgems/commands/generate_index_command.rb +133 -0
  20. data/lib/libgems/commands/help_command.rb +172 -0
  21. data/lib/libgems/commands/install_command.rb +178 -0
  22. data/lib/libgems/commands/list_command.rb +35 -0
  23. data/lib/libgems/commands/lock_command.rb +110 -0
  24. data/lib/libgems/commands/mirror_command.rb +111 -0
  25. data/lib/libgems/commands/outdated_command.rb +33 -0
  26. data/lib/libgems/commands/owner_command.rb +75 -0
  27. data/lib/libgems/commands/pristine_command.rb +93 -0
  28. data/lib/libgems/commands/push_command.rb +56 -0
  29. data/lib/libgems/commands/query_command.rb +280 -0
  30. data/lib/libgems/commands/rdoc_command.rb +91 -0
  31. data/lib/libgems/commands/search_command.rb +31 -0
  32. data/lib/libgems/commands/server_command.rb +86 -0
  33. data/lib/libgems/commands/sources_command.rb +157 -0
  34. data/lib/libgems/commands/specification_command.rb +125 -0
  35. data/lib/libgems/commands/stale_command.rb +27 -0
  36. data/lib/libgems/commands/uninstall_command.rb +83 -0
  37. data/lib/libgems/commands/unpack_command.rb +121 -0
  38. data/lib/libgems/commands/update_command.rb +160 -0
  39. data/lib/libgems/commands/which_command.rb +86 -0
  40. data/lib/libgems/config_file.rb +345 -0
  41. data/lib/libgems/custom_require.rb +44 -0
  42. data/lib/libgems/defaults.rb +101 -0
  43. data/lib/libgems/dependency.rb +227 -0
  44. data/lib/libgems/dependency_installer.rb +286 -0
  45. data/lib/libgems/dependency_list.rb +208 -0
  46. data/lib/libgems/doc_manager.rb +242 -0
  47. data/lib/libgems/errors.rb +35 -0
  48. data/lib/libgems/exceptions.rb +91 -0
  49. data/lib/libgems/ext.rb +18 -0
  50. data/lib/libgems/ext/builder.rb +56 -0
  51. data/lib/libgems/ext/configure_builder.rb +25 -0
  52. data/lib/libgems/ext/ext_conf_builder.rb +24 -0
  53. data/lib/libgems/ext/rake_builder.rb +39 -0
  54. data/lib/libgems/format.rb +81 -0
  55. data/lib/libgems/gem_openssl.rb +92 -0
  56. data/lib/libgems/gem_path_searcher.rb +100 -0
  57. data/lib/libgems/gem_runner.rb +79 -0
  58. data/lib/libgems/gemcutter_utilities.rb +49 -0
  59. data/lib/libgems/indexer.rb +720 -0
  60. data/lib/libgems/install_update_options.rb +125 -0
  61. data/lib/libgems/installer.rb +604 -0
  62. data/lib/libgems/local_remote_options.rb +135 -0
  63. data/lib/libgems/old_format.rb +153 -0
  64. data/lib/libgems/package.rb +97 -0
  65. data/lib/libgems/package/f_sync_dir.rb +23 -0
  66. data/lib/libgems/package/tar_header.rb +266 -0
  67. data/lib/libgems/package/tar_input.rb +222 -0
  68. data/lib/libgems/package/tar_output.rb +144 -0
  69. data/lib/libgems/package/tar_reader.rb +106 -0
  70. data/lib/libgems/package/tar_reader/entry.rb +141 -0
  71. data/lib/libgems/package/tar_writer.rb +241 -0
  72. data/lib/libgems/package_task.rb +126 -0
  73. data/lib/libgems/platform.rb +183 -0
  74. data/lib/libgems/remote_fetcher.rb +414 -0
  75. data/lib/libgems/require_paths_builder.rb +18 -0
  76. data/lib/libgems/requirement.rb +153 -0
  77. data/lib/libgems/security.rb +814 -0
  78. data/lib/libgems/server.rb +872 -0
  79. data/lib/libgems/source_index.rb +597 -0
  80. data/lib/libgems/source_info_cache.rb +395 -0
  81. data/lib/libgems/source_info_cache_entry.rb +56 -0
  82. data/lib/libgems/spec_fetcher.rb +337 -0
  83. data/lib/libgems/specification.rb +1487 -0
  84. data/lib/libgems/test_utilities.rb +147 -0
  85. data/lib/libgems/text.rb +65 -0
  86. data/lib/libgems/uninstaller.rb +278 -0
  87. data/lib/libgems/user_interaction.rb +527 -0
  88. data/lib/libgems/validator.rb +240 -0
  89. data/lib/libgems/version.rb +316 -0
  90. data/lib/libgems/version_option.rb +65 -0
  91. data/lib/rbconfig/datadir.rb +20 -0
  92. data/test/bogussources.rb +8 -0
  93. data/test/data/gem-private_key.pem +27 -0
  94. data/test/data/gem-public_cert.pem +20 -0
  95. data/test/fake_certlib/openssl.rb +7 -0
  96. data/test/foo/discover.rb +0 -0
  97. data/test/gem_installer_test_case.rb +97 -0
  98. data/test/gem_package_tar_test_case.rb +132 -0
  99. data/test/gemutilities.rb +605 -0
  100. data/test/insure_session.rb +43 -0
  101. data/test/mockgemui.rb +56 -0
  102. data/test/plugin/exception/libgems_plugin.rb +2 -0
  103. data/test/plugin/load/libgems_plugin.rb +1 -0
  104. data/test/plugin/standarderror/libgems_plugin.rb +2 -0
  105. data/test/private_key.pem +27 -0
  106. data/test/public_cert.pem +20 -0
  107. data/test/rubygems_plugin.rb +21 -0
  108. data/test/simple_gem.rb +66 -0
  109. data/test/test_config.rb +12 -0
  110. data/test/test_gem.rb +780 -0
  111. data/test/test_gem_builder.rb +27 -0
  112. data/test/test_gem_command.rb +178 -0
  113. data/test/test_gem_command_manager.rb +207 -0
  114. data/test/test_gem_commands_build_command.rb +74 -0
  115. data/test/test_gem_commands_cert_command.rb +124 -0
  116. data/test/test_gem_commands_check_command.rb +18 -0
  117. data/test/test_gem_commands_contents_command.rb +156 -0
  118. data/test/test_gem_commands_dependency_command.rb +216 -0
  119. data/test/test_gem_commands_environment_command.rb +144 -0
  120. data/test/test_gem_commands_fetch_command.rb +76 -0
  121. data/test/test_gem_commands_generate_index_command.rb +135 -0
  122. data/test/test_gem_commands_install_command.rb +315 -0
  123. data/test/test_gem_commands_list_command.rb +36 -0
  124. data/test/test_gem_commands_lock_command.rb +68 -0
  125. data/test/test_gem_commands_mirror_command.rb +60 -0
  126. data/test/test_gem_commands_outdated_command.rb +40 -0
  127. data/test/test_gem_commands_owner_command.rb +105 -0
  128. data/test/test_gem_commands_pristine_command.rb +108 -0
  129. data/test/test_gem_commands_push_command.rb +81 -0
  130. data/test/test_gem_commands_query_command.rb +426 -0
  131. data/test/test_gem_commands_server_command.rb +59 -0
  132. data/test/test_gem_commands_sources_command.rb +209 -0
  133. data/test/test_gem_commands_specification_command.rb +139 -0
  134. data/test/test_gem_commands_stale_command.rb +38 -0
  135. data/test/test_gem_commands_uninstall_command.rb +83 -0
  136. data/test/test_gem_commands_unpack_command.rb +199 -0
  137. data/test/test_gem_commands_update_command.rb +207 -0
  138. data/test/test_gem_commands_which_command.rb +66 -0
  139. data/test/test_gem_config_file.rb +287 -0
  140. data/test/test_gem_dependency.rb +149 -0
  141. data/test/test_gem_dependency_installer.rb +661 -0
  142. data/test/test_gem_dependency_list.rb +230 -0
  143. data/test/test_gem_doc_manager.rb +31 -0
  144. data/test/test_gem_ext_configure_builder.rb +84 -0
  145. data/test/test_gem_ext_ext_conf_builder.rb +173 -0
  146. data/test/test_gem_ext_rake_builder.rb +81 -0
  147. data/test/test_gem_format.rb +70 -0
  148. data/test/test_gem_gem_path_searcher.rb +78 -0
  149. data/test/test_gem_gem_runner.rb +45 -0
  150. data/test/test_gem_gemcutter_utilities.rb +103 -0
  151. data/test/test_gem_indexer.rb +673 -0
  152. data/test/test_gem_install_update_options.rb +68 -0
  153. data/test/test_gem_installer.rb +857 -0
  154. data/test/test_gem_local_remote_options.rb +97 -0
  155. data/test/test_gem_package_tar_header.rb +130 -0
  156. data/test/test_gem_package_tar_input.rb +112 -0
  157. data/test/test_gem_package_tar_output.rb +97 -0
  158. data/test/test_gem_package_tar_reader.rb +46 -0
  159. data/test/test_gem_package_tar_reader_entry.rb +109 -0
  160. data/test/test_gem_package_tar_writer.rb +144 -0
  161. data/test/test_gem_package_task.rb +59 -0
  162. data/test/test_gem_platform.rb +264 -0
  163. data/test/test_gem_remote_fetcher.rb +740 -0
  164. data/test/test_gem_requirement.rb +292 -0
  165. data/test/test_gem_server.rb +356 -0
  166. data/test/test_gem_silent_ui.rb +113 -0
  167. data/test/test_gem_source_index.rb +461 -0
  168. data/test/test_gem_spec_fetcher.rb +410 -0
  169. data/test/test_gem_specification.rb +1334 -0
  170. data/test/test_gem_stream_ui.rb +218 -0
  171. data/test/test_gem_text.rb +43 -0
  172. data/test/test_gem_uninstaller.rb +146 -0
  173. data/test/test_gem_validator.rb +63 -0
  174. data/test/test_gem_version.rb +181 -0
  175. data/test/test_gem_version_option.rb +89 -0
  176. data/test/test_kernel.rb +59 -0
  177. metadata +402 -0
@@ -0,0 +1,887 @@
1
+ === 1.3.8 / 2011-05-16
2
+
3
+ SlimGems is born! SlimGems is a fork of RubyGems, see README.md for more.
4
+
5
+ === 1.3.7 / 2010-05-13
6
+
7
+ NOTE:
8
+
9
+ http://rubygems.org is now the default source for downloading gems.
10
+
11
+ You may have sources set via ~/.gemrc, so you should replace
12
+ http://gems.rubyforge.org with http://rubygems.org
13
+
14
+ http://gems.rubyforge.org will continue to work for the forseeable future.
15
+
16
+ New features:
17
+
18
+ * `gem` commands
19
+ * `gem install` and `gem fetch` now report alternate platforms when a
20
+ matching one couldn't be found.
21
+ * `gem contents` --prefix is now the default as specified in --help. Bug
22
+ #27211 by Mamoru Tasaka.
23
+ * `gem fetch` can fetch of old versions again. Bug #27960 by Eric Hankins.
24
+ * `gem query` and friends output now lists platforms. Bug #27856 by Greg
25
+ Hazel.
26
+ * `gem server` now allows specification of multiple gem dirs for
27
+ documentation. Bug #27573 by Yuki Sonoda.
28
+ * `gem unpack` can unpack gems again. Bug #27872 by Timothy Jones.
29
+ * `gem unpack` now unpacks remote gems.
30
+ * --user-install is no longer the default. If you really liked it, see
31
+ Gem::ConfigFile to learn how to set it by default. (This change was made
32
+ in 1.3.6)
33
+ * RubyGems now has platform support for IronRuby. Patch #27951 by Will Green.
34
+
35
+ Bug fixes:
36
+
37
+ * Require rubygems/custom_require if --disable-gem was set. Bug #27700 by
38
+ Roger Pack.
39
+ * RubyGems now protects against exceptions being raised by plugins.
40
+ * rubygems/builder now requires user_interaction. Ruby Bug #1040 by Phillip
41
+ Toland.
42
+ * Gem::Dependency support #version_requirements= with a warning. Fix for old
43
+ Rails versions. Bug #27868 by Wei Jen Lu.
44
+ * Gem::PackageTask depends on the package dir like the other rake package
45
+ tasks so dependencies can be hooked up correctly.
46
+
47
+ === 1.3.6 / 2010-02-17
48
+
49
+ New features:
50
+
51
+ * `gem` commands
52
+ * Added `gem push` and `gem owner` for interacting with modern/Gemcutter
53
+ sources
54
+ * `gem dep` now supports --prerelease.
55
+ * `gem fetch` now supports --prerelease.
56
+ * `gem server` now supports --bind. Patch #27357 by Bruno Michel.
57
+ * `gem rdoc` no longer overwrites built documentation. Use --overwrite
58
+ force rebuilding. Patch #25982 by Akinori MUSHA.
59
+ * Captial letters are now allowed in prerelease versions.
60
+
61
+ Bug fixes:
62
+
63
+ * Development deps are no longer added to rubygems-update gem so older
64
+ versions can update sucessfully.
65
+ * Installer bugs:
66
+ * Prerelease gems can now depend on non-prerelease gems.
67
+ * Development dependencies are ignored unless explicitly needed. Bug #27608
68
+ by Roger Pack.
69
+ * `gem` commands
70
+ * `gem which` now fails if no paths were found. Adapted patch #27681 by
71
+ Caio Chassot.
72
+ * `gem server` no longer has invalid markup. Bug #27045 by Eric Young.
73
+ * `gem list` and friends show both prerelease and regular gems when
74
+ --prerelease --all is given
75
+ * Gem::Format no longer crashes on empty files. Bug #27292 by Ian Ragsdale.
76
+ * Gem::GemPathSearcher handles nil require_paths. Patch #27334 by Roger Pack.
77
+ * Gem::RemoteFetcher no longer copies the file if it is where we want it.
78
+ Patch #27409 by Jakub Šťastný.
79
+
80
+ Deprecation Notices:
81
+
82
+ * lib/rubygems/timer.rb has been removed.
83
+ * Gem::Dependency#version_requirements is deprecated and will be removed on or
84
+ after August 2010.
85
+ * Bulk index update is no longer supported.
86
+ * Gem::manage_gems was removed in 1.3.3.
87
+ * Time::today was removed in 1.3.3.
88
+
89
+ === 1.3.5 / 2009-07-21
90
+
91
+ Bug fixes:
92
+
93
+ * Fix use of prerelease gems.
94
+ * Gem.bin_path no longer escapes path with spaces. Bug #25935 and #26458.
95
+
96
+ Deprecation Notices:
97
+
98
+ * Bulk index update is no longer supported (the code currently remains, but not
99
+ the tests)
100
+ * Gem::manage_gems was removed in 1.3.3.
101
+ * Time::today was removed in 1.3.3.
102
+
103
+ === 1.3.4 / 2009-05-03
104
+
105
+ Bug Fixes:
106
+
107
+ * Fixed various warnings
108
+ * Gem::ruby_version works correctly for 1.8 branch and trunk
109
+ * Prerelease gems now show up in `gem list` and can be used
110
+ * Fixed option name for `gem setup --format-executable`
111
+ * RubyGems now matches Ruby > 1.9.1 gem paths
112
+ * Gem::RemoteFetcher#download now works for explicit Windows paths across
113
+ drives. Bug #25882 by Lars Christensen
114
+ * Fix typo in Gem::Requirement#parse. Bug #26000 by Mike Gunderloy.
115
+
116
+ Deprecation Notices:
117
+
118
+ * Bulk index update is no longer supported (the code currently remains, but not
119
+ the tests)
120
+ * Gem::manage_gems was removed in 1.3.3.
121
+ * Time::today was removed in 1.3.3.
122
+
123
+ === 1.3.3 / 2009-05-04
124
+
125
+ New Features:
126
+
127
+ * `gem server` allows port names (from /etc/services) with --port.
128
+ * `gem server` now has search that jumps to RDoc. Patch #22959 by Vladimir
129
+ Dobriakov.
130
+ * `gem spec` can retrieve single fields from a spec (like `gem spec rake
131
+ authors`).
132
+ * Gem::Specification#has_rdoc= is deprecated and ignored (defaults to true)
133
+ * RDoc is now generated regardless of Gem::Specification#has_rdoc?
134
+
135
+ Bug Fixes:
136
+
137
+ * `gem clean` now cleans up --user-install gems. Bug #25516 by Brett
138
+ Eisenberg.
139
+ * Gem.bin_path now escapes paths with spaces.
140
+ * Rake extension builder uses explicit correctly loads rubygems when invoking
141
+ rake.
142
+ * Prerelease versions now match "~>" correctly. Patch #25759 by Yossef
143
+ Mendelssohn.
144
+ * Check bindir for executables, not root when validating. Bug reported by
145
+ David Chelimsky.
146
+ * Remove Time.today, no way to override it before RubyGems loads. Bug #25564
147
+ by Emanuele Vicentini
148
+ * Raise Gem::Exception for #installation_path when not installed. Bug #25741
149
+ by Daniel Berger.
150
+ * Don't raise in Gem::Specification#validate when homepage is nil. Bug #25677
151
+ by Mike Burrows.
152
+ * Uninstall executables from the correct directory. Bug #25555 by Brett
153
+ Eisenberg.
154
+ * Raise Gem::LoadError if Kernel#gem fails due to previously-loaded gem. Bug
155
+ reported by Alf Mikula.
156
+
157
+ Deprecation Notices:
158
+
159
+ * Gem::manage_gems has been removed.
160
+ * Time::today has been removed early. There was no way to make it warn and be
161
+ easy to override with user code.
162
+
163
+ === 1.3.2 / 2009-04-15
164
+
165
+ Select New Features:
166
+
167
+ * RubyGems now loads plugins from rubygems_plugin.rb in installed gems.
168
+ This can be used to add commands (See Gem::CommandManager) or add
169
+ install/uninstall hooks (See Gem::Installer and Gem::Uninstaller).
170
+ * Gem::Version now understands prerelease versions using letters. (eg.
171
+ '1.2.1.b') Thanks to Josh Susser, Alex Vollmer and Phil Hagelberg.
172
+ * RubyGems now includes a Rake task for creating gems which replaces rake's
173
+ Rake::GemPackageTask. See Gem::PackageTask.
174
+ * Gem::find_files now returns paths in $LOAD_PATH.
175
+ * Added Gem::promote_load_path for use with Gem::find_files
176
+ * Added Gem::bin_path to make finding executables easier. Patch #24114 by
177
+ James Tucker.
178
+ * Various improvements to build arguments for installing gems.
179
+ * `gem contents` added --all and --no-prefix.
180
+ * Gem::Specification
181
+ * #validate strips directories and errors on not-files.
182
+ * #description no longer removes newlines.
183
+ * #name must be a String.
184
+ * FIXME and TODO are no longer allowed in various fields.
185
+ * Added support for a license attribute. Feature #11041 (partial).
186
+ * Removed Gem::Specification::list, too much process growth. Bug #23668 by
187
+ Steve Purcell.
188
+ * `gem generate_index`
189
+ * Can now generate an RSS feed.
190
+ * Modern indicies can now be updated incrementally.
191
+ * Legacy indicies can be updated separately from modern.
192
+
193
+ Select Bugs Fixed:
194
+
195
+ * Better gem activation error message. Patch #23082.
196
+ * Kernel methods are now private. Patch #20801 by James M. Lawrence.
197
+ * Fixed various usability issues with `gem check`.
198
+ * `gem update` now rescues InstallError and continues. Bug #19268 by Gabriel
199
+ Wilkins.
200
+ * Allow 'https', 'file' as a valid schemes for --source. Patch #22485.
201
+ * `gem install`
202
+ * Now removes existing path before installing. Bug #22837.
203
+ * Uses Gem::bin_path in executable stubs to work around Kernel#load bug in
204
+ 1.9.
205
+ * Correctly handle build args (after --) via the API. Bug #23210.
206
+ * --user-install
207
+ * `gem install --no-user-install` now works. Patch #23573 by Alf Mikula.
208
+ * `gem uninstall` can now uninstall from ~/.gem. Bug #23760 by Roger Pack.
209
+ * setup.rb
210
+ * Clarify RubyGems RDoc installation location. Bug #22656 by Gian Marco
211
+ Gherardi.
212
+ * Allow setup to run from read-only location. Patch #21862 by Luis Herrera.
213
+ * Fixed overwriting ruby executable when BASERUBY was not set. Bug #24958
214
+ by Michael Soulier.
215
+ * Ensure we're in a RubyGems dir when installing.
216
+ * Deal with extraneous quotation mark when autogenerating .bat file on MS
217
+ Windows. Bug #22712.
218
+
219
+ Deprecation Notices:
220
+
221
+ * Gem::manage_gems has been removed.
222
+ * Time::today will be removed in RubyGems 1.4.
223
+
224
+ Special thanks to Chad Wooley for backwards compatibility testing and Luis
225
+ Lavena and Daniel Berger for continuing windows support.
226
+
227
+ === 1.3.1 / 2008-10-28
228
+
229
+ Bugs fixed:
230
+
231
+ * Disregard ownership of ~ under Windows while creating ~/.gem. Fixes
232
+ issues related to no uid support under Windows.
233
+ * Fix requires for Gem::inflate, Gem::deflate, etc.
234
+ * Make Gem.dir respect :gemhome value from config. (Note: this feature may be
235
+ removed since it is hard to implement on 1.9.)
236
+ * Kernel methods are now private. Patch #20801 by James M. Lawrence.
237
+ * Gem::location_of_caller now behaves on Windows. Patch by Daniel Berger.
238
+ * Silence PATH warning.
239
+
240
+ Deprecation Notices:
241
+
242
+ * Gem::manage_gems will be removed on or after March 2009.
243
+
244
+ === 1.3.0 / 2008-09-25
245
+
246
+ New features:
247
+
248
+ * RubyGems doesn't print LOCAL/REMOTE titles for `gem query` and friends if
249
+ stdout is not a TTY, except with --both.
250
+ * Added Gem.find_files, allows a gem to discover features provided by other
251
+ gems.
252
+ * Added pre/post (un)install hooks for packagers of RubyGems. (Not for gems
253
+ themselves).
254
+ * RubyGems now installs gems into ~/.gem if GEM_HOME is not writable. Use
255
+ --no-user-install command-line switch to disable this behavior.
256
+ * Fetching specs for update now uses If-Modified-Since requests.
257
+ * RubyGems now updates the ri cache when the rdoc gem is installed and
258
+ documentation is generated.
259
+
260
+ Deprecation Notices:
261
+
262
+ * Gem::manage_gems now warns when called. It will be removed on or after March
263
+ 2009.
264
+
265
+ Bugs Fixed:
266
+
267
+ * RubyGems 1.3.0+ now updates when no previous rubygems-update is installed.
268
+ Bug #20775 by Hemant Kumar.
269
+ * RubyGems now uses the regexp we already have for `gem list --installed`. Bug
270
+ #20876 by Nick Hoffman.
271
+ * Platform is now forced to Gem::Platform::RUBY when nil or blank in the
272
+ indexer. Fixes various uninstallable gems.
273
+ * Handle EINVAL on seek. Based on patch in bug #20791 by Neil Wilson.
274
+ * Fix HTTPS support. Patch #21072 by Alex Arnell.
275
+ * RubyGems now loads all cache files even if latest has been loaded. Bug
276
+ #20776 by Uwe Kubosch.
277
+ * RubyGems checks for support of development dependencies for #to_ruby. Bug
278
+ #20778 by Evan Weaver.
279
+ * Now specifications from the future can be loaded.
280
+ * Binary script uninstallation fixed. Bug #21234 by Neil Wilson.
281
+ * Uninstallation with -i fixed. Bug #20812 by John Clayton.
282
+ * Gem::Uninstaller#remove_all now calls Gem::Uninstaller#uninstall_gem so hooks
283
+ get called. Bug #21242 by Neil Wilson.
284
+ * Gem.ruby now properly escaped on windows. Fixes problem with extension
285
+ compilation.
286
+ * `gem lock --strict` works again. Patch #21814 by Sven Engelhardt.
287
+ * Platform detection for Solaris was improved. Patch #21911 by Bob Remeika.
288
+
289
+ Other Changes Include:
290
+
291
+ * `gem help install` now describes _version_ argument to executable stubs
292
+ * `gem help environment` describes environment variables and ~/.gemrc and
293
+ /etc/gemrc
294
+ * On-disk gemspecs are now read in UTF-8 and written with a UTF-8 magic comment
295
+ * Rakefile
296
+ * If the SETUP_OPTIONS environment variable is set, pass its contents as
297
+ arguments to setup.rb
298
+ * lib/rubygems/platform.rb
299
+ * Remove deprecated constant warnings and really deprecate them. (WIN32,
300
+ etc).
301
+ * lib/rubygems/remote_fetcher.rb
302
+ * Now uses ~/.gem/cache if the cache dir in GEM_HOME is not writable.
303
+ * lib/rubygems/source_index.rb
304
+ * Deprecate options to 'search' other than Gem::Dependency instances and
305
+ issue warning until November 2008.
306
+ * setup.rb
307
+ * --destdir folder structure now built using Pathname, so it works for
308
+ Windows platforms.
309
+ * test/*
310
+ * Fixes to run tests when under test/rubygems/. Patch by Yusuke ENDOH
311
+ [ruby-core:17353].
312
+ * test/test_ext_configure_builder.rb
313
+ * Locale-free patch by Yusuke Endoh [ruby-core:17444].
314
+
315
+ === 1.2.0 / 2008-06-21
316
+
317
+ New features:
318
+
319
+ * RubyGems no longer performs bulk updates and instead only fetches the gemspec
320
+ files it needs. Alternate sources will need to upgrade to RubyGems 1.2 to
321
+ allow RubyGems to take advantage of the new metadata updater. If a pre 1.2
322
+ remote source is in the sources list, RubyGems will revert to the bulk update
323
+ code for compatibility.
324
+ * RubyGems now has runtime and development dependency types. Use
325
+ #add_development_dependency and #add_runtime_dependency. All typeless
326
+ dependencies are considered to be runtime dependencies.
327
+ * RubyGems will now require rubygems/defaults/operating_system.rb and
328
+ rubygems/defaults/#{RBX_ENGINE}.rb if they exist. This allows packagers and
329
+ ruby implementers to add custom behavior to RubyGems via these files. (If
330
+ the RubyGems API is insufficient, please suggest improvements via the
331
+ RubyGems list.)
332
+ * /etc/gemrc (and windows equivalent) for global settings
333
+ * setup.rb now handles --vendor and --destdir for packagers
334
+ * `gem stale` command that lists gems by last access time
335
+
336
+ Bugs Fixed:
337
+
338
+ * File modes from gems are now honored, patch #19737
339
+ * Marshal Gem::Specification objects from the future can now be loaded.
340
+ * A trailing / is now added to remote sources when missing, bug #20134
341
+ * Gems with legacy platforms will now be correctly uninstalled, patch #19877
342
+ * `gem install --no-wrappers` followed by `gem install --wrappers` no longer
343
+ overwrites executables
344
+ * `gem pristine` now forces reinstallation of gems, bug #20387
345
+ * RubyGems gracefully handles ^C while loading .gemspec files from disk, bug
346
+ #20523
347
+ * Paths are expanded in more places, bug #19317, bug #19896
348
+ * Gem::DependencyInstaller resets installed gems every install, bug #19444
349
+ * Gem.default_path is now honored if GEM_PATH is not set, patch #19502
350
+
351
+ Other Changes Include:
352
+
353
+ * setup.rb
354
+ * stub files created by RubyGems 0.7.x and older are no longer removed. When
355
+ upgrading from these ancient versions, upgrade to 1.1.x first to clean up
356
+ stubs.
357
+ * RDoc is no longer required until necessary, patch #20414
358
+ * `gem server`
359
+ * Now completely matches the output of `gem generate_index` and
360
+ has correct content types
361
+ * Refreshes from source directories for every hit. The server will no longer
362
+ need to be restarted after installing gems.
363
+ * `gem query --details` and friends now display author, homepage, rubyforge url
364
+ and installed location
365
+ * `gem install` without -i no longer reinstalls dependencies if they are in
366
+ GEM_PATH but not in GEM_HOME
367
+ * Gem::RemoteFetcher now performs persistent connections for HEAD requests,
368
+ bug #7973
369
+
370
+ === 1.1.1 / 2008-04-11
371
+
372
+ Bugs Fixed:
373
+
374
+ * Gem.prefix now returns non-nil only when RubyGems was installed outside
375
+ sitelibdir or libdir.
376
+ * The `gem server` gem list now correctly links to gem details.
377
+ * `gem update --system` now passes --no-format-executable to setup.rb.
378
+ * Gem::SourceIndex#refresh! now works with multiple gem repositories.
379
+ * Downloaded gems now go into --install-dir's cache directory.
380
+ * Various fixes to downloading gem metadata.
381
+ * `gem install --force` now ignores network errors too.
382
+ * `gem pristine` now rebuilds extensions.
383
+ * `gem update --system` now works on virgin Apple ruby.
384
+ * Gem::RemoteFetcher handles Errno::ECONNABORTED.
385
+ * Printing of release notes fixed.
386
+
387
+ === 1.1.0 / 2008-03-29
388
+
389
+ New features:
390
+
391
+ * RubyGems now uses persistent connections on index updates. Index updates are
392
+ much faster now.
393
+ * RubyGems only updates from a latest index by default, cutting candidate gems
394
+ for updates to roughly 1/4 (at present). Index updates are even faster
395
+ still.
396
+ * `gem list -r` may only show the latest version of a gem, add --all to see
397
+ all gems.
398
+ * `gem spec` now extracts specifications from .gem files.
399
+ * `gem query --installed` to aid automation of checking for gems.
400
+
401
+ Bugs Fixed:
402
+
403
+ * RubyGems works with both Config and RbConfig now.
404
+ * Executables are now cleaned upon uninstall.
405
+ * You can now uninstall from a particular directory.
406
+ * Updating from non-default sources fixed.
407
+ * Executable stubs now use ruby install name in shebang.
408
+ * `gem unpack` checks every directory in Gem.path now.
409
+ * `gem install` now exits with non-zero exit code when appropriate.
410
+ * `gem update` only updates gems that need updates.
411
+ * `gem update` doesn't force remote-only updates.
412
+ * `gem update` handles dependencies properly when updating.
413
+ * Gems are now loaded in Gem.path order.
414
+ * Gem stub scripts on windows now work outside Gem.bindir.
415
+ * `gem sources -r` now works without network access.
416
+
417
+ Other Changes Include:
418
+
419
+ * RubyGems now requires Ruby > 1.8.3.
420
+ * Release notes are now printed upon installation.
421
+ * `gem env path` now prints a usable path.
422
+ * `gem install` reverts to local-only installation upon network error.
423
+ * Tar handling code refactoring and cleanup.
424
+ * Gem::DependencyInstaller's API has changed.
425
+
426
+ For a full list of changes to RubyGems, see the ChangeLog file.
427
+
428
+ === 1.0.1 / 2007-12-20
429
+
430
+ Bugs Fixed:
431
+
432
+ * Installation on Ruby 1.8.3 through 1.8.5 fixed
433
+ * `gem build` on 1.8.3 fixed
434
+
435
+ Other Changes Include:
436
+
437
+ * Since RubyGems 0.9.5, RubyGems is no longer supported on Ruby 1.8.2 or older,
438
+ this is official in RubyGems 1.0.1.
439
+
440
+ === 1.0.0 / 2007-12-20
441
+
442
+ Major New Features Include:
443
+
444
+ * RubyGems warns about various problems with gemspecs during gem building
445
+ * More-consistent versioning for the RubyGems software
446
+
447
+ Other Changes Include:
448
+
449
+ * Fixed various bugs and problems with installing gems on Windows
450
+ * Fixed using `gem server` for installing gems
451
+ * Various operations are even more verbose with --verbose
452
+ * Built gems are now backwards compatible with 0.9.4
453
+ * Improved detection of RUBYOPT loading rubygems
454
+ * `ruby setup.rb` now has a --help option
455
+ * Gem::Specification#bindir is now respected on installation
456
+ * Executable stubs can now be installed to match ruby's name, so if ruby is
457
+ installed as 'ruby18', foo_exec will be installed as 'foo_exec18'
458
+ * `gem unpack` can now unpack into a specific directory with --target
459
+ * OpenSSL is no longer required by default
460
+
461
+ Deprecations and Deletions:
462
+
463
+ * Kernel#require_gem has been removed
464
+ * Executables without a shebang will not be wrapped in a future version, this
465
+ may cause such executables to fail to operate on installation
466
+ * Gem::Platform constants other than RUBY and CURRENT have been removed
467
+ * Gem::RemoteInstaller was removed
468
+ * Gem::Specification#test_suite_file and #test_suite_file= are deprecated in
469
+ favor of #test_file and #test_file=
470
+ * Gem::Specification#autorequire= has been deprecated
471
+ * Time::today will be removed in a future version
472
+
473
+ === 0.9.5 / 2007-11-19
474
+
475
+ Major New Features Include:
476
+
477
+ * Platform support
478
+ * Automatic installation of platform gems
479
+ * New bandwidth and memory friendlier index file format
480
+ * "Offline" mode (--no-update-sources)
481
+ * Bulk update threshold can be specified (-B, --bulk-threshold)
482
+ * New `gem fetch` command
483
+ * `gem` now has "really verbose" output when you specify -v
484
+ * Improved stubs and `gem.bat` on mswin, including better compatiblity
485
+ with the One-Click Installer.
486
+
487
+ Other Changes Include:
488
+
489
+ * Time::today is deprecated and will be removed at a future date
490
+ * Gem::manage_gems is deprecated and will be removed at a future date
491
+ * `gem install --include-dependencies` (-y) is now deprecated since it is the
492
+ default, use --ignore-dependencies to turn off automatic dependency
493
+ installation
494
+ * Multi-version diamond dependencies only are installed once
495
+ * Processing a YAML bulk index update takes less memory
496
+ * `gem install -i` makes sure all depenencies are installed
497
+ * `gem update --system` reinstalls into the prefix it was originally installed
498
+ in
499
+ * `gem update --system` respects --no-rdoc and --no-ri flags
500
+ * HTTP basic authentication support for proxies
501
+ * Gem::Specification#platforms should no longer be a String, use
502
+ Gem::Platform::CURRENT when building binary gems instead
503
+ * `gem env` has more diagnostic information
504
+ * require 'rubygems' loads less code
505
+ * sources.gem is gone, RubyGems now uses built-in defaults
506
+ * `gem install --source` will no longer add --source by default, use `gem
507
+ sources --add` to make it a permanent extra source
508
+ * `gem query` (list) no longer prints details by default
509
+ * Exact gem names are matched in various places
510
+ * mkrf extensions are now supported
511
+ * A gem can depend on a specific RubyGems version
512
+ * `gem_server` is now `gem server`
513
+ * `gemlock` is now `gem lock`
514
+ * `gem_mirror` is now `gem mirror`
515
+ * `gemwhich` is now `gem which`
516
+ * `gemri` is no longer included with RubyGems
517
+ * `index_gem_repository.rb` is now `gem generate_index`
518
+ * `gem` performs more validation of parameters
519
+ * Custom rdoc styles are now supported
520
+ * Gem indexer no longer removes quick index during index creation
521
+ * Kernel#require only rescues a LoadError for the file being required now
522
+ * `gem dependencies` can now display some information for remote gems
523
+ * Updating RubyGems now works with RUBYOPT=-rubygems
524
+
525
+ Special thanks to:
526
+
527
+ * Daniel Berger
528
+ * Luis Lavena
529
+ * Tom Copeland
530
+ * Wilson Bilkovich
531
+
532
+ === 0.9.4 / 2007-05-23
533
+
534
+ If you are experiencing problems with the source index (e.g. strange
535
+ "No Method" errors), or problems with zlib (e.g. "Buffer Error"
536
+ messsage), we recommend upgrading to RubyGems 0.9.4.
537
+
538
+ Bug Fixes Include:
539
+
540
+ * Several people have been experiencing problems with no method errors
541
+ on the source index cache. The source index cache is now a bit more
542
+ self healing. Furthermore, if the source index cache is
543
+ irreparable, then it is automatically dropped and reloaded.
544
+ * The source cache files may now be dropped with the "gem sources
545
+ --clear-all" command. (This command may require root is the system
546
+ source cache is in a root protected area).
547
+ * Several sub-commands were accidently dropped from the "gem" command.
548
+ These commands have been restored.
549
+
550
+ === 0.9.3 / 2007-05-10
551
+
552
+ Bug Fixes Include:
553
+
554
+ The ZLib library on Windows will occasionally complains about a buffer error
555
+ when unpacking gems. The Gems software has a workaround for that problem, but
556
+ the workaround was only enabled for versions of ZLib 1.2.1 or earlier. We
557
+ have received several reports of the error occuring with ZLib 1.2.3, so we
558
+ have permanently enabled the work around on all versions.
559
+
560
+ === 0.9.2 / 2007-02-05
561
+
562
+ Bug Fixes Include:
563
+
564
+ * The "unpack" command now works properly.
565
+ * User name and password are now passed properly to the authenticating
566
+ proxy when downloading gems.
567
+
568
+ === 0.9.1 / 2007-01-16
569
+
570
+ See ChangeLog
571
+
572
+ === 0.9.0 / 2006-06-28
573
+
574
+ Finally, the much anticipated RubyGems version 0.9.0 is now available.
575
+ This release includes a number of new features and bug fixes. The
576
+ number one change is that we can now download the gem index
577
+ incrementally. This will greatly speed up the gem command when only a
578
+ few gems are out of date.
579
+
580
+ Major Enhancments include:
581
+
582
+ * The gem index is now downloaded incrementally, only updating entries
583
+ that are out of date. If more than 50 entries are out of date, we
584
+ revert back to a bulk download.
585
+ * Several patches related to allowing RubyGems to work with
586
+ authenticating proxies (from Danie Roux and Anatol Pomozov). Just
587
+ put the user and password in the proxy URL (e.g. -p
588
+ http://user:password@proxy.address.com:8080) or use the
589
+ HTTP_PROXY_USER and HTTP_PROXY_PASS environment variables.
590
+ * The gem unpack command can now accept a file path rather than just a
591
+ install gem name.
592
+ * Both RI and RDOC documents are now generated by default.
593
+ * A gemri command is included to read gem RI docs (only needed for
594
+ Ruby 1.8.4 or earlier).
595
+
596
+ Minor enhancements include:
597
+
598
+ * Verison 0.0.0 is now a valid gem version.
599
+ * Better detection of missing SSL functionality.
600
+ * SSL is not required if the security policy does not require
601
+ signature checking.
602
+ * Rake built extensions are now supported (Tilman Sauerbeck).
603
+ * Several autorequire bug fixes.
604
+ * --traceback is now an alias for --backtrace (I can never remember
605
+ which one it is).
606
+ * SAFE=1 compatibility fixes.
607
+ * .rbw is now a supported suffix for RubyGem's custom require.
608
+ * Several Ruby 1.9 compatibility fixes (Eric Hodel).
609
+
610
+ Bug Fixes:
611
+
612
+ * Added dashes to gemspecs generated in Ruby 1.8.3. This solves some
613
+ cross-Ruby version compatibility issues.
614
+ * Fixed bug where the wrong executables could be uninstalled (Eric
615
+ Hodel).
616
+ * Fixed bug where gem unpack occasionally unpacked the wrong gem.
617
+ * Fixed bug where a fatal error occured when permissions on .gemrc
618
+ were too restrictive (reported by Luca Pireddu).
619
+ * Fixed prefix handling for native expressions (patch by Aaron Patterson).
620
+ * Fixed several Upgrade => Update typos.
621
+
622
+ === 0.8.11 / 2005-07-13
623
+
624
+ * -y is a synonym for --include-dependencies.
625
+ * Better handling of errors in the top level rescue clause.
626
+ * Package list command (e.g. gem inspect GEM).
627
+ * .gemrc now allows cvsrc-like options to set defaults per subcommand.
628
+ * The autorequire gem spec field will now accept a list.
629
+ * Substituted Time for Date in specs, increasing performance
630
+ dramatically.
631
+ * Fixed reported bug of gem directories ending in "-" (reported by
632
+ Erik Hatcher).
633
+ * Fixed but in installer that caused dependency installation to not
634
+ work.
635
+ * Added Paul Duncan's gem signing patch.
636
+ * Added Mark Hubbart's Framework patch (for better integration with OS
637
+ X).
638
+ * Added David Glasser's install-from-mirror patch.
639
+ * Additional internal structural cleanup and test reorganization.
640
+
641
+ === 0.8.10 / 2005-03-27
642
+
643
+ * In multi-user environments, it is common to supply mulitple versions of gems
644
+ (for example Rails), allowing individual users to select the version of the
645
+ gem they desire. This allows a user to be insulated from updates to that
646
+ gem. RubyGems 0.8.10 fixes a problem where gems could occasionally become
647
+ confused about the current versions of libraries selected by the user.
648
+ * The other annoying bug is that if there are any existing rubygems-update gems
649
+ installed, then the "gem update --system" command will download a new
650
+ update, but install the latest update prior to the download.
651
+
652
+ === 0.8.9
653
+
654
+ Never released
655
+
656
+ === 0.8.8 / 2005-03-14
657
+
658
+ * Moved the master definition of class Requirement back under version.
659
+ Kept the body of Requirement under Gem.
660
+
661
+ === 0.8.7 / 2005-03-14
662
+
663
+ Even though it has only been a few weeks since that last release,
664
+ there are quite a number of new features in 0.8.7. A complete list of
665
+ new features will be given below, but here is a summary of the hot
666
+ items.
667
+
668
+ * The bug that prevented some users from installing rails has been
669
+ squashed. A big thanks to Bill Guindon (aGorilla) for helping track
670
+ that one down.
671
+
672
+ There are several new commands available on the gem command:
673
+
674
+ * gem cleanup GEMNAME -- Cleanup (uninstall) all the old versions of
675
+ gem. If the gem name is omitted, the entire repository is cleaned.
676
+ * gem dependency GEMNAME -- Show the dependencies for the named gems.
677
+ This is really helpful when trying to figure out what gem needs what
678
+ other gem.
679
+
680
+ There changes to the existing commands as well.
681
+
682
+ * gem uninstall is much smarter about removing gems from the
683
+ repository. Lists of gems are now uninstalled in proper dependency
684
+ order (ie. if A depends on B, A is uninstalled first). Also,
685
+ warnings about broken dependencies occur only when removing the
686
+ *last* gem that supports a dependency is removed.
687
+
688
+ Both gem install and gem uninstall support some new command line
689
+ options that can reduce the amount of yes/no queries given the user.
690
+ For install we have:
691
+
692
+ * --ignore-dependencies -- Only install requests gems, no
693
+ dependendecies are automatically installed.
694
+ * --include-dependencies -- Automatically install dependencies,
695
+ without confirmation.
696
+
697
+ For gem uninstall, the new options are:
698
+
699
+ * --all -- Uninstall all matching gems without confirmation.
700
+ * --ignore-dependencies -- Uninstall, even if dependencies are broken.
701
+ * --executables -- Remove executables without confirmation
702
+
703
+ Under general cleanup, gems will not, by default, run RDoc on packages
704
+ that do not have the RDoc flag set.
705
+
706
+ And finally there is a new library file 'gemconfigure' to aid in
707
+ writing version sensitive applications (without undue dependencies on
708
+ RubyGems); and 'gemwhich', a short script to locate libraries in the
709
+ file system. You can read more about them here:
710
+
711
+ * gemconfigure: http://docs.rubygems.org/read/chapter/4#page73
712
+ * gemwhich: http://docs.rubygems.org/read/chapter/17
713
+
714
+ === 0.8.6 / 2005-02-27
715
+
716
+ * Fixed a small bug with shebang construction
717
+
718
+ === 0.8.5 / 2005-02-26
719
+
720
+ Do you know how you used to dread getting the following message while
721
+ installing gems?
722
+
723
+ Updating Gem source index for: http://gems.rubyforge.org
724
+
725
+ It could take up to 30 seconds (on my machine, even worse on others) for
726
+ that crazy source index to update.
727
+
728
+ This latest release of RubyGems speeds that wait time up considerably.
729
+ The following table gives the following times for installing RedCloth
730
+ with a required source index update on three system we had available to
731
+ us. No RDoc generation was included in the following times.
732
+
733
+ RubyGems Linux Mac OSX Windows
734
+ 0.8.4 33 secs 73 secs 58 secs
735
+ 0.8.5 8 secs 14 secs 21 secs
736
+
737
+ The new caching code is at least 3x faster than previous versions. Woo
738
+ Hoo!
739
+
740
+ === 0.8.4 / 2005-01-01
741
+
742
+ * Rubygems 0.8.3's installer was broken unless you already had an older
743
+ version of RubyGems installed. That's fixed.
744
+ * Change in the way Gem::Specification internally deals with lazy attributes
745
+ and defaults, bringing (with some loadpath_manager changes) a fairly
746
+ significant increase in speed.
747
+ * Support for lower-cased Gem file names (for you, Paul Duncan :)
748
+ * Erik Veenstra's patch for making Gem versions sortable.
749
+
750
+ === 0.8.3 / 2004-12-07
751
+
752
+ No real earth shattering news here, but there were a number of really
753
+ annoying issues involving other libraries that RubyGems depends upon.
754
+ 0.8.3 contains some workarounds for these issues. In particular:
755
+
756
+ * Added workaround for the null byte in Dir string issue. (see
757
+ http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/121702).
758
+ (Thanks to Mauricio Fernández for the quick response on this one).
759
+ * Added workaround for old version of Zlib on windows that caused
760
+ Ruwiki to fail to install. (see
761
+ http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/121770)
762
+ * Added workaround for large YAML file issues. (We dynamically cut
763
+ down the size of the source index YAML file and seem to have worked
764
+ around immediate issues.
765
+
766
+ There has been some minor usability enhancements and changes ...
767
+
768
+ * A user specific source index cache can be used when the site-wide
769
+ cache is unwritable (i.e. because you are running as a non-admin).
770
+ This *greatly* speeds up gem commands run in non-admin mode when the
771
+ site-wide cache is out of date.
772
+ * The gem command now used an HTTP HEAD command to detect if the
773
+ server's source index needs to be downloaed.
774
+ * gem check gemname --test will run unit tests on installed gems that
775
+ have unit tests.
776
+ * Multiple gem names are allowed on the gem install command line.
777
+ This means you can do:
778
+
779
+ gem install rake rails needle postgres-pr pimki
780
+
781
+ (Ok, you get the idea)
782
+ * Multiple authors my be specified in a Gem spec.
783
+ * Switched to using setup.rb (rather than a custom install script) for
784
+ the installation of RubyGems itself. If you have installed RubyGems
785
+ before, double check the installation instructions and make sure you
786
+ use setup.rb instead of install.rb.
787
+ * Ryan Davis has provided a patch so you can use an env variable
788
+ (GEM_SKIP), to tell loadpath_manager not to load gems of those
789
+ names. This was useful for him while testing libs that he had in
790
+ development.
791
+
792
+ === 0.8.1 / 2009-09-14
793
+
794
+ * Quick release to capture some bug fixes.
795
+
796
+ === 0.8.0 / 2009-09-12
797
+
798
+ * Remove need for library stubs. Set the RUBYOPT environment variable to
799
+ include "rrubygems", and a normal require will find gem files. Continue to
800
+ use 'require_gem gem_name, version' to specify gem versions.
801
+ * Deprecated "test_suite_file" gemspec attribute in favor of "test_files" array.
802
+ * Generates rdoc by default on installs.
803
+ * Adopted tar/gzip file format, thanks to Mauricio Fernandez.
804
+ * "gem rdoc" allows generation of rdoc after gem installation (will add a "gem
805
+ test"
806
+ * Application stubs can now accept an optional parameter of _VERSION_ that will
807
+ run an arbitrary version of the application requested.
808
+ * Various bug fixes
809
+ * Various platform-independency improvements
810
+ * "gem spec --all" displays spec info for all installed version of a given gem.
811
+ * Dynamic caching of sources
812
+ * Support for user-definable sources on the command line (thanks Assaph Mehr)
813
+ * More intelligent support for platform-dependent gems. Use Platform::CURRENT
814
+ when building a gem to set its platform to the one you're building on.
815
+ Installation displays a choice of platform-dependent gems, allowing the user
816
+ to pick.
817
+ * Added "gem unpack" for "unpacking" a gem to the current directory
818
+
819
+ === 0.7.0 / 2004-07-09
820
+
821
+ See ChangeLog
822
+
823
+ === 0.6.0 / 2004-06-08
824
+
825
+ * Collapse output of --search and --list (and gem_server) operations so that
826
+ each gem is listed only once, with each of its versions listed on the same
827
+ line.
828
+ * bin/gem: new --upgrade-all option allows one to upgrade every installed gem
829
+ * new #required_ruby_version attribute added to gem specification for
830
+ specifying a dependency on which version of ruby the gem needs. Format it
831
+ accepts is the same as the Gem::Version::Requirement format:
832
+
833
+ spec.required_ruby_version = "> 1.8.0"
834
+ * --install-stub defaults to true, so library stubs are created
835
+
836
+ === 0.5.0 / 2004-06-06
837
+
838
+ * Jim added the ability to specify version constraints to avoid API
839
+ incompatibilities. This has been the subject of much debate for the past
840
+ couple of months, with many ideas and code contributed by Eivind Eklund and
841
+ Mauricio Fernandez. The following set of assertions shows how it works:
842
+
843
+ assert_inadequate("1.3", "~> 1.4")
844
+ assert_adequate( "1.4", "~> 1.4")
845
+ assert_adequate( "1.5", "~> 1.4")
846
+ assert_inadequate("2.0", "~> 1.4") # This one is key--the new operator
847
+ # disallows major version number
848
+ # differences.
849
+ * Group gem search output when multiple versions exist for a given gem:
850
+
851
+ activerecord (0.7.8, 0.7.7, 0.7.6, 0.7.5)
852
+ Implements the ActiveRecord pattern for ORM.
853
+ * Add arbitrary RDoc-able files via gemspec (not just Ruby source files) for
854
+ people who have, for example, README.rdoc in their distributions. Add to
855
+ gemspec via: spec.extra_rdoc_files = ["list", "of", "files"]. Ruby files are
856
+ automatically included.
857
+ * Some small bug fixes
858
+
859
+ === 0.4.0 / 2004-05-31
860
+
861
+ * Minor bug fixes including Windows compatability issues
862
+
863
+ === 0.3.0 / 2004-04-30
864
+
865
+ * Cleanup of command-line arguments and handling. Most commands accept a
866
+ --local or --remote modifier.
867
+ * Creation of Application Gems (packages that include executable programs).
868
+ See http://rubygems.rubyforge.org/wiki/wiki.pl?DeveloperGuide for information
869
+ on how to use it.
870
+ * Basic functionality for installing binary gems from source (:extensions
871
+ property of gem specification holds an array of paths to extconf.rb files to
872
+ be used for compilation)
873
+ * Install library "stub" allowing a normal 'require' to work (which then does
874
+ the rubygems require and 'require_gem'
875
+ * --run-tests runs the test suite specified by the "test_suite_file" property
876
+ of a gem specification
877
+ * HTTP Proxy support works. Rewrite of HTTP code.
878
+ * Unit and functional tests added (see Rakefile).
879
+ * Prompt before remote-installing dependencies during gem installation.
880
+ * Config file for storing preferences for 'gem' command usage.
881
+ * Generally improved error messages (still more work to do)
882
+ * Rearranged gem directory structure for cleanliness.
883
+
884
+ === 0.2.0 / 2004-03-14
885
+
886
+ * Initial public release
887
+