From afea6f4706e5ea681fe6a6bc347abbe698427ac1 Mon Sep 17 00:00:00 2001 From: zzak Date: Tue, 5 Feb 2013 20:52:28 +0000 Subject: * doc/rubygems/*: Removed outdated documentation files * lib/rubygems/LICENSE.txt: Include license file * lib/rubygems.rb: Move Gem module documentation so rdoc can parse it and link to LICENSE.txt * lib/rubygems/*: Hide useless documentation from Gem module rdoc git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39079 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- doc/rubygems/ChangeLog | 5689 ---------------------------------------------- doc/rubygems/History.txt | 852 ------- doc/rubygems/LICENSE.txt | 53 - doc/rubygems/README | 41 - 4 files changed, 6635 deletions(-) delete mode 100644 doc/rubygems/ChangeLog delete mode 100644 doc/rubygems/History.txt delete mode 100644 doc/rubygems/LICENSE.txt delete mode 100644 doc/rubygems/README (limited to 'doc') diff --git a/doc/rubygems/ChangeLog b/doc/rubygems/ChangeLog deleted file mode 100644 index 2e67a4c2c5..0000000000 --- a/doc/rubygems/ChangeLog +++ /dev/null @@ -1,5689 +0,0 @@ -# -*- coding: utf-8 -*- - -2010-02-20 Eric Hodel - - * lib/rubygems.rb: 1.3.6. - * test/*: Windows test fixes - * lib/rubygems/remote_fetcher.rb: Fix same file detection on windows. - -2010-02-15 Eric Hodel - - * lib/rubygems/config_file.rb: Fix use of ConfigFile#api_key= vs - #rubygems_api_key=. Patch by Nick Quaranto. - -2010-02-12 Eric Hodel - - * Rakefile: RubyGems doesn't depend on previous RubyGems. - -2010-02-11 Eric Hodel - - * lib/rubygems.rb: http://rubygems.org is now the default source. - * lib/rubygems/dependency.rb: Only warn once about - #version_requirement - -2010-02-09 Eric Hodel - - * bin/update_rubygems: Use system, exec more correctly, remove - useless puts. - * lib/rubygems/commands/query_command.rb: List every version when - --prerelease --all is given. - -2010-02-08 Eric Hodel - - * lib/rubygems/commands/dependency_command.rb: Support --prerelease. - * lib/rubygems/commands/fetch_command.rb: Support --prerelease. - * lib/rubygems/format.rb: Don't crash on empty files. Bug #27292 by - Ian Ragsdale. - * lib/rubygems/server.rb: Fix markup. Bug #27045 by Eric Young. - * History.txt: RubyGems 1.3.6 release notes. - -2010-02-07 Eric Hodel - - * lib/rubygems/dependency_installer.rb: Allow prerelease gems to - depend on non-prerelease gems. - -2010-02-06 Eric Hodel - - * test/test_gem_commands_specification_command.rb: Don't enforce YAML - format. Patch #27791 by Aaron Patterson. - * lib/rubygems/version.rb: Allow captial letters in prerelease - versions. - * lib/rubygems/config_file.rb: Explain format of ~/.gemrc. Bug - #27698 by J Smith. - * lib/rubygems/gem_path_searcher.rb: Handle nil require_paths. - Patch #27334 by Roger Pack. - * lib/rubygems/server.rb: Handle --bind option. Patch #27357 by - Bruno Michel. - * lib/rubygems/doc_manager: gem rdoc --overwrite to preserve built - rdoc. Patch #25982 by Akinori MUSHA. - * lib/rubygems/commands/which_command.rb: Fail if no paths were - found. Adapted patch #27681 by Caio Chassot. - * lib/rubygems/remote_fetcher.rb: Don't copy if the file is where we - want it. Patch #27409 by Jakub Šťastný. - -2010-02-01 John Barnette - - * lib/rubygems/command*: Add 'gem push' and 'gem owner' for - interacting with modern/Gemcutter sources [Nick Quaranto] - -2010-01-18 Eric Hodel - - * lib/rubygems/dependency_list.rb: Ignore development dependencies - unless explicitly needed. Bug #27608 by Roger Pack. - -2010-01-12 John Barnette - - * Rakefile: Don't add development deps when building the - rubygems-update gem, it borks older versions when they're updating - from a stub index. - -2009-12-22 Evan Phoenix - - * lib/rubygems/spec_fetcher.rb: Don't bother re-Marshaling the spec - YAML list. - -2009-11-04 John Barnette - - * lib/rubygems/timer.rb: Removed. The deprecation sun set in July. - -2009-10-14 John Barnette - - * lib/rubygems/dependency.rb: Burndown/cleanup. Refactored code - and tests. Gem::Dependency.version_requirement(s) is deprecated in - favor of Gem::Dependency.requirement. - - * lib/rubygems/requirement.rb: Burndown/cleanup. Refactored code - and tests. See test/support/shortcuts.rb for some new test helpers. - -2009-10-13 John Barnette - - * lib/rubygems/local_remote_options.rb: Make --source additive, - not exclusive. If exclusive sources are desired, use - --clear-sources first. - -2009-09-29 John Barnette - - * lib/rubygems/spec_fetcher.rb: Be slightly more robust when faced - with corrupted indexes. - -2009-09-03 John Barnette - - * LOTS: Use "raise" consistently, not "fail". - -2009-09-01 John Barnette - - * lib/rubygems/version.rb: Gem::Version immutability - burndown. Changed canonical internal representation to an - Array. Refactored significant amounts of the internals for - clarity. Breaking change: Gem::Version::Requirement is no longer - available, use Gem::Requirement instead. Breaking change: custom - YAML marshaling is gone. Credit to Yehuda Katz for certain bits of - a related patch. - * test/test_gem_dependency.rb: Moved a bunch of tests over from - test_gem_version.rb. Work in progress. - * test/test_gem_specification.rb: Removed a failing YAML - test. Many more will be going away shortly. - * test/test_gem_version.rb: Significant refactoring for - maintainability and clarity. Moved a ton of poorly-placed tests to - test_gem_dependency.rb for future refactoring. - -2009-08-19 Ryan Davis - - * lib/rubygems.rb: Cleanup of rdoc and file layout. - * lib/rubygems/versions.rb: Added Version#spermy_recommendation - and fixed bug in Version::Part#inspect. General cleanup. - -2009-07-29 John Barnette - - * lib/rubygems/package/tar_input.rb: Add Maglev to the list of - implementations with working Zlib. Bug #26790 by Peter McLain. - -2009-07-21 Eric Hodel - - * lib/rubygems.rb: 1.3.5. - * lib/rubygems/package.rb: Remove dangling digest require. Reported - by Jeremy Kemper. - -2009-06-25 Eric Hodel - - * release_notes/: Merged into History.txt for Hoe. - * lib/rubygems/commands/setup_command.rb: Streamlined install text. - -2009-06-23 Eric Hodel - - * release_notes/rel_1_3_5.rdoc: RubyGems 1.3.5 release notes. - * lib/rubygems/builder.rb: Only print out with verbose. - * lib/rubygems/package_task.rb: Only print out with -t. - -2009-06-12 Ryan Davis - - * Rakefile: Switched to Hoe. - -2009-06-10 Phil Hagelberg - - * lib/rubygems/installer.rb: --user-install is no longer enabled by - default. - * lib/rubygems/source_index.rb: Fix use of prerelease gems. - -2009-06-04 Eric Hodel - - * util/gem_prelude.rb.template: Backports from 1.9. - -2009-06-03 Eric Hodel - - * bin/gem: Support 1.8.6+ - * lib/rubygems/digest*: Removed, support dropped for Ruby < 1.8.6 - * lib/rubygems/installer.rb: Support env(1) in wrong path, use - /bin/sh if shebang has options. By Nobu, ruby trunk r22853. - * lib/rubygems/config_file.rb: Switch to stdcall for appdata folder. - [ruby-core:22601]. - * lib/rubygems.rb: Use only File::expand_path on 1.9 for home dir. - Don't recklessly create directories. Simplify RbConfig::datadir - definition. - -2009-05-30 Eric Hodel - - * lib/rubygems/commands/which_command.rb: Only print out directory - information to a TTY. - * lib/rubygems/rubygems_version.rb: 1.3.4. - * doc/release_notes/rel_1_3_4.rdoc: RubyGems 1.3.4 release notes. - -2009-05-28 Eric Hodel - - * lib/rubygems/commands/setup_command.rb: Fix --format-executable - option name. - * lib/rubygems/requirement.rb: Fix typo in #parse. Bug #26000 by - Mike Gunderloy. - -2009-05-21 Eric Hodel - - * lib/rubygems.rb: Add 'dev' and svn revision for -1 RUBY_PATCHLEVEL - and RUBY_REVISION. - -2009-05-20 Eric Hodel - - * lib/rubygems/defaults.rb: Restore 1.9.1 path behavior. - * lib/rubygems/specification.rb: Fix undefined ivar warning. - * lib/rubygems/indexer.rb: Force loading of builder gem. - * test/gemutilities.rb: Remove gem_prelude code by hand to avoid 1.9 - warnings. - -2009-05-19 Luis Lavena - - * test/test_gem_specification.rb: skip symlinks tests on Windows. - * test/test_gem_commands_install_command.rb: skip chmod test on - Windows. - -2009-05-15 Eric Hodel - - * lib/rubygems*: Fix 1.9 warnings about circular require. - -2009-05-12 Daniel Berger - - * lib/rubygems/remote_fetcher.rb: Fixed the download method in the - remote_fetcher.rb file so that it handles local installs on MS - Windows when using explicit paths that aren't on the 'C:' drive. - Bug #25882 by Lars Christensen. - * lib/rubygems/commands/update_command.rb: Replaced deprecated - Gem::SourceIndex method 'search' with 'find_name' in the 'execute' - method. - -2009-05-07 Eric Hodel - - * lib/rubygems/commands/query_command.rb: Support prerelease version - listing (--prerelease), list locally installed prereleases. - * lib/rubygems/source_info_cache.rb: Gem::SourceInfoCache is - officially unsupported, maintaining its tests is hard. - * lib/rubygems/source_index.rb: Add #all_gems, fix #remove_spec, - #search to work with it. Prerelease gems can now be used. - -2009-05-04 Eric Hodel - - * lib/rubygems/rubygems_version.rb: 1.3.3. - * doc/release_notes/rel_1_3_3.rdoc: RubyGems 1.3.3 release notes. - * lib/rubygems/specification.rb: Default has_rdoc to true, ignore - its value. - * lib/rubygems/doc_manager.rb: Always generate RDoc regardless of - #has_rdoc? - * lib/rubygems.rb: Raise Gem::LoadError if Kernel#gem fails due to - previously-loaded gem. Bug reported by Alf Mikula. - -2009-05-02 Eric Hodel - - * lib/rubygems/commands/server_command.rb: Allow port names with - --port. - * lib/rubygems/requirement.rb: Match prerelease versions and ~> - correctly. Patch #25759 by Yossef Mendelssohn. - -2009-05-01 Eric Hodel - - * lib/rubygems/specification.rb: Check bindir for executables, not - root. Bug reported by David Chelimsky. Remove Time.today, no way - to override it before RubyGems loads. Bug #25564 by Emanuele - Vicentini. Raise Gem::Exception for #installation_path when not - installed. Bug #25741 by Daniel Berger. Don't error in #validate - when homepage is nil. Bug #25677 by Mike Burrows. - * lib/rubygems/commands/cleanup_command.rb: Clean up --user-install - gems. Bug #25516 by Brett Eisenberg. - * lib/rubygems/uninstaller.rb: Uninstall executables from the correct - directory. Bug #25555 by Brett Eisenberg. - * lib/rubygems/server.rb: Add search that jumps to RDoc. Patch - #22959 by Vladimir Dobriakov. - -2009-05-01 James Tucker - - * lib/rubygems.rb: Gem.bin_path now escapes paths with spaces. - -2009-04-30 Daniel Berger - - * lib/rubygems/commands/install_command.rb: Replaced deprecated - Gem::SourceIndex method 'search' with 'find_name' when using - the -t option. Fixes bug # 25632 by Daniel Berger. - -2009-04-30 James Tucker - - * lib/rubygems/ext/rake_builder.rb: Use explicit ruby command loading - rubygems to invoke rake. - -2009-04-24 Eric Hodel - - * lib/rubygems/commands/specification_command.rb: Added requesting - single fields from a spec. - -2009-04-23 James Tucker - - * lib/rubygems/ext/configure_builder.rb: Support Gem::Command.build_args. - -2009-04-15 Eric Hodel - - * lib/rubygems/rubygems_version.rb: 1.3.2. - -2009-04-14 Eric Hodel - - * lib/rubygems/specification.rb: Complain when summary and - description are identical. - -2009-04-08 Eric Hodel - - * lib/rubygems/specification.rb: Strip directories, complain for - non-files in #validate. - -2009-04-07 Eric Hodel - - * lib/rubygems/specification.rb: Implement #initialize_copy. - * lib/rubygems/commands/contents_command.rb: Add --no-prefix and - --all. - -2009-04-06 Eric Hodel - - * lib/rubygems/defaults.rb: Don't allow gem to overwrite ruby on - install. Fixes bug #24958 by Michael Soulier. - * doc/release_notes/rel_1_3_2.rdoc: Preliminary 1.3.2 release notes. - * Rakefile: Trim off some stale code, switch to Manifest.txt, one - step closer to Hoe! - -2009-04-06 Daniel Berger - - * test/test_gem_ext_configure_builder.rb: Better handling for MS - Windows. - * test/gemutilities.rb: Added the make_command and vc_windows? helper - methods. - -2009-04-03 Eric Hodel - - * lib/: RDoc improvements. - -2009-04-02 Eric Hodel - - * lib/rubygems/commands/setup_command.rb: Fix --destdir. Patch - #24970 by Richard Brown. - -2009-04-02 Phil Hagelberg - - * lib/rubygems/version.rb: Documentation of prerelease - versions. See http://technomancy.us/123 for details. - -2009-03-31 Eric Hodel - - * lib/rubygems/spec_fetcher.rb: If the cached specs file won't load, - refetch. Bug #24961 by Dylan Stamat. - * lib/rubygems/defaults.rb: Add a sanity check to - Gem.default_exec_format. Workaround for bug #24958 by Michael - Soulier. - * lib/rubygems/commands/setup_command.rb: Fix confusion with option - names. Patch #24971 by Richard Brown. - * lib/rubygems/specification.rb: Make #validate complain about - not-files. - * lib/gauntlet_rubygems.rb: For verification of the validator. - -2009-03-27 Eric Hodel - - * lib/rubygems.rb: RubyGems now loads plugins from rubygems_plugin.rb - in installed gems. This can be used to add commands (See - Gem::CommandManager) or add install/uninstall hooks (See - Gem::Installer and Gem::Uninstaller). - * setup.rb: Ensure we're in a RubyGems dir when installing. - -2009-03-26 Eric Hodel - - * lib/rubygems/package_task.rb: Import from Rake's - rake/gempackagetask.rb - * Rakefile: Switched to RDoc::Task from RDoc 2.4.2. - * lib/rubygems.rb: Gem.find_files now returns paths in $LOAD_PATH. - * lib/rubygems/commands/sources_command.rb: Allow sources to be added - behind proxies. Bug #24785 by Elia Schito. - -2009-03-25 Eric Hodel - - * lib/rubygems/commands/install_command.rb: Fix typo. Patch #24446 - by Luis Parravicini. - * lib/rubygems/version.rb: Handle non-String versions by calling - #to_s. Patch #24392 by Stephen Bannasch. - -2009-03-22 Daniel Berger - - * lib/rubygems/remote_fetcher.rb: Always escape URI's to deal with spaces - and such, regardless of platform. - * lib/rubygesm/validator.rb: Use the test-unit gem if installed. - Part of the fix for RF #24261 by Daniel Berger - * lib/rubygems/commands/install_command.rb: Explictly require - rubygems/uninstaller.rb if the user wants to bail because of failed - tests. - Part of the fix for RF #24261 by Daniel Berger - -2009-03-17 Eric Hodel - - * lib/rubygems/commands/query_command.rb: Make `gem unpack` work with - more than one gem name, fix warning about installation location. - -2009-03-16 James Tucker - - * lib/rubygems.rb: Deprecate ConfigMap[:RUBY_INSTALL_NAME] - * lib/rubygems/defaults.rb: Gem.default_exec_format to use - ConfigMap[:ruby_install_name]. - Fixes Bug #24457 - * util/gem_prelude.rb.template: Fix potential bug in - Gem.default_exec_format when ConfigMap[:BASERUBY] is not 'ruby'. - -2009-03-14 Luis Lavena - - * lib/rubygems/installer.rb: Cleanup quotes on Windows stub scripts. - Fixes Bug #24039. - * lib/rubygems/commands/setup_command.rb: ditto. - -2008-03-13 Eric Hodel - - * lib/rubygems/commands/uninstall_command.rb: Add --user-install to - allow uninstallation from ~/.gem. Bug #23760 by Roger Pack. - * lib/rubygems/uninstaller.rb: Automatically uninstall from - Gem.user_dir. - * lib/rubygems/commands/update_command.rb: Rescue InstallError - and continue. Bug #19268 by Gabriel Wilkins. - * lib/rubygems/doc_manager.rb: Remove some options from the args list - that RDoc no longer supports. - -2008-03-12 Eric Hodel - - * lib/rubygems/specification.rb: #description no longer removes - newlines. - * lib/rubygems/indexer.rb: Wrap description in a pre and force-wrap - lines to 78 characters for prettier display. - * lib/rubygems/commands/setup_command.rb: Clarify RubyGems RDoc - installation location. Bug #22656 by Gian Marco Gherardi. - -2008-03-09 Eric Hodel - - * lib/rubygems/commands/query_command.rb: Add platforms to gem list - -d. - * lib/rubygems/commands/setup_command.rb: Allow setup to run from - read-only location. Patch #21862 by Luis Herrera. - * lib/rubygems/package/tar_input.rb: Use real File methods. Bug - #23966 by Mike Furr. - * lib/rubygems.rb: Don't add PATCHLEVEL if it's -1. Patch #24048 by - Jeremy Kemper. - * lib/rubygems/package/tar_input.rb: Choose security policy - correctly. Bug #24001 by Mike Furr. - * lib/rubygems/remote_fetcher.rb: Handle local paths with spaces. - Bug #24169 by Ryan Davis. - * lib/rubygems/specification.rb: Removed Gem::Specification::list, - causes leaks. Bug #23668 by Steve Purcell. - -2008-03-07 Eric Hodel - - * lib/rubygems/installer.rb: Use Gem::bin_path in executable stubs to - work around Kernel#load bug. - * lib/rubygems/commands/install_command.rb: Copy user_install down to - Gem::DependencyInstaller. Patch #23573 by Alf Mikula. - * lib/rubygems/command.rb: Add info on gem server directly to `gem - help`. Patch #22271 by Hugh Sasse. - -2008-03-06 Eric Hodel - - * lib/rubygems/specification.rb: Don't allow FIXME in specs. - * lib/rubygems/commands/spec_command.rb: Add --ruby and --marshal - formats. - * lib/rubygems.rb: Add Gem::bin_path. Patch #24114 by James Tucker. - -2008-03-04 Eric Hodel - - * setup.rb: Moved guts to lib/rubygems/commands/setup_command.rb. - * lib/rubygems/indexer.rb: Added RSS feed generation on full index - update. - -2008-03-04 Phil Hagelberg - - * lib/*: Prerelease gems go into their own index now and are excluded - from other indices. InstallCommand only gets prereleases if explicitly - requested. Thanks to Alex Vollmer. - -2008-03-04 Eric Hodel - - * lib/*: Add lots of pretty pretty_print stuff! - -2008-02-25 Ryan Davis - - * lib/rubygems/commands/check_command.rb: Fix various usability - issues. - -2009-02-10 Daniel Berger - * lib/rubygems/specification: Refactored and fixed the installation_path - method. It was overwrought and it now no longer uses File::SEPARATOR - explicitly. - [RubyForge: bug #23879 by Daniel Berger] - -2009-02-10 Daniel Berger - * lib/rubygems/validator.rb: The Gem::Validator#verify_gem_file method - now explicitly rescues Errno::EINVAL as well as Errno::ENOENT because - MS Windows raises a different SystemCallError for empty paths. - -2009-01-21 Daniel Berger - * lib/rubygems/remote_fetcher.rb: Split out nil and file handling in - the download method. Modified file URI handling to work properly. - [RubyForge: bug #16495 by Paul Sadauskas] - -2009-01-19 Daniel Berger - * lib/rubygems/remote_fetcher.rb: Added uri scheme validation back - into the open_uri_or_path method, though it now accepts 'https' and - 'file' as well. - * test/test_gem_remote_fetcher.rb: Updated the test_fetch_size_bad_uri - to reflect the updated error message. - -2009-01-15 Daniel Berger - * lib/rubygems/remote_fetcher.rb: Removed the open_file_uri_path method - since the URI#path method already does the same thing, and changed - the file_uri? method so that it explicitly calls .to_s. - * lib/rubygems/local_remote_options.rb: Allow file urls. - -2009-01-15 Daniel Berger - * lib/rubygems/commands/generate_index_command.rb: Fixed a typo in - the description. - * test/test_gem_doc_manager.rb: The test_uninstall_doc_unwritable - test is now skipped on Windows. - * test/test_gem_install_update_options.rb: The - test_user_install_disabled_read_only test is now skipped on Windows. - * test/test_gem_installer.rb: The test_generate_bin_symlink_no_perms - and test_generate_bin_script_no_perms tests are now skipped on Windows. - -2009-01-14 Daniel Berger - * lib/rubygems/specification.rb: Added support for a license attribute. - [RubyForge: feature #11041 (partial) by Kevin Williams] - * lib/rubygems/commands/query_command.rb: Gem detail information now - includes license information. - * test/test_gem_specification.rb: Added tests for the license attribute. - -2009-01-05 Chad Woolley - - * move processing of build args out of gem binary so they are handled correctly via API usage. - * lib/rubygems/command.rb: Add class accessor for build_args. - * lib/rubygems/ext/rake_builder.rb: Use Gem::Command.build_args instead of ARGV. - * lib/rubygems/ext/ext_conf_builder.rb: Use Gem::Command.build_args instead of ARGV. - * lib/rubygems/gem_runner.rb: Move build arg processing from gem binary. - * lib/rubygems/commands/contents_command.rb: Use nonzero return code (required to make tests pass). - * bin/gem: Move build arg processing to gem_runner.rb. - [RubyForge: bug #23210] - - * lib/rubygems/config_file.rb: Fix --config-file option with no - equals and subsequent options to properly assign config file. - Previously config file was overwritten by subsequent option. - Fixes bug #16688. - -2009-1-4 Daniel Berger - * lib/rubygems/installer.rb: Remove existing path if it already - exists before installing. - [RubyForge: patch #22837 by Eric Wong] - * lib/rubygems.rb: Minor modification to the location_of_caller - method - deal with possible characters after line number - -2009-1-3 Daniel Berger - * lib/rubygems.rb: Better activation error message. - [RubyForge: patch #23082 by Tim Carey-Smith] - -2009-1-2 Daniel Berger - * lib/rubygems/ext/rake_builder.rb: Quote path if it contains spaces - [RubyForge: patch #23003 by Charlie Savage] - * lib/rubygems/local_remote_options.rb: Ignore duplicate sources - [RubyForge: bug #22277 by Elliot Temple] - * lib/rubygems/remote_fetcher.rb: Automatically normalize the URI - [RubyForge: bug #22151 by Alex Legler] - * lib/rubygems/specification.rb: Ensure that specification_version is - a Fixnum [RubyForge: bug #22598 by Tsutomu Kuroda] - * lib/rubygems/specification.rb: Bumped the CURRENT_SPECIFICATION_VERSION - and added an entry to the SPECIFICATION_VERSION_HISTORY - -2009-1-1 Daniel Berger - - * test/test_gem_dependency.rb: Removed a duplicate "def dep" that - was causing a warning. - * lib/rubygems/platform.rb: Added an empty? method in order to - better handle gem indexing when dealing with gems created - prior to 0.9.5. [Rubyforge: bug #22603 by Johnathan Conley] - * lib/rubygems.rb: Added an explicit 'require "etc"'. - [RubyForge: bug #22313 by Matthew Boedicker] - -2008-12-31 Daniel Berger - - * lib/rubygems/local_remote_options: Allow 'https' as a valid scheme - in addition to 'http' [RubyForge: patch #22485 by Duarte Henriques] - * setup.rb: Deal with extraneous quotation mark when autogenerating - .bat file on MS Windows [RubyForge: bug #22712 Takayuki Ishikawa] - * lib/rubygems/commands/unpack_command.rb: Fixed the --target option - [RubyForge: patch #22532 by Bryan Ash] - -2008-12-30 Daniel Berger - - * lib/rubygems/builder.rb: Don't allow .gem file to be added back - onto itself [RubyForge: bug #19136, patch #23346 by Daniel Berger] - * lib/rubygems/defaults.rb: The default_path now only returns the - default_dir if the Gem.user_home doesn't exist - [RubyForge: bug #23037 by Pierre PLR] - * lib/rubygems.rb: Handle the possibility that Etc.getpwuid might - return nil on platforms other than Windows - [RubyForge: bug #22764 by Dudley Flanders] - -2008-12-16 Eric Hodel - - * lib/rubygems/doc_manager.rb: Set title for generated documentation. - * lib/rubygems/dependency.rb: Make #=~ work with Gem::Specification. - -2008-12-15 Eric Hodel - - * lib/rubygems/installer.rb: Fix documentation for - Gem::Installer#write_spec. Issue by okkez. - -2008-12-12 Eric Hodel - - * lib/rubygems/local_remote_options.rb: Merge documentation fix by - okkez [ruby-dev:37271]. - * lib/rubygems/source_info_cache_entry.rb: Merge documentation fix - from [ruby-dev:37255]. - -2008-12-08 Eric Hodel - - * lib/rubygems.rb: Add Gem::promote_load_path - -2008-12-01 Ryan Davis - - * lib/rubygems/remote_fetcher.rb: made threadsafe. - -2008-11-25 Eric Hodel - - * lib/rubygems/commands/install_command.rb: Don't do any post-install - stuff if no gems were installed. Issue by Daniel Berger. - -2008-11-20 Eric Hodel - - * lib/rubygems/source_index.rb: Read the file outside the exception - block so we raise a sane error. - * lib/rubygems/indexer.rb: Allow the modern index to be updated - incrementally. Allow the legacy and modern indicies to be updated - separately. - -2008-11-17 Eric Hodel - - * lib/rubygems/indexer.rb: Added ability to only generate modern or - legacy indicies. - -2008-11-14 Eric Hodel - - * lib/rubygems/timer.rb: Deprecate and move methods to Gem and - Gem::StreamUI. - -2008-11-11 Phil Hagelberg - - * lib/rubygems/, test/: Make Version understand prerelease - versions using letters. (eg. '1.2.1.b') Thanks to Josh Susser and - Alex Vollmer. - -2008-11-03 Eric Hodel - - * lib/rubygems/specification.rb: Gem name must be a String. - -2008-10-31 Eric Hodel - - * lib/rubygems/defaults.rb: Update to support 1.9 libdir. - * util/gem_prelude.rb: Move to .template, automatically fold in - defaults. - -2008-10-29 Eric Hodel - - * lib/rubygems.rb: Handle nonexistent home directory. Bug #22229 by - Alexey Verkhovsky. - -2008-10-25 Eric Hodel - - * lib/rubygems.rb, lib/rubygems/custom_require.rb: Make kernel - methods private. Patch #20801 by James M. Lawrence. Expose - our kernel extensions to RDoc. Make Gem::location_of_caller behave on - Windows. Patch by Daniel Berger. - * doc/release_notes/rel_1_3_1.rdoc: Final release notes for 1.3.1. - * lib/rubygems/rubygems_version.rb: 1.3.1. - -2008-10-10 Eric Hodel - - * lib/rubygems/commands/unpack_command.rb: Silence PATH warning. - -2008-10-09 Eric Hodel - - * lib/rubygems.rb: Fix requires for inflate, deflate, etc. - * test/*: Convert to minitest/unit. - * lib/rubygems/validator.rb: Fix for MiniTest instead of test/unit - classic in 1.9. - -2008-10-03 Phil Hagelberg - - * lib/rubygems.rb: Make Gem.dir respect :gemhome value from config. - * lib/rubygems/config_file.rb: Expose :gemhome value. - -2008-09-26 Luis Lavena - - * lib/rubygems.rb: Disregard ownership of ~ under Windows while - creating ~/.gem. Fixes issues related to no uid support under - Windows. - -2008-09-24 Eric Hodel - - * doc/release_notes/rel_1_3_0.rdoc: Final release notes for 1.3.0. - * lib/rubygems/rubygems_version.rb: 1.3.0. - * lib/rubygems/builder.rb: Examine process status correctly. Patch - by Nobu. - * test/test_gem_ext_rake_builder.rb: Override Gem.ruby and - ENV['rake'] for 1.9 integration. Patch by Nobu. - -2008-09-16 Phil Hagelberg - - * lib/rubygems.rb: Use the path set in the config file if - applicable. - * lib/rubygems/config_file.rb: Expose the path. - -2008-09-16 Eric Hodel - - * lib/rubygems.rb: Only create ~/.gem by user owning ~. Bug #21561 - by Neil Wilson. - -2008-09-15 Eric Hodel - - * lib/rubygems/source_index.rb: Autoload SpecFetcher to improve load - time. Patch #21577 by Simon Chiang. - * lib/rubygems/commands/lock_command.rb: Modernize. Fix --strict. - Patch #21814 by Sven Engelhardt. - * lib/rubygems/platform.rb: Fix for solaris platform. Patch #21911 - by Bob Remeika. - -2008-09-10 Eric Hodel - - * lib/rubygems/commands/install_command.rb: Describe _version_ in `gem - help install`. - * lib/rubygems/commands/environment_command.rb: Describe environment - variables and gemrc in `gem help env`. - * lib/rubygems.rb: Warn when executing Gem::manage_gems. - * lib/rubygems/doc_manager.rb: Have RubyGems update the ri cache. - * lib/rubygems/source_index.rb: Ensure specs are read as UTF-8. - * lib/rubygems/specification.rb: Add magic comment to .gemspec files - so they are read in as UTF-8. - -2008-08-22 Luis Lavena - - * lib/rubygems.rb: Corrected usage of HOMEDRIVE and HOMEPATH on Windows. - Escape Gem.ruby if spaces in the path are present. Solves bug related to - extensions compile process. - * test/test_gem.rb: Added test to verify both conditions. - -2008-08-17 Eric Hodel - - * doc/release_notes/rel_1_3_0.rdoc: Initial release notes for 1.3.0. - * util/CL2notes: Release note creation helper script. - -2008-08-16 Eric Hodel - - * lib/rubygems/local_remote_options.rb: Added #both? to complement - #local? and #remote?. - * lib/rubygems/commands/query_command.rb: Print out LOCAL/REMOTE with - --both, even without a TTY. - * lib/rubygems.rb: Add Gem.find_files, allows a gem to discover - features provided by other gems. - -2008-08-14 Wilson Bilkovich - - * lib/rubygems/source_index.rb: Deprecate options to 'search' other than - Gem::Dependency instances and issue warning until November 2008. - * lib/rubygems/platform.rb: Remove deprecated constant warnings - and really deprecate them. - * Rakefile: If the SETUP_OPTIONS environment variable is set, pass its - contents as arguments to setup.rb - * test/test_gem_commands_uninstall_command.rb: Added - -2008-08-13 Wilson Bilkovich - - * lib/rubygems/uninstaller.rb: Fix binary script uninstallation. - Bug #21234 by Neil Wilson. - * test/test_gem_commands_uninstall_command.rb: Added - -2008-08-12 Eric Hodel - - * lib/rubygems/installer.rb: Try to create directory before diverting - to ~/.gems. - * lib/rubygems/uninstaller.rb: Fix uninstallation with -i. Bug - #20812 by John Clayton. Have #remove_all call #uninstall_gem so hooks - get called. Bug #21242 by Neil Wilson. - * lib/rubygems/commands/update_command.rb: Fix updating RubyGems when - no previous rubygems-update is installed. Bug #20775 by Hemant Kumar. - -2008-08-11 Eric Hodel - - * lib/rubygems/remote_fetcher.rb: Fix HTTPS support. Patch #21072 by - Alex Arnell. Fix Not Modified handling. Bug #21310 by Gordon - Thiesfeld. - -2008-07-11 Luis Lavena - - * setup.rb: Properly build --destdir folder structure using Pathname. - * test/mockgemui.rb: Fix warnings about instance variables in a module. - -2008-07-02 Phil Hagelberg - - * lib/rubygems/defaults.rb: Add Gem.user_dir to use paths like - ~/.gem/ruby/1.8/gems and the like instead of just ~/.gem. Update - remote fetcher and installer to use it. - -2008-07-01 Eric Hodel - - * lib/rubygems/installer.rb: Add #gem_home, #bin_dir for hooks. Use - DependencyInstaller's source_index so reinstallation via -i does not - fail. - * lib/rubygems/uninstaller.rb: Add #gem_home, #bin_dir for hooks. - * lib/rubygems/commands/query_command.rb: Don't print LOCAL/REMOTE - gems if stdout is not a TTY. - * lib/rubygems/commands/query_command.rb: Use the regexp we already - have for `gem list --installed`. Bug #20876 by Nick Hoffman. - * lib/rubygems/commands/which_command.rb: Clarify what `gem which` is - for. - -2008-06-30 Eric Hodel - - * test/test_ext_configure_builder.rb: Locale-free patch by Yusuke - Endoh [ruby-core:17444]. - * lib/rubygems.rb: Add pre/post (un)install hooks. - * lib/rubygems/installer.rb: Call pre/post install hooks as - appropriate. - * lib/rubygems/uninstaller.rb: Call pre/post uninstall hooks as - appropriate. Minor refactoring of #uninstall. - * lib/rubygems/package/tar_reader.rb: Some OSs raise EINVAL on seek. - Based on patch in bug #20791 by Neil Wilson. - * lib/rubygems/specification.rb: Correctly check for support of - development dependencies for #to_ruby. Bug #20778 by Evan Weaver. - * lib/rubygems/spec_fetcher.rb: Correctly load all cache file even if - latest has been loaded. Bug #20776 by Uwe Kubosch. - -2008-06-25 Eric Hodel - - * lib/rubygems/config_file.rb: Add Gem::ConfigFile constants for - packagers and implementors to override defaults. - * test/*: Fixes to run tests when under test/rubygems/. Patch by - Yusuke ENDOH [ruby-core:17353]. - -2008-06-24 Eric Hodel - - * lib/rubygems/remote_fetcher.rb: Cleanup to support - if-modified-since requests. pair: Ryan Davis - * lib/rubygems/indexer: Force platform to Gem::Platform::RUBY when - nil or blank. Fixes various uninstallable gems. - -2008-06-24 Phil Hagelberg - - * lib/rubygems/installer.rb: Fall back on ~/.gem if GEM_HOME is - not writable. - * lib/rubygems/install_update_options.rb: Allow --user-install or - --no-user-install command-line switch to explicitly force whether - or not ~/.gem should be used. - * lib/rubygems/remote_fetcher.rb: Use ~/.gem/cache if cache dir is - not writable. - * test/gemutilities.rb: Use MockGemUi for all tests. - -2008-06-21 Eric Hodel - - * lib/rubygems/specification.rb: Load specifications from the future. - Roll back specification version change. - * lib/rubygems/remote_fetcher.rb: Reset connection when an HTTP - server misbehaves. - * setup.rb: Fix --destdir for windows. - * doc/release_notes/rel_1_2_0.rdoc: Bugs in RubyGems were - unintentionally added, order bug fixes by importance. - * lib/rubygems/rubygems_version.rb: 1.2.0. - -2008-06-20 Eric Hodel - - * lib/rubygems/uninstaller.rb: Improve output when a gem to uninstall - isn't found. Bug #20746 reported by Chad Wooley. - * setup.rb: Fix rdoc installation with --destdir. Patch #20739 by - Matthew Kent. - * lib/rubygems/commands/install_command.rb: Don't reset GEM_PATH when - installing. Fixes Bug #20746 by Chad Wooley. - -2008-06-20 Luis Lavena - - * setup.rb: Only prepend install_destdir when especified. Fixes - installation issues related to Windows paths (/C:/...) - -2008-06-19 Eric Hodel - - * lib/rubygems/dependency_installer.rb: Ensure that the entire - dependency chain is installed. Fixes bug reported by Chad Woolley. - -2008-06-18 Eric Hodel - - * lib/rubygems/commands/dependency_command.rb: Restore matching - everything when no name is specified, regexp matching. Fixes bug - #20716, bug #20717 by Chad Woolley. - -2008-06-18 Chad Woolley - - * lib/rubygems/config_file.rb: Fix --config-file option with no - equals and subsequent options to properly assign config file. - Previously config file was overwritten by subsequent option. - Fixes bug #16688. - -2008-06-17 Eric Hodel - - * lib/rubygems/version.rb: Gem::Version #hash and #eql? now operate - on the version string, terms of the version string, so "1" and "1.0" - no longer correspond to the same slot. Fixes indexer bug reported by - Chad Woolley. - * setup.rb: Fix --format-executable. Patch #20698 by Richard Brown. - * util/gem_prelude.rb: Prevent infinite recursion, check for Gem now. - Patch from ruby trunk by nobu. - * lib/*: Spelling cleanup. Patch from trunk by Evan Farrar. - * test/*: Fixes for win32 test failures reported by Luis Lavena. - * util/gem_prelude.rb: Only remove methods added by gem_prelude.rb. - -2008-06-16 Eric Hodel - - * lib/rubygems/indexer.rb: Fix quick_index generation. - * lib/rubygems/specification.rb: Correctly guard new spec features - for older RubyGems. - * lib/rubygems/config_file.rb: Add system-wide config file - (/etc/gemrc). Patch #14723 by Phil Hagelberg. Add windows code to - use appropriate directory. Code by Daniel Berger. - * doc/release_notes/rel_1_2_0.rdoc: Draft of 1.2.0 release notes. - -2008-06-15 Eric Hodel - - * lib/rubygems/server.rb: Store off if we are returning Marshal - format before running =~ again. Fixes bug reported by Chad Woolley. - * lib/rubygems/commands/stale_command.rb: `gem stale` lists gems by - last access time. Patch #20593 by Aaron Patterson. - * lib/rubygems/setup.rb: Add --vendor and --destdir to setup.rb for - packagers. Patch #20610 by Richard Brown. Don't look for stub - files to remove any more. - * lib/rubygems/specification.rb: Bump specification version and be - backwards compatible with type 2 specs. - * lib/rubygems/commands/query_command.rb: Add installed location to - details for installed gems. - -2008-06-09 Eric Hodel - - * lib/rubygems/dependency_installer.rb: Only install all dependencies - when install_dir option is set. Don't include satisfied dependencies - when gathering dependencies. - * lib/rubygems/commands/query_command.rb: Display authors, rubyforge - and homepage urls with details. - * lib/rubygems/commands/environment_command.rb: Add executable - directory (from Rubinius). - * lib/rubygems/commands/install_command.rb: Don't set install_dir by - default. - * lib/rubygems/commands/update_command.rb: Don't set install_dir by - default. Use #find_missing for efficiency. - -2008-06-07 Eric Hodel - - * lib/rubygems/server.rb: Fully mirror Gem::Indexer indexes, set - correct content-type headers, always refresh the source index. - * lib/rubygems/source_index.rb: Add spec_dirs so that #refresh! will - always reload from the same locations. #refresh! on manually-built - SourceIndex now raises. Fixes #20509 by Chad Woolley. - -2008-06-06 Eric Hodel - - * lib/rubygems/installer.rb: Remove previous bin_script_path in case - it is a symlink. - * lib/rubygems/commands/pristine_command.rb: Force reinstallation of - the gem using the installer. Fixes bug #20387 by Erik Persson. - * lib/rubygems/doc_manager.rb: Ensure args to RDoc are all strings. - * lib/rubygems/source_index.rb: Use find_matching to discover updated - specs instead of fetch. - * lib/rubygems/commands/query_command.rb: Platform, not name in spec - tuples. - -2008-06-05 Eric Hodel - - * lib/rubygems/local_remote_options.rb: Ensure remote repository URLs - reference directories. Fixes bug #20134 by Neil Wilson. - * lib/rubygems/source_index.rb: Gracefully handle ^C or explicit exit - while loading .gemspec files from disk. Fixes bug #20523 by Joel - VanderWerf. - * lib/rubygems/specification.rb: Use File#expand_path in - installation_path. Fixes bug #19317 by Hemant Kumar. - * lib/rubygems/spec_fetcher.rb: Fix legacy test against URI. - * lib/rubygems/remote_fetcher.rb: Always raise FetchError from - RemoteFetcher. Fix FetchErrors without URIs. Refactor Net::HTTP - request code to use persistent connections for HEAD requests. Feature - Request #7973 by Christian Schachtzabel. - * lib/rubygems.rb: Don't load custom_require until after the OS and - implementation have had a chance to set paths. - -2008-06-04 Eric Hodel - - * lib/rubygems/commands/source_index.rb: Only fetch specs we need in - #outdated. - * lib/rubygems.rb: Fix typo in ::activate exception. - * lib/rubygems/dependency.rb: For #to_s, display dependency type when - nil. - * lib/rubygems/dependency_installer.rb: Reset #installed_gems for - every #install. Fixes bug #19444 by Glenn Rempe. - * lib/rubygems/installer.rb: Don't re-read the disk to check for new - gems, add them by hand on install. - -2008-06-03 Eric Hodel - - * lib/rubygems.rb: Add ::gzip, ::gunzip, ::deflate and ::inflate. - * lib/rubygems/server.rb: Add specs and latest_specs indicies. - * setup.rb: Don't require rdoc until needed. Patch #20414 by Brian - Candler. - * lib/uninstaller.rb: Correctly uninstall gems installed with a - legacy platform. Patch #19877 by Luis Lavena. - * lib/rubygems/commands/update_command.rb: Only fetch remote specs - when we know what we're looking for. - -2008-06-02 Eric Hodel - - * lib/rubygems/specification.rb: Remove double slash in - #installation_path. Fixes bug #19896 by Heiko Seebach. - * lib/rubygems/remote_fetcher.rb: Require StringIO. Fixes bug #19866 - by Caleb Land. - * lib/rubygems.rb: Require rubygems/defaults/#{RBX_ENGINE}.rb and - rubygem/defaults/operating_system.rb if they exist. (OS require comes - first and may be overridden by operating system.) - -2008-06-01 Eric Hodel - - * lib/rubygems/indexer.rb: Ensure identical names, versions and - platforms are identical for a smaller index. - * lib/rubygems/spec_fetcher.rb: Only write to cache when we own it. - * lib/rubygems.rb: Honor default_path if GEM_PATH environment - variable is not set. Patch #19502 by Donavan Pantke. - * lib/rubygems/installer.rb: Set file mode indicated by tar file. - Patch #19737 by Jason Roelofs. - -2008-06-01 John Barnette - - * lib/rubygems.rb: Add Gem.available?(gem, *specs) for easy availability - checks at runtime. - -2008-05-31 Eric Hodel - - * lib/rubygems/commands/dependency_command.rb: Delay fetching specs - until needed. Reverse dependencies can no longer be calculated for - remote sources. Add backwards compatibility. - * lib/rubygems/commands/fetch_command.rb: Add backwards - compatibility. - -2008-05-30 Eric Hodel - - * lib/rubygems/local_remote_options.rb: --sources option should not - add URIs to Gem.sources. - * lib/rubygems/spec_fetcher.rb: Add #warn_legacy to help handling - legacy sources. - * luby/rubygems/commands/query_command.rb: Add backwards - compatibility with legacy sources. - -2008-05-28 Eric Hodel - - * lib/rubygems/remote_fetcher.rb: Add #uri to - Gem::RemoteFetcher::FetchError. - * lib/rubygems/user_interaction.rb: Improve RDoc slightly. - * lib/rubygems/spec_fetcher.rb: Introduce backwards compatibility for - legacy (pre 1.2) repositories - * lib/rubygems/commands/sources_command.rb: Backwards compatibility - and restoration of --update. - * lib/rubygems/specification.rb: Ensure nil-typed dependencies become - runtime dependencies. - -2008-05-27 Eric Hodel - - * lib/rubygems/spec_fetcher.rb: Switch #fetch, #find_matching to be - compatible with Gem::SourceInfoCache#search_with_source. Add caching - for .gemspec files. - * lib/rubygems/dependency_installer.rb: Switch to SpecFetcher. - * lib/rubygems/source_index.rb: Switch #outdated to use SpecFetcher. - * lib/rubygems/commands/dependency_command.rb: Switch to SpecFetcher. - * lib/rubygems/commands/outdated_command.rb: Switch to SpecFetcher. - * lib/rubygems/commands/query_command.rb: Switch to SpecFetcher. - * lib/rubygems/commands/sources_command.rb: Switch to SpecFetcher. - * lib/rubygems/commands/update_command.rb: Switch to SpecFetcher. - * lib/rubygems/version.rb: Handle comparisons with non-Gem::Version - objects. - -2008-05-13 Eric Hodel - - * lib/rubygems/spec_fetcher.rb: Add caching of specs, latest_specs - files. - * test/gemutilities.rb: Ensure Gem.user_home doesn't point to ~. - -2008-05-09 Eric Hodel - - * lib/rubygems/indexer.rb: Add Marshal format index of spec names, - versions and platforms. WIP. - * lib/rubygems/spec_fetcher.rb: WIP for replacement of - Gem::SourceInfoCache and SourceInfoCacheEntry. - * lib/rubygems/dependency.rb: Add #=~. - -2008-05-07 John Barnette - - * lib/rubygems/specification.rb, et. al: Let gems have development - dependencies, which aren't installed (except when --development is - supplied) or activated. - -2008-05-02 Eric Hodel - - * lib/rubygems/indexer.rb: Refactored into simpler more imperative - code. - * lib/rubygems.rb: Leave rbconfig/datadir.rb for non-RubyGems use. - -2008-04-16 Eric Hodel - - * lib/rubygems/server.rb: Refresh the source index per request so new - gems will be found after server startup. - -2008-04-15 Eric Hodel - - * lib/rubygems/source_index.rb: Only print out "Bulk updating" when - verbose, fix #latest_specs documentation. - * lib/rubygems/dependency_installer.rb: Add :cache_dir option for - Tinderbox. - -2008-04-14 Eric Hodel - - * lib/rubygems/test_utilities.rb: Expose some internal testing - utilities that are of general use. - -2008-04-10 Eric Hodel - - * lib/rubygems.rb: Fix Gem.prefix so it reports nil when rubygems.rb - is in sitelibdir, libdir, or doesn't have 'lib' as a parent directory. - * doc/release_notes/rel_1_1_1.rdoc: RubyGems 1.1.1 release notes. - * lib/rubygems/rubygems_version.rb: 1.1.1. - -2008-04-07 Eric Hodel - - * lib/rubygems/server.rb: Fix fragment URIs. Patch by James Tucker. - * lib/rubygems/commands/update_command.rb: Pass - --no-format-executable to setup.rb. Patch by Stephen Bannasch. - -2008-04-06 Chad Woolley - - * lib/rubygems.rb: Add setter Gems.platforms=, to allow platforms - to be set/reset when invoking or testing RubyGems programatically. - Also force Gems.platforms to automatically reset to default of - [Gem::Platform::RUBY, Gem::Platform.local] if cleared. - * lib/rubygems/version_option.rb: Change add_platform_option - to initialize Gem.platforms to contain only Gem::Platform::RUBY - -2008-04-04 Eric Hodel - - * lib/rubygems/source_index.rb: Make Gem::SourceIndex#refresh! - more-correct. Reported by Paul Haddad. - * lib/rubygems.rb: Add Gem::refresh. Bug #19176 by Hongli Lai. - * lib/rubygems/dependency_installer.rb: Put downloaded gems into - install_dir's cache. Patch #19182 by Richard Brown. - -2008-04-03 Eric Hodel - - * lib/rubygems/source_info_cache.rb: Merge full cache file into - latest data. Don't write cache files when checking for them. Only - update full cache file when we've read it. Refresh all data when - loading all data. - * lib/rubygems/dependency_installer.rb: Fix --force to work without - network for dependent gems. Fix all-fetching test. - * lib/rubygems/commands/query_command.rb: Obey --all flag for gem - query. - * lib/rubygems/commands/environment_command.rb: Don't display - RubyGemsPackageVersion. - * lib/rubygems/indexer.rb: Fix typo. Patch by Tom Copeland. - * lib/rubygems/command_manager.rb: Display RubyGemsVersion with - --version. - * lib/rubygems/commands/pristine_command.rb: Rebuild extensions along - with everything else. Patch #19281 by Dr. Nic Williams. - -2008-04-01 Eric Hodel - - * lib/rubygems.rb: Fix prefix to point to directory above RubyGems, - so RubyGems will be installed into lib/. - * setup.rb: Work around apple's libdir-installed RubyGems, by - installing into sitelibdir. - * Rakefile: Add svnversion to RubyGems version number for `rake - install`. - -2008-03-31 Luis Lavena - - * test/: Allow tests to use a random (but controlled) port number - instead of a hardcoded one. This helps CI tools when running - parallels builds. - -2008-03-30 Luis Lavena - - * test/test_gem.rb: Leave APPLE_GEM_HOME tests only to *nixes. - * lib/rubygems/remote_fetcher.rb: Errno::ECONNABORTED raised on Windows - on closed Keep-Alive connections. - -2008-03-29 Eric Hodel - - * gemspecs/: Removed. - * examples/: Removed. - * doc/design/: Removed. - * doc/rdoc_templates/: Removed. - * Rakefile: Package doc/release_notes/. - * setup.rb: Use full path to release_notes, ensure RDoc can be - both removed and installed. - -2008-03-28 Eric Hodel - - * bin/gem, Rakefile: RubyGems now requires Ruby > 1.8.3. - * 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. - -2008-03-28 Ryan Woodrum - - * lib/rubygems/commands/query_command.rb: Add --installed - subcommand to check if a gem and/or version is installed. - * test/test_gem_commands_query_command.rb: Add relevant tests. - * test/gemutilities.rb: Override exit() for query tests. - * test/mockgemui.rb: Add =() to manipulate output values (clear). - -2008-03-28 Chad Woolley - - * lib/rubygems/source_info_cache.rb: Add reset_cache_file. - -2008-03-27 Chad Woolley - - * lib/rubygems/user_interaction.rb: Raise Gem::SystemExitException - instead of exiting, kill unused terminate_interaction!. - * lib/rubygems/exceptions.rb: Add Gem::SystemExitException. - * lib/rubygems/commands/install_command.rb: Raise - Gem::SystemExitException instead of exiting. - * bin/gem: Rescue Gem::SystemExitException and exit with - specified exit_code. - * test/test_gem_commands_install_command.rb: Assert on - Gem::SystemExitException and exit_code in tests. - -2008-03-27 Eric Hodel - - * lib/rubygems/commands/sources_command.rb: Allow sources to be - removed without network. Fixes bug #18644 by Mikel Lindsaar. - -2008-03-27 Luis Lavena - - * lib/rubygems/commands/environment_command.rb: Use platform specific - PATH_SEPARATOR instead of hardcoded ':' - * test/test_gem_commands_unpack_command.rb: Ditto. - * test/test_gem_commands_environment_command.rb: Ditto. - * test/gemutilities.rb: Fix binary file reads being truncated on - Windows. - * test/test_gem_commands_install_command.rb: Switch to read_binary. - * test/test_gem_commands_update_command.rb: Ditto. - * test/test_gem_commands_server_command.rb: Consider full path when - evaluating location (instead of hardcoded or missing drive leter). - * test/test_gem_installer.rb: Ditto. - * test/test_gem_dependency_installer.rb: exclude no-wrapper tests for - Windows. - -2008-03-26 Luis Lavena - - * lib/rubygems.rb: Handle backslashes that came from GEM_HOME and - GEM_PATH on Windows. - -2008-03-25 Eric Hodel - - * lib/rubygems/source_index.rb: Add updating from latest index, - default to updating from latest index. Reduces common-case update - to under 3,000 gems at present. - * lib/rubygems/remote_fetcher: Fix error reporting from net/http. - * lib/rubygems.rb: Sort methods, remove last vestiges of autorequire, - RDoc cleanup. - -2008-03-23 Luis Lavena - - * setup.rb: generated Windows stubs will honors prefix using Gem.ruby - instead of hardcoded 'ruby.exe' - * lib/rubygems/installer.rb: generated Windows stubs scripts will now - work from differnt directories than Gem::bindir. Fixes bug #16259 by - Claus Folke Brobak - -2008-03-20 Eric Hodel - - * test/test_gem_source_info_cache.rb: Test with real objects now. - * lib/rubygems/source_index.rb: #latest_specs now has latest specs - for all platforms. - * lib/rubygems/source_info_cache.rb: Add latest cache data, only load - full cache data when needed. - -2008-03-20 Luis Lavena - - * test/gemutilities.rb: Change all the file processing mechanism to - enable binary mode by default (required for Windows file operations - dealing with non-printable characters). - -2008-03-19 Luis Lavena - - * lib/rubygems/package/tar_output.rb: Adapted code to use #wrap instead - of #new when dealing with Zlib::GzipWriter (fixes SEGV and warnings due - GzipWriter object not being closed explicitly). - -2008-03-12 Eric Hodel - - * lib/rubygems/indexer.rb: Add latest_index. - -2008-03-09 Eric Hodel - - * lib/rubygems/defaults.rb: Add special case for RUBY_ENGINE constant - when setting default gem dir. - * Rakefile: Add update_rubinius and diff_rubinius. - -2008-03-08 Lincoln Stoll - - * lib/rubygems/server.rb: Drop use of RDoc's TemplatePage in favor of - ERB. - -2008-03-04 Ryan Davis - - * lib/rubygems/remote_fetcher.rb: Moved #download from - DependencyInstaller. - * lib/rubygems/commands/fetch_command.rb: Updated to use #download. - * lib/rubygems/dependency_installer.rb: install now takes name or dep. - Renamed gather_specs_to_download to find_spec_by_name_and_version. - Modifed #initialize to not take gem name or version. - -2008-03-04 Eric Hodel - - * lib/rubygems/package*: Removed #open_from_io and friends, switched - to #open, no special handling for file names. - * lib/rubygems/package/tar_output.rb: Refactored ::open to use - instance methods. - * lib/rubygems/remote_fetcher.rb: Print out number of requests made - before connection reset. - -2008-02-29 Eric Hodel - - * lib/rubygems/package/tar_reader/entry.rb: Removed is_directory and - is_file? in favor of file? and directory?. - -2008-02-28 Eric Hodel - - * lib/rubygems/package.rb: Broke up Tar bits into separate files. - * lib/rubygems/package/tar_reader/entry.rb: Don't copy TarHeader data - into Entry, go through #header instead. Better tests for - TarReader::Entry. - -2008-02-27 Eric Hodel - - * lib/rubygems/dependency_installer.rb: Automatically fall back to - local-only install on network error. Fixes bug #15759 by Chauk-Mean P. - * lib/rubygems/source_index.rb: Process spec dirs so that earlier - dirs override later dirs. Fixes bug #14816 by Kurt Stephens. - -2008-02-26 Eric Hodel - - * lib/rubygems/commands/update_command.rb: Only update gems that need - updates. Fixes bug #14780 by Mathieu Lajugie. Don't force - remote-only updates. Properly handle dependencies when updating. - Fixes bug #17488 by Hongli Lai. - * lib/rubygems/commands/environment_command.rb: Display path as a - usable path. - * lib/rubygems.rb: Don't add APPLE_GEM_HOME with ENV['GEM_HOME']. - -2008-02-25 Eric Hodel - - * lib/rubygems.rb: Expand sitelibdir when checking prefix. Fixes bug - #17983 by Hemant Kumar. - * setup.rb: Print release notes on installation. Tell people where - `gem` was installed. - * bin/update_rubygems: Added --help output to explain how to install - earlier versions of RubyGems. Added --version option workaround. - Fixes bug #16842 by Chad Woolley. - * lib/rubygems/install_command.rb: Give proper exit code on failure. - Fixes bug #17438 by Josh Nichols. - -2008-02-23 Eric Hodel - - * lib/rubygems/remote_fetcher.rb: Change hosts correctly when - redirecting. Handle EOFError from Net::HTTP. - * lib/rubygems/commands/specification_command.rb: Pull specifications - from gem files. - * lib/rubygems/uninstaller.rb: When :executable is set, don't ask the - user. Fixes bug #16812 by Matt Mower. Raise exception instead of - printing message when gem is not in GEM_HOME. - * lib/rubygems/uninstall_command.rb: Print message when gem is not in - GEM_HOME. - * lib/rubygems/commands/cleanup_command.rb: Clean up all old gems. - * lib/rubygems/commands/unpack_command.rb: Scan every gem path when - unpacking. Fixes bug #17602 by Ryan Davis. - -2008-02-20 Eric Hodel - - * lib/rubygems/install_update_options.rb: Add --bindir option to - specify destination to install executables into. Patch #17937 by - Donavan Pantke. - * lib/rubygems/specification.rb: Fix Time.today == Time.today. Bug - #17413 by Andrei Bocan. - * setup.rb: Properly check for deletablitily of user and system - caches. Bug #17869 by Alexey Verkhovsky. Fix --no-format-executable. - Fixes bug #16879 by Charles Nutter. - -2008-02-19 Eric Hodel - - * lib/rubygems/remote_fetcher.rb: Add persistent connection support. - Patch #18180 by Aaron Patterson. - * lib/rubygems/installer.rb: Fix #shebang to use the ruby install - name. Patch #16878 by Donavan Pantke. - * lib/rubygems/defaults.rb, lib/rubygems.rb: Enable defaults for - Gem.path and Gem.bindir. Patch #17886 by Donavan Pantke. - * test/test_gem_ext_configure_builder.rb: Make test_self_build_fail - more platform independent. Patch #17599 by Martin Krauskopf. - -2008-02-14 Eric Hodel - - * lib/rubygems/commands/fetch_command.rb: Fix a bug when fetching - from non-default sources. Report non-existent gems instead of - crashing. - -2008-01-09 Eric Hodel - - * lib/rubygems/commands/update_command.rb: Use portable and safe ENV - operation. Patch by usa in ruby SVN revision 14739. - * lib/rubygems/open-uri.rb: Fix tests. Patch by NARUSE Yui. - [ruby-dev:33336] - -2007-12-23 Eric Hodel - - * util/gem_prelude.rb: Remove methods from Gem, not QuickLoader, to - fix warnings. - -2007-12-22 Eric Hodel - - * lib/rubygems/commands/environment_command.rb: Put GEM PATHS in the - correct order. - * lib/rubygems/commands/uninstall_command.rb: Add --install-dir to - specify which local repository to uninstall from. Patch #15151 by - Donavan Pantke. - * lib/rubygems/uninstaller.rb: Only allow uninstallation of gems from - specified directory. Properly clean up executables on uninstall. - Patch #15151 by Donavan Pantke. - * lib/rubygems/install_update_options.rb: Add --no-env-shebang - option. Patch #16508 by Donavan Pantke. - * util/gem_prelude.rb: Use require to load rubygems.rb to make - $LOADED_FEATURES correct on RubyGems update. - -2007-12-21 Eric Hodel - - * util/gem_prelude.rb: Place bin before lib so bin stubs work. - -2007-12-20 Eric Hodel - - * Rakefile: Require Ruby > 1.8.2. Enable CERT_DIR. - * lib/rubygems.rb: Work with RbConfig and Config. Bug #16457 by - Christian Ramilo, John Barnette. - * lib/rubygems/commands/build_command.rb: Relax yaml? test to work - with Ruby 1.8.3. - * lib/rubygems/rubygems_version.rb: 1.0.1. - * doc/release_notes/rel_1_0_1.rdoc: RubyGems 1.0.1 release notes. - -2007-12-19 Eric Hodel - - * lib/rubygems/installer.rb: Revert change that only wrapped - executables with #!. - * lib/rubygems/specification.rb: Warn about a lot of things that - could be wrong with gemspecs on build, including missing #!. Use - 'x86-mswin32' for legacy 'mswin32' platform, fix CURRENT platform. - Paired with Luis Lavena. - * lib/rubygems/remote_installer.rb: Deleted. - * lib/rubygems.rb: Removed Kernel#require_gem. - * doc/release_notes/rel_1_0_0.rdoc: RubyGems 1.0 release notes. - * lib/rubygems/rubygems_version.rb: 1.0.0. - -2007-12-18 Luis Lavena - - * lib/rubygems/commands/mirror_command.rb: Work around URI::parse - processing file:// scheme and drive paths on Windows. - * test/test_gem_commands_mirror_command.rb: ditto. - -2007-12-17 Eric Hodel - - * lib/rubygems/installer.rb: Copy files into bindir if they don't - have a shebang. Bug reported by Luis Lavena. - * lib/rubygems/server.rb: Handle platforms in Gem::Server#quick. - Exactly match gem names. Bugs reported by Chad Woolley. - * lib/rubygems/platform.rb: Remove platform constants in favor of - Gem::Platform::CURRENT. Bug reported by Luis Lavena. - * lib/rubygems/dependency_installer.rb: Work around Dir::glob not - understanding File::ALT_SEPARATOR. Bug submitted by Luis Lavena. - -2007-12-16 Eric Hodel - - * lib/rubygems/remote_fetcher.rb: Be more verbose in error messages - from OpenURI. - * lib/rubygems/server.rb: Be more verbose in error/missing responses. - -2007-12-15 Eric Hodel - - * lib/rubygems/installer.rb: Output extension build results when - really verbose. From bug #15853 John Croisant. - * lib/rubygems/specification.rb: Fix backwards compatibility with - 0.9.4, don't allow the platform to be nil or an empty string. Bug - #16177 by Dan Manges. - * setup.rb: Re-exec setup.rb if rubygems is loaded and RUBYOPT is - set. Fixes bug #15974 by Joshua Sierles. - * lib/rubygems/update_command.rb: Tweak formatting of updated - message. Bug #15625 by Bil Kleb. - * lib/rubygems/remote_fetcher.rb: Add URI to exception message for - Gem::RemoteFetcher#fetch_size. Bug #14801 by Bil Kleb. - -2007-12-14 Eric Hodel - - * lib/rubygems/commands/query_command.rb: Don't display duplicate - version numbers. Bug #15828 by Tim Fletcher. - * setup.rb: Fix my stupidity with --help. Patch #16308 by Stephen - Bannasch. Fix --prefix= argument. Bug #16002 by Piglop. - -2007-12-13 Eric Hodel - - * lib/rubygems/commands/server_command.rb: Fix --no-daemon. Bug by - Chad Woolley. - * lib/rubygems/server.rb: Fix Marshal quick index. Bug by Chad - Woolley. - * lib/rubygems/installer.rb: Respect Gem::Specification#bindir. Bug - #16202 by Suraj Kurapati. - * lib/rubygems/commands/update_command.rb: Fix `gem update mysql`. - Bug #16244 by Stephen Bannasch. - -2007-12-12 Eric Hodel - - * lib/rubygems/installer.rb: Add --format-executable option to - install executables with ruby's program-suffix and prefix. Patch - #14688 by Jeremy Kemper. Also, installing in really-verbose mode - prints out written files. - * setup.rb: Add --format-executable option to install gem with ruby's - program-suffix and prefix. Add --help. Fixes bug #16056 by Chad - Woolley. - * lib/rubygems/uninstaller.rb: Fallback to original_platform_name - correctly. Patch #15960 by Nicola Piccinini's friend. - -2007-12-11 Eric Hodel - - * lib/rubygems/validator.rb: Correct test run failures when no tests - are provided. Patch #15701 by Jérémy Zurcher. - * lib/rubygems/commands/mirror_command.rb: Don't File.join a - URI::HTTP. Patch #16116 by Morgan Nelson. - * lib/rubygems/commands/unpack_command.rb: Add --target option to - `gem unpack`. Patch #16154 by Kevin Barnes. - -2007-12-10 Eric Hodel - - * lib/rubygems/dependency_installer.rb: Revert to nil for the default - security policy to avoid requiring OpenSSL. - * lib/rubygems/defaults.rb: Consolidate defaults for easier editing. - Patch #15150 by Donavan Pantke. - -2007-11-27 Eric Hodel - - * lib/rubygems/source_index.rb: Remove dependency on forwadable. - Patch by Koichi Sasada. - * lib/rubygems/specification.rb: Reduce dependency on time.rb. Patch - by Koichi Sasada. - -2007-11-26 Rich Kilmer - - * lib/rubygems/version.rb: Fix bug 15948 with version bump - * test/test_gem_version.rb: Test for bug 15948 with version bump - * util/gem_prelude.rb: wrap init code with exception handler - and skip badly formed directory names - -2007-11-23 Rich Kilmer - - * lib/rubygems.rb: Centralize all CONFIG options into Hash - Gem::ConfigMap with keys as symbols, change all references - to CONFIG to ConfigMap - * lib/rubygems/require_paths_builder.rb: Added to support - building .require_paths file - * lib/rubygems/installer.rb: Add building of .require_paths if - needed - * lib/rubygems/platform.rb: Use new ConfigMap hash for arch - * lib/rubygems - * util/gem_prelude.rb: new gem prelude for Ruby 1.9 - * test/test_gem_installer.rb: change to use ConfigMap hash - * test/gemutilities.rb: change to use ConfigMap hash - -2007-11-21 Daniel Berger - - * lib/rubygems/platform.rb: Gem::Platform.new now returns - Gem::Platform.local if the arch matches Gem::Platform::CURRENT. - Bugs #15815 and #15782 submitted by Daniel Berger. - -2007-11-20 Eric Hodel - - * lib/rubygems/platform.rb: Handle bare 'mswin32' platform's CPU. - -2007-11-19 Eric Hodel - - * lib/rubygems/rubygems_version.rb: 0.9.5. - -2007-11-16 Eric Hodel - - * test/gemutilities: Add a legacy platform gem to the default test - gems list. - * lib/rubygems/specification.rb: Add Gem::Specification#original_name - for legacy purposes - * lib/rubygems/indexer.rb: Use #original_name to make the indexer - backwards compatible. - * lib/rubygems/master_index_builder.rb: Reduce memory consumption. - -2007-11-13 Eric Hodel - - * lib/rubygems/rubygems_version.rb: 0.9.4.7 beta. - * lib/rubygems.rb: Patch for RUBY_FRAMEWORK for OS X 10.5. Patch - submitted by Laurent Sansonetti. - * lib/rubygems.rb: cygwin, djgpp, mingw are Windows platforms. Fixes - bug #15537 by Roger Pack. - -2007-11-11 Eric Hodel - - * Rakefile: Tasks for maintaining ruby trunk export of RubyGems. - * lib/rubygems/specification.rb: Preserve original platform across - serialization. - * lib/rubygems/dependency_installer.rb: Retry with original platform - name on fetch error. - -2007-11-09 Eric Hodel - - * lib/rubygems/specification.rb: Set #original_platform only once. - * lib/rubygems/indexer.rb: Handle legacy platforms. - * lib/rubygems/platform.rb: Gem::Platform is a valid argument. Bug - #15511 submitted by Daniel Berger. - * lib/rubygems/custom_require.rb: Fix compatibility with 1.8.2. Bug - #14933 submitted by Aaron Patterson. - * lib/rubygems/command.rb: Now '-V' enables verbose. Bug #14951 - submitted by Sasa Ebach. - * lib/rubygems/commands/check_command.rb: Change use of '-v', '-V' to - match above. - * lib/rubygems/package.rb: #send! is gone again. - * lib/rubygems.rb: Don't add custom_require for 1.9. - * test/*: Make compatible with 1.9 import. - -2007-10-30 Eric Hodel - - * lib/rubygems/specification.rb: Don't re-use @platform to maintain - backwards compatibility. - * lib/rubygems/platform.rb: Handle nil and 'ruby' platforms in ::new. - -2007-10-20 Daniel Berger - - * lib/rubygems/uninstaller.rb: Changed '.cmd' to '.bat' in the - remove_executables method for MS Windows. Patch from Luis Lavena. - -2007-10-18 Eric Hodel - - * lib/rubygems/rubygems_version.rb: 0.9.4.6 beta. - -2007-10-19 Eric Hodel - - * lib/rubygems/commands/update_command.rb: Don't install with - dependencies when updating. This is a hack. - -2007-10-19 Daniel Berger - - * setup.rb: gem.cmd stub is now gem.cmd, and the stub generation was - changed - now better for NT. Patch #14725 (Luis Lavena). - * lib/rubygems/installer.rb: Same as for setup.rb. - -2007-10-18 Daniel Berger - - * lib/rubygems/platform.rb: Modified the Platform.local method for MS - Windows for versions built with VC++ 6. Patch #14727 (Luis Lavena). - * test/test_gem_specification.rb: Added version independent tests for - MS Windows. Patch #14727 (Luis Lavena). - -2007-10-18 Eric Hodel - - * lib/rubygems/remote_fetcher.rb: Add platform to User-Agent. - * lib/rubygems/commands/install_command.rb: Fix typo. Debian bug - #443135 submitted by Reuben Thomas. - * lib/rubygems/dependency_installer.rb: Don't install dropped - dependencies. Fixes bug #14724 submitted by Luis Lavena. - -2007-10-17 Eric Hodel - - * lib/rubygems/commands/update_command.rb: Unset RUBYOPT when running - setup.rb - * setup.rb: Re-exec without RUBYOPT if it is set. Fixes bug #14683 - submitted by Lyle Johnson. - -2007-10-16 Daniel Berger - - * lib/rubygems/indexer/abstract_index_builder.rb: The compress method - now does a binary read to make MS Windows happy. - -2007-10-16 Eric Hodel - - * setup.rb: Installs bin stubs that warn when you try to use the old - commands. Simple mswin deprecation stubs by Luis Lavena. - -2007-10-12 Eric Hodel - - * setup.rb: Remove source caches on install. - * doc/release_notes/rel_0_9_5.rdoc: Draft added. - * lib/rubygems/rubygems_version.rb: 0.9.4.5 beta. - -2007-10-10 Eric Hodel - - * lib/rubygems/dependency_installer.rb: Fix small bug found by Alan C. - Francis. - -2007-10-09 Eric Hodel - - * lib/rubygems/dependency_installer.rb: Use install_dir so custom gem - repos can be used. - * lib/rubygems/specification.rb: Always set required attributes, even - if they match the default. - -2007-10-08 Ryan Davis - - * lib/rubygems.rb: Fixed require order so custom_require is - last. Added HACK tag to remind Jim to release rake. - * test/test_gem_source_index.rb: Fixed latest_specs' tests so - failures were much more readable. - * lib/rubygems/source_index.rb: Fixed latest_specs to deal with - platforms appropriately. Returns array again. - -2007-10-08 Eric Hodel - - * lib/rubygems/config_file.rb: Boost bulk_threshold to 1000, Marshal - format is smaller than yaml format quick index. - * lib/rubygems/installer.rb: Make #shebang correctly rewrite env - shebangs. - * lib/rubygems/specification.rb: Mark Time.today for removal, too much - depends upon it now. - -2007-10-07 Eric Hodel - - * lib/rubygems/specification.rb: Sped up ::_load. - * lib/rubygems/source_index.rb: Sped up #search. - * lib/rubygems/version.rb: Replace #to_ints with #ints, and cache - result. - * lib/rubygems/source_info_cache.rb: Only flush cache when it changes. - -2007-10-05 Eric Hodel - - * lib/rubygems/user_interaction.rb: Allow customization of completion - message for progress reporters. - * lib/rubygems/command.rb: Add --quiet option. - * lib/rubygems/commands/generate_index_command.rb: Add description. - -2007-10-04 Eric Hodel - - * lib/rubygems/uninstaller.rb: Also check and uninstall old platform - name to ensure legacy platform gems are uninstalled. - * lib/rubygems/doc_manager.rb: Remove existing rdoc and ri directory - so regenerating docs succeeds even if previously interrupted. - -2007-10-02 Eric Hodel - - * lib/rubygems/source_index.rb: Make #outdated search only for gems - matching the current platform. - * lib/rubygems/commands/dependency_command.rb: Add --platform. - * lib/rubygems/commands/outdated_command.rb: Ditto. - * lib/rubygems/commands/specification_command.rb: Ditto. - * lib/rubygems/commands/update_command.rb: Ditto. - -2007-10-02 Wilson Bilkovich - - * lib/rubygems/specification.rb: Custom Marshal format to reduce index - size. - * lib/rubygems/requirement.rb: Ditto - * lib/rubygems/version.rb: Ditto - -2007-10-01 Eric Hodel - - * lib/rubygems/platform.rb: Handle mswin32 on VC6. Partial patch and - assistance by Luis Lavena. Handle cpu-os-version style platforms for - command-line arguments. - -2007-09-30 Eric Hodel - - * lib/rubygems/specification.rb: Gem::Specification is now - forward-compatible while loading. - -2007-09-29 Eric Hodel - - * lib/rubygems/source_info_cache_entry.rb: Correctly handle URIs. - * lib/rubygems/remote_fetcher.rb: ditto. - * lib/rubygems/remote_options.rb: Add --update-sources option. Patch - #14246 submitted by Alan Francis. - * lib/rubygems/config_file.rb: Add update_sources setting to control - automatic refreshing of sources (patch #14246). Fix bug where things - would be overwritten in ~/.gemrc when they shouldn't. - -2007-09-28 Eric Hodel - - * lib/rubygems/rubygems.rb: Gem.ruby now returns the full path. Added - Gem.prefix to make self updating work right. - * setup.rb, pre-install.rb, post-install.rb: Replace with a small, - simple setup script that works. - * lib/rubygems/commands/update_command.rb: Pass rdoc, ri and prefix - flags down to setup.rb when self updating. - -2007-09-26 Eric Hodel - - * lib/rubygems/version_option.rb: Always include RUBY platform, - allow RUBY platform as an option. - * lib/rubygems/specification.rb: Gems with non-ruby platform sort - last (first in preference for installation). - * lib/rubygems/platform.rb: Allow matching of legacy platforms. - * lib/rubygems/source_index.rb: Add only_platform option to #search. - -2007-09-24 Wilson Bilkovich - * lib/rubygems/indexer.rb: Generate a Marshal index in parallel to YAML - * lib/rubygems/source_index.rb: Fetch a Marshal index if it exists, to - avoid the memory cost of parsing a huge YAML file - * lib/rubygems/commands/mirror_command.rb: Check for Marshal first - * lib/rubygems/indexer/abstract_index_builder.rb: Index refactoring - * lib/rubygems/indexer/marshal_index_builder.rb: Build Marshal index - * lib/rubygems/indexer/master_index_builder.rb: Simplify YAML generation - * lib/rubygems/indexer/quick_index_builder.rb: Build Marshal quickindex - * lib/rubygems/server.rb: Serve up Marshal index as well as YAML - * lib/rubygems/source_info_cache_entry.rb: Expect a Marshal index - -2007-09-23 Eric Hodel - - * lib/rubygems/commands/fetch_command.rb: `gem fetch` downloads a gem - to the current directory. Feature request #10752 by Bret Pettichord. - * lib/rubygems/commands/local_remote_options.rb, etc.: Fix spelling of - 'threshold'. - * lib/rubygems/installer.rb: Revert feature request #8818, it - interferes with `ruby -S` and multiple versions of ruby (1.8 and 1.9). - * lib/rubygems/dependency_installer.rb: Fix a bug where the wrong - platform gem would be installed. - * lib/rubygems/version_option.rb: Add --platform. - * lib/rubygems/install_update_options.rb: Verify --security-policy. - * lib/rubygems/local_remote_options.rb: Verify --source, --http-proxy. - -2007-09-22 Eric Hodel - - * lib/rubygems/open-uri.rb: Don't document our OpenURI. - * lib/rubygems/commands/generate_index_command.rb: Fix Indexer class - change. - * lib/rubygems/commands/mirror_command.rb: Fix for 1.9. - * lib/rubygems/commands/pristine_command.rb: Have `gem pristine` - give a better report of what it accomplished. - * lib/rubygems/command.rb: Add optional description field. - * lib/rubygems/installer.rb: Hack around broken Pathname#absolute? on - windows. Patch #14139 by Jim Hughes. - -2007-09-20 Eric Hodel - - * misc files: Tests pass on 1.9. - * test/gemutilities.rb: Added Object#send! stub for 1.8. - * test/test_open_uri.rb: Require gem_open_uri.rb to avoid warnings. - * lib/rubygems/commands/sources_command.rb: Clarify `gem sources -c` - and what `gem sources` does. Patch by Hugh Sasse. - -2007-09-19 Eric Hodel - - * lib/rubygems/platform.rb: Make Gem::Platform a class. - * lib/rubygems/specification.rb: Gem::Specification#validate returns - true, non-Gem::Platform platforms are no longer allowed. - * test/gemutilities.rb: 1.9 compatiblity fixes. - * lib/rubygems/dependency_installer.rb: Work around a bug in URI.parse - which misinterprets "C:/". Patch #13537 submitted by Daniel Berger. - * lib/rubygems/format.rb: Ensure file handles are closed. Patch - #13533 submitted by Daniel Berger. - * test/test_gem_installer.rb: Win32 path fix. Patch #13528 submitted - by Daniel Berger. - * test/gemutilities.rb: Make the platform be a win32 platform on - win32. Fixes confusion in generate_bin_symlink tests. Patch #13529 - submitted by Daniel Berger. - * test/test_gem_specification.rb: Sequel to above. Patch - #13535 submitted by Daniel Berger. - * lib/rubygems/source_index.rb: Make the updating cache message more - clear. Patch #12778 submitted by Bil Kleb. - * lib/rubygems/server.rb: Allow gem's rdoc-style.css to be used. - Patch #13589 by Stephen Bannasch. - * lib/rubygems/indexer.rb: Fail on missing builder gem only when - trying to use the indexer. Fixes bug #13939 by Bryan Stearns. - * lib/rubygems/indexer/indexer.rb: Move Indexer up one level in - nesting. - * lib/rubygems/indexer/compressor.rb: Only used in - Gem::Indexer::AbstractIndexBuilder subclasses, merged there. - * lib/rubygems/command_aids.rb: Merged Gem::CommandAids into - Gem::Command since that's the only place it gets used. - * misc other files: mswin fixes. Paired with Daniel Berger. - -2007-08-24 Eric Hodel - - * lib/rubygems/specification.rb: Fix #full_name for versionless - platforms. - * lib/rubygems/command_manager.rb: We're only looking for NameError. - * lib/rubygems/command.rb: 1.9 fix. - * lib/rubygems/format.rb: ditto. - * lib/rubygems/installer.rb: ditto. - -2007-08-24 Eric Hodel - - * lib/rubygems/rubygems_version.rb: 0.9.4.4 - -2007-08-23 Eric Hodel - - * lib/rubygems/platform.rb: Add HPUX, AIX and NetBSD. Thanks to - Daniel Berger, Yutaka KANEMOTO and Andre Nathan respectively. - * lib/rubygems/installer.rb: Move all option setting to #initialize to - make `gem pristine` work again. - * lib/rubygems/commands/environment_command.rb: Include platforms. - * lib/rubygems/dependency_installer.rb: Support local non-root - installation. - -2007-08-22 Eric Hodel - - * lib/rubygems/dependency_installer.rb: Don't reinstall dependencies - existing in the install dir. Don't install dependencies for older - versions of the gem we're installing. #installed_gems now contains - loaded gemspecs. Always prefer local gems. Handle globs correctly. - All deps are now installed into the install_dir. - * lib/rubygems/commands/install_command.rb: Switch to - Gem::DependencyInstaller. Warn when -y is given, it will be removed. - Try our best to install everything the user asked. - * lib/rubygems.rb: Gem.bindir now handles Pathname correctly. - * lib/rubygems/remote_fetcher.rb: Don't downcase anymore. - -2007-08-21 Eric Hodel - - * lib/rubygems/dependency_installer.rb: Add installation from local - gems. Install gems in the correct order. Handle -E, -f, - --ignore-dependencies, -i, -r, -l, -b, -P, -w, -v options for `gem - install` - * test/gemutilities.rb: Work around OS X /private/tmp. - * lib/rubygems/platform.rb: Switch to using arch instead of target_* - for JRuby compatibility. Thanks to Nick Sieger. - -2007-08-20 Eric Hodel - - * lib/rubygems/dependency_installer.rb: Add working but unfinished - Gem::DependencyInstaller. - * lib/rubygems/source_info_cache.rb: Add #search_with_source. - * lib/rubygems/dependency_list.rb: Move #fill_dependencies to - Gem::DependencyInstaller - * lib/rubygems/platform.rb: Split from specification.rb. Add methods - to recognize platforms from Config::CONFIG. - * lib/rubygems.rb: Add Gem::platforms. - * lib/rubygems/specification.rb: Disallow String platforms. - -2007-08-18 Eric Hodel - - * lib/rubygems/source_info_cache.rb: Search by Gem::Dependenency. - * lib/rubygems/source_index: Search by Gem::Dependenency. - * lib/rubygems/version.rb: Version can be String or Integer. - Gem::Requirement::default is now >= 0. Gem::Requirement can be built - from a Gem::Dependency. - * lib/rubygems/dependency_list.rb: Uses TSort now. Add - Gem::DependencyList#fill_dependencies. - * lib/rubygems/server.rb: Support quick index. - -2007-08-17 Eric Hodel - - * lib/rubygems/dependency_list.rb: For diamond dependencies with - different versions on the bottom of the diamond, trim all but the - latest dependency. This will prevent gems like hoe from being - installed multiple times. - -2007-08-15 Eric Hodel - - * lib/rubygems/installer.rb: Support building mkrf extensions. Fixes - bug #11313. Patch by Jeremy Hinegardner. - * lib/rubygems/installer.rb: Ensure bin files are executable. Fixes - bug #8985 submitted by Ara Howard. - * lib/rubygems/installer.rb: Insert installing gem home dir into bin - wrapper. Patch #8818 by Ara Howard. - -2007-08-13 Eric Hodel - - * lib/rubygems/commands/uninstall_command.rb: Gems with version of 0 - can now be uninstalled. - -2007-08-11 Eric Hodel - - * lib/rubygems/config_file.rb: Command-line args override ~/.gemrc - now. Gem.sources is pulled from ~/.gemrc now. Gem::ConfigFile can - write itself out now. - * lib/rubygems/commands/sources_command.rb: Now writes out - Gem.configuration on changes. No longer checks source cache on - --list. - -2007-08-09 Eric Hodel - - * lib/rubygems/source_info_cache.rb: Make Gem::SourceInfoCache#search - only search gems in Gem.sources. - * lib/rubygems.rb: Make Gem::configuration a real Gem::ConfigFile - object. - * lib/rubygems/commands/query_command.rb: Fix `gem query --details`. - Add `gem query --no-versions`. - * lib/rubygems/local_remote_options.rb: Make `gem mumble --source URL` - only use that source. - * lib/rubygems/config_file.rb: Fix Gem::ConfigFile#[]= to match - Gem::ConfigFile#[]. - -2007-08-08 Eric Hodel - - * lib/rubygems/commands/specification_command.rb: Match only exact gem - names. Fixes bug #9681. Patch by Michael DeCandia. - * lib/rubygems/commands/unpack_command.rb: Match only exact gem names. - Fixes bug #9681. Patch by Michael DeCandia. - * lib/rubygems/commands/contents_command.rb: Match only exact gem - names. Fixes bug #9681. Patch by Michael DeCandia - * lib/rubygems/remote_fetcher.rb: Perform a GET request if the HEAD - request doesn't have Content-Length. Fixes bug #9771. Patch by Ben - Bleything. - * lib/rubygems.rb: Clear Gem::searcher when we Gem::clear_paths. - Fixes bug #12886. Submitted by Peter Williams. - * lib/rubygems.rb: Add #default_sources and rework #sources to use it. - * post-install.rb: No longer runs install_sources. - * pkgs/sources: Updated to something what a 0.0.2 would look like, if - we ever make one. - -2007-08-02 Eric Hodel - - * lib/rubygems/gem_commands.rb: Removed and broken up into individual - files. - * lib/rubygems/command_manager.rb: Lazily loads gem commands. Now to - use CommandManager just "require 'rubygems/command_manager'" and - everything will be there. - -2007-08-01 Eric Hodel - - * lib/*, test/*: Pushed down dependencies as far as reasonable. - Removed Gem::manage_gems. Now only 14 files are loaded with "require - 'rubygems'". Added tests for `gem build` and `gem cert`. - * lib/rubygems/extensions.rb: Added common place for all extensions. - -2007-07-26 Eric Hodel - - * test/test_gem_ext_configure_builder.rb: Linux has different behavior - for `sh ./configure` when configure is missing. Fix adapted from - Patch #10019 by Donavan Pantke. - * lib/rubygems/commands/pristine_command.rb: Compare fully-qualified - paths. Fixes bug #7976 by Lyle Johnson. - * lib/rubygems/config_file.rb: Add ConfigFile#[]=, so --proxy - command-line option works. Fixes #8152 by Justin Sabelkko. - * lib/rubygems/post-install.rb: Make sure we use the - latest-and-greatest RubyGems when running post-install.rb. Fixes Bug - #8411 by Duy Nguyen. - * lib/rubygems/remote_fetcher.rb: An empty HTTP_PROXY means no proxy. - Fixes Bug #9042 by Michael Brodhead. - * lib/rubygems/version.rb: Disallow newlines in version string. Strip - spaces from version string. Fixes Bug #9499 by Bryce Kerley. - * lib/rubygems/commands/sources_command.rb: Fix spelling error. Fixes - Bug #11064 by Chris Eskow. - -2007-07-25 Eric Hodel - - * lib/rubygems/indexer.rb: Create the index in /tmp, then move it into - place when we're done. This will prevent spurious bulk index updates - from occurring while the quick index is missing. Remove the option to - not build the quick index. - * lib/rubygems/commands/generate_index_command.rb: --no-quick is gone. - * lib/rubygems/user_interaction.rb: If stdin is not a tty, it is - unlikely that gem is going to get a response when asking a question. - Patch #10660 by Paul Brannan. - * lib/rubygems/validator.rb: Output test failures when using install - -t. Patch #10659 by Paul Brannan. - * lib/rubygems/custom_require.rb (Kernel#require): Only rescue a - LoadError that matches the file we are requiring. Patch #10723 by - Tyler Rick. - * lib/rubygems/remote_fetcher.rb: Support HTTP basic authentication. - Patch #8121 by Max Dunn. - * lib/rubygems/commands/install_command.rb: Don't raise an error when - a gem has no tests. Patch #11824 by Katsuyuki MIYAMUKO. - -2007-07-23 Eric Hodel - - * lib/commands/contents_command.rb: Add --lib-only option, remove - useless --list option. Feature request #9498 by Martin DeMello. - * lib/rubygems/specification.rb: Restrict to only files in - #require_paths. Add #required_rubygems_version. Feature request - #7780 by Eric Hodel. - * lib/rubygems/commands/dependency_command.rb: Display dependencies for - remote gems. Feature request #12133 by Eric Hodel. -r for reverse - dependencies is now -R. - * lib/rubygems/commands/specification_command.rb: Display - specifications for remote gems. Feature request #12133 by Eric Hodel. - * lib/rubygems/installer.rb (Gem::Installer#install): Check - required_rubygems_version. - * lib/rubygems/user_interaction.rb - (Gem::UserInteraction#choose_from_list): Check result for EOF. Fixes - bug #8018. Patch by Jos Backus. - * post-install.rb: Install using absolute path. Fixes bug #10675. - Patch by Jeremy Burks. - * lib/rubygems/commands/environment_command.rb: Add RUBY VERSION to - environment output. - * lib/rubygems/command.rb: Don't worry about duplicated command-line - options, OptionParser takes care of them for us. - -2007-07-22 Eric Hodel - - * lib/rubygems/specification.rb (Gem::Specification#files): Make it - faster - * lib/rubygems/command.rb: Better documentation. -v flag now lets you - get to "really verbose" mode which makes the verbose progress meter - work. Add command groups to separate types of commands easily. - * lib/rubygems/commands/which_command.rb, bin/gemwhich: Move `gemwhich` - under `gem`. - * lib/rubygems/commands/mirror_command.rb, bin/gem_mirror: Move - `gem_mirror` under `gem`. - * lib/rubygems/commands/lock_command.rb, bin/gemlock: Move `gemlock` - under `gem`. - * lib/rubygems/commands/server_command.rb, bin/gem_server: Move - `gem_server` under `gem`. - * lib/rubygems/doc_manager.rb (Gem::DocManager#initialize): Only raise - when operating on the filesystem. - * lib/rubygems/server.rb: Remove option processing, now in - Gem::Commands::ServerCommand. - * lib/rubygems/commands/generate_index.rb, bin/index_gem_repository.rb: - Move `index_gem_repository.rb` to `gem generate_index`. - * lib/rubygems/indexer (Gem::Indexer): Extract from - index_gem_repository.rb and merge RubyForge changes. - * lib/rubygems/command_manager.rb (Gem::CommandManager#run): Print - backtrace when --debug is set too. - * lib/rubygems/command_manager.rb (Gem::CommandManager#load_and_instantiate): - Don't infinitely loop in retry. - * bin/gemri: Removed. Everybody should have ri integration now. - * lib/rubygems/config_file.rb: Allow settings to be examined. Pull - settings from .gemrc. - * lib/rubygems/commands/environment_command.rb: Add ruby executable - and configuration settings to `gem env`. - * lib/rubygems/indexer/indexer.rb (Gem::Indexer::Indexer#build_index): - Now uses UserInteraction. - * various: Use UserInteraction for output. - * lib/gemconfigure.rb: Removed. Same as multiple gem commands. - * lib/rubygems/commands/contents_command.rb: Removed extra --verbose - option. - * lib/rubygems/gem_commands.rb (Gem::LocalRemoteOptions): Moved -B, - --source, -p from Gem::Commands::common_options. - -2007-07-22 Chad Fowler - - * lib/rubygems/gem_commands.rb: Added another example to the gem - example output (Gile Bowkett) - * test/test_documentation_generation.rb, lib/rubygems/doc_manager.rb: - Added a test for documentation generation and fixed a bug when doc - location is not writable. - -2007-06-16 Eric Hodel - - * lib/rubygems/gem_path_searcher.rb (Gem::GemPathSearcher): Moved out - of lib/rubygems/custom_require.rb and added tests. - -2007-06-02 Jim Weirich - - * lib/rubygems/source_info_cache.rb (Gem::try_file): Fix for issue - where a non-existing source cache file causes the gem command to - not find a gem. This fixes it by marshalling out an empty - hash. (Thanks to Nick Sieger for this fix). - -2007-06-01 Jim Weirich - - * lib/rubygems.rb - (Gem::OperationNotSupportedError::latest_partials): Changed from - match data style to $1 style regexp (on the recommendation of - better performance). - -2007-05-30 Jim Weirich - - * lib/rubygems/source_index.rb (Gem::SourceIndex::update): - Modified to get the bulk_threshhold from the configuration. - (Gem::SourceIndex::convert_specs): Ryan removed the "reduce_specs" - method because it is not needed any more and is creating memory - overhead. - - * lib/rubygems/config_file.rb (Gem::ConfigFile): Added - bulk_threshhold field to ConfigFile. - (Gem::ConfigFile::initialize): Initialize bulk threshhold to 500. - - * lib/rubygems/command.rb - (Gem::Command::specific_extra_args_hash): Added - -B (--bulk-threshhold) option to allow user specified bulk - download threshhold. - -2007-05-23 Jim Weirich - - * lib/rubygems/commands/sources_command.rb - (Gem::Commands::SourcesCommand::initialize): Added a --clear-all - option to the sources subcommand. Clear-all will remove the cache - files. - - * lib/rubygems/source_info_cache.rb (Gem): Moved system_cache_file - and user_cache_file to class methods so that we can get the file - names without creating a SourceInfoCache instance. - -2007-05-23 Eric Hodel - - * lib/rubygems/source_info_cache.rb: Teach SIC to repair itself - when it encounters a bad cache file. - -2007-05-14 Chad Fowler - * lib/rubygems/command_manager.rb: Re-added registration for - gem cleanup command which I accidentally removed during refactoring. - -2007-05-10 Jim Weirich - - * lib/rubygems/remote_installer.rb: Uncommented the require - 'sources' line. - - * lib/rubygems/source_info_cache.rb: Uncommented the require - 'sources' line. - - * lib/rubygems/rubygems_version.rb (Gem): Bumped to version 0.9.3 - in preparation for release. - - * lib/rubygems/package.rb (Gem::TarInput::zipped_stream): - Zipped_stream now always uses the in memory string IO buffer. - There were just too many problems with ZLib (on windows) - otherwise. - -2007-03-26 Jim Weirich - - * (Index): new digest technique. - - * lib/rubygems/validator.rb (Gem::Validator::verify_gem): Removed - really old MD5 and replaced with gem based digests. - - * experimental/deployment.rb (Gem::Deployment::Manager::initialize): - New digest technique. - - * experimental/test_deployment.rb (TestDeployment::test_deployed_file): - New digest technique. - -2007-03-26 Chad Fowler - - * Extracted the big ball of mud that was gem_commands.rb into - separate files. - -2007-03-17 Chad Fowler - - * Various ruby 1.8.6 fixes for failing tests. - - * Updated setup.rb to 3.4.1 - - * Renamed cmd_manager to command_manager to keep names consistent - - * lib/installer.rb: Rework path checking to use Pathname (ara howard bug #8811) - -2007-03-02 Eric Hodel - - * lib/rubygems.rb: Add bin directory before library directory, - otherwise gems like rake don't work. - -2007-03-01 Eric Hodel - - * lib/rubygems/open-uri.rb: Fix all the infinite loop errors. - - * lib/rubygems.rb: Add dirs from activate after -I and ENV['RUBYLIB'] - dirs. Otherwise gems won't allow -I to work when #gem is called. - -2007-02-11 Chad Fowler - - * test/gemutilities.rb: Fix to make Windows tests pass. (Anatol Pomozov) - -2007-02-05 Jim Weirich - - * lib/rubygems/rubygems_version.rb (Gem): Bumped to version 0.9.2 - and made a release. - -2007-02-04 Chad Fowler - - * Fixed failing tests (changed from assert_equal to assert_match to - deal with ARGV inconsistencies in test vs. production). - -2007-02-03 Jim Weirich - - * Bumped version to 0.9.1.1. - - * lib/rubygems/gem_open_uri.rb: Added the patched open-uri back - into the gems software. Evidently, the 1.8 version of open-uri - does not handle authenticating proxies with username and password. - - * lib/rubygems/source_info_cache.rb (Gem::cache_data): Added - rescue block to capture bad file loads. The original rescue was - only around the marshal load (bug was probably introduced when the - file data was preloaded into a string). - (Gem::set_cache_data): Added set_cache_data to be used during - testing to avoid reload the cache file over and over. - - * lib/rubygems/gem_commands.rb: Added require for command class so - that this file can be loaded independently. - - * lib/rubygems/source_index.rb (Gem::SourceIndex::outdated): Minor - cleanup. - - * test/gemutilities.rb - (RubyGemTestCase::util_setup_source_info_cache): Minor cleanup - - * test/test_gem_source_info_cache.rb - (TestGemSourceInfoCache::test_write_cache_user): Switched to using - set_cache_data here and several other places to avoid rereading - the cache data over and over again. - -2007-02-02 Chad Fowler - - * lib/rubygems/gem_commands.rb: - Fixed gem unpack (broken since 0.9.1) - -2007-01-20 Eric Hodel - - * lib/rubygems/source_info_cache.rb (Gem::SourceInfoCache#cache_data): - Read the source_cache in binary mode for mswin. - -2007-01-16 Eric Hodel - - * lib/rubygems/rubygems_version.rb (Gem): Released 0.9.1. - -2007-01-15 Eric Hodel - - * lib/rubygems/installer.rb (Gem::Installer#extract_files): Only allow - installation to absolute directories. (Call File::expand_path first). - More informative message for attempting to install with bad path. - * post-install.rb: Install sources first, since its rather important. - -2007-01-14 Eric Hodel - - * lib/rubygems/source_info_cache.rb: require 'fileutils', as its - needed. - -2007-01-12 Eric Hodel - - * lib/rubygems/installer.rb (Gem::Installer#extract_files): Don't - allow gems to place files outside the installation directory. Fixes - bug 7751 by Gavin Sinclair. - -2007-01-08 Jim Weirich - - * lib/rubygems/specification.rb - (Gem::Specification::test_suite_file): Added rescue clause for - default_executable. - (Gem::Specification::add_bindir): Added rescue clause for - add_bindir. - - * test/test_specification.rb - (TestSpecification::test_pathologically_bad_non_array_stuff_doesnt_goof_up_files): - Added a sanity check on hash for some pathologically bad case. - (TestSpecification::test_pathologically_bad_exectuables_doesnt_goof_up_hash): - Added sanity check for pathologically bad executables field. - -2007-01-08 Eric Hodel - - * lib/rubygems/gem_commands.rb (Gem::PristineCommand#execute): Better - messaging. - * lib/rubygems.rb, lib/rubygems/custom_require.rb: Correctly include - documentation for methods added to Kernel. - -2007-01-07 Eric Hodel - - * Rakefile: Include GPL.txt. Fixes bug #7572 by David Lee. - -2007-01-06 Jim Weirich - - * lib/rubygems/rubygems_version.rb (Gem): Bumped to version - 0.9.0.9. - - * lib/rubygems/specification.rb - (Gem::Specification::test_suite_file): Rewrote default_executable - to be a bit more explicit. - (Gem::Specification::add_bindir): Rewrote the 'files' accessor to - handle pathologically bad input. - (Gem::Specification::copy_of): Added as_array private method. - - * Rakefile (package_version): Added '*.out' to clobber list. - Removed the broken-1.0.0.gem file from the clobber list. - - * test/test_specification.rb - (TestSpecification::test_default_executable): - Seriously beefed up tests for certain specification issues. - - * test/gemenvironment.rb (TestEnvironment::create): Added the 'f' - flag to deleting 'gemhome'. - -2006-12-30 Eric Hodel - - * post-install.rb, lib/rubygems/server.rb: RubyGems now installs RDoc - and ri for itself. - -2006-12-28 Eric Hodel - - * lib/rubygems/installer.rb (Gem::Installer#build_extensions): - Extension build failures now raise Gem::Installer::ExtensionBuildErrors. - -2006-12-26 Eric Hodel - - * lib/rubygems/package.rb (Gem::Package::TarInput#initialize): Bad - packages now raise FormatError instead of a generic RuntimeError. - * lib/rubygems/installer.rb (Gem::Installer#install): Raise an - InstallError when we have a bad gem file. - -2006-12-25 Jim Weirich - - * lib/rubygems/custom_require.rb (Gem::GemPathSearcher::find): - Removed SUFFIX_PATTERN. Evidently this was miss during an earlier - attempt to remove it. - (Gem::GemPathSearcher::matching_file): Changed reference to - SUFFIX_PATTERN into a call to Gem.suffix_pattern. - - * Removed tab characters from numerous source files. - - * lib/rubygems/installer.rb (Gem::Uninstaller::uninstall): Removed - stray tab characters. - - * lib/rubygems.rb (Kernel::require_gem): Added file and line - number information to require_gem worning (makes it easier to - track down those offending lines of code). - (Kernel::location_of_caller): Added helper function to determine - file and line number of caller. - -2006-12-25 Eric Hodel - - * lib/rubygems/installer.rb (Gem::Installer#app_script_text): - Simpler, more readable bin script. - * lib/rubygems/gem_commands.rb (Gem::PristineCommand#execute): - Regenerate bin scripts. This will clean up require_gem in scripts. - -2006-12-24 Eric Hodel - - * lib/rubygems/remote_fetcher.rb (Gem::RemoteFetcher#fetch_path): - Rescue various errors and return a more-friendly error. - -2006-12-23 Eric Hodel - - * lib/rubygems/command.rb lib/rubygems/gem_commands.rb: Make help - output fit in 80 columns. - * lib/rubygems/rubygems_version.rb: Bump version to 0.9.0.8, beta - time! (Oops, didn't go into beta.) - -2006-12-20 Eric Hodel - - * lib/rubygems/remote_fetcher.rb (Gem::RemoteFetcher#fetch_size): Give - a sensible error on bad URIs. - * lib/rubygems/gem_commands.rb (Gem::SourceCommand): Allow management - of sources in source_cache. Fixes bug #1128. - * lib/rubygems.rb (Kernel#require_gem): Add deprecation warning in - favor of gem. - -2006-12-19 Eric Hodel - - * lib/rubygems/installer.rb (Gem::ExtBuilder): Refactored for - uniformity. - * lib/rubygems/remote_installer.rb - (Gem::RemoteInstaller#specs_n_sources_matching): Don't display gems - that can't be installed. - * lib/rubygems.rb, pre-install.rb: Fix installation errors on 1.9. - Fixes bug #4536 by Ryan Davis. - * lib/rubygems/source_index.rb, lib/rubygems/gem_commands.rb, - lib/rubygems-custom_require.rb: Use File.join with glob strings. - Fixes bug #1096 submitted by Chad Fowler. - * lib/rubygems/remote_installer.rb - (Gem::RemoteInstaller#install_dependencies): Make --force actually - force. Fixes bug #7365 by Robert James. - -2006-12-18 Eric Hodel - - * lib/rubygems/gem_commands (Gem::OutdatedCommand): Add a way to see - which gems are out-of-date. - - * setup.rb: Ignore errors for .config and InstalledFiles when - the source path is read-only/NFS. Fixes bugs #1395 and #1374. Patch - by Ryan Davis. - - * bin/gem_server: Pull code out into lib/rubygems/server.rb for - reusability. Closes Feature Request #2220 by Chris Morris. - -2006-12-16 Chad Fowler - - * test/: Added functional test for extension gems proving that - non-compiling extensions don't result in success message. - - * lib/rubygems/specification.rb: Raise exception if loaded spec is - nil. Closes bug #7299. - - * test/gemenvironment.rb: Clean out gemhome every time to avoid dirty - directory failing tests. - - * lib/rubygems/installer.rb: Change uninstall to require a full gem - name (not a partial match). Fixes bug #6007 and related unreported - issues. - -2006-12-15 Eric Hodel - - * lib/rubygems/installer.rb (Gem::Uninstaller): Correctly uninstall - executables if GEM_HOME is set. Patch #2264 by Sylvain Joyeux. - - * lib/rubygems.rb (Gem::loaded_specs): Expose list of currently loaded - gems. - - * lib/rubygems/gem_commands (Gem::UninstallCommand): Allow multiple - gems to be uninstalled at once. - -2006-12-14 Eric Hodel - - * post-install.rb: Don't attempt to read unreadable files. Fixes - bug #2851. - -2006-12-13 Eric Hodel - - * pre-install.rb.rb, post-install.rb: Don't call manage_gems because - we don't have sources installed yet. Bump version requirement to - 1.8.2 since rubygems/open-uri.rb was removed. Should fix bug #6206. - - * lib/rubygems/installer.rb (Gem::Installer#build_extensions): Capture - stderr into results when building extensions. - - * lib/rubygems/gem_commands.rb (Gem::ContentsCommand): Allow version - to be passed to gem contents. Not backwards compatible, -v now -V and - vice versa. Select newest gem for contents. Fixes bugs #2723, #7225. - Patches by Sava Chankov, Tom Pollard. - - * lib/rubygems/gem_commands.rb (Gem::InstallCommand#execute): Allow - install errors to result in non-zero exit code. Fixes bug #2773. - -2006-12-03 Eric Hodel - - * lib/rubygems/remote_installer.rb (Gem::RemoteInstaller#install): - Add :cache_dir option to override the default. - - * lib/rubygems/remote_installer.rb (Gem::RemoteInstaller#download_gem): - Check cache to see if the gem has been cached before downloading. - -2006-12-02 Jim Weirich - - * lib/rubygems.rb (Gem::OperationNotSupportedError::suffixes, - Gem::OperationNotSupportedError::suffix_pattern): Removed - duplicate copies of the SUFFIX_PATTERN by providing a global - method Gem.suffixes and Gem.suffix_pattern. - - * lib/rubygems/remote_fetcher.rb (Gem::open_uri_or_path): Reworked - the connection options for the open-uri call. Since we are not - using the rubygems supplied open_uri, we can use some new options - available that make proxy handling much easier. - (Gem::file_uri): Renamed is_file_uri to file_uri?. - - * lib/rubygems/loadpath_manager.rb (Gem::LoadPathManager::self): - Added .jar to list of suffixes. - - * test/functional.rb (FunctionalTest::test_env_remotesources): - Changed test to uses Gem.sources (the sources method on - remote_fetcher was removed). - - * test/test_remote_fetcher.rb (TestRemoteFetcher): Renamed some of - the test constants and instance variables so that they were more - consistent and explained the tests a wee bit better. - (TestRemoteFetcher::test_no_proxy): Added assert_data_from_server - and assert_data_from_proxy to make it clear what the test was - doing and give better error messages on errors. - (TestRemoteFetcher::assert_data_from_server): Added - assert_data_from_server. - (TestRemoteFetcher::assert_data_from_proxy): Added - assert_data_from_proxy. - -2006-11-30 Chad Fowler - - * lib/rubygems/open-uri.rb: Removed the duplicated library. - -2006-11-30 Eric Hodel - - * lib/rubygems/specification (Gem::Specification#eql?): Allow gemspecs - to be used intelligently with Array#- and Array#uniq. - - * lib/rubygems/installer.rb: Return extension-building results in - Exception on build failure. - - * lib/rubygems/remote_installer.rb: Ensure gems with similar names - cannot be matched for install. (Broken when searching was removed - from RemoteInstaller.) - -2006-11-29 Eric Hodel - - * post-install.rb: Now requires rbconfig. - - * lib/rubygems/specification.rb, lib/rubygems/version.rb: Fixed many - ivar warnings due to YAML specs. - - * lib/rubygems/validator.rb, lib/rubygems/validator.rb - (Gem::Validator#unit_test Gem::RemoteInstaller::): Ensure the - current directory is restored. - - * lib/rubygems/remote_fetcher.rb, lib/rubygems/remote_installer.rb, - lib/rubygems/installer.rb: Raise more-friendly and less-deadly errors. - - * lib/rubygems/remote_installer.rb (Gem::RemoteInstaller#install): - Create version requirement correctly. - - * lib/rubygems/remote_installer.rb - (Gem::RemoteInstaller#find_gem_to_install): Allow RemoteInstaller to - work with SilentUI. - - * lib/rubygems/remote_fetcher.rb (RemoteFetcher#open_uri_or_path): - Don't double-require open-uri. - -2006-11-27 Eric Hodel - - * lib/rubygems/specification.rb - (Gem::Specification#default_executable): Fixed bug where @executables - could be nil when loaded from index. - -2006-11-21 Eric Hodel - - * lib/rubygems/source_index.rb (Gem::SourceIndex#latest_specs): Grab - the latest versions of everything in the index. Written by Ryan - Davis. - -2006-11-20 Rich Kilmer - - * lib/rubygems/cmd_manager.rb: Added PristineCommand - - * lib/rubygems/gem_commands.rb: Added PristineCommand to restore - gems to pristine condition in the event of files begin deleted - based on the cached .gem file - -2006-11-19 Eric Hodel - - * lib/rubygems/*_fetcher.rb: Removed code specific to remote source - index updating. - - * lib/rubygems/remote_installer.rb (Gem::RemoteInstaller#search): - Moved to Gem::SourceInfoCache#search - - * lib/rubygems/source_info_cache.rb: Taught to update itself - - * lib/rubygems/source_info_cache_entry.rb: Taught to update itself - - * lib/rubygems/source_index.rb: Taught to update itself from a uri. - -2006-11-18 Chad Fowler - - * lib/rubygems/installer.rb: Applied Kevin Clark's patch to make - RubyGems recognize mkrf files. - -2006-11-17 Eric Hodel - - * test/test_remote_fetcher.rb: Don't allow files in Dir.pwd to make - tests fail. Spotted by Chad Fowler. - - * lib/rubygems/remote_installer.rb (Gem::RemoteFetcher, - Gem::CacheFetcher): Break out of remote_installer.rb into separate - files. - - * lib/rubygems/remote_installer.rb (Gem::SourceInfoCache, - Gem::SourceInfoCacheEntry): Allow requiring just the source cache - without the remote fetcher. - -2006-11-16 Eric Hodel - - * test/test_local_cache.rb: Moved to better name - - * test/test_gem_source_info_cache.rb: Renamed test methods to match - implementations. Sorted test names. - - * lib/rubygems/remote_installer (Gem::SourceInfoCache): cache_data no - longer resets dirty flag. Sped up source cache loading. Exposed - cache file name in use. - -2006-11-15 Eric Hodel - - * test/, lib/: Made files -w clean. - - * test/: Made tests run independently. - - * Rakefile: Tests now run with warnings on. - -2006-11-14 Eric Hodel - - * lib/rubygems/user_interaction.rb (Gem::StreamUI#progress_reporter): - Fix for Gem.configuration.verbose = nil, false - - * lib/rubygems.rb (Gem::configuration): Fix RakeFileUtils pollution. - -2006-10-05 Jim Weirich - - * lib/rubygems/installer.rb (Gem::Installer::shebang): Updated to - optionally call env_shebang if the command line option is set. - (Gem::Installer::shebang_env): Added this method. - -2006-09-25 Jim Weirich - - * lib/rubygems/rubygems_version.rb (Gem): Bumped to version - 0.9.0.6. - - * lib/rubygems/security.rb (Gem::Security::Exception): Added - permissions for cert files and directories. - (Gem::Security::Policy::verify_gem): File.exists? => File.exist? - (Gem::Security::self.verify_trust_dir): Beefed up code to create - trust directory structure. - (Gem::Security::self): Apply permissions when creating trust - files. - - * lib/rubygems/package.rb (TarInput::initialize): File.exists? => - File.exist? - -2006-09-24 Jim Weirich - - * lib/rubygems.rb - (Gem::OperationNotSupportedError::configuration): Added - method_missing to configuration hash to allow nicer reference - syntax. - -2006-09-22 Jim Weirich - - * lib/rubygems/remote_installer.rb - (Gem::RemoteSourceFetcher::initialize): Proxy patch fixup to - escape user/password from Anatol Pomozov. - (Gem::RemoteSourceFetcher::connect_to): Proxy patch fixup to - escape user/password from Anatol Pomozov. - - * test/test_remote_fetcher.rb (TestRemoteFetcher::setup): Proxy - patch fixup to escape user/password from Anatol Pomozov. - (TestRemoteFetcher::test_no_proxy): Proxy patch fixup to escape - user/password from Anatol Pomozov. - - * test/io_capture.rb (Gem::IoCapture): Created new IoCapture - module to handle capturing output of code under test. - - * test/test_installer.rb - (TestInstaller::test_generate_bin_symlinks_win32): Removed ugly - $TESTING hack and substituted new io capture module. - (TestInstaller::test_install_with_message): Removed one-off stdout - capture and replaced with new IO Capture module. - -2006-09-19 Jim Weirich - - * lib/rubygems/rubygems_version.rb (Gem): Bumped to version - 0.9.0.3. - - * test/test_version_comparison.rb (TestRequirementEquality): Added - more tests for Dependency equality testing and one additions check - for requirement vs non-requirement equality. - - * lib/rubygems/version.rb (Gem::Dependency::==) Fixed '=' bug in - '==' code. - -2006-09-18 Chad Fowler - - * lib/rubygems/remote_installer.rb - Only show the last 3 gem versions on a multiplatform remote - install list. - -2006-09-18 Jim Weirich - - * lib/rubygems/remote_installer.rb - (Gem::RemoteInstaller::install): Added Hugh Sasse's patch for - skipping gems on install. - - * lib/rubygems/rubygems_version.rb (Gem): Bumped to 0.9.0.2. - - * lib/rubygems/version.rb (Gem::Dependency::hash): Added hash code - --http-proxy, the ENV var http_proxy and with no proxy. - -2006-08-26 Jim Weirich - * lib/rubygems/remote_installer.rb - (Gem::RemoteInstaller::download_gem): Fixed download_gems so that - it properly passes the proxy option to the fetcher class. (based - on patch by Andy Shen). - -2006-08-12 Jim Weirich - - * bin/index_gem_repository.rb (Indexer::sanitize): Added a - sanitize step to the gem index generation in the hope of avoiding - problems with non-ASCII names in the yaml data. - -2006-06-14 Jim Weirich - - * Rakefile (announce): Added 1.9 hack for ENV['CERT_DIR']. Remove - this in the future if 1.9 behavior changes. - -2006-06-13 Jim Weirich - - * Rakefile: ENV['CERT_DIR'] is now '' rather than nil. - - * lib/rubygems/specification.rb (Gem::Specification::initialize): - Eric added some 1.9 compatibility code (funcall vs send). - - * lib/rubygems/package.rb (TarOutput::self): Eric added some 1.9 - compatibility code (funcall vs send). - - * experimental/deployment.rb (Gem::Deployment): Moved the - deployment code out of the live code base into the experimental - directory. The code wasn't used and the tests were not all - passing. - -2006-06-11 Jim Weirich - - * bin/gemri: Added gemri to bin directory. - - * lib/rubygems/custom_require.rb (Gem::GemPathSearcher::find): - Added .rbw to suffix pattern in custom_require. - -2006-06-07 Jim Weirich - - * lib/rubygems.rb: Added copyright notices to all Ruby files. - -2006-04-07 Jim Weirich - - * lib/rubygems/gem_commands.rb (Gem::RDocCommand::execute): Added - RI option to the rdoc subcommand. - -2006-04-05 Jim Weirich - - * test/test_parse_commands.rb - (TestParseCommands::test_parsing_update_options): Fixed unit tests - to assert that the install dir is expanded. - - * lib/rubygems/doc_manager.rb (Gem::DocManager::generate_ri): - Break out from generate_rdoc to support installing all RI docs - first. - - * lib/rubygems/gem_commands.rb - (Gem::InstallUpdateOptions::add_install_update_options): Expanded - repository directory to absolute path. - (Gem::InstallCommand::execute): Make sure that *all* of the RI - documents are generated before generating any RDocs (due to a bug - in the RDoc library). - - * lib/rubygems/installer.rb (Gem::ExtExtConfBuilder::self): Fixed - typo in ExtExtConfBuilder that prevented C based gems to install. - (Gem::ExtExtConfBuilder::self): Installed patch to prevent the - overriding of target_prefix in native extensions (thanks to Aaron - Patterson for the patch). - -2006-04-04 Jim Weirich - - * lib/rubygems/rubygems_version.rb (Gem): Bumped to version - 0.8.11.10. - - * lib/rubygems/incremental_fetcher.rb - (Gem::IncrementalFetcher::update_cache): Now falls back to bulk - updates if the number of gems if over 50. - - * lib/rubygems/remote_installer.rb - (Gem::RemoteSourceFetcher::source_index): Added "bulk" to the - update message to differentiate it from the incremental message. - - * lib/rubygems/specification.rb - (Gem::Specification::Specification): Modified to add dashes to - gemspecs generated under Ruby 1.8.3. This makes it easier to run - RubyGems on a 1.8.2 system. - -2006-04-01 Jim Weirich - - * lib/rubygems/doc_manager.rb (Gem::DocManager::run_rdoc): Changed - exception handler to print error message if document generation - fails, but then to continue with the rest of the installation. - Permission errors still terminate the install because if one - install fails because of permission problems, chances are that all - will fail. - (Gem::DocManager::install_ri): Removed wrapping of exceptions with - DocumentError. Most exceptions now don't propagate out of - run_rdoc. - (Gem::DocManager::install_rdoc): Removed wrapping of exceptions - with DocumentError. Most exceptions now don't propagate out of - run_rdoc. - -2006-02-23 Jim Weirich - - * bin/index_gem_repository.rb (MasterIndexBuilder::cleanup): Fixed - bug where we were trying to read the index file (to compress it) - before it was closed, often leading to a truncated index file. - -Tue Jan 24 16:26:13 2006 Chad Fowler - * lib/rubygems/config_file.rb - Luca Pireddu reported a fatal error when permissions on - .gemrc were too restrictive. Fixed. - -Tue Dec 6 14:51:13 2005 Jim Weirich - - * lib/rubygems/source_index.rb - (Gem::SourceIndex::load_specification): Added an untaint call to - make the code run in SAFE=1 mode under 1.8.3. - (Gem::SourceIndex::load_gems_in): Untaint here too. - - * lib/rubygems/installer.rb (Gem::Installer::install): Untaint - here too. - (Gem::Installer::extract_files): Untaint here too. - - * lib/rubygems/custom_require.rb - (Gem::GemPathSearcher::matching_file): Untaint here too. - - * test/gemenvironment.rb: Added $SAFE=1 to the test environment to - make sure we can run in $SAFE mode. - -2005-12-03 Jim Weirich - - * lib/rubygems/rubygems_version.rb (Gem): Bumped version to - 0.8.11.6' - - * lib/rubygems/user_interaction.rb - (Gem::StreamUI::SimpleProgressReporter::done): Added several new - progress reporters. - - * lib/rubygems/command.rb - (Gem::Command::specific_extra_args_hash): Added --verbose - processing. - - * lib/rubygems/config_file.rb (Gem::ConfigFile::handle_arguments): - Added --traceback as alias for --backtrace (I always get them - confused). - (Gem::ConfigFile::initialize): Added a verbose option. - -2005-11-28 Jim Weirich - - * lib/rubygems/remote_installer.rb - (Gem::SourceInfoCacheEntry::replace_source_index): Fixed the - SourceIndexCacheEntry so that it will manufacture an empty source - index if given a nil value for the +si+ value. - -2005-11-08 Chad Fowler - * lib/rubygems.rb: Ara Howard's fix to allow 0.0.0 to be a valid gem - version. - -2005-11-08 Chad Fowler - * lib/rubygems/gem_commands.rb: Fixed bug in gem unpack. It was - sorting incorrectly, resulting in the wrong version being unpacked in - some edge cases. Thanks to Jakob Skjerning for the detailed bug report. - -2005-11-03 Chad Fowler - * lib/rubygems/installer.rb: Fixed bug that would cause the executables - from the wrong gem to be uninstalled if the names matched the same - regex. Thanks Eric Hodel. - -2005-11-01 Jim Weirich - * lib/rubygems/gem_commands.rb (Gem::UpdateCommand::initialize): - Upgrade => Update change. - (Gem::UpdateCommand::execute): Upgrade => Update change. - (Gem::UpdateCommand::execute): Upgrade => Update change. - -2005-11-01 Chad Fowler - * lib/rubygems/gem_commands.rb: Allow gem unpack to accept a gem file - path instead of gem name: gem unpack mygem-1.0.0.gem. - -2005-10-31 Chad Fowler - * lib/rubygems/installer.rb: Tilman Sauerbeck's patch to support - extensions built with Rake! - -2005-09-13 Jim Weirich - - * lib/rubygems/package.rb (TarInput::initialize): Removed - requirement for SSL when signatures are found in a gem. Only - require SSL if the security policy requires checking the - signatures. - - * lib/rubygems/custom_require.rb (Kernel::require): Disabled - autorequire during custom require. - -2005-09-07 Jim Weirich - - * lib/rubygems/gem_openssl.rb (Gem::ensure_ssl_available): Added a - test in gem_openssl to make sure the ruby portion of ssl is also - loaded. - -2005-08-31 Jim Weirich - - * Rakefile (install): Changed the rake install task to use setup.rb. - -2005-07-08 Chad Fowler - - * lib/rubygems/remote_installer.rb: Applied Daniel Roux's patch - to make RubyGems work with authenticating proxies. - -2005-07-08 Jim Weirich - - * Preparing for release 0.8.11. - -2005-06-12 Jim Weirich - - * lib/rubygems/installer.rb - (Gem::Installer::installation_satisfies_dependency): Refactored - dependency check into ensure_dependency! and - installation_satisfies_dependency?. - -2005-06-12 Chad Fowler - * lib/rubygems.rb,lib/rubygems/installer.rb: Applied Mark Hubbart's - * lib/rubygems/remote_installer.rb: Applied David Glasser's install- - * Applied Paul Duncan's incredibly complete gem signing patch. - Thanks, Paul! - * lib/rubygems/installer.rb: Fixed bug in installer that caused - dependency installation not to work. - -2005-06-06 Chad Fowler - * lib/rubygems/specification.rb: Fixed Erik hatcher's reported bug - of gem directories having "-" at the end of their names (e.g. - "BlueCloth-1.0.0-". - -2005-06-01 Jim Weirich - - * scripts/specdoc.rb (_resolve_links): Updated to generate hieraki - format so it can be included in the docs.rubygems.org site. - - * test/test_specification.rb (TestSpecification::test_to_ruby): - Fixed test on date that hard-coded a specific date. - -2005-05-29 Jim Weirich - - * Changes from the Seattle Code fest: (1) Package list command - (e.g. gem inspect GEM). (2) .gemrc settings now allow cvsrc like - options to set defaults per subcommand. (3) The autorequire spec - attribute will now accept a list. (4) Binwrappers vs symlinks - (more info to follow). (5) Substituted Time for Date in specs, - increasing performance dramatically in an important area. - -2005-05-04 Jim Weirich - - * lib/rubygems.rb (Gem::Exception::find_home): Changed rescue - clause from Exception to StandardError. Exception doesn't seem to - catch everything ... I'm not sure I understand why. - -2005-04-29 Chad Fowler - * lib/rubygems/specifiation.rb: Marcel Molina's patch to discover - which attributes in the spec are Array attributes. - -2005-04-27 Chad Fowler - * lib/rubygems/gem_commands.rb: -y is now a synonym for - --include-dependencies - -2005-04-21 Chad Fowler - * lib/rubygems/installer.rb: Added non-require_gem dependency check - for installation. - -2005-04-03 Chad Fowler - - * pre-install.rb: Added version check to RubyGems installation. - -2005-03-25 Jim Weirich - - * lib/rubygems/rubygems_version.rb (Gem): Created release for - 0.8.10. - - * lib/rubygems/gem_commands.rb - (Gem::UpdateCommand::do_rubygems_update): Update --system now runs - the ruby command directly rather than trying to load the - update-rubygems command. There were too many things to go wrong - with the old way. - -2005-03-24 Jim Weirich - - * lib/rubygems/remote_installer.rb - (Gem::RemoteInstaller::find_dependencies_not_installed): Fixed to - reload source index before attempting to detect dependencies. - -2005-03-23 Jim Weirich - - * lib/rubygems/remote_installer.rb - (Gem::RemoteInstaller::find_dependencies_not_installed): Switched - to using SourceIndex#find_name to detect missing dependencies, - avoiding a gem activation during an install. - - * lib/rubygems/installer.rb (Gem::Installer::install): Removed - activate call from install step. If we need to do something about - dependencies at this time, then we need a better way to do them. - - * lib/rubygems.rb: Removed the require for rubygems/timer. - -2005-03-16 Jim Weirich - - * test/gemenvironment.rb (TestEnvironment::create): Added require - on gem/builder. - - * lib/rubygems/source_index.rb (Gem::SourceIndex::initialize): - Allowing default argument to new to be an empty hash. - (Gem::SourceIndex::from_installed_gems): Refactored into a class - method that invokes a instance method. - (Gem::SourceIndex::refresh): Refresh now does a complete reload - from disk. This should be more accurate that the earlier version. - - * lib/rubygems/installer.rb (Gem::Uninstaller::uninstall): removed - unneeded refresh!. - - * lib/rubygems.rb (Gem::Exception::source_index): Removed - automatic refresh from Gem.source_index ... it wasn't reliable - when removing installed gems. - (Gem::Exception::activate): Added detection of previously loaded - gems. - -2005-03-15 Chad Fowler - - * bin/gem_server: (htonl) rdoc opens in existing browser window. - -2005-03-14 Jim Weirich - - * Released 0.8.8 - -2005-03-14 Jim Weirich - - * Released 0.8.7 - -2005-03-13 Gavin Sinclair - - * lib/rubygems/installer.rb (Gem::Installer#shebang): Refactored and - stripped result to avoid ^M issues. - -2005-03-11 Jim Weirich - - * lib/rubygems/gem_commands.rb (Gem::DependencyCommand): Added a - new command "gem dependency" to show the dependencies of an - installed gem. - - * lib/rubygems/cmd_manager.rb (Gem::CommandManager::initialize): - Added DependencyCommand to the command manager registrar. - - * lib/rubygems/version.rb (Gem::Requirement): Unnested Requirement - from the Version class. There was no benefit to having it nested. - Gem::Version::Requirement is set to point to the new class so to - be compatible with old gems. - - * lib/rubygems/installer.rb (Gem::Uninstaller::ask_if_ok): Changed - uninstaller confirm message to read 'Continue with uninstall'. - Its clearer that way. - - * lib/rubygems.rb (Gem::Exception::required_location): Switch to - use SourceIndex#find_name rather than search. Made sure a nil - value is returned with a path is not found. - - * lib/rubygems/source_index.rb (Gem::SourceIndex::search): Changed - parameter name to gem_pattern to emphasize using Regex in search. - (Gem::SourceIndex::find_name): Added find_name to handle the - common case of searching for an exact match on the short name. - - * lib/rubygems.rb (Gem::Exception::activate): Make sure that - activate more closely adheres to honoring the auto_require=>false - request. - (Gem::Exception::report_activate_error): Out of line error - reporting for activate. - - * lib/rubygems/remote_installer.rb - (Gem::RemoteInstaller::find_dependencies_not_installed): Found - another location that was using require_gem with auto_require. - Fixed to use :auto_require=>false. - - * lib/rubygems/gem_commands.rb - (Gem::InstallUpdateOptions::add_install_update_options): Added - --ignore-dependencies option. Still needs to be wired to logic. - - * lib/rubygems/installer.rb (Gem::Installer::install): Added call - to require_gem_with_options. - - * lib/rubygems.rb (Kernel::require_gem_with_options): Added to - allow easier specification of the autorequire flag for - Gem.activate. - -2005-03-10 Jim Weirich - - * lib/rubygems/remote_installer.rb - (Gem::RemoteSourceFetcher::normalize_uri): Normialize a URI to - start with http:// if it does not already. - - * test/test_deployment.rb (TestDeployment::xtest_deploy_sources): - Disabled this test. It is part of the new deployment software and - is not working yet. - -2005-03-09 Jim Weirich - - * lib/gemconfigure.rb (Gem::self): Added to aid dynamic - versioning. - - * lib/rubygems/command.rb (Gem::Command::command_manager): Moved - command_manager to base class. - - * lib/rubygems/gem_commands.rb (Gem::CleanupCommand::execute): - Both implicit and explicit gems now work with cleanup. - -2005-03-08 Jim Weirich - - * lib/rubygems/installer.rb (Gem::Uninstaller::ok_to_remove): - Fixed source index to be loaded from the installed gems when doing - an "OK TO REMOVE" dependency check. - -2005-03-06 Rich Kilmer - * lib/rubygems/deployment.rb: beginning of a deployment capability - - * test/test_deployment.rb: first tests of new deployment system - -2005-03-04 Chad Fowler - * lib/rubygems/gem_commands.rb: Small bugfix for the case when you - pass in a gem name (or more) to cleanup for the cleanup command. - -2005-03-04 Jim Weirich - - * lib/rubygems/installer.rb (Gem::Uninstaller::ok_to_remove): - Reworked logic in uninstall to be intelligent about dependencies. - We only complain about dependencies if removing a gem will cause a - dependency error. The uninstaller now checks for :ignore, :all - and :executables options. - - * lib/rubygems/cmd_manager.rb (Gem::CommandManager::initialize): - Registered Cleanup command. - - * lib/rubygems/gem_commands.rb (Gem::CleanupCommand): Added - Cleanup command to gem. - (Gem::UninstallCommand::initialize): Added --all, --ignore and - --executables options to uninstall. This helps to avoid excessive - YESes all the time. - -2005-02-28 Jim Weirich - - * lib/rubygems/remote_installer.rb - (Gem::LocalSourceInfoCache::write_cache): Open cache file in - binary mode. - -2005-02-28 Chad Fowler - * lib/rubygems/config_file.rb: don't warn about not being able to - find config file. - * lib/rubygems/doc_manager.rb: (for DHH) don't install rdoc docs for - * lib/rubygems/gem_commands.rb: Print which gems are updated on 'gem - update'. If --system is used, report that the rubygems system - software has been updated. - * lib/rubygems/installer.rb: Cleaned up the uninstall has_dependents - logic and output. It was misleading and buggy before. - -2005-02-27 Jim Weirich - - * lib/rubygems/config_file.rb - (Gem::ConfigFile::default_config_file_name): Fixed bug in finding - home directory for the .gemrc file. - -2005-02-27 Chad Fowler - - * Released 0.8.6 - - * Fixed a small bug with shebang construction - -2005-02-26 Jim Weirich - - * Released 0.8.5 - - * lib/rubygems/doc_manager.rb (Gem::DocManager::generate_rdoc): - Removed warning about generating rdocs on gems w/o an rdoc flag. - - * lib/rubygems/gem_commands.rb - (Gem::UpdateCommand::do_rubygems_update): Added --system option to - update to specifically update the version of rubygems. - (Gem::UpdateCommand::which_to_update): Fixed some refactoring bugs - in the which_to_update method. - - * lib/rubygems/remote_installer.rb - (Gem::LocalSourceInfoCache::read_cache): switched to Marshal - rather than Yaml for local cache. - - * bin/gem: Added requirement for Ruby >= 1.8.0. - -2005-02-10 Chad Fowler - * bin/gem_server: Added Martin Ankerl's wonderful new gem_server - template - -2005-01-27 Chad Fowler - * lib/rubygems/gem_commands.rb: Fixed - `gem update` so it accepts a list of gems to update and _only_ - updates those. - * lib/rubygems/installer.rb: Fixed a bug in the new shebang code. - * lib/rubygems/remote_installer.rb: Attempt to fix Curt Hibbs' - reported Proxy bug without actually having a proxy to test with. - -2005-01-22 Chad Fowler - * lib/rubygems/custom_require.rb: Lyle Johnson's fix for Bug #1379 - -2005-01-20 Chad Fowler - * lib/rubygems/validator.rb: Applied Austin Ziegler/Kasper Schiess's - patch to fix unit test running bug. - -2005-01-14 Chad Fowler - * lib/rubygems/installer.rb: attempt at fixing Ryan Davis's - reported Shebang bug. STILL NOT WORKING, because it doesn't work - with ^M characters. - * lib/rubygems/config_file.rb: small but ugly error fixed if no - config file exists. - * lib/rubygems/remote_installer.rb: Fixed bug http://rubyforge.org/tracker/index.php?func=detail&aid=1331&group_id=126&atid=575. - -2005-01-01 Chad Fowler - * Released 0.8.4 - -2004-12-31 Jim Weirich - - * Rakefile: Switch to standard Rake test tasks. - - * lib/rubygems/remote_installer.rb - (Gem::RemoteSourceFetcher::read_data): Added a retry to try a - lower case gem name if the open failed. This fixes a problem - where case differences are preventing some gems from installing. - -2004-12-29 Jim Weirich - - * lib/rubygems/gem_commands.rb (Gem::InstallCommand::execute): - Changed the RemoteInstaller to take an options hash rather than - individual options. This will leave the interface more resilient - to changes as more options are added - (e.g. --install_dependencies). - - * lib/rubygems/specification.rb (Gem::Specification): Marked array - attributes explicitly. This allows for explicit conversion to - arrays when assigned. - - * test/test_specification.rb - (TestSimpleSpecification::test_array_attributes): Added test for - array_attributes forcing values to arrays. - -2004-12-28 Jim Weirich - - * lib/rubygems.rb (Gem::Exception::ensure_gem_subdirectories): - Fixed the Ryan Davis patch to work correctly when directories are - not writable. - -2004-12-18 Chad Fowler - * lib/rubygems/version.rb: Erik Veenstra's sort patch. - * lib/rubygems.rb: Ryan Davis's installation bug fix. - -2004-12-14 Gavin Sinclair - - * test/test_loadmanager.rb: invalidated it as a unit test; it's - incompatible with custom_require.rb. - -2004-12-12 Gavin Sinclair - - * lib/rubygems/custom_require.rb: simple bug fix. - -2004-12-12 Gavin Sinclair - - * lib/rubygems/custom_require.rb: new file to replace - loadpath_manager.rb and speed up the custom require functionality. - - * lib/rubygems/timer.rb: new file; simple benchmarking tool that's - useful at the moment but needn't stay in RubyGems permanently. - - * lib/rubygems/source_index.rb: include Enumerable and implement #size - and #length. - - * lib/rubygems/specification.rb: removed lazy initialisation of - attributes to reduce #copy_of invocations; folded - Specification.copy_of into Specification#copy_of. - - * lib/rubygems.rb: require 'rubygems/custom_require' instead of - 'rubygems/loadpath_manager'; removed out of date documentation; added - "require 'rubygems/timer'" to temporarily assist with benchmarks. - -2004-12-07 Jim Weirich - - * Released 0.8.3 - -2004-12-06 Jim Weirich - - * test/test_specification.rb - (TestLegacyYamlSpecification::test_load): Fixed test to avoid the - __FILE__ stuff. Running tests from rakefile guarantees that the - file paths start from the right location. - - * pkgs/sources/sources.gemspec: Made Gem.sources_spec idempotent. - - * lib/rubygems/specification.rb (Gem::Specification::initialize): - Added @@gather to Gem::Specification to facilitate proper loads. - (Gem::Specification::Specification): Added Specification.load. - - * lib/rubygems/source_index.rb (Gem::SourceIndex): Fixed comments - 'long name' => 'full name'. - - * lib/rubygems/gem_commands.rb (Gem::BuildCommand::load_gemspecs): - Changed to use Gem.Specification.load. - - * Rakefile: Added sources-*.gem to clobber list. - (egrep): Upgraded the DBG finder to include breakpoint. - - * post-install.rb (install_sources): Using block version of chdir. - - * lib/rubygems/remote_installer.rb - (Gem::LocalSourceInfoCache::read_cache): Fixed initialization of - cache. - - * lib/rubygems.rb: Updated version to 0.8.2. - -2004-12-04 Jim Weirich - - * lib/rubygems/remote_installer.rb - (Gem::LocalSourceInfoCache::writable_file): Now just returns the - selected cache file (which was selected based on writability). - (Gem::LocalSourceInfoCache::try_file): Added try_file to determine - if a file is a candidate for a cache file. - (Gem::LocalSourceInfoCache::select_cache_file): Added failure if - there are not valid cache file candidates. - - * lib/rubygems.rb (Gem::Exception): Renamed @@cache to - @@source_index. - (Gem::Exception::source_index): Renamed Gem.cache to - Gem.source_index (but left cache as an alias). - -2004-12-03 Jim Weirich - - * lib/rubygems/remote_installer.rb (Gem::LocalSourceInfoCache): - Added a local cache manager object to implement the read/write - policies on the system and user cache files. - (Gem::LocalSourceInfoCache::update): Added update and flush to the - caching fetcher so that it knows when it needs to update the local - cache files. - (Gem::RemoteInstaller::initialize): Switched to using a cached - fetcher in the remote installer. All the caching logic was - removed from the installer. User writable cache files are now - supported. - (Gem::RemoteInstaller::write_gem_to_file): write_gem_to_file now - will create the path if needed. - -2004-12-02 Jim Weirich - - * lib/rubygems/package.rb (TarInput::zipped_stream): To workaround - a problem with earlier than 1.2.1, we read the zipped data into a - string, and then return an IO object on that string. - (TarInput::each): Refactored getting a stream to the zipped data - into zipped_stream. - -2004-12-01 Jim Weirich - - * lib/rubygems/remote_installer.rb - (Gem::RemoteSourceFetcher::convert_spec): We now proprocess the - yaml string data to reduce it in size. This was done to - workaround a problem with large YAML files (although it is just a - temporary fix because our yaml data keeps growing and growing). - - * Rakefile: Added more targets to the clobber target. - - * test/test_remote_fetcher.rb - (TestRemoteFetcher::test_explicit_proxy): Added tests for proxy - support. - - * lib/rubygems/remote_installer.rb - (Gem::RemoteSourceFetcher::connect_to): Refactored to add proxy - support. - -2004-11-28 Chad Fowler - * lib/rubygems/loadpath_manager.rb: Added Mauricio's patch to work - around string contains null byte issue. - -2004-11-27 Jim Weirich - - * lib/rubygems/remote_installer.rb - (Gem::RemoteSourceFetcher::get_size): Switched from open-uri with - early abort to an HTTP.head call to get the size of the yaml file - on the server. - -2004-11-26 Jim Weirich - - * test/test_specification.rb - (TestDefaultSpecification::test_defaults): Added test for some - basic defaults in a gem spec. - - * test/test_remote_installer.rb (MockFetcher::source_info): Made - the fake test data more realistic. - (TestRemoteInstaller::test_source_info): Improved tests. - -2004-11-26 Jim Weirich - - * test/test_remote_installer.rb (MockFetcher): Added MockFetcher - to make testing the remote installer easier. Currently there are - two remote installer test classes. Eventually TestRemoteInstaller - will succeed RemoteInstallerTest, which is very incomplete. - - * test/test_package.rb (TC_TarReader::TC_TarInput): Made the unit - test ignore the setgid bit. The setgid bit doesn't work on my - laptop for some reason. This may be a problem with my laptop - rather than with this code. Should investigate further. - - * lib/rubygems/remote_installer.rb (Gem::RemoteSourceFetcher): - Added a Fetcher object to the remote installer to handle all the - details of getting the remote information. This allows testing - the logic of the remote installer without actually doing remote - calls. - (Gem::RemoteInstaller::sources): Renamed get_caches to - source_info. The problem is that cache is too generic and there - are actually several things that we will cache in the system. - - * lib/rubygems/cache.rb (Gem::Cache::self): Changed interface to - from_installed_gems slightly. - (Gem::Cache::self): Reordered rescue clauses so that the syntax - exception might actually be handled. - - * lib/rubygems.rb (Gem::Exception::ensure_gem_subdirectories): - Dumped the check_gem_subdirectories method to use the almost - identical ensure_gem_subdirectories method. - (Gem::Exception::ensure_gem_subdirectories): Only attempt to - create the gem subdirectories if we can actually write them. - - * bin/gem_server: Added date of last file modification to header - of /yaml. This is in preparation for using a head command with - date/time stamping in fetching the source cache. - -2004-11-25 Ryan Davis - * lib/rubygems.rb: Added GEM_SKIP functionality, which will tell - loadpath_manager not to load specific libs from gems. For - testing/ development purposes. Created by Ryan Davis. - -2004-11-24 Chad Fowler - * lib/rubygems/specification.rb: Allow multiple authors per gem. - * lib/rubygems/gem_commands.rb: command line error message if you - run 'gem install' with no args. - * lib/rubygems/loadpath_manager.rb: Fixed @specs bug as reported by - Lothar Schulz on ruby-talk. - -2004-11-07 Chad Fowler - * lib/rubygems.rb,lib/rubygems/installer.rb,lib/rubygems/cache.rb - lib/rubygems/remote_installer.rb,lib/rubygems/gem_commands.rb: - Fixes to make non-root installation work properly. Still need to - fix uninstallation. - * lib/rubygems/gem_commands.rb: Allow multiple gems/gem names on the - command line for install. - -2004-10-31 Chad Fowler - * lib/rubygems/version.rb,test/test_version_comparison.rb: Patrick May's - * post-install.rb: Patrick May's fix for rubygems lib not being found - during install. - -2004-10-29 Chad Fowler - * packages/,pkgs,install.rb: renamed "packages" to "pkgs" to avoid - * remote_installer.rb: Added user-agent reporting for remote - operations - * setup.rb,install.rb,bin/update_rubygems: removed install.rb and - added setup.rb and post-install.rb. Changed update_rubygems so that - params passed to it can be passed on to setup.rb - -2004-10-25 Jim Weirich - - * lib/rubygems/installer.rb - (Gem::Uninstaller::remove_executables): Corrected spelling of - "addtion". - -2004-10-24 Jim Weirich - - * lib/rubygems/version.rb (Gem::Version::Requirement::self): Now - properly handles arrays of version constraints. - - * lib/rubygems/loadpath_manager.rb - (Gem::LoadPathManager::Gem::Specification): Added comments - describing the fast Spec class purpose. Added to_s to - Gem::Specification (both fast and slow versions). - (Gem::LoadPathManager.paths): Returns (cached) list of gem paths. - (Gem::LoadPathManager::self): Refactored to use glob_over in - search_loadpaths and search_gempaths. - - * lib/rubygems/installer.rb: Added some requires. - - * lib/rubygems/cache.rb (Gem::Cache::refresh): Fixed refresh! to - call load_specification on the Cache class, not on itself. - - * lib/rubygems.rb (Gem::Exception::activate): added comments to - activate. Also made sure that partial name matches in the gem - cache search were avoided. - (Gem::Exception::clear_paths): Added code to clear the gem cache - when reseting the gem paths. - (Gem::Exception::require): Added a function to take a gem name and - a library file name (in that gem) and return a path to the library - in the gem. David HH was interested in this in order to speed up - some require statements under ModRuby. Eventually I hope we won't - need these special tricks. - (Gem::Exception::latest_partials): Fixed bug that assumed exactly - three digits in a version number. - - * Rakefile (egrep): Added two tasks to find all the FIXME/TODO - markers in the source code comments and to find the DBG print - lines. - -2004-10-23 Jim Weirich - - * test/test_specification.rb - (TestSimpleSpecification::test_add_bindir_to_list_of_files): - Verify that an executable doesn't need the bindir if bindir is - set. - (TestSimpleSpecification::test_no_bindir_in_list_of_files): Added - test the verify that exectuable can be written without a default - binder. - - * lib/rubygems/installer.rb - (Gem::Installer::generate_bin_scripts): Added check so that the - bindir is access only when there are actually executables to - install. Checking for an installable bindir was giving permission - errors when installing test gems. - -2004-10-21 Chad Fowler - * lib/rubygems/installer.rb: Show extension build errors during install - in addition to logging them to gem_make.out - -2004-10-02 Chad Fowler - - * lib/rubygems/validator.rb,lib/rubygems/gem_commands.rb: Added - --test option for "gem check" that runs unit tests on already- - installed gems. - -2004-09-30 Rich Kilmer - - * lib/rubygems/specification.rb - externalized the loaded_from runtime - var on specification - * lib/rubygems/cache.rb - optimized cache refresh! method and refactored - processing of files when building cache. - * lib/rubygems/loadpath_manager.rb - fixed bug in loadpath manager in - finding native extensions that have ext on os x, win32 and solaris - -2004-09-20 Chad Fowler - * lib/rubygems/gem_commands.rb: If file match during local install is - a directory, don't try to treat it erroneously as a gem (bug reported - by Rich). - * lib/rubygems.rb: Fixed small bug in #latest_load_paths - - (NOTE: It looks like 0.8.0/0.8.1 was released in this timeframe) - -2004-09-14 Chad Fowler - * lib/rubygems.rb: Fixed bug in require_gem (thanks Jamis Buck!) - that would require a gem based on an inexact search of its name - in the local cache. This caused copland-webrick to be loaded - when a request was made for "copland". - -2004-09-12 Chad Fowler - * lib/rubygems/specification.rb, test/test_specification.rb: Removed - library_stubs attribute. - -2004-09-12 Gavin Sinclair - - * scripts/specdoc.rb: Check that all attributes are documented; and - improved formatting. - * scripts/specdoc.yaml: test_suite_file -> test_files; finished - documentation. - * scripts/specdoc.data: misc changes. - -2004-09-11 Chad Fowler - - * test/test_parse_commands.rb: Fix failing unit tests due to Rich's fix from - - * lib/rubygems/specification.rb: Add bindir to executable path on file list - -2004-09-11 Rich Kilmer - - * lib/rubygems/gem_commands.rb - got rid of stub options - - * lib/rubygems/install.rb - changed output of messages so the UI would format - better - - * bin/gem_server - exit! from ^c - -2004-09-09 Chad Fowler - * lib/rubygems/loadpath_manager.rb: Small bug when gem specs have ruby - version requirements. - * lib/rubygems/specification.rb, lib/rubygems/gem_commands.rb: Fixed failing - functional test. - -2004-09-08 Chad Fowler - * install.rb: added stub removal to the install process - -2004-09-06 Chad Fowler - * test/test_package.rb: Fixed failing unit test as per Mauricio's email to - the rubygems list. - * Fixed minor issues with Windows cmd file generation. - -2004-09-06 Rich Kilmer - * lib/rubygems/remote_installer.rb - enabled caching of source caches - based on the size of the yaml.Z/yaml file. - -2004-08-29 Chad Fowler - * /lib/rubygems/gem_command.rb: small big fix for local gem installs - on Windows. - -2004-08-28 Rich Kilmer - - * /lib/rubygems/installer.rb, /lib/rubygems/doc_manager.rb, - /lib/rubygems/cmd_manager.rb - Added an exception: FilePermissionError - which checks to ensure write access to the install/uninstall/rdoc - destination directories and raises a nice error instead of the standard - one. - -2004-08-28 Rich Kilmer - - * /lib/rubygems/installer.rb - commented out stub addition and removal - -2004-08-28 Rich Kilmer - - * /lib/rubygems.rb, /lib/rubygems/loadpath_manager.rb - - this adds all the loadpath_manager stuff with the 'ultimate require hack' to - rubygems.rb. Also, require_gem methods body has been extracted into a method - Gem.activate that differs in the calling signature in that the second param is - a boolean that determines whether to autorequire or not. - -2004-08-27 Rich Kilmer - - * lib/rubygems/user_interaction - added ask_yes_no as a method - which returns true/false and formats/processes the [yn] stuff. - it also has an optional second parameter of true/false for the - default value. - - * lib/rubygems/installer.rb, lib/rubygems/remote_installer.rb, - lib/rubygems/command_manager.rb - changed all places where ask - was used with [Yn] to ask_yes_no - -2004-08-24 Gavin Sinclair - - * lib/rubygems/installer.rb: Library stubs are now installed as per - 'library_stubs' gemspec attribute. A stub is (still) also installed - for the 'autorequire' attribute. All library stub handling - refactored into two new classes: LibraryStubs and LibraryStub. - - * test/test_parse_commands.rb: as per 2004-08-17 below, the 'update' - command takes --rdoc as its default now. - -2004-08-22 Rich Kilmer - * lib/rubygems/installer.rb: fixed stub generation...i added the version - stuff that only app stubs should have...sorry! - -2004-08-17 Gavin Sinclair - - * lib/rubygems/gem_commands.rb: --rdoc is default on 'update' command, - consistent with 'install'. 'default_str' methods changed to reflect - --rdoc being default now. - -2004-08-21 Chad Fowler - * lib/rubygems/gem_commands.rb: Proper checking for gems in local - directory on local install. rescue Gem::LoadError to avoid ugly - backtrace. - * lib/rubygems/installer.rb: created Gem::LoadError to hold extra - metadata. Setting up for proper dependency installation on local - installs. - -2004-08-20 Chad Fowler - - * lib/rubygems/specification.rb: Fixed small bug in the previous spec - change commit. - - * lib/rubygems/cache.rb: Prevent catastrophic failure if a gemspec is - corrupted. - - * lib/rubygems/installer.rb: Fixed (in not a great way) a bug that would - cause a zero-length spec file to be written to the gem specifications - directory. - -2004-08-19 Chad Fowler - - * lib/rubygems/specification.rb: #files auto-includes any #extensions, - #extra_rdoc_files, #test_files, etc. that weren't explicitly added - to the file list. - -2004-08-18 Chad Fowler - - * lib/rubygems/specification.rb: One more bug with #test_files. - Default value of [] wasn't set, resulting in an attempt to call - #empty? on nil. - - * lib/rubygems/gem_commands.rb: Unit tests appear to be working now. - Still more testing to do. - - * lib/rubygems/remote_installer.rb, lib/rubygems/installer.rb: Fixed - minor bugs in default selections for questions asked during - installation and uninstallation - -2004-08-17 Gavin Sinclair - - * lib/rubygems/specification.rb: - - #test_suite_file and #test_files now work on older gems. - - Added Specification.from_yaml for loading YAML gemspecs - - #to_ruby doesn't emit 'specification_version' - - * lib/rubygems/gem_commands.rb: Updated test-on-install code to use - Specification#test_files instead of #unit_test_suite. - - * lib/rubygems/old_format.rb: Use Specification.from_yaml - * lib/rubygems/package.rb: Ditto - -2004-08-17 Gavin Sinclair - - * lib/rubygems/command.rb: --debug option to turn on $DEBUG - * lib/rubygems/config_file.rb: ditto - -2004-08-11 Rich Kilmer - * lib/rubygems/installer.rb: The application stub now defaults to - the latest version of the library, and optionally allows an initial - parameter conforming to _VERSION_ to be passed to select a prior - version of the library (this initial parameter, if present, is shifted - off of ARGV). This change was re-added...I erased it somehow :( - -2004-08-11 Gavin Sinclair - - * lib/rubygems/gem_commands.rb: - - 'gem spec X' displays spec for _latest_ version of X. Added - '--all' option if you want to see all versions. - - RDocCommand code cleanup and slight change: document _all_ - versions of the gem by default, not just the first. - - * lib/rubygems/doc_manager.rb: removed 'kilmer' default template - option and obsolete error message. - -2004-08-12 Chad Fowler - * Added "gem rdoc" command for generating docs for already-installed - gems - -2004-08-11 Rich Kilmer - * bin/generate_yaml_index: updated to work with new gem format (and use the Gem::Format - class to read). Will deploy after testing on RubyForge. - * lib/rubygems/gem_commands.rb: generate rdoc by default on installs (I think this is - just good practice. - * lib/rubygems/remote_install.rb: raise an exception if dependent gems cannot be found - on remote_install - -2004-08-11 Chad Fowler - * lib/rubygems/gem_commands.rb: query is now case insensitive (as it used to be) - * lib/rubygems/installer.rb: gem_make.out wasn't being written when an extension failed to compile. - -2004-08-11 Rich Kilmer - - * removed String.to_requirement...we should not modify - base classes in Ruby! modified to get rid of said to_requirement - with Gem::Version::Requirement.create(obj) - - * specification.rb - fixed constructor bug of version requirement... - it now defaults to Requirement.default - -2004-08-11 Chad Fowler - - * One more specification.rb bug fixed. - -2004-08-11 Gavin Sinclair - - * lib/rubygems/specification.rb: - - Added convenience class methods: attribute_names, - attribute_defaults, default_value, required_attributes, and - required_attribute?. - - - IMPORTANT: attribute readers now use lazy initialization, just - like some of them did before the 2004-08-01 change. This was done - to fix the breakage when loading older gemspecs. - - - IMPORTANT: replaced instance variable access with attribute reader - method calls in many cases. This is in line with the above change. - - - Good documentation for the "attribute" method. - - - Renamed _copy -> _copy_of. - - * lib/rubygems/cache.rb: - - Some fairly shallow changes. Exception handling needs improvement. - - * lib/rubygems/version.rb: - - (Version.create) new method (for convenience) - - (Version::Requirement.create) new method (for convenience) - - (Version::Requirement.default) new method (for consistency) - - * test/test_specification.rb: test attribute_names instead of - attributes. Other "class convenience" methods remain to be tested - at this stage. Also added test classes for legacy gemspecs. - - * test/data/legacy/keyedlist-0.4.0.ruby: added. - * test/data/legacy/keyedlist-0.4.0.yaml: added. - -2004-08-06 Gavin Sinclair - - * lib/rubygems/specification.rb: - - Added convenience class methods: attribute_names, - attribute_defaults, default_value, required_attributes, and - required_attribute?. - - - IMPORTANT: attribute readers now use lazy initialization, just - like some of them did before the 2004-08-01 change. This was done - to fix the breakage when loading older gemspecs. - - - Good documentation for the "attribute" method. - - - Renamed _copy -> _copy_of. - - * test/test_specification.rb: test attribute_names instead of - attributes. Other "class convenience" methods remain to be tested - at this stage. - -2004-08-01 Gavin Sinclair - - * lib/rubygems/specification.rb: - - (Re)defined class methods: attribute, attributes, - required_attribute, read_only, overwrite_accessor. @@attributes - contains a list of attribute names and default values. This - allows higher-level specification of gemspec attributes, and the - handling of them in a DRY fashion. - - - to_yaml_properties now includes all properties, to ensure - correct deserialization of a Gem::Specification object. - - - #to_ruby and #to_yaml_properties rewritten to use @@attributes - - - Introduced 'specification_version' attribute and three constants: - NONEXISTENT_SPECIFICATION_VERSION, CURRENT_SPECIFICATION_VERSION, and - SPECIFICATION_VERSION_HISTORY. This allows us to track changes to - the spec format. - - - Refactored several "helper" methods, using the new class method - 'attribute_alias_singular', which provides a "singular" alias for - a "plural" attribute (e.g. require_path and require_paths). - - - All gemspec attributes now defined in a uniform fashion, which - implies that they all have valid instance variables on - initialization. Previously, some attributes were lazily - initialized. - - - Introduced attribute 'library_stubs', to allow the specification - of several stub files. (That feature not implemented, though.) - - - Introduced attribute 'test_files' and deprecated 'test_suite_file'. - - - Provided #warn_deprecated stub of a method, but don't know what to - do with it. - - - Deprecated #has_test_suite? in favour of (new) #has_unit_tests? - - - Used overwrite_accessor to provide special behaviour for the - setting of some attributes. - - - The 'date' attribute is now a Date object. We don't need high - resolution, and Time objects, being system-dependent, are not nice - to deal with. - - - Various code style changes. - - - Summary: uniform treatment of gemspec attributes; reduced code by - refactoring; 'test_suite_file' deprecated for 'test_files'; - 'library_stubs' introduced; spec versioning introduced. - - * lib/rubygems/version.rb: (Dependency) added #to_s, #==, and an - alias (requirements_list -> requirement_list). - - * test/test_specification.rb: several new tests: _singular_attributes, - _deprecated_attributes, _defaults, _to_{yaml,ruby}_and_back, - _directly_setting_dependencies_doesnt_work, and more. Plus a new - class to give Specification a more thorough workout (TestSpecificationComplex). - - * scripts/runtest.rb: require 'pp' so it's always available in unit - tests. - -2004-07-30 Rich Kilmer - - * lib/rubygems/installer.rb The application stub now defaults - to the latest version of the library, and optionally allows - an initial parameter conforming to _VERSION_ to be passed - to select a prior version of the library (this initial - parameter, if present, is shifted off of ARGV). - - * lib/rubygems/version.rb correct? is now a class method on - Version enabling Gem::Version.correct?(...) - - * lib/rubygems/install.rb make it so uninstalling a gem will - not remove executables if another version of that gem is - installed and needs those executables - -2004-07-26 Jim Weirich - - * lib/rubygems.rb (Gem::Exception::latest_load_paths): Added - latest_load_paths and refactored all_load_paths to use common - code. - -2004-07-25 Rich Kilmer - * fixed bug in using --source in command.rb (removed short -s version) - - * changed spec to use the RUBY_PLATFORM for Platform::CURRENT - - * added ability to choose from list of available gems on remote install - if (1) some of the gems are binary and (2) there are move than one. - If the gems are all source gems, the latest is selected. - -2004-07-25 Jim Weirich - - * lib/rubygems.rb (Gem::Exception::all_load_paths): Added - all_load_paths utility function. - - * bin/update_rubygems: Added a command to update the gem - installation based on a update gem. - - * Rakefile: Pulled package file list out into a constant so it can - be reused between the package command and the gem package command. - Added a gem package target to support rubygems updates. - -2004-07-22 Gavin Sinclair - - * lib/rubygems/version.rb: - * (Requirement#initialize) initialize @version to avoid warning - * (Dependency#initialize) initialize @version_requirement to avoid - warning - -2004-07-19 Chad Fowler - * install.rb: Shebang line should point to the ruby version used during - installation. - -2004-07-19 Assaph Mehr - * lib/rubygems/command.rb, packages/sources/lib/sources.rb: Added - command-line-configurable sources. - -2004-07-18 Chad Fowler - * lib/rubygems/validator.rb: Fixed a bug that would cause "managed" - files to appear to be unmanaged due to differences in how the paths - were formatted. - -2004-07-17 Gavin Sinclair - - * lib/rubygems/gem_commands.rb (InstallCommand#execute): removed clear - bug (name -> gem.name). - -2004-07-14 Rich Kilmer - * added old_format.rb which is used in the (hack) in format.rb - to detect the older version of a gem, and if present, switches - to that class instead. - * fixed the ARGV passing in bin/gem to ingore args past -- which - are used for passing params to source gems (extconf.rb) - -2004-07-13 Chad Fowler - * lib/rubygems/installer.rb, lib/rubygems/package.rb, - lib/rubygems/format.rb, test/test_package.rb: Added Mauricio - Fernandez's patch to replace old gem format with tar.gz format. - Fixed some failing unit tests that resulted. Still a couple left. - * lib/rubygems.rb: Fixed a bug introduced by the previous patch. - -2004-07-13 Gavin Sinclair - - * lib/rubygems.rb: (#require_gem) added the ability to do - "require_gem 'rake/packagetask'", for instance, which is a - shortcut for "require_gem 'rake'; require 'rake/packagetask'". - -2004-07-13 Gavin Sinclair - - * lib/rubygems/gem_commands.rb: refactored --version option - in all cases to the new VersionOption module. - -2004-07-13 Gavin Sinclair - - * lib/rubygems/cmd_manager.rb: added 'unpack' command. - - * lib/rubygems/gem_commands.rb (UnpackCommand): added. - - * lib/rubygems/installer.rb (Installer#unpack): added. - -2004-07-09 Jim Weirich - - * lib/rubygems/user_interaction.rb (Gem::StreamUI::ask and - Gem::StreamUI::choose_from_list): Added flush before each gets. - -2004-07-05 Gavin Sinclair - - * lib/rubygems/command.rb (Gem::Command#defaults_str): added. - - * lib/rubygems/command.rb (Gem::Command#create_option_parser): - Defaults for the options are included in the parser output. - - * lib/rubygems/gem_commands.rb: all commands which have options - and defaults now have #defaults_str implemented. - -2004-07-05 Jim Weirich - - * lib/rubygems/command.rb (Gem::Command#create_option_parser): - Make the argument and option sections optional. They are only - printed if there are options or arguments defined. - -2004-07-05 Gavin Sinclair - - * lib/rubygems/gem_commands.rb: - - scrubbed up the 'help' command a bit, removing its options - - added information to 'help commands' - -2004-07-04 Gavin Sinclair - - * lib/rubygems/gem_commands.rb: - - modified generic help and examples - - improved 'list' and 'search' help, and fixed bug in 'search' - - * lib/rubygems/cmd_manager.rb: - - explicit support for top-level commands --help and --version - - no more support for --examples and --commands - -2004-07-04 Gavin Sinclair - - * lib/rubygems/gem_commands.rb: - - added 'list' and 'search' commands ('list' is no longer an alias - for 'query') - - modified return value from all 'arguments' methods (see command.rb) - - * lib/rubygems/cmd_manager.rb: added 'search' command. - - * lib/rubygems/command.rb: - (Command#create_option_parser): enhanced the option parser for 'help' - display - (Command#remove_option): added (to support 'list' and 'search') - - * Rakefile: added 'gem' target. Runs "local" (not installed) command - and libraries. - -2004-07-04 Gavin Sinclair - - * Rakefile: added 'install' target. - - * lib/rubygems/cmd_manager.rb: code formatting. - - * lib/rubygems/gem_commands.rb: - - refactored common install and update options into new module - InstallUpdateOptions - . consolidated option pairs (e.g. --test & --no-test ==> --[no-]test) - . --gen-rdoc is now --rdoc - - (UninstallCommand) corrected typo - - (InstallCommand) corrected output with local install - - * test/test_parse_commands.rb: :%s/--gen-rdoc/--rdoc/g - -2004-07-03 Jim Weirich - - * lib/rubygems/gem_commands.rb (Gem::InstallCommand::initialize): - Added --no-gen-rdoc and --no-test to allow the user to override - .gemrc default options. - - * lib/rubygems/doc_manager.rb (Gem::DocManager::generate_rdoc): - Concatenate the local rdoc options to the end of the spec's rdoc - options. - (Gem::DocManager::configured_args): Added configured_args as a - place to store local rdoc options. - - * lib/rubygems/gem_runner.rb (Gem::GemRunner::do_configuration): - Configuration handled in do_configuration now. - (Gem::GemRunner::do_configuration): Set the local rdoc - configuration from the config file. - - * lib/rubygems/command.rb (Gem::Command::handles): Added a - handles? method to Command so that we can detect which extra - arguments can be used with a command. - (Gem::Command::add_extra_args): New method to add the config - file's extra arguments to the front of the argument list. - (Gem::Command::extra_args): Added extra_args to Command class to - hold the extra args discovered in the config file. - - * Rakefile: Added TEST=filename option to all the test targets. - - * test/functional.rb (FunctionalTest::test_gemrc): Added - functional test for gemrc. - - * scripts/gemdoc.data: Added an example to the specification command. - - * lib/rubygems.rb (Gem::Exception::manage_gems): Added gem_runner - and config_file to manage_gems. - (Gem::Exception::use_paths): use_paths now accepts (and ignores) - nil parameters. - - * bin/gem: Make Gem::GemRunner the top level object. It now - creates and calls the CommandManager /after/ the arguments are - processed. - - * Rakefile: Added test/data/gemhome to clobber list. - -2004-07-01 Jim Weirich - - * test/test_specification.rb - (TestSpecification::test_rdoc_files_included): Test for rdoc files - included in file list. Test for redundent file removal. - - * lib/rubygems/specification.rb (Gem::Specification::validate): - Added gem version to validation requirement. Added normalize to - remove redundent files in lists. - - * lib/rubygems/gem_commands.rb (Gem::InfoCommand::usage): Added - usage and arguments methods for InfoCommand. - (Gem::SpecificationCommand::usage): Fixed several usage comments. - -2004-06-30 Jim Weirich - - * lib/rubygems/gem_commands.rb (Gem::InstallCommand::usage): - Upcased the comment on the usage statement (and corresponding - option). This makes the variable part of the command - (e.g. GEMNAME) stand out from the static parts. - - * lib/rubygems/cmd_manager.rb (Gem::CommandManager::process_args): - Downcased commands before searching (allows upper case or mixed - case for commands on command line). - - * install.rb (install_rb): Fixed bug where the installer falsely - triggered the old repository upgrade when the directory part of - the file contained the matching "-digits." pattern. Now the - pattern must be in the file's base name. - -2004-06-26 Gavin Sinclair - - * scripts/specdoc.rb: added (to generate gem specificiation document) - * scripts/specdoc.data: added (supports specdoc.rb) - * scripts/specdoc.yaml: added (supports specdoc.rb) - -2004-06-27 Jim Weirich - - * scripts/gemdoc.data Removed extraneous marker. - - * lib/rubygems/specification.rb - (Gem::Specification::satisfies_requirement): HA! Caught another - version_requirement vs version_requirements error. (I really - regret the decision to change that name.) - - * lib/rubygems/installer.rb (Gem::Uninstaller::has_dependents): - Changed call to alert to alert_warning. - - * lib/rubygems/gem_commands.rb (Gem::UninstallCommand::execute): - Again, remove local error handling to allow the error to perculate - up the chain to the top level. - - * lib/rubygems/doc_manager.rb (Gem::DocManager::generate_rdoc): - Removed one level of exception handling. Only catching RDocErrors - at the outermost level. And instead of reporting the error and - swallowing it, I convert it to a Gem::DocumentError (with the same - error message). This is for better error handling. - - * lib/rubygems/command.rb (Gem::Command::handle_options): Removed - exception handling from handle_options. This allows errors to be - handled at the top level. Makes for a more consistent error - interface. - - * lib/rubygems/doc_manager.rb (Gem::DocumentError): Added - DocumentError to wrap RDocErrors (which derive from Exception - ... yuck). - - * lib/rubygems/cmd_manager.rb (Gem::RemoteError): RemoteError and - LocalInstallationError are now Gem::Exceptions (rather than - StandardErrors). - - * lib/rubygems.rb (Gem::Exception): Changed base of Gem::Exception - to RuntimeError (was ::Exception). Apps using gem as a library - would have to catch Gem::Exceptions explicitly (yuck), or catch - Exceptions generically. Catching Exceptions will catch - EVERYTHING, including things like SystemExit. By makeing - Gem::Exception a RuntimeError, apps can catch RuntimeError or even - StandardError. - -2004-06-26 Jim Weirich - - * test/functional.rb (FunctionalTest::test_all_command_helps): - Added functional test to show all commands have usage messaegs. - - * lib/rubygems/gem_commands.rb (Gem::HelpCommand::execute): Added - version option to help (gem help version). - (Gem): Cleaned up the help text. Dropped unneeded verbage. - - * lib/rubygems/cmd_manager.rb - (Gem::CommandManager::find_command_possibilities): Added - find_command_possibilities to help the Help command look for - commands. - - * lib/rubygems/installer.rb (Gem::Uninstaller::uninstall): Fixed - null pointer bug where a list was destroyed in a method. - - * lib/rubygems/gem_commands.rb (Gem::BuildCommand::load_gemspecs): - yaml gemspec files are now accepted by the build command. - - * lib/rubygems/command.rb (Gem::Command::parser): Created an - on-demand option parser for all commands. - (Gem::Command::handle_options): Command line option hash is now - and instance variable with a reader. - - * Rakefile: Linked package version to the value in the rubygems.rb - file. The gem env command now shows both gem version (e.g. 0.6) - and the package version (e.g. 0.6.1). - -2004-06-25 Jim Weirich - - * lib/rubygems/gem_commands.rb (Gem::InfoCommand): Dropped the - version command (its available via gem env). Added a gem info - command to extract the yaml from a gemfile. - (Gem::LocalRemoteOptions): Refactored the local/remote options - (adding and testing) into a mixin module. - - * test/test_version_comparison.rb - (TestDependencies::test_normalization): Added some tests for the - normalization issues mentions below. - - * lib/rubygems/version.rb (Gem::Dependency::normalize): Old gems - have requirements and dependencies incoded in the Yaml spec in an - out of date format. When loaded, they have incorrect instance - variables for modern objects. I added a normalize call to handle - transforming out dated objects in to modern objects. (Remember - this next time we change the data structure of something in the - spec file.) - (Gem::Version::Requirement::parse): Requirements are comparable - now, just so that we can test them with asserts. - - * lib/rubygems/remote_installer.rb - (Gem::RemoteInstaller::find_dependencies_not_installed): Fixed - recursive call to require_gem to properly pass dependency - information. - - * lib/rubygems/installer.rb (Gem::Uninstaller::has_dependents): - Fixed reference to version_requirement (needs to be plural). - - * lib/rubygems/command.rb (Gem::Command::invoke): Command now - handles it own help messages. Commands no longer have to return - true/false to trigger help messages. - - * lib/rubygems/cmd_manager.rb (Gem::CommandManager::process_args): - Moved help handling into the help command. - - * lib/rubygems/gem_commands.rb (Gem::HelpCommand): Renamed the - base command to HelpCommand and made it handle a lot of the help - options. Still need work on individual command helps. - - * test/functional.rb (FunctionalTest::test_env_version): Added a - bunch of new functional tests for the environment command. - - * lib/rubygems/gem_commands.rb (Gem::InstallCommand::execute): - Made multiple gem names an error for now. Should look at later. - - * lib/rubygems/cmd_manager.rb (Gem::ListCommand): Added list as an - alias to query. - (Gem::UpdateCommand::initialize): Corrected spelling of install - (intall) in several places. - - * bin/gem_server: Added Gem.manage_gems to the gem_server to fix - missing requirements. - - * lib/rubygems/cmd_manager.rb (Gem::InstallCommand::initialize): - Added missing --both option to install. - - * test/test_command.rb - (TestCommand::test_invode_with_bad_options): Catch the termination - request. - - * test/mockgemui.rb (MockGemUi::terminate_interaction): Make the - mock UI throw an exception when a termination is requested. This - makes sure that we don't miss accidental terminations. - - * lib/rubygems/cmd_manager.rb (Gem::CommandManager::find_command): - Added find_command to handle best matching command names. - - * test/functional.rb (FunctionalTest::test_build): Updated - functional tests to use the new command structure. - - * lib/rubygems/version.rb (Gem::Version::Requirement): Changed the - pessimistic version comparison operator to "~>". I like to think - of it as "approximately greater than". (It was ">*"). - - * bin/gem: Moved gem2 into the standard gem script location. It - is now stable enough to use as the standard command. - - * lib/rubygems/cmd_manager.rb (Gem::CommandManager::run): Added - run method to trap errors while running commands. Makes for - prettier output. - (Gem::CommandManager): Move *all* commands to their own classes. - Simplified CommandManager. Lowered the coupling between - CommandManager and the Commands (the commands don't even need to - know about the manager anymore). CommandManager maybe created - with "new" for testing (the script will continue to use - "instance"). - (Gem::RubyGemsInfoCommand): New command. - (Gem::VersionCommand): New command. - -2004-06-24 Jim Weirich - - * lib/rubygems/user_interaction.rb (Gem::UserInteraction): - Significantly rewrote the whole user interaction scheme. We are - now using an UI object that responds to the standard list of UI - commands (e.g. say, alert, ask). The UserInteraction module - defines all the interaction methods to be forwarded to the default - UI objects. The "ui" method returns that default object (and you - can use self.ui=(new_ui) to change it). Also the use_ui(new_ui) { - } command is convienent for switching the UI object for a short - period of time. - -2004-06-18 Rich Kilmer - * broke test_cmd_manager.rb into test_parse_commands and - test_process_commands to test the parsing of command line options - and the funtionality, respectively. - -2004-06-18 Rich Kilmer - * added new unit test file: test/test_cmd_manager.rb to test the - command manager classes. this is just the first few tests which - will be expanded to a full test suite. - -2004-06-17 Chad FOwler - - * lib/rubygems/installer.rb: Fixed bug in windows batch file generation - which was causing file not found errors. - * lib/rubygems/installer.rb: Uninstall now removes scripts and batch - * lib/rubygems/specification.rb: Fixed install bug. Thanks to Mark - Sparshatt for the fix (via the rubyforge bug tracker). - -2004-06-17 Jim Weirich - - * lib/rubygems/doc_manager.rb (Gem::DocManager::generate_rdoc): - Changed rdoc generation to do a chdir into the base source - directory and then to use a relative path for all the source - files. This makes the generated RDOC html look better and may fix - the windows drive/rdoc bug as a side effect. - -2004-06-17 Rich Kilmer - * Added ability to capture the UserInteraction with: - c = Gem::UserInteraction.capture - and then you can override specific methods like 'say': - c.on_say {|statement| puts "you said: #{statement}"} - -2004-06-15 Rich Kilmer - * Added refactored command handling in rubygems/cmd_manager.rb and a - (temporary) bin/gem2 command file to test things out. Once we feel - comfortable, we can replace gem with gem2. - -2004-06-10 Rich Kilmer - * Isolated all user interaction to pass through module methods on a new - Gem::UserInteraction module. Those methods will be the method of abstracting - the interaction of RubyGems for use in a GUI-based solution. - -2004-06-10 Rich Kilmer - * require 'rubygems' now minimally requires only the files needed - for runtime access to gems...not management of gems. To manage - gems you now additionally need to execute Gem::manage_gems prior - to using the builder/installer/etc. This makes gemspecs not - backward compatible unless they add that line to the gemspec - after the require 'rubygems' line. - -2004-06-10 Gavin Sinclair - * bin/gem: --upgrade-all was broken, probably as a result of the - search changes listed below. - -2004-06-09 Chad Fowler - * lib/rubygems/remote_install.rb: delegate search functionality to - Cache class, bringing remote and local search and list together into - one piece of code. - * bin/gem, lib/rubygems/validator.rb: move all STDIO work to bin/gem. - Validator.alien now returns a hash of ErrorData objects. - * bin/gem, lib/rubygems/installer.rb: move most of the STDIO stuff to - bin/gem, communicating via exceptions in this case. - -2004-06-08 Rich Kilmer - * Fixed the drive problem on win32 (hopefully) so multiple drives - should now work. Its still a hack until rdoc is fixed. - -2004-06-08 Chad Fowler - * Fixed bug caused by method change on Version::Requirement - -2004-06-08 Rich Kilmer - * fixed bug in doc_manager.rb whereby the extra_rdoc_files should - be appended to the list of directories prior to prepending the - full path. - -2004-06-08 Gavin Sinclair - * bin/gem_server: List installed gems in [name,version] order. - -2004-06-08 Gavin Sinclair - * lib/rubygems/installer.rb: don't warn about not being able to - install a library stub if a library stub is already installed. - Still warn if it's not a library stub that's there already. - -2004-06-08 Gavin Sinclair - * bin/gem: renamed --upgrade-dist to --upgrade--all and fixed bug. - * lib/rubygems/installer.rb: fixed bug with Ruby version assertion. - -2004-06-07 Chad Fowler - * lib/rubygems/remote_installer.rb, lib/rubygems/version.rb: Fixed old - dependency on #version method for Gem::Version::Requirement - * bin/gem: new --upgrade-dist option allows one to upgrade every - installed gem - * lib/rubygems/specification.rb,lib/rubygems/installer.rb: new - #required_ruby_version attribute added to gem specification for specifying a - dependency on which version of ruby the gem needs. Format it accepts is - the same as the Gem::Version::Requirement format. - -2004-06-06 Chad Fowler - * bin/gem: install_stub is once again the default due to requests. - -2004-06-04 Chad Fowler - * lib/rubygems/specification.rb, lib/rubygems/doc_manager.rb: - Allow arbitrary files to be added for rdoc to run over them (as per - Jim's request). - -2004-06-04 Chad Fowler - * bin/gem: Reformatted --search and --list output such that - multiple versions of a gem are compressed into a single entry - (with version numbers in parentheses) - -2004-05-31 Jim Weirich - - * lib/rubygems/version.rb (Gem::Dependency): Dependency attribute - renamed to version_requirements (made plural). - (Gem::Version::bump): Added bump to implement pessimistic - operator. - (Gem::Version::Requirement): Added pessimistic operator to list of - operators. Operators now implemented using lambda. - - * lib/rubygems.rb (Kernel::require_gem): require_gem now takes an - array of requirement strings. - - * lib/rubygems/version.rb (Gem::Version::Requirement::initialize): - Simplified initialization by making parse a bit smarter. - (Gem::Version::Requirement::satisfied_by): Simplified by using - all? - (Gem::Version::Requirement::satisfy): Added explicit one - requirement satisfy test. - (Gem::Version::Requirement::parse): parse now returns a two - element string array (operator and version string). We don't - bother converting to an integer array during parsing. - -2004-05-31 18:38 chadfowler - - * gemspec now supports #rdoc_options, to which you can append - strings that will be passed to rdoc as additional options. - -2004-05-08 21:57 chadfowler - - * Using Gem::RubyGemsVersion to match the release number. If we - need to use this as an internal version format specifier in the - future, we can use the Gem::Version semantics. - -2004-05-30 14:33 gsinclair - - * bin/gem: Split --help into --help (basic), --help-options (what - --help used to be), and --help-examples. - -2004-04-30 15:57 chadfowler - - * bin/gem: --install-stub is no longer the default ;) - -2004-04-30 15:51 chadfowler - - * lib/rubygems/installer.rb: Rich Kilmer (who kicks butt) figured - out how to fix the library stub stuff. - -2004-04-29 19:12 chadfowler - - * lib/rubygems/doc_manager.rb: Dick Davies fixed a bug in the doc - generator. - -2004-04-29 13:41 gsinclair - - * lib/rubygems/installer.rb: Added skeleton code and comments to - uninstall stub apps and libs - -2004-04-29 12:20 gsinclair - - * install.rb: Don't install library stub for 'sources' - -2004-04-29 12:20 gsinclair - - * lib/rubygems/installer.rb: Improvements to library stub - installation: * don't overwrite existing file (emit warning) * - nice warning if there's a permission problem * observe - --[no-]install-stub flag (rather, observe the argument to - #install) - -2004-04-29 12:16 gsinclair - - * bin/gem: --install-stub is now the default - -2004-04-26 20:20 chadfowler - - * test/test_remote_installer.rb: Cleaning up after Gavin and his - test-breaking self. ;) - -2004-04-26 12:06 gsinclair - - * bin/gem, lib/rubygems/installer.rb, - lib/rubygems/remote_installer.rb: Installing a gem now causes a - library stub to be installed as well, allowing you to require - 'package' without knowing it's a gem. - -2004-04-25 23:18 chadfowler - - * lib/rubygems/: installer.rb, specification.rb: Prompt user if - trying to uninstall a gem that other gems *may* depend on. - -2004-04-25 09:27 chadfowler - - * test/test_remote_installer.rb: Changed expected test results to - match new (old) gem naming scheme--"ruby" doesn't appear as a - platform in the gem name. - -2004-04-25 05:50 gsinclair - - * bin/gem: Changed @directory -> @install_dir for clarity - -2004-04-25 05:47 gsinclair - - * bin/gem: Improved display of gems, platform-wise - -2004-04-25 05:46 gsinclair - - * lib/rubygems/specification.rb: Added documentation - -2004-04-25 04:17 jimweirich - - * test/functional.rb: Fixed functional test to properly name a Ruby - platform gem. - -2004-04-25 04:17 jimweirich - - * packages/sources/.cvsignore, test/data/one/.cvsignore: Ignore the - proper gem name. - -2004-04-25 04:17 jimweirich - - * lib/rubygems/specification.rb: Undefined several attributes that - were redefined to avoid warnings. - -2004-04-25 04:17 jimweirich - - * lib/rubygems.rb: Need to initialize @gem_home and @gem_path with - ||= to avoid warning. - -2004-04-25 03:40 gsinclair - - * lib/rubygems.rb, test/test_gempaths.rb: RUBY_GEMS -> GEM_PATH - (environment variable) - -2004-04-25 03:33 gsinclair - - * lib/rubygems/specification.rb: Pretty-print the specification - -2004-04-25 03:18 gsinclair - - * lib/rubygems/specification.rb: Handle platform in a (hopefully) - consistent manner - -2004-04-25 03:16 gsinclair - - * install.rb: Use return value from Builder#build to locate gem - file - -2004-04-25 03:09 gsinclair - - * lib/rubygems/builder.rb: Return file name from #build - -2004-04-25 02:32 gsinclair - - * lib/rubygems/specification.rb: Platform goes at the *end* of the - full name now. - -2004-04-22 06:19 chadfowler - - * test/test_remote_installer.rb: Fixed test to reflect fewer cache - sources :( - -2004-04-21 17:19 rich - - * lib/rubygems/remote_installer.rb: added support to download the - yaml index as a .Z (zlib compressed) file if it exists, then move - on to the plain yaml file if it does not - -2004-04-20 20:23 chadfowler - - * examples/application/an-app.gemspec, lib/rubygems/format.rb, - packages/sources/lib/sources.rb: Committed Dick Davies' patch to - fix broken tests. - -2004-04-18 01:51 gsinclair - - * bin/gem, lib/rubygems/doc_manager.rb: RDoc generation observes - 'rdoc' config file value - -2004-04-17 12:15 gsinclair - - * bin/gem: Improved 'build' error output - -2004-04-17 12:12 gsinclair - - * lib/: rubygems.rb, rubygems/remote_installer.rb, - rubygems/specification.rb, rubygems/validator.rb: All - gems-related exceptions now extend Gem::Exception - -2004-04-17 12:11 gsinclair - - * lib/rubygems/specification.rb: Improved handling of summary and - decription strings - convert to single line - -2004-04-17 01:09 gsinclair - - * bin/gem: Prevent remote install attempt if local install was - successful - -2004-04-17 00:49 gsinclair - - * lib/rubygems/builder.rb: Better formatted the output code - -2004-04-16 21:31 gsinclair - - * lib/rubygems/remote_installer.rb: Stoopid coding error (thanks - Kent Sibilev) - -2004-04-16 00:00 rich - - * lib/rubygems/installer.rb: added code to optionally use nmake - instead of make on win32 systems - -2004-04-15 20:12 gsinclair - - * bin/gem, lib/rubygems/remote_installer.rb: Clarified proxy - handling and interface: --[no-]http-proxy [URL] - -2004-04-13 00:16 jimweirich - - * bin/gem, test/bogussources.rb, test/functional.rb: Oops, missed - an instance of GEM_PATH in the gem binary. - -2004-04-12 21:28 jimweirich - - * lib/rubygems/cache.rb: Oops. Missed a GEM_PATH. - -2004-04-12 21:11 jimweirich - - * test/test_remote_installer.rb: removed setting of environment - variable for now. - -2004-04-12 21:09 jimweirich - - * Rakefile, lib/rubygems.rb, lib/rubygems/cache.rb, - lib/rubygems/installer.rb, packages/sources/.cvsignore, - scripts/runtest.rb, test/.cvsignore, test/bogussources.rb, - test/test_format.rb, test/test_gempaths.rb, - test/test_remote_installer.rb, test/test_validator.rb: Added - test/temp to the clobber list. Broke out tests into inline to - avoid test dependencies on rubygem. - -2004-04-12 07:52 chadfowler - - * lib/: rubygems.rb, rubygems/installer.rb, - rubygems/remote_installer.rb: Cleaning up output strings wrt - formating of "gem (version)". - -2004-04-12 07:41 chadfowler - - * lib/rubygems/installer.rb: Gavin Sinclair's uninstall bug. - -2004-04-11 15:26 jimweirich - - * test/data/one/: .cvsignore, one-ruby-0.0.1.gem: removed - one-ruby*.gem from source control. This gem is automatically - generated in testing. - -2004-04-11 10:50 chadfowler - - * bin/gem: Gavin Sinclair's test code enhancements - -2004-04-11 07:50 chadfowler - - * bin/gem, lib/rubygems/installer.rb, - lib/rubygems/remote_installer.rb, lib/rubygems/specification.rb, - test/insure_session.rb, test/test_remote_installer.rb, - test/data/one/one-ruby-0.0.1.gem: Gavin Sinclair patches to make - installer return types less ambiguous. - -2004-04-09 10:29 chadfowler - - * lib/rubygems/installer.rb, test/data/one/one-ruby-0.0.1.gem: gem - -u input validation patch by Ville Aine - -2004-04-07 07:49 chadfowler - - * bin/gem, lib/rubygems/cache.rb, test/data/one/one-ruby-0.0.1.gem: - Finally have passing tests. - -2004-04-07 07:24 chadfowler - - * lib/rubygems/remote_installer.rb, - test/data/one/one-ruby-0.0.1.gem: Allow default option to work on - remote dependency prompt. - -2004-04-07 07:05 chadfowler - - * lib/rubygems/remote_installer.rb, test/test_remote_installer.rb, - test/data/one/one-ruby-0.0.1.gem: Applied George Marrows' patch - to remote_install - -2004-04-07 06:23 chadfowler - - * bin/gem, test/data/one/one-ruby-0.0.1.gem: No longer "seeing" - double on remote searches - -2004-04-05 07:39 chadfowler - - * Rakefile, test/test_remote_installer.rb, - test/data/one/one-ruby-0.0.1.gem: remote_installer tests aren't - completely hosed anymore. - -2004-04-05 06:16 chadfowler - - * Rakefile, test/data/one/one-ruby-0.0.1.gem: Rake target for - running all tests (unit + functional) "alltests" - -2004-04-05 00:48 jimweirich - - * test/: insure_session.rb, data/one/README.one, - data/one/one-ruby-0.0.1.gem, data/one/one.gemspec, - data/one/lib/one.rb: added for functional tests - -2004-04-05 00:48 jimweirich - - * test/functional.rb: Moved session gem detection to insure_session - file. Modified functional tests to use gem command. Removed - some directory stuff because rake guarantees the starting - directory. Added test_info functional test. Added test_build - functional test. Added assert status. - -2004-04-05 00:48 jimweirich - - * lib/rubygems/remote_installer.rb: Changed exceptions to inherit - from RunTimeError - -2004-04-05 00:48 jimweirich - - * bin/gem: Changed Installer to RemoteInstaller in rubygems-info. - -2004-04-05 00:48 jimweirich - - * Rakefile: Added generated test gem to clobber list. Added - functional test target to rakefile. - -2004-04-04 21:17 chadfowler - - * packages/sources/lib/sources.rb: Added gems mirror at - http://gems.chadfowler.com - -2004-04-04 20:51 chadfowler - - * bin/gem, lib/rubygems/remote_installer.rb, test/functional.rb: - More improved error messages (don't show stack trace when using - bin/gem) - -2004-04-04 20:43 chadfowler - - * lib/rubygems/cache.rb: Only read specs that end in "gemspec". - The code doesn't handle non-gemspecs very well at all. - -2004-04-04 20:15 chadfowler - - * test/mock/gems/specifications/sources-0.0.1.gemspec: [no log - message] - -2004-04-04 20:09 chadfowler - - * test/mock/gems/gems/sources-0.0.1/lib/sources.rb: Rearranging - things a bit - -2004-04-04 20:02 chadfowler - - * bin/gem, lib/rubygems/remote_installer.rb, test/bogussources.rb, - test/functional.rb: Better error messages on unresolvable host. - -2004-04-04 12:50 chadfowler - - * redist/session.gem, test/bogussources.rb, test/functional.rb: - Added the beginnings of a functional test suite. - -2004-04-03 22:02 chadfowler - - * lib/rubygems/validator.rb: Just had to explicitly rescue - VerificationError. All is well. - -2004-04-03 22:01 chadfowler - - * lib/rubygems/validator.rb: Mauricio fixed a problem with alien - (just failed to update it when we changed the gem directory), but - now there's another issue I can't find. Anyway, this fix is - obviously needed. But alien is broken anyway. - -2004-04-03 21:57 chadfowler - - * install.rb, lib/rubygems/builder.rb: Batsman's bug report and - code for the bugs I introduced today. :) - -2004-04-03 09:50 chadfowler - - * lib/rubygems/specification.rb: Defaulting a spec's require_path - to [] to avoid downstream errors. - -2004-04-03 09:06 chadfowler - - * lib/rubygems/builder.rb, test/test_builder.rb: builder now - validates the gemspec. - -2004-04-03 08:48 chadfowler - - * lib/rubygems/specification.rb, test/test_specification.rb: Added - checking for gem specs to make sure they have all required - attributes. - -2004-04-03 08:06 chadfowler - - * gemspecs/rublog.gemspec: My original rublog gem was broken, in - that it didn't have a require_path. - -2004-04-02 07:48 chadfowler - - * lib/rubygems/remote_installer.rb: Prompt for installation of - dependencies. - - For now, there is a puts/gets in the middle of - remote_installer.rb This should probably be cleaned up later - (return control flow to the gem program to install the - dependencies, for example. - -2004-04-02 07:37 chadfowler - - * TODO: [no log message] - -2004-04-02 07:34 chadfowler - - * test/: simple_gem.rb, test_format.rb: Some things I forgot to cvs - add earlier. - -2004-04-02 07:29 chadfowler - - * example/: test.gemspec, lib/test.rb, lib/test/wow.rb: Removing - example directory in favor of "examples" directory (just better - organized). - -2004-04-02 07:26 chadfowler - - * test/test_all.rb: Removed test_all.rb. Rake is obviously a - better way to do it. - -2004-03-31 19:13 chadfowler - - * lib/rubygems/format.rb, lib/rubygems/installer.rb, - lib/rubygems/validator.rb, test/test_all.rb, - test/test_validator.rb: More tests and refactoring to support - them. - -2004-03-30 02:41 rich - - * lib/rubygems/installer.rb: allow passing parameters to extconf.rb - with: - - ruby -i blah.gem --local -- --with-option - - everything past the -- will go to the extconf.rb...just like - setup.rb - -2004-03-30 02:34 rich - - * lib/rubygems/: installer.rb, specification.rb: very initial - capability to build source gems. this only lets you build native - extensions so long as you do not have to specify --with- - directories - -2004-03-29 08:31 rich - - * install.rb: switched migration of old gems to new ./gems subdir - to use FileUtils rather than ftools...hope to fix reported win32 - error. - -2004-03-29 01:04 rich - - * lib/rubygems/doc_manager.rb: fixed bug in pathing based on new - directory structure - -2004-03-29 01:03 rich - - * lib/rubygems/remote_installer.rb: fixed bug in default for proxy - (should default to nil not true) - -2004-03-29 01:03 rich - - * bin/gem: updated with patch to allow for config file with minor - difference from gavin's patch which passes a nil to the - RemoteInstaller if the proxy does not exist - -2004-03-28 23:22 rich - - * install.rb: added code to migrate gems if they are in the old - directory structure - -2004-03-28 21:30 rich - - * install.rb, lib/rubygems.rb, lib/rubygems/installer.rb, - lib/rubygems/specification.rb: changed path of installed gems to - be: - - ruby/gems/1.8/gems - - which cleans up the root. - -2004-03-28 18:53 chadfowler - - * test/test_all.rb: This is the file to run for all of the tests. - - test_remote_installer is commented out for now. The open URI - patch that George gave us makes the code a lot nicer to look at, - but a little harder to test. - -2004-03-28 18:50 chadfowler - - * lib/rubygems/remote_installer.rb, test/test_cache.rb, - test/test_remote_installer.rb: Added some tests for cache search - -2004-03-28 12:19 chadfowler - - * bin/gem, lib/rubygems/validator.rb, test/test_validator.rb: Some - tests for the validator. - - Made the validator more testable. - -2004-03-28 09:30 chadfowler - - * bin/gem, lib/rubygems/validator.rb: Fixed a problem with false - alarms in the validator. - -2004-03-27 08:23 chadfowler - - * bin/gem: No longer have an option to pass http proxy host into - the gem program. Only reads it from the environment. This is - because George's patch (and open-uri) work this way, and I'm lazy - right now. - -2004-03-27 08:17 chadfowler - - * lib/rubygems/remote_installer.rb: George Marrows' nice patch to - remove a bunch of code from remote_installer. - - Our remote_installer tests are failing. We really need to start - paying attention to the test directory. :(` - -2004-03-24 23:26 jimweirich - - * install.rb: Do not install commands ending in ~. - -2004-03-24 23:25 jimweirich - - * lib/rubygems/specification.rb: Changed executables from accessor - to writer to avoid redefinition. - -2004-03-21 21:10 jimweirich - - * bin/gem: fixed uninitialized directory option - -2004-03-21 15:34 jimweirich - - * bin/gem: removed carriage returns that screwed up the #! line - -2004-03-21 09:02 chadfowler - - * bin/gem: Gavin's bin/gem refactoring. - -2004-03-20 17:03 jimweirich - - * bin/gem: added wrapping to gem listing - -2004-03-20 12:22 chadfowler - - * install.rb: More cleaning by Gavin Sinclair - -2004-03-20 12:08 chadfowler - - * examples/application/an-app.gemspec, - examples/application/bin/myapp, - examples/application/lib/somefunctionality.rb, lib/rubygems.rb, - lib/rubygems/installer.rb, lib/rubygems/specification.rb: Added - functionality for installing applications into the system bindir. - Needs cleaning and refactoring. - -2004-03-20 07:53 chadfowler - - * bin/gem: [no log message] - -2004-03-19 23:03 chadfowler - - * bin/gem: More intuitive default. - -2004-03-19 10:45 chadfowler - - * bin/gem: * Some minor rearranging of the test stuff so that - installation errors will also abort the test run * Don't try to - run tests if none are included with the gem - -2004-03-18 22:27 chadfowler - - * bin/gem, example/lib/test.rb, lib/rubygems/cache.rb, - lib/rubygems/specification.rb: * Preliminary support for: gem -i - blah-0.0.1.gem --run-tests Needs to be cleaned up considerably. - * Introduction of new gemspec metadata "unit_test_suite", which - will be require'd in order to load all unit tests - -2004-03-17 09:33 chadfowler - - * bin/gem: Applied Gavin Sinclair's patch to make help output - better. - -2004-03-16 21:55 chadfowler - - * bin/gem: Added --remote-list option for gem command to display - all gems on server. - -2004-03-16 21:50 chadfowler - - * bin/gem, doc/UserDoc.html: Fixed --help case inconsistencies and - documentation typos as per Scott Harper's email. - -2004-03-16 21:41 chadfowler - - * bin/gem: --list and --search display are the same. - -2004-03-16 21:33 chadfowler - - * bin/gem: Implemented some of Scott Harper's search suggestions: - case insensitive sort of returned gems and display description - with gem name in search results. - -2004-03-16 21:20 chadfowler - - * bin/gem, lib/rubygems/remote_installer.rb: http_proxy option - implemented - -2004-03-15 07:19 chadfowler - - * lib/rubygems/remote_installer.rb: Installation is now case - insensitive (like search) - -2004-03-15 07:07 chadfowler - - * TODO, bin/gem, lib/rubygems/remote_installer.rb: Better error - messages. updated TODO list. - -2004-03-14 21:02 chadfowler - - * bin/gem, lib/rubygems/remote_installer.rb: --dir didn't work with - remote-install. Now it does. - -2004-03-14 17:48 rich - - * bin/gem: fixed uninstall bug - -2004-03-14 17:18 rich - - * lib/rubygems/doc_manager.rb: changed to remove : on - win32...ug - -2004-03-14 16:15 rich - - * install.rb: fixed typo - -2004-03-14 16:13 rich - - * install.rb: generate cmd files - -2004-03-14 16:13 rich - - * bin/: gem.cmd, gem_server.cmd: now generate cmd files - -2004-03-14 15:52 chadfowler - - * bin/gem: Fixed a small bug with --gen-rdoc and the remote - installer. - -2004-03-14 15:38 chadfowler - - * lib/rubygems.rb: Back to version 1.0 ;) - -2004-03-14 15:36 chadfowler - - * lib/rubygems.rb: Updated rubygemsversion - -2004-03-14 15:31 chadfowler - - * README: credits - -2004-03-14 15:24 rich - - * README: initial readme - -2004-03-14 15:12 rich - - * doc/UserDoc.html: updated w/doc on documentation ;-) - -2004-03-14 15:01 rich - - * gemspecs/jabber4r.gemspec: added jabber4r gemspec - -2004-03-14 14:58 rich - - * bin/gem_server: change the documentation path to / - -2004-03-14 14:57 rich - - * install.rb: remove installing .rb files from ./bin - -2004-03-14 14:32 rich - - * doc/: DevDoc.txt, GemSpecification.txt, UserDoc.html, - UserDoc.txt: updated with latest docs - -2004-03-14 12:05 chadfowler - - * test/test_remote_installer.rb: Fixed tests. - -2004-03-14 11:31 chadfowler - - * lib/rubygems/specification.rb: Fixed bug that would manifest - itself if a gem creator put apostrophes/single-quotes in the gem - spec. - -2004-03-14 00:04 rich - - * doc/: UserDoc.html, UserDoc.txt: finished user's guide - -2004-03-13 21:48 rich - - * doc/: DevDoc.html, UserDoc.html, UserDoc.txt: updated user's - guide...will finish section on ruby's library mgt soon ;-) - -2004-03-13 20:48 chadfowler - - * doc/DevDoc.txt: Added documentation on making and distributing - gems - -2004-03-13 20:20 chadfowler - - * TODO: [no log message] - -2004-03-13 19:51 rich - - * doc/: DevDoc.html, DevDoc.txt, GemSpecification.html, - GemSpecification.txt, UserDoc.html, UserDoc.txt, doc.css, - makedoc.rb: added these doc (wiki) files from - http://rubygems.rubyforge.org/ - -2004-03-13 17:56 chadfowler - - * TODO, gemspecs/README, gemspecs/cgikit-1.1.0.gemspec, - gemspecs/linguistics.gemspec, gemspecs/ook.gemspec, - gemspecs/progressbar.gemspec, gemspecs/redcloth.gemspec, - gemspecs/rublog.gemspec, gemspecs/ruby-doom.gemspec, - gemspecs/rubyjdwp.gemspec, gemspecs/statistics.gemspec: Added - some gemspecs for actual RAA packages. - -2004-03-13 14:35 chadfowler - - * TODO, lib/rubygems/remote_installer.rb: Preliminary HTTP Proxy - support. Untested. - -2004-03-13 09:11 chadfowler - - * packages/sources/lib/sources.rb: Changed to point to rubyforge - -2004-03-12 22:40 rich - - * bin/generate_yaml_index.rb: generates a yaml index for a gems - repository - -2004-03-12 22:02 chadfowler - - * bin/gem_server: No longer serving gem specs. - -2004-03-12 21:42 chadfowler - - * TODO, bin/gem_server.cgi: We decided to trash gem_server.cgi in - favor of the static content generator Rich is working on. - -2004-03-12 21:15 chadfowler - - * TODO: [no log message] - -2004-03-12 20:11 chadfowler - - * bin/gem, lib/rubygems/installer.rb, - lib/rubygems/remote_installer.rb: Basic search funtionality in. - - Slight refactoring of Installer and RemoteInstaller - -2004-03-12 18:28 chadfowler - - * TODO: [no log message] - -2004-03-12 16:37 chadfowler - - * TODO: [no log message] - -2004-03-12 16:14 chadfowler - - * TODO: More TODO items - -2004-03-08 13:50 chadfowler - - * TODO, bin/gem_server, example/test.gemspec: Use rdoc templates - for HTML. Nearly XHTML compliant. - -2004-03-08 08:21 chadfowler - - * TODO: Added TODO list - -2004-03-08 08:12 chadfowler - - * lib/rubygems/validator.rb: Fixed a small (but crippling) bug in - the validator. - -2004-01-24 13:49 chadfowler - - * bin/gem, lib/rubygems.rb, lib/rubygems/cache.rb, - lib/rubygems/validator.rb, lib/rubygems/version.rb: More cleanup. - -2004-01-24 13:29 chadfowler - - * bin/gem, lib/rubygems/remote_installer.rb: A little cleaning of - (Remote)Installer inconsistencies - -2004-01-24 13:23 chadfowler - - * bin/gem: Removed the weird instance variable thing we had going - on. :) - -2004-01-07 17:34 chadfowler - - * bin/gem: removed old cruft - -2003-12-24 11:32 chadfowler - - * lib/rubygems/validator.rb: Gem validation was returning false - negatives (corrupted gems were not reporting their corruption). - -2003-12-18 14:18 chadfowler - - * lib/rubygems/cache.rb: Lyle noticed some out of date rdoc - documentation. Thanks Lyle! - -2003-12-03 08:05 chadfowler - - * install.rb: Gavin's patch for installing the files in bin/ on - rubygems installation. - -2003-11-30 00:36 chadfowler - - * lib/rubygems/specification.rb: Little warnings adjustment - -2003-11-29 17:27 jimweirich - - * Rakefile: added Rakefile to package - -2003-11-29 16:23 jimweirich - - * lib/rubygems/specification.rb: Removed defined? and initialized - @platform - -2003-11-29 16:08 jimweirich - - * lib/rubygems/specification.rb: Initialized @loaded and check - defined?(@platform) to silence some -w warnings. - -2003-11-29 09:26 rich - - * bin/gem_server, lib/rubygems/doc_manager.rb: updated to support - /doc URL to generate list of installed gems w/doc link for rdoc - generated links. - -2003-11-29 08:30 rich - - * lib/rubygems/doc_manager.rb: minor format change of error message - -2003-11-29 08:29 rich - - * bin/gem, lib/rubygems/builder.rb, lib/rubygems/doc_manager.rb, - lib/rubygems/installer.rb: instantiates DocManager now. errors - out on no install of RDoc. warns if .gemspec does not specify - having rdoc, but rdoc is generated - -2003-11-29 02:13 rich - - * bin/gem, lib/rubygems.rb, lib/rubygems/doc_manager.rb, - lib/rubygems/format.rb, lib/rubygems/installer.rb, - lib/rubygems/specification.rb: added capability to generate rdoc - on install of gem (--gen-rdoc). this doc is placed in - Gem.dir+doc+gem.full_name fixed but in installer when moving to - format (not calling each) added doc manager to add/remove - documenatation (right now only rdoc) - -2003-11-29 01:28 rich - - * lib/rubygems/specification.rb: should not define the attr_readers - for requirements/dependencies so undef is unnecessary - -2003-11-29 00:12 jimweirich - - * lib/rubygems/specification.rb: Undefing dependencies and - requirements removes warning when used with -w. - -2003-11-29 00:12 jimweirich - - * lib/rubygems.rb: Using defined?($GEM_PATH) avoids warning when - used with -w switch. - -2003-11-28 15:58 chadfowler - - * bin/gem, example/test.gemspec, lib/rubygems.rb, - lib/rubygems/installer.rb, lib/rubygems/validator.rb, - lib/rubygems/format.rb: Separated gem file reading into a - separate class/file. - -2003-11-28 15:20 rich - - * lib/rubygems/specification.rb: added has_rdoc?/has_rdoc methods - ... will be used to autogenerate rdoc - -2003-11-28 12:30 chadfowler - - * lib/rubygems/validator.rb: Rdoc added - -2003-11-28 11:51 chadfowler - - * bin/gem, lib/rubygems.rb, lib/rubygems/validator.rb: A little - rearranging of the validation/alien code. It's still ugly, but - at least it's in its own file now. :) - -2003-11-28 11:40 chadfowler - - * bin/gem: Removed a little cruft. - -2003-11-27 11:04 chadfowler - - * bin/gem: Print success message for each gem *not* containing - errors. - -2003-11-27 11:00 chadfowler - - * bin/gem, lib/rubygems/installer.rb: Preliminary support for gem - directory validation (--alien). Looks for bad or missing gem - files, missing spec files, files installed that aren't part of - the gem, checksum mismatches, etc. - - Very ugly code. Very ugly output. Work in progress. - -2003-11-24 11:58 rich - - * lib/rubygems/specification.rb: change full_name to include - platform - -2003-11-24 09:15 chadfowler - - * bin/gem: Option for HTTP Proxy server for remote-install. Not - yet implemented. - -2003-11-23 20:22 chadfowler - - * lib/rubygems/builder.rb: Removed a stray \" in builder's success - message - -2003-11-23 20:16 chadfowler - - * lib/rubygems/specification.rb: Leaving escape in but commenting - out its functionality because it hosed some other things up. - Need to revisit this for the case where: - - s.summary = "Chad's Thing" # It's the apostrophe - -2003-11-23 20:08 chadfowler - - * lib/rubygems/specification.rb: Escape quotes to avoid invalid - gemspecs in the #{Gem.dir}/specifications directory - -2003-11-23 19:21 chadfowler - - * bin/gem: Less ugly error message on file IO problems. - -2003-11-22 22:34 chadfowler - - * bin/gem: Very simple support for validating a gem. Will probably - move this into the libs eventually. - -2003-11-22 20:53 chadfowler - - * example/test.gemspec, lib/rubygems/builder.rb: Generate MD5 - checksum for gem and store it in the file. Will be used to - validate gem file before installation. - -2003-11-22 13:58 chadfowler - - * install.rb, lib/rubygems/remote_installer.rb, - packages/sources/sources.gemspec, - packages/sources/lib/sources.rb: remote-install sources are now - installed as a ruby gem at the time of rubygems installation. - sources gemspec included in the rubygems distribution. - -2003-11-22 12:52 chadfowler - - * bin/gem: Allow gem info by --version - -2003-11-22 11:50 chadfowler - - * lib/: rubygems.rb, rubygems/cache.rb: Fixed the bug I introduced - by fixing Rich's bug with gem cache caching. ;) - - Gem::Cache now has a #refresh! method. - -2003-11-22 10:16 chadfowler - - * bin/gem, lib/rubygems.rb, lib/rubygems/installer.rb, - lib/rubygems/remote_installer.rb: - Fixed bug in Gem.cache - (though we may want to revisit it for in-memory caching - Command - line configurable version for uninstall - -2003-11-22 00:28 rich - - * lib/rubygems/cache.rb: rdoc'd search method - -2003-11-22 00:24 rich - - * bin/gem, lib/rubygems/cache.rb, lib/rubygems/version.rb, - test/test_version_comparison.rb: removed search_by_name because - search does the same thing. version::requirement was updated to - that if you did not specific a version operation, it assumes an = - sign. updated tests accordingly - -2003-11-21 23:58 rich - - * lib/rubygems/: cache.rb, installer.rb: allow version to be - specified in uninstall (if called programatically) - -2003-11-21 23:52 rich - - * lib/: rubygems.rb, rubygems/cache.rb, rubygems/installer.rb, - rubygems/specification.rb: > moved all searching into cache..and - now search by name/version and return an - ordered list (.last == highest version). - > modified uninstaller to allow selecting a specific version to - uninstall if - multiple versions are installed. - > implemented comparison function on specification. - > changed require_gem to use new search of cache function - -2003-11-21 21:06 chadfowler - - * bin/gem, lib/rubygems/remote_installer.rb: Added ability to - specify optional version requirement for remote installations - -2003-11-21 20:25 chadfowler - - * test/test_remote_installer.rb: Removed carriage returns - -2003-11-21 19:04 chadfowler - - * bin/gem_server: Converted from getopts to optparse. - -2003-11-21 18:31 rich - - * lib/rubygems.rb: changed the order in which operations are - performed in require_gem. it now requires dependent gems prior - to adding the require_paths to a gem. otherwise we could have - had a LoadError on a dependent gem but the paths were already - added...potential problem - -2003-11-21 18:21 rich - - * lib/rubygems/installer.rb: updated to ensure - (specifications/cache) directories exist for a provided path - -2003-11-21 18:01 rich - - * lib/rubygems/specification.rb: updated rdoc - -2003-11-21 17:59 rich - - * bin/gem, lib/rubygems/builder.rb, lib/rubygems/installer.rb, - lib/rubygems/specification.rb: fixed various bugs with the - $GEM_PATH stuff, specifically on uninstall. Also, changed to - allow specifying a directory on install (--dir) and force install - (--force). Changed the builder generated ruby header to use - optparse. - -2003-11-21 07:03 chadfowler - - * lib/: rubygems.rb, rubygems/cache.rb, - rubygems/remote_installer.rb: Remote installation of dependencies - now works. It downloads all dependent gems or errors out. - - Fixed bug in require_gem. Wrong call to cache. - -2003-11-21 00:59 rich - - * bin/gem, example/test.gemspec, lib/rubygems.rb, - lib/rubygems/cache.rb, lib/rubygems/installer.rb, - lib/rubygems/specification.rb: added capability to support - multiple paths $GEM_PATH in Ruby and RUBY_GEMS in the ARGV. Lots - of changes were needed to support this. also added the --force - and --dir options to gem installtion - -2003-11-20 22:50 chadfowler - - * bin/gem: Switched to optparse. Not a whole lot gained, but it - seems to be the way Ruby is going. It's nice not to have to do - the "when" stuff, I guess. - -2003-11-19 23:41 chadfowler - - * lib/rubygems/: installer.rb, remote_installer.rb: Added - chadfowler.com to the hardcoded remote install list. - - Fixed a dangling YAML.load that broke uninstall. - -2003-11-19 22:56 rich - - * lib/rubygems.rb: fixed bug in loading rubygems - -2003-11-19 22:51 chadfowler - - * bin/: gem_server, gem_server.cgi: require 'yaml' :) - -2003-11-19 22:44 rich - - * lib/: rubygems.rb, rubygems/cache.rb, rubygems/specification.rb: - changed the format of stuff stored in the spec directory to ruby - instead of YAML. This allows us to not have to load yaml in - 'require_gem'. switched the specification list to a Cache - object. - -2003-11-19 21:56 rich - - * lib/rubygems/installer.rb: write the spec file in ruby and not in - yaml format (in the spec dir) - -2003-11-19 20:32 rich - - * lib/rubygems/specification.rb: added to_ruby method to generate a - ruby string that can be eval'ed in to build a Gem Specification - -2003-11-17 21:37 jimweirich - - * bin/: gem_server, gem_server.cgi: removed carriage returns - -2003-11-17 21:19 chadfowler - - * install.rb: Accidentally left some junk in the file. - -2003-11-17 19:50 dblack - - * test/test_version_comparison.rb: * Test cases for Version.rb - -2003-11-17 19:50 dblack - - * lib/rubygems/version.rb: * Split off tests into - rubygems/tests/test_version_comparison.rb - -2003-11-17 12:37 chadfowler - - * install.rb: Create File.join(Config::CONFIG['libdir'], "ruby", - "gems") + "specifications" and + "cache" during installation. - - Need to remove this from rubygems.rb and replace with - ensure_directory call. - -2003-11-17 12:29 rich - - * lib/rubygems/version.rb: rdoc added - -2003-11-17 11:31 rich - - * lib/rubygems/specification.rb: rdoc added - -2003-11-17 10:38 rich - - * lib/rubygems/: cache.rb, installer.rb: made rdoc comments and - renamed some variables - -2003-11-17 08:48 dblack - - * lib/rubygems/version.rb: * Added stricter checking of incoming - Requirement string - - * Added unit tests at end of file - -2003-11-17 07:32 chadfowler - - * bin/: gem_server, gem_server.cgi: Refactored gem_server program - and added an equivalent CGI version. - -2003-11-17 00:14 rich - - * lib/: rubygems.rb, rubygems/builder.rb, rubygems/cache.rb: added - rdoc documentation - -2003-11-16 17:15 chadfowler - - * bin/: gem.cmd, gem_server.cmd: Added some batch files for Windows - -2003-11-16 17:08 rich - - * install.rb, bin/gem, bin/gem_server, example/test.gemspec, - example/lib/test.rb, example/lib/test/wow.rb, lib/rubygems.rb, - lib/rubygems/builder.rb, lib/rubygems/cache.rb, - lib/rubygems/installer.rb, lib/rubygems/remote_installer.rb, - lib/rubygems/specification.rb, lib/rubygems/version.rb, - test/test_remote_installer.rb: Initial import developed at - RubyConf 2003 by: - - Rich Kilmer Chad Fowler David Black Paul Brannon Jim Weirich - -2003-11-16 17:08 rich - - * install.rb, bin/gem, bin/gem_server, example/test.gemspec, - example/lib/test.rb, example/lib/test/wow.rb, lib/rubygems.rb, - lib/rubygems/builder.rb, lib/rubygems/cache.rb, - lib/rubygems/installer.rb, lib/rubygems/remote_installer.rb, - lib/rubygems/specification.rb, lib/rubygems/version.rb, - test/test_remote_installer.rb: Initial revision - -Local variables: -indent-tabs-mode: t -tab-width: 8 -end: diff --git a/doc/rubygems/History.txt b/doc/rubygems/History.txt deleted file mode 100644 index 4a80b1bfb4..0000000000 --- a/doc/rubygems/History.txt +++ /dev/null @@ -1,852 +0,0 @@ -# -*- coding: utf-8 -*- - -=== 1.3.6 / 2010-02-17 - -NOTE: - -http://rubygems.org is now the default source for downloading gems. - -You may have sources set via ~/.gemrc, so you should replace -http://gems.rubyforge.org with http://rubygems.org - -http://gems.rubyforge.org will continue to work for the forseeable future. - -New features: - -* `gem` commands - * Added `gem push` and `gem owner` for interacting with modern/Gemcutter - sources - * `gem dep` now supports --prerelease. - * `gem fetch` now supports --prerelease. - * `gem server` now supports --bind. Patch #27357 by Bruno Michel. - * `gem rdoc` no longer overwrites built documentation. Use --overwrite - force rebuilding. Patch #25982 by Akinori MUSHA. -* Captial letters are now allowed in prerelease versions. - -Bug fixes: - -* Development deps are no longer added to rubygems-update gem so older - versions can update sucessfully. -* Installer bugs: - * Prerelease gems can now depend on non-prerelease gems. - * Development dependencies are ignored unless explicitly needed. Bug #27608 - by Roger Pack. -* `gem` commands - * `gem which` now fails if no paths were found. Adapted patch #27681 by - Caio Chassot. - * `gem server` no longer has invalid markup. Bug #27045 by Eric Young. - * `gem list` and friends show both prerelease and regular gems when - --prerelease --all is given -* Gem::Format no longer crashes on empty files. Bug #27292 by Ian Ragsdale. -* Gem::GemPathSearcher handles nil require_paths. Patch #27334 by Roger Pack. -* Gem::RemoteFetcher no longer copies the file if it is where we want it. - Patch #27409 by Jakub Šťastný. - -Deprecation Notices: - -* lib/rubygems/timer.rb has been removed. -* Gem::Dependency#version_requirements is deprecated and will be removed on or - after August 2010. -* Bulk index update is no longer supported. -* Gem::manage_gems was removed in 1.3.3. -* Time::today was removed in 1.3.3. - -=== 1.3.5 / 2009-07-21 - -Bug fixes: - -* Fix use of prerelease gems. -* Gem.bin_path no longer escapes path with spaces. Bug #25935 and #26458. - -Deprecation Notices: - -* Bulk index update is no longer supported (the code currently remains, but not - the tests) -* Gem::manage_gems was removed in 1.3.3. -* Time::today was removed in 1.3.3. - -=== 1.3.4 / 2009-05-03 - -Bug Fixes: - -* Fixed various warnings -* Gem::ruby_version works correctly for 1.8 branch and trunk -* Prerelease gems now show up in `gem list` and can be used -* Fixed option name for `gem setup --format-executable` -* RubyGems now matches Ruby > 1.9.1 gem paths -* Gem::RemoteFetcher#download now works for explicit Windows paths across - drives. Bug #25882 by Lars Christensen -* Fix typo in Gem::Requirement#parse. Bug #26000 by Mike Gunderloy. - -Deprecation Notices: - -* Bulk index update is no longer supported (the code currently remains, but not - the tests) -* Gem::manage_gems was removed in 1.3.3. -* Time::today was removed in 1.3.3. - -=== 1.3.3 / 2009-05-04 - -New Features: - -* `gem server` allows port names (from /etc/services) with --port. -* `gem server` now has search that jumps to RDoc. Patch #22959 by Vladimir - Dobriakov. -* `gem spec` can retrieve single fields from a spec (like `gem spec rake - authors`). -* Gem::Specification#has_rdoc= is deprecated and ignored (defaults to true) -* RDoc is now generated regardless of Gem::Specification#has_rdoc? - -Bug Fixes: - -* `gem clean` now cleans up --user-install gems. Bug #25516 by Brett - Eisenberg. -* Gem.bin_path now escapes paths with spaces. -* Rake extension builder uses explicit correctly loads rubygems when invoking - rake. -* Prerelease versions now match "~>" correctly. Patch #25759 by Yossef - Mendelssohn. -* Check bindir for executables, not root when validating. Bug reported by - David Chelimsky. -* Remove Time.today, no way to override it before RubyGems loads. Bug #25564 - by Emanuele Vicentini -* Raise Gem::Exception for #installation_path when not installed. Bug #25741 - by Daniel Berger. -* Don't raise in Gem::Specification#validate when homepage is nil. Bug #25677 - by Mike Burrows. -* Uninstall executables from the correct directory. Bug #25555 by Brett - Eisenberg. -* Raise Gem::LoadError if Kernel#gem fails due to previously-loaded gem. Bug - reported by Alf Mikula. - -Deprecation Notices: - -* Gem::manage_gems has been removed. -* Time::today has been removed early. There was no way to make it warn and be - easy to override with user code. - -=== 1.3.2 / 2009-04-15 - -Select New Features: - -* RubyGems now loads plugins from rubygems_plugin.rb in installed gems. - This can be used to add commands (See Gem::CommandManager) or add - install/uninstall hooks (See Gem::Installer and Gem::Uninstaller). -* Gem::Version now understands prerelease versions using letters. (eg. - '1.2.1.b') Thanks to Josh Susser, Alex Vollmer and Phil Hagelberg. -* RubyGems now includes a Rake task for creating gems which replaces rake's - Rake::GemPackageTask. See Gem::PackageTask. -* Gem::find_files now returns paths in $LOAD_PATH. -* Added Gem::promote_load_path for use with Gem::find_files -* Added Gem::bin_path to make finding executables easier. Patch #24114 by - James Tucker. -* Various improvements to build arguments for installing gems. -* `gem contents` added --all and --no-prefix. -* Gem::Specification - * #validate strips directories and errors on not-files. - * #description no longer removes newlines. - * #name must be a String. - * FIXME and TODO are no longer allowed in various fields. - * Added support for a license attribute. Feature #11041 (partial). - * Removed Gem::Specification::list, too much process growth. Bug #23668 by - Steve Purcell. -* `gem generate_index` - * Can now generate an RSS feed. - * Modern indicies can now be updated incrementally. - * Legacy indicies can be updated separately from modern. - -Select Bugs Fixed: - -* Better gem activation error message. Patch #23082. -* Kernel methods are now private. Patch #20801 by James M. Lawrence. -* Fixed various usability issues with `gem check`. -* `gem update` now rescues InstallError and continues. Bug #19268 by Gabriel - Wilkins. -* Allow 'https', 'file' as a valid schemes for --source. Patch #22485. -* `gem install` - * Now removes existing path before installing. Bug #22837. - * Uses Gem::bin_path in executable stubs to work around Kernel#load bug in - 1.9. - * Correctly handle build args (after --) via the API. Bug #23210. -* --user-install - * `gem install --no-user-install` now works. Patch #23573 by Alf Mikula. - * `gem uninstall` can now uninstall from ~/.gem. Bug #23760 by Roger Pack. -* setup.rb - * Clarify RubyGems RDoc installation location. Bug #22656 by Gian Marco - Gherardi. - * Allow setup to run from read-only location. Patch #21862 by Luis Herrera. - * Fixed overwriting ruby executable when BASERUBY was not set. Bug #24958 - by Michael Soulier. - * Ensure we're in a RubyGems dir when installing. - * Deal with extraneous quotation mark when autogenerating .bat file on MS - Windows. Bug #22712. - -Deprecation Notices: - -* Gem::manage_gems has been removed. -* Time::today will be removed in RubyGems 1.4. - -Special thanks to Chad Wooley for backwards compatibility testing and Luis -Lavena and Daniel Berger for continuing windows support. - -=== 1.3.1 / 2008-10-28 - -Bugs fixed: - -* Disregard ownership of ~ under Windows while creating ~/.gem. Fixes - issues related to no uid support under Windows. -* Fix requires for Gem::inflate, Gem::deflate, etc. -* Make Gem.dir respect :gemhome value from config. (Note: this feature may be - removed since it is hard to implement on 1.9.) -* Kernel methods are now private. Patch #20801 by James M. Lawrence. -* Gem::location_of_caller now behaves on Windows. Patch by Daniel Berger. -* Silence PATH warning. - -Deprecation Notices: - -* Gem::manage_gems will be removed on or after March 2009. - -=== 1.3.0 / 2008-09-25 - -New features: - -* RubyGems doesn't print LOCAL/REMOTE titles for `gem query` and friends if - stdout is not a TTY, except with --both. -* Added Gem.find_files, allows a gem to discover features provided by other - gems. -* Added pre/post (un)install hooks for packagers of RubyGems. (Not for gems - themselves). -* RubyGems now installs gems into ~/.gem if GEM_HOME is not writable. Use - --no-user-install command-line switch to disable this behavior. -* Fetching specs for update now uses If-Modified-Since requests. -* RubyGems now updates the ri cache when the rdoc gem is installed and - documentation is generated. - -Deprecation Notices: - -* Gem::manage_gems now warns when called. It will be removed on or after March - 2009. - -Bugs Fixed: - -* RubyGems 1.3.0+ now updates when no previous rubygems-update is installed. - Bug #20775 by Hemant Kumar. -* RubyGems now uses the regexp we already have for `gem list --installed`. Bug - #20876 by Nick Hoffman. -* Platform is now forced to Gem::Platform::RUBY when nil or blank in the - indexer. Fixes various uninstallable gems. -* Handle EINVAL on seek. Based on patch in bug #20791 by Neil Wilson. -* Fix HTTPS support. Patch #21072 by Alex Arnell. -* RubyGems now loads all cache files even if latest has been loaded. Bug - #20776 by Uwe Kubosch. -* RubyGems checks for support of development dependencies for #to_ruby. Bug - #20778 by Evan Weaver. -* Now specifications from the future can be loaded. -* Binary script uninstallation fixed. Bug #21234 by Neil Wilson. -* Uninstallation with -i fixed. Bug #20812 by John Clayton. -* Gem::Uninstaller#remove_all now calls Gem::Uninstaller#uninstall_gem so hooks - get called. Bug #21242 by Neil Wilson. -* Gem.ruby now properly escaped on windows. Fixes problem with extension - compilation. -* `gem lock --strict` works again. Patch #21814 by Sven Engelhardt. -* Platform detection for Solaris was improved. Patch #21911 by Bob Remeika. - -Other Changes Include: - -* `gem help install` now describes _version_ argument to executable stubs -* `gem help environment` describes environment variables and ~/.gemrc and - /etc/gemrc -* On-disk gemspecs are now read in UTF-8 and written with a UTF-8 magic comment -* Rakefile - * If the SETUP_OPTIONS environment variable is set, pass its contents as - arguments to setup.rb -* lib/rubygems/platform.rb - * Remove deprecated constant warnings and really deprecate them. (WIN32, - etc). -* lib/rubygems/remote_fetcher.rb - * Now uses ~/.gem/cache if the cache dir in GEM_HOME is not writable. -* lib/rubygems/source_index.rb - * Deprecate options to 'search' other than Gem::Dependency instances and - issue warning until November 2008. -* setup.rb - * --destdir folder structure now built using Pathname, so it works for - Windows platforms. -* test/* - * Fixes to run tests when under test/rubygems/. Patch by Yusuke ENDOH - [ruby-core:17353]. -* test/test_ext_configure_builder.rb - * Locale-free patch by Yusuke Endoh [ruby-core:17444]. - -=== 1.2.0 / 2008-06-21 - -New features: - -* RubyGems no longer performs bulk updates and instead only fetches the gemspec - files it needs. Alternate sources will need to upgrade to RubyGems 1.2 to - allow RubyGems to take advantage of the new metadata updater. If a pre 1.2 - remote source is in the sources list, RubyGems will revert to the bulk update - code for compatibility. -* RubyGems now has runtime and development dependency types. Use - #add_development_dependency and #add_runtime_dependency. All typeless - dependencies are considered to be runtime dependencies. -* RubyGems will now require rubygems/defaults/operating_system.rb and - rubygems/defaults/#{RBX_ENGINE}.rb if they exist. This allows packagers and - ruby implementers to add custom behavior to RubyGems via these files. (If - the RubyGems API is insufficient, please suggest improvements via the - RubyGems list.) -* /etc/gemrc (and windows equivalent) for global settings -* setup.rb now handles --vendor and --destdir for packagers -* `gem stale` command that lists gems by last access time - -Bugs Fixed: - -* File modes from gems are now honored, patch #19737 -* Marshal Gem::Specification objects from the future can now be loaded. -* A trailing / is now added to remote sources when missing, bug #20134 -* Gems with legacy platforms will now be correctly uninstalled, patch #19877 -* `gem install --no-wrappers` followed by `gem install --wrappers` no longer - overwrites executables -* `gem pristine` now forces reinstallation of gems, bug #20387 -* RubyGems gracefully handles ^C while loading .gemspec files from disk, bug - #20523 -* Paths are expanded in more places, bug #19317, bug #19896 -* Gem::DependencyInstaller resets installed gems every install, bug #19444 -* Gem.default_path is now honored if GEM_PATH is not set, patch #19502 - -Other Changes Include: - -* setup.rb - * stub files created by RubyGems 0.7.x and older are no longer removed. When - upgrading from these ancient versions, upgrade to 1.1.x first to clean up - stubs. - * RDoc is no longer required until necessary, patch #20414 -* `gem server` - * Now completely matches the output of `gem generate_index` and - has correct content types - * Refreshes from source directories for every hit. The server will no longer - need to be restarted after installing gems. -* `gem query --details` and friends now display author, homepage, rubyforge url - and installed location -* `gem install` without -i no longer reinstalls dependencies if they are in - GEM_PATH but not in GEM_HOME -* Gem::RemoteFetcher now performs persistent connections for HEAD requests, - bug #7973 - -=== 1.1.1 / 2008-04-11 - -Bugs Fixed: - -* Gem.prefix now returns non-nil only when RubyGems was installed outside - sitelibdir or libdir. -* The `gem server` gem list now correctly links to gem details. -* `gem update --system` now passes --no-format-executable to setup.rb. -* Gem::SourceIndex#refresh! now works with multiple gem repositories. -* Downloaded gems now go into --install-dir's cache directory. -* Various fixes to downloading gem metadata. -* `gem install --force` now ignores network errors too. -* `gem pristine` now rebuilds extensions. -* `gem update --system` now works on virgin Apple ruby. -* Gem::RemoteFetcher handles Errno::ECONNABORTED. -* Printing of release notes fixed. - -=== 1.1.0 / 2008-03-29 - -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). 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. - -Bugs Fixed: - -* RubyGems works with both Config and RbConfig now. -* Executables are now cleaned upon uninstall. -* You can now uninstall from a particular directory. -* Updating from non-default sources fixed. -* Executable stubs now use ruby install name in shebang. -* `gem unpack` checks every directory in Gem.path now. -* `gem install` now exits with non-zero exit code when appropriate. -* `gem update` only updates gems that need updates. -* `gem update` doesn't force remote-only updates. -* `gem update` handles dependencies properly when updating. -* Gems are now loaded in Gem.path order. -* Gem stub scripts on windows now work outside Gem.bindir. -* `gem sources -r` now works without network access. - -Other Changes Include: - -* RubyGems now requires Ruby > 1.8.3. -* Release notes are now printed upon installation. -* `gem env path` now prints a usable path. -* `gem install` reverts to local-only installation upon network error. -* Tar handling code refactoring and cleanup. -* Gem::DependencyInstaller's API has changed. - -For a full list of changes to RubyGems, see the ChangeLog file. - -=== 1.0.1 / 2007-12-20 - -Bugs Fixed: - -* Installation on Ruby 1.8.3 through 1.8.5 fixed -* `gem build` on 1.8.3 fixed - -Other Changes Include: - -* Since RubyGems 0.9.5, RubyGems is no longer supported on Ruby 1.8.2 or older, - this is official in RubyGems 1.0.1. - -=== 1.0.0 / 2007-12-20 - -Major New Features Include: - -* RubyGems warns about various problems with gemspecs during gem building -* More-consistent versioning for the RubyGems software - -Other Changes Include: - -* Fixed various bugs and problems with installing gems on Windows -* Fixed using `gem server` for installing gems -* Various operations are even more verbose with --verbose -* Built gems are now backwards compatible with 0.9.4 -* Improved detection of RUBYOPT loading rubygems -* `ruby setup.rb` now has a --help option -* Gem::Specification#bindir is now respected on installation -* Executable stubs can now be installed to match ruby's name, so if ruby is - installed as 'ruby18', foo_exec will be installed as 'foo_exec18' -* `gem unpack` can now unpack into a specific directory with --target -* OpenSSL is no longer required by default - -Deprecations and Deletions: - -* Kernel#require_gem has been removed -* Executables without a shebang will not be wrapped in a future version, this - may cause such executables to fail to operate on installation -* Gem::Platform constants other than RUBY and CURRENT have been removed -* Gem::RemoteInstaller was removed -* Gem::Specification#test_suite_file and #test_suite_file= are deprecated in - favor of #test_file and #test_file= -* Gem::Specification#autorequire= has been deprecated -* Time::today will be removed in a future version - -=== 0.9.5 / 2007-11-19 - -Major New Features Include: - -* Platform support -* Automatic installation of platform gems -* New bandwidth and memory friendlier index file format -* "Offline" mode (--no-update-sources) -* Bulk update threshold can be specified (-B, --bulk-threshold) -* New `gem fetch` command -* `gem` now has "really verbose" output when you specify -v -* Improved stubs and `gem.bat` on mswin, including better compatiblity - with the One-Click Installer. - -Other Changes Include: - -* Time::today is deprecated and will be removed at a future date -* Gem::manage_gems is deprecated and will be removed at a future date -* `gem install --include-dependencies` (-y) is now deprecated since it is the - default, use --ignore-dependencies to turn off automatic dependency - installation -* Multi-version diamond dependencies only are installed once -* Processing a YAML bulk index update takes less memory -* `gem install -i` makes sure all depenencies are installed -* `gem update --system` reinstalls into the prefix it was originally installed - in -* `gem update --system` respects --no-rdoc and --no-ri flags -* HTTP basic authentication support for proxies -* Gem::Specification#platforms should no longer be a String, use - Gem::Platform::CURRENT when building binary gems instead -* `gem env` has more diagnostic information -* require 'rubygems' loads less code -* sources.gem is gone, RubyGems now uses built-in defaults -* `gem install --source` will no longer add --source by default, use `gem - sources --add` to make it a permanent extra source -* `gem query` (list) no longer prints details by default -* Exact gem names are matched in various places -* mkrf extensions are now supported -* A gem can depend on a specific RubyGems version -* `gem_server` is now `gem server` -* `gemlock` is now `gem lock` -* `gem_mirror` is now `gem mirror` -* `gemwhich` is now `gem which` -* `gemri` is no longer included with RubyGems -* `index_gem_repository.rb` is now `gem generate_index` -* `gem` performs more validation of parameters -* Custom rdoc styles are now supported -* Gem indexer no longer removes quick index during index creation -* Kernel#require only rescues a LoadError for the file being required now -* `gem dependencies` can now display some information for remote gems -* Updating RubyGems now works with RUBYOPT=-rubygems - -Special thanks to: - -* Daniel Berger -* Luis Lavena -* Tom Copeland -* Wilson Bilkovich - -=== 0.9.4 / 2007-05-23 - -If you are experiencing problems with the source index (e.g. strange -"No Method" errors), or problems with zlib (e.g. "Buffer Error" -messsage), we recommend upgrading to RubyGems 0.9.4. - -Bug Fixes Include: - -* Several people have been experiencing problems with no method errors - on the source index cache. The source index cache is now a bit more - self healing. Furthermore, if the source index cache is - irreparable, then it is automatically dropped and reloaded. -* The source cache files may now be dropped with the "gem sources - --clear-all" command. (This command may require root is the system - source cache is in a root protected area). -* Several sub-commands were accidently dropped from the "gem" command. - These commands have been restored. - -=== 0.9.3 / 2007-05-10 - -Bug Fixes Include: - -The ZLib library on Windows will occasionally complains about a buffer error -when unpacking gems. The Gems software has a workaround for that problem, but -the workaround was only enabled for versions of ZLib 1.2.1 or earlier. We -have received several reports of the error occuring with ZLib 1.2.3, so we -have permanently enabled the work around on all versions. - -=== 0.9.2 / 2007-02-05 - -Bug Fixes Include: - -* The "unpack" command now works properly. -* User name and password are now passed properly to the authenticating - proxy when downloading gems. - -=== 0.9.1 / 2007-01-16 - -See ChangeLog - -=== 0.9.0 / 2006-06-28 - -Finally, the much anticipated RubyGems version 0.9.0 is now available. -This release includes a number of new features and bug fixes. The -number one change is that we can now download the gem index -incrementally. This will greatly speed up the gem command when only a -few gems are out of date. - -Major Enhancments include: - -* The gem index is now downloaded incrementally, only updating entries - that are out of date. If more than 50 entries are out of date, we - revert back to a bulk download. -* Several patches related to allowing RubyGems to work with - authenticating proxies (from Danie Roux and Anatol Pomozov). Just - put the user and password in the proxy URL (e.g. -p - http://user:password@proxy.address.com:8080) or use the - HTTP_PROXY_USER and HTTP_PROXY_PASS environment variables. -* The gem unpack command can now accept a file path rather than just a - install gem name. -* Both RI and RDOC documents are now generated by default. -* A gemri command is included to read gem RI docs (only needed for - Ruby 1.8.4 or earlier). - -Minor enhancements include: - -* Verison 0.0.0 is now a valid gem version. -* Better detection of missing SSL functionality. -* SSL is not required if the security policy does not require - signature checking. -* Rake built extensions are now supported (Tilman Sauerbeck). -* Several autorequire bug fixes. -* --traceback is now an alias for --backtrace (I can never remember - which one it is). -* SAFE=1 compatibility fixes. -* .rbw is now a supported suffix for RubyGem's custom require. -* Several Ruby 1.9 compatibility fixes (Eric Hodel). - -Bug Fixes: - -* Added dashes to gemspecs generated in Ruby 1.8.3. This solves some - cross-Ruby version compatibility issues. -* Fixed bug where the wrong executables could be uninstalled (Eric - Hodel). -* Fixed bug where gem unpack occasionally unpacked the wrong gem. -* Fixed bug where a fatal error occured when permissions on .gemrc - were too restrictive (reported by Luca Pireddu). -* Fixed prefix handling for native expressions (patch by Aaron Patterson). -* Fixed several Upgrade => Update typos. - -=== 0.8.11 / 2005-07-13 - -* -y is a synonym for --include-dependencies. -* Better handling of errors in the top level rescue clause. -* Package list command (e.g. gem inspect GEM). -* .gemrc now allows cvsrc-like options to set defaults per subcommand. -* The autorequire gem spec field will now accept a list. -* Substituted Time for Date in specs, increasing performance - dramatically. -* Fixed reported bug of gem directories ending in "-" (reported by - Erik Hatcher). -* Fixed but in installer that caused dependency installation to not - work. -* Added Paul Duncan's gem signing patch. -* Added Mark Hubbart's Framework patch (for better integration with OS - X). -* Added David Glasser's install-from-mirror patch. -* Additional internal structural cleanup and test reorganization. - -=== 0.8.10 / 2005-03-27 - -* In multi-user environments, it is common to supply mulitple versions of gems - (for example Rails), allowing individual users to select the version of the - gem they desire. This allows a user to be insulated from updates to that - gem. RubyGems 0.8.10 fixes a problem where gems could occasionally become - confused about the current versions of libraries selected by the user. -* The other annoying bug is that if there are any existing rubygems-update gems - installed, then the "gem update --system" command will download a new - update, but install the latest update prior to the download. - -=== 0.8.9 - -Never released - -=== 0.8.8 / 2005-03-14 - -* Moved the master definition of class Requirement back under version. - Kept the body of Requirement under Gem. - -=== 0.8.7 / 2005-03-14 - -Even though it has only been a few weeks since that last release, -there are quite a number of new features in 0.8.7. A complete list of -new features will be given below, but here is a summary of the hot -items. - -* The bug that prevented some users from installing rails has been - squashed. A big thanks to Bill Guindon (aGorilla) for helping track - that one down. - -There are several new commands available on the gem command: - -* gem cleanup GEMNAME -- Cleanup (uninstall) all the old versions of - gem. If the gem name is omitted, the entire repository is cleaned. -* gem dependency GEMNAME -- Show the dependencies for the named gems. - This is really helpful when trying to figure out what gem needs what - other gem. - -There changes to the existing commands as well. - -* gem uninstall is much smarter about removing gems from the - repository. Lists of gems are now uninstalled in proper dependency - order (ie. if A depends on B, A is uninstalled first). Also, - warnings about broken dependencies occur only when removing the - *last* gem that supports a dependency is removed. - -Both gem install and gem uninstall support some new command line -options that can reduce the amount of yes/no queries given the user. -For install we have: - -* --ignore-dependencies -- Only install requests gems, no - dependendecies are automatically installed. -* --include-dependencies -- Automatically install dependencies, - without confirmation. - -For gem uninstall, the new options are: - -* --all -- Uninstall all matching gems without confirmation. -* --ignore-dependencies -- Uninstall, even if dependencies are broken. -* --executables -- Remove executables without confirmation - -Under general cleanup, gems will not, by default, run RDoc on packages -that do not have the RDoc flag set. - -And finally there is a new library file 'gemconfigure' to aid in -writing version sensitive applications (without undue dependencies on -RubyGems); and 'gemwhich', a short script to locate libraries in the -file system. You can read more about them here: - -* gemconfigure: http://docs.rubygems.org/read/chapter/4#page73 -* gemwhich: http://docs.rubygems.org/read/chapter/17 - -=== 0.8.6 / 2005-02-27 - -* Fixed a small bug with shebang construction - -=== 0.8.5 / 2005-02-26 - -Do you know how you used to dread getting the following message while -installing gems? - - Updating Gem source index for: http://gems.rubyforge.org - -It could take up to 30 seconds (on my machine, even worse on others) for -that crazy source index to update. - -This latest release of RubyGems speeds that wait time up considerably. -The following table gives the following times for installing RedCloth -with a required source index update on three system we had available to -us. No RDoc generation was included in the following times. - - RubyGems Linux Mac OSX Windows - 0.8.4 33 secs 73 secs 58 secs - 0.8.5 8 secs 14 secs 21 secs - -The new caching code is at least 3x faster than previous versions. Woo -Hoo! - -=== 0.8.4 / 2005-01-01 - -* Rubygems 0.8.3's installer was broken unless you already had an older - version of RubyGems installed. That's fixed. -* Change in the way Gem::Specification internally deals with lazy attributes - and defaults, bringing (with some loadpath_manager changes) a fairly - significant increase in speed. -* Support for lower-cased Gem file names (for you, Paul Duncan :) -* Erik Veenstra's patch for making Gem versions sortable. - -=== 0.8.3 / 2004-12-07 - -No real earth shattering news here, but there were a number of really -annoying issues involving other libraries that RubyGems depends upon. -0.8.3 contains some workarounds for these issues. In particular: - -* Added workaround for the null byte in Dir string issue. (see - http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/121702). - (Thanks to Mauricio Fernández for the quick response on this one). -* Added workaround for old version of Zlib on windows that caused - Ruwiki to fail to install. (see - http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/121770) -* Added workaround for large YAML file issues. (We dynamically cut - down the size of the source index YAML file and seem to have worked - around immediate issues. - -There has been some minor usability enhancements and changes ... - -* A user specific source index cache can be used when the site-wide - cache is unwritable (i.e. because you are running as a non-admin). - This *greatly* speeds up gem commands run in non-admin mode when the - site-wide cache is out of date. -* The gem command now used an HTTP HEAD command to detect if the - server's source index needs to be downloaed. -* gem check gemname --test will run unit tests on installed gems that - have unit tests. -* Multiple gem names are allowed on the gem install command line. - This means you can do: - - gem install rake rails needle postgres-pr pimki - - (Ok, you get the idea) -* Multiple authors my be specified in a Gem spec. -* Switched to using setup.rb (rather than a custom install script) for - the installation of RubyGems itself. If you have installed RubyGems - before, double check the installation instructions and make sure you - use setup.rb instead of install.rb. -* Ryan Davis has provided a patch so you can use an env variable - (GEM_SKIP), to tell loadpath_manager not to load gems of those - names. This was useful for him while testing libs that he had in - development. - -=== 0.8.1 / 2009-09-14 - -* Quick release to capture some bug fixes. - -=== 0.8.0 / 2009-09-12 - -* Remove need for library stubs. Set the RUBYOPT environment variable to - include "rrubygems", and a normal require will find gem files. Continue to - use 'require_gem gem_name, version' to specify gem versions. -* Deprecated "test_suite_file" gemspec attribute in favor of "test_files" array. -* Generates rdoc by default on installs. -* Adopted tar/gzip file format, thanks to Mauricio Fernandez. -* "gem rdoc" allows generation of rdoc after gem installation (will add a "gem - test" -* Application stubs can now accept an optional parameter of _VERSION_ that will - run an arbitrary version of the application requested. -* Various bug fixes -* Various platform-independency improvements -* "gem spec --all" displays spec info for all installed version of a given gem. -* Dynamic caching of sources -* Support for user-definable sources on the command line (thanks Assaph Mehr) -* More intelligent support for platform-dependent gems. Use Platform::CURRENT - when building a gem to set its platform to the one you're building on. - Installation displays a choice of platform-dependent gems, allowing the user - to pick. -* Added "gem unpack" for "unpacking" a gem to the current directory - -=== 0.7.0 / 2004-07-09 - -See ChangeLog - -=== 0.6.0 / 2004-06-08 - -* Collapse output of --search and --list (and gem_server) operations so that - each gem is listed only once, with each of its versions listed on the same - line. -* bin/gem: new --upgrade-all option allows one to upgrade every installed gem -* new #required_ruby_version attribute added to gem specification for - specifying a dependency on which version of ruby the gem needs. Format it - accepts is the same as the Gem::Version::Requirement format: - - spec.required_ruby_version = "> 1.8.0" -* --install-stub defaults to true, so library stubs are created - -=== 0.5.0 / 2004-06-06 - -* Jim added the ability to specify version constraints to avoid API - incompatibilities. This has been the subject of much debate for the past - couple of months, with many ideas and code contributed by Eivind Eklund and - Mauricio Fernandez. The following set of assertions shows how it works: - - assert_inadequate("1.3", "~> 1.4") - assert_adequate( "1.4", "~> 1.4") - assert_adequate( "1.5", "~> 1.4") - assert_inadequate("2.0", "~> 1.4") # This one is key--the new operator - # disallows major version number - # differences. -* Group gem search output when multiple versions exist for a given gem: - - activerecord (0.7.8, 0.7.7, 0.7.6, 0.7.5) - Implements the ActiveRecord pattern for ORM. -* Add arbitrary RDoc-able files via gemspec (not just Ruby source files) for - people who have, for example, README.rdoc in their distributions. Add to - gemspec via: spec.extra_rdoc_files = ["list", "of", "files"]. Ruby files are - automatically included. -* Some small bug fixes - -=== 0.4.0 / 2004-05-31 - -* Minor bug fixes including Windows compatability issues - -=== 0.3.0 / 2004-04-30 - -* 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. - -=== 0.2.0 / 2004-03-14 - -* Initial public release - diff --git a/doc/rubygems/LICENSE.txt b/doc/rubygems/LICENSE.txt deleted file mode 100644 index db88c5e118..0000000000 --- a/doc/rubygems/LICENSE.txt +++ /dev/null @@ -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. diff --git a/doc/rubygems/README b/doc/rubygems/README deleted file mode 100644 index 68a52593d4..0000000000 --- a/doc/rubygems/README +++ /dev/null @@ -1,41 +0,0 @@ -= RubyGems - -* http://rubygems.org/ -* http://docs.rubygems.org/ -* http://rubygems.rubyforge.org/ -* http://rubyforge.org/projects/rubygems - -== DESCRIPTION - -RubyGems is a package management framework for Ruby. - -This gem is an update for the RubyGems software. You must have an -installation of RubyGems before this update can be applied. - -See Gem for information on RubyGems (or `ri Gem`) - -To upgrade to the latest RubyGems, run: - - $ gem update --system # you might need to be an administrator or root - -NOTE: RubyGems 1.1 and 1.2 have problems upgrading when there is no -rubygems-update installed. You will need to use the following instructions -if you see "Nothing to update". - -If you have an older version of RubyGems installed, then you can still -do it in two steps: - - $ gem install rubygems-update # again, might need to be admin/root - $ update_rubygems # ... here too - -If you don't have any RubyGems install, there is still the pre-gem approach to -getting software, doing it manually: - -1. Download from: http://rubyforge.org/frs/?group_id=126 -2. Unpack into a directory and cd there -3. Install with: ruby setup.rb # you may need admin/root privilege - -For more details and other options, see: - - ruby setup.rb --help - -- cgit v1.2.3