head 1.20; access; symbols pkgsrc-2017Q1:1.19.0.18 pkgsrc-2017Q1-base:1.19 pkgsrc-2016Q4:1.19.0.16 pkgsrc-2016Q4-base:1.19 pkgsrc-2016Q3:1.19.0.14 pkgsrc-2016Q3-base:1.19 pkgsrc-2016Q2:1.19.0.12 pkgsrc-2016Q2-base:1.19 pkgsrc-2016Q1:1.19.0.10 pkgsrc-2016Q1-base:1.19 pkgsrc-2015Q4:1.19.0.8 pkgsrc-2015Q4-base:1.19 pkgsrc-2015Q3:1.19.0.6 pkgsrc-2015Q3-base:1.19 pkgsrc-2015Q2:1.19.0.4 pkgsrc-2015Q2-base:1.19 pkgsrc-2015Q1:1.19.0.2 pkgsrc-2015Q1-base:1.19 pkgsrc-2014Q4:1.18.0.8 pkgsrc-2014Q4-base:1.18 pkgsrc-2014Q3:1.18.0.6 pkgsrc-2014Q3-base:1.18 pkgsrc-2014Q2:1.18.0.4 pkgsrc-2014Q2-base:1.18 pkgsrc-2014Q1:1.18.0.2 pkgsrc-2014Q1-base:1.18 pkgsrc-2013Q4:1.17.0.4 pkgsrc-2013Q4-base:1.17 pkgsrc-2013Q3:1.17.0.2 pkgsrc-2013Q3-base:1.17 pkgsrc-2013Q2:1.16.0.2 pkgsrc-2013Q2-base:1.16 pkgsrc-2013Q1:1.14.0.12 pkgsrc-2013Q1-base:1.14 pkgsrc-2012Q4:1.14.0.10 pkgsrc-2012Q4-base:1.14 pkgsrc-2012Q3:1.14.0.8 pkgsrc-2012Q3-base:1.14 pkgsrc-2012Q2:1.14.0.6 pkgsrc-2012Q2-base:1.14 pkgsrc-2012Q1:1.14.0.4 pkgsrc-2012Q1-base:1.14 pkgsrc-2011Q4:1.14.0.2 pkgsrc-2011Q4-base:1.14 pkgsrc-2011Q3:1.13.0.2 pkgsrc-2011Q3-base:1.13 pkgsrc-2011Q2:1.12.0.8 pkgsrc-2011Q2-base:1.12 pkgsrc-2011Q1:1.12.0.6 pkgsrc-2011Q1-base:1.12 pkgsrc-2010Q4:1.12.0.4 pkgsrc-2010Q4-base:1.12 pkgsrc-2010Q3:1.12.0.2 pkgsrc-2010Q3-base:1.12 pkgsrc-2010Q2:1.10.0.10 pkgsrc-2010Q2-base:1.10 pkgsrc-2010Q1:1.10.0.8 pkgsrc-2010Q1-base:1.10 pkgsrc-2009Q4:1.10.0.6 pkgsrc-2009Q4-base:1.10 pkgsrc-2009Q3:1.10.0.4 pkgsrc-2009Q3-base:1.10 pkgsrc-2009Q2:1.10.0.2 pkgsrc-2009Q2-base:1.10 pkgsrc-2009Q1:1.8.0.6 pkgsrc-2009Q1-base:1.8 pkgsrc-2008Q4:1.8.0.4 pkgsrc-2008Q4-base:1.8 pkgsrc-2008Q3:1.8.0.2 pkgsrc-2008Q3-base:1.8 cube-native-xorg:1.7.0.6 cube-native-xorg-base:1.7 pkgsrc-2008Q2:1.7.0.4 pkgsrc-2008Q2-base:1.7 cwrapper:1.7.0.2 pkgsrc-2008Q1:1.6.0.2 pkgsrc-2008Q1-base:1.6 pkgsrc-2007Q4:1.3.0.6 pkgsrc-2007Q4-base:1.3 pkgsrc-2007Q3:1.3.0.4 pkgsrc-2007Q3-base:1.3 pkgsrc-2007Q2:1.3.0.2 pkgsrc-2007Q2-base:1.3 pkgsrc-2007Q1:1.2.0.4 pkgsrc-2007Q1-base:1.2 pkgsrc-2006Q4:1.2.0.2; locks; strict; comment @# @; 1.20 date 2017.04.22.18.09.12; author taca; state dead; branches; next 1.19; commitid Iv1dxNi8sdQ5EyOz; 1.19 date 2015.01.25.16.13.13; author taca; state Exp; branches; next 1.18; commitid 0JNO4xTqRGEAhq7y; 1.18 date 2014.02.19.15.47.32; author taca; state Exp; branches; next 1.17; commitid NRw4OVjrrluV4Jpx; 1.17 date 2013.09.10.16.33.29; author taca; state Exp; branches; next 1.16; commitid BL9G7Z2UIOP9wU4x; 1.16 date 2013.06.15.02.12.48; author taca; state Exp; branches; next 1.15; commitid K7yKQKfsTiMzzETw; 1.15 date 2013.06.11.14.55.54; author taca; state Exp; branches; next 1.14; commitid SPp1wZYhjtGPVcTw; 1.14 date 2011.11.08.15.26.12; author taca; state Exp; branches; next 1.13; 1.13 date 2011.08.12.15.50.44; author taca; state Exp; branches; next 1.12; 1.12 date 2010.09.16.12.02.05; author taca; state Exp; branches; next 1.11; 1.11 date 2010.09.10.03.48.40; author taca; state Exp; branches; next 1.10; 1.10 date 2009.06.10.21.44.31; author minskim; state Exp; branches; next 1.9; 1.9 date 2009.04.07.07.35.44; author minskim; state Exp; branches; next 1.8; 1.8 date 2008.09.15.08.43.44; author taca; state Exp; branches; next 1.7; 1.7 date 2008.04.13.06.01.59; author jlam; state Exp; branches; next 1.6; 1.6 date 2008.03.31.15.40.43; author jlam; state Exp; branches; next 1.5; 1.5 date 2008.03.12.15.07.47; author jlam; state Exp; branches; next 1.4; 1.4 date 2008.03.08.00.43.55; author jlam; state Exp; branches; next 1.3; 1.3 date 2007.04.23.03.21.05; author minskim; state dead; branches; next 1.2; 1.2 date 2007.02.03.20.42.33; author salo; state Exp; branches 1.2.2.1; next 1.1; 1.1 date 2007.01.28.16.08.55; author taca; state Exp; branches; next ; 1.2.2.1 date 2007.02.03.20.42.33; author salo; state dead; branches; next 1.2.2.2; 1.2.2.2 date 2007.02.03.20.59.11; author salo; state Exp; branches; next ; desc @@ 1.20 log @Remove rubygems package which is provided for ruby18 only. Other version of ruby2* pakcages have builtin rubygems. @ text @$NetBSD: patch-ab,v 1.19 2015/01/25 16:13:13 taca Exp $ Add install_root option for pkgsrc's rubygems support. --- lib/rubygems/dependency_installer.rb.orig 2014-09-10 04:23:57.000000000 +0000 +++ lib/rubygems/dependency_installer.rb @@@@ -63,6 +63,7 @@@@ class Gem::DependencyInstaller # :format_executable:: See Gem::Installer#initialize. # :ignore_dependencies:: Don't install any dependencies. # :install_dir:: See Gem::Installer#install. + # :install_root:: See Gem::Installer#install. # :prerelease:: Allow prerelease versions. See #install. # :security_policy:: See Gem::Installer::new and Gem::Security. # :user_install:: See Gem::Installer.new @@@@ -101,7 +102,12 @@@@ class Gem::DependencyInstaller @@installed_gems = [] @@toplevel_specs = nil - @@cache_dir = options[:cache_dir] || @@install_dir + @@install_root = options[:install_root] || "" + install_dir = @@install_dir + unless @@install_root.nil? or @@install_root.empty? + install_dir = File.join(@@install_root, install_dir) + end + @@cache_dir = options[:cache_dir] || install_dir @@errors = [] end @@@@ -382,6 +388,7 @@@@ class Gem::DependencyInstaller :force => @@force, :format_executable => @@format_executable, :ignore_dependencies => @@ignore_dependencies, + :install_root => @@install_root, :prerelease => @@prerelease, :security_policy => @@security_policy, :user_install => @@user_install, @ 1.19 log @Update rubygems to 2.4.5 and make this package for ruby18 only. Changes are too many to write here, please refer rubygem's github: https://github.com/rubygems/rubygems/blob/master/History.txt. @ text @d1 1 a1 1 $NetBSD: patch-ab,v 1.18 2014/02/19 15:47:32 taca Exp $ @ 1.18 log @Check install_root's value is nil before it is empty string. Reported a problem from @@_ki_nu via Twitter. Bump PKGREVISION. @ text @d1 1 a1 1 $NetBSD: patch-ab,v 1.17 2013/09/10 16:33:29 taca Exp $ d5 1 a5 1 --- lib/rubygems/dependency_installer.rb.orig 2013-09-09 23:41:27.000000000 +0000 d7 1 a7 1 @@@@ -50,6 +50,7 @@@@ class Gem::DependencyInstaller d15 1 a15 17 @@@@ -57,12 +58,13 @@@@ class Gem::DependencyInstaller # :build_args:: See Gem::Installer::new def initialize(options = {}) - @@install_dir = options[:install_dir] || Gem.dir - if options[:install_dir] then + @@install_dir = options[:install_dir] # HACK shouldn't change the global settings, needed for -i behavior # maybe move to the install command? See also github #442 Gem::Specification.dirs = @@install_dir + else + @@install_dir = Gem.dir end options = DEFAULT_OPTIONS.merge options @@@@ -91,7 +93,12 @@@@ class Gem::DependencyInstaller d27 10 a36 10 # Set with any errors that SpecFetcher finds while search through # gemspecs for a dep @@@@ -363,6 +370,7 @@@@ class Gem::DependencyInstaller :format_executable => @@format_executable, :ignore_dependencies => @@ignore_dependencies, :install_dir => @@install_dir, + :install_root => @@install_root, :security_policy => @@security_policy, :user_install => @@user_install, :wrappers => @@wrappers, @ 1.17 log @Update rubygems to 2.0.8. This includes a fix for CVE-2013-4287 in rubygems. === 2.0.8 / 2013-09-09 Security fixes: * RubyGems 2.0.7 and earlier are vulnerable to excessive CPU usage due to a backtracking in Gem::Version validation. See CVE-2013-4287 for full details including vulnerable APIs. Fixed versions include 2.0.8, 1.8.26 and 1.8.23.1 (for Ruby 1.9.3). Issue #626 by Damir Sharipov. Bug fixes: * Fixed Gem.clear_paths when Security is defined at top-level. Pull request #625 by elarkin === 2.0.7 / 2013-08-15 * Extensions may now be built in parallel (therefore gems may be installed in parallel). Bug #607 by Hemant Kumar. * Changed broken link to RubyGems Bookshelf to point to RubyGems guides. Ruby pull request #369 by 謝致邦. * Fixed various test failures due to platform differences or poor tests. Patches by Yui Naruse and Koichi Sasada. * Fixed documentation for Kernel#require. === 2.0.6 / 2013-07-24 Bug fixes: * Fixed the `--no-install` and `-I` options to `gem list` and friends. Bug #593 by Blargel. * Fixed crash when installing gems with extensions under the `-V` flag. Bug #601 by Nick Hoffman. * Fixed race condition retrieving HTTP connections in Gem::Request on JRuby. Bug #597 by Hemant Kumar. * Fixed building extensions on ruby 1.9.3 under mingw. Bug #594 by jonforums, Bug #599 by Chris Riesbeck * Restored default of remote search to `gem search`. === 2.0.5 / 2013-07-11 Bug fixes: * Fixed building of extensions that run ruby in their makefiles. Bug #589 by Zachary Salzbank. === 2.0.4 / 2013-07-09 Bug fixes: * Fixed error caused by gem install not finding the right platform for your platform. Bug #576 by John Anderson * Fixed pushing gems with the default host. Bug #495 by Utkarsh Kukreti * Improved unhelpful error message from `gem owner --remove`. Bug #488 by Steve Klabnik * Fixed typo in `gem spec` help. Pull request #563 by oooooooo * Fixed creation of build_info with --install-dir. Bug #457 by Vít Ondruch. * RubyGems converts non-string dependency names to strings now. Bug #505 by Terence Lee * Outdated prerelease versions are now listed in `gem outdated`. * RubyGems now only calls fsync() on the specification when installing, not every file from the gem. This improves the performance of gem installation on some systems. Pull Request #556 by Grzesiek Kolodziejczyk * Removed surprise search term anchoring in `gem search` to restore 1.8-like search behavior while still defaulting to --remote. Pull request #562 by Ben Bleything * Fixed handling of DESTDIR when building extensions. Pull request #573 by Akinori MUSHA * Fixed documentation of `gem pristine` defaults (--all is not a default). Pull request #577 by Shannon Skipper * Fixed a windows extension-building test failure. Pull request #575 by Hiroshi Shirosaki * Fixed issue with `gem update` where it would attempt to use a Version instead of a Requirement to find the latest gem. Fixes #570 by Nick Cox. * RubyGems now ignores an empty but set RUBYGEMS_HOST environment variable. Based on pull request #558 by Robin Dupret. * Removed duplicate creation of gem subdirectories in Gem::DependencyInstaller. Pull Request #456 by Vít Ondruch * RubyGems now works with Ruby built with `--with-ruby-version=''`. Pull Request #455 by Vít Ondruch * Fixed race condition when two threads require the same gem. Ruby bug report #8374 by Joel VanderWerf * Cleaned up siteconf between extension build and extension install. Pull request #587 by Dominic Cleal * Fix deprecation warnings when converting gemspecs to yaml. Ruby commit r41148 by Yui Naruse @ text @d1 1 a1 1 $NetBSD: patch-ab,v 1.16 2013/06/15 02:12:48 taca Exp $ d38 1 a38 1 + if not @@install_root.empty? @ 1.16 log @* Fix a problem of installing gem with Ruby 1.8.7 noted by David Holland. * Clean up patch files. Bump PKGREVISION. @ text @d1 1 a1 1 $NetBSD: patch-ab,v 1.15 2013/06/11 14:55:54 taca Exp $ d5 1 a5 1 --- lib/rubygems/dependency_installer.rb.orig 2013-03-05 21:25:39.000000000 +0000 d15 1 a15 1 @@@@ -57,13 +58,14 @@@@ class Gem::DependencyInstaller a25 1 Gem.ensure_gem_subdirectories @@install_dir d31 1 a31 1 @@@@ -92,7 +94,12 @@@@ class Gem::DependencyInstaller d45 1 a45 1 @@@@ -364,6 +371,7 @@@@ class Gem::DependencyInstaller @ 1.15 log @Update rubygems to 2.0.3. THere are too many changes to write here, please refer these release notes. http://blog.rubygems.org/2013/03/11/2.0.3-released.html http://blog.rubygems.org/2013/03/06/2.0.2-released.html http://blog.rubygems.org/2013/03/05/2.0.1-released.html http://blog.rubygems.org/2013/02/24/2.0.0-released.html http://blog.rubygems.org/2013/02/08/2.0.0.rc.2-released.html http://blog.rubygems.org/2012/12/03/2.0.0-preview2.html @ text @d1 1 a1 1 $NetBSD: patch-ab,v 1.14 2011/11/08 15:26:12 taca Exp $ d5 1 a5 1 --- lib/rubygems/dependency_installer.rb.orig 2013-02-20 00:27:36.000000000 +0000 d32 1 a32 1 @@@@ -91,7 +93,12 @@@@ class Gem::DependencyInstaller d46 1 a46 1 @@@@ -353,6 +360,7 @@@@ class Gem::DependencyInstaller @ 1.14 log @* Make --install-root change same as ruby193-base. * Don't generate .require_paths. It was only needed with Ruby 1.9.1 which had never supported by pkgsrc. * Bump PKGREVISION. @ text @d1 1 a1 1 $NetBSD: patch-ab,v 1.13 2011/08/12 15:50:44 taca Exp $ d5 1 a5 1 --- lib/rubygems/dependency_installer.rb.orig 2011-08-26 00:30:44.000000000 +0000 d7 1 a7 1 @@@@ -38,6 +38,7 @@@@ class Gem::DependencyInstaller d11 1 a11 1 + # :install_root: See Gem::Installer#install. d15 2 a16 1 @@@@ -45,11 +46,14 @@@@ class Gem::DependencyInstaller d19 2 d22 7 a28 10 - @@gem_home = options[:install_dir] + if options[:install_root].nil? or options[:install_root] == "" then + @@gem_home = options[:install_root].dup + else + @@gem_home = options[:install_dir].dup + end Gem::Specification.dirs = @@gem_home Gem.ensure_gem_subdirectories @@gem_home - options[:install_dir] = @@gem_home # FIX: because we suck and reuse below d32 1 a32 1 @@@@ -69,7 +73,12 @@@@ class Gem::DependencyInstaller d34 1 a35 1 @@install_dir = options[:install_dir] || Gem.dir d37 1 a37 1 + @@install_root = options[:install_root] d39 2 a40 2 + unless @@install_root.nil? or @@install_root == "" + install_dir = File.join(@@install_root, @@install_dir) d46 1 a46 1 @@@@ -290,6 +299,7 @@@@ class Gem::DependencyInstaller d53 1 a53 1 :wrappers => @@wrappers @ 1.13 log @Update rubygems package to 1.8.7 with adding compatibility to read older gemspec files. Changes are too may to write here, please refer History.txt file. @ text @d1 1 a1 1 $NetBSD: patch-ab,v 1.12 2010/09/16 12:02:05 taca Exp $ d5 1 a5 1 --- lib/rubygems/dependency_installer.rb.orig 2011-05-18 23:36:37.000000000 +0000 d15 1 a15 1 @@@@ -45,11 +46,15 @@@@ class Gem::DependencyInstaller a28 1 +# options[:install_dir] = @@gem_home # FIX: because we suck and reuse below d32 1 a32 1 @@@@ -69,7 +74,12 @@@@ class Gem::DependencyInstaller d46 1 a46 1 @@@@ -290,6 +300,7 @@@@ class Gem::DependencyInstaller @ 1.12 log @Update rubygems to 1.3.7. o pkgsrc changes: * Add patches to keep output of specification sub-command as before. * Make sure to 'yaml is loaded in Gem::Specification::from_yaml(). === 1.3.7 / 2010-05-13 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 * `gem install` and `gem fetch` now report alternate platforms when a matching one couldn't be found. * `gem contents` --prefix is now the default as specified in --help. Bug #27211 by Mamoru Tasaka. * `gem fetch` can fetch of old versions again. Bug #27960 by Eric Hankins. * `gem query` and friends output now lists platforms. Bug #27856 by Greg Hazel. * `gem server` now allows specification of multiple gem dirs for documentation. Bug #27573 by Yuki Sonoda. * `gem unpack` can unpack gems again. Bug #27872 by Timothy Jones. * `gem unpack` now unpacks remote gems. * --user-install is no longer the default. If you really liked it, see Gem::ConfigFile to learn how to set it by default. (This change was made in 1.3.6) * RubyGems now has platform support for IronRuby. Patch #27951 by Will Green. Bug fixes: * Require rubygems/custom_require if --disable-gem was set. Bug #27700 by Roger Pack. * RubyGems now protects against exceptions being raised by plugins. * rubygems/builder now requires user_interaction. Ruby Bug #1040 by Phillip Toland. * Gem::Dependency support #version_requirements= with a warning. Fix for old Rails versions. Bug #27868 by Wei Jen Lu. * Gem::PackageTask depends on the package dir like the other rake package tasks so dependencies can be hooked up correctly. === 1.3.6 / 2010-02-17 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 Stastny. 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. @ text @d1 1 a1 1 $NetBSD: patch-ab,v 1.11 2010/09/10 03:48:40 taca Exp $ d5 1 a5 1 --- lib/rubygems/dependency_installer.rb.orig 2010-04-22 04:43:02.000000000 +0000 d15 1 a15 1 @@@@ -45,7 +46,11 @@@@ class Gem::DependencyInstaller d19 1 a19 1 - spec_dir = options[:install_dir], 'specifications' d21 1 a21 1 + spec_dir = options[:install_dir], 'specifications' d23 1 a23 1 + spec_dir = options[:install_root], options[:install_dir], 'specifications' d25 9 a33 4 @@source_index = Gem::SourceIndex.from_gems_in spec_dir else @@source_index = Gem.source_index @@@@ -68,7 +73,12 @@@@ class Gem::DependencyInstaller d47 1 a47 1 @@@@ -269,6 +279,7 @@@@ class Gem::DependencyInstaller a52 1 :source_index => @@source_index, d54 1 @ 1.11 log @* take maintainer ship. * Add LICENSE. * Adjust new ruby packages' framework. * Command name is gem${RUBY_VER} == gem18 now and add ALTERNATIVES. * Add comments to patches. * Overhalt --install_root option. * Avoid access HOME when --install_root is enabled. * honor PKG_SYSCONFDIR. Bump PKGREVISION. @ text @d1 1 a1 1 $NetBSD: patch-ab,v 1.10 2009/06/10 21:44:31 minskim Exp $ d5 1 a5 1 --- lib/rubygems/dependency_installer.rb.orig 2009-03-04 17:07:04.000000000 -0800 d12 1 a12 1 # :prerelease:: Allow prerelease versions a38 1 end d40 3 a42 2 ## @@@@ -244,6 +254,7 @@@@ class Gem::DependencyInstaller @ 1.10 log @Update rubygems to 1.3.4. New features since 1.3.1: * 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. * `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? @ text @d1 3 a3 1 $NetBSD$ @ 1.9 log @Update rubygems to 1.3.1. New features since 1.2.0: * 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. @ text @d3 1 a3 1 --- lib/rubygems/dependency_installer.rb.orig 2008-08-12 14:50:22.000000000 -0700 d5 1 a5 1 @@@@ -37,13 +37,18 @@@@ class Gem::DependencyInstaller d10 1 d13 1 a13 1 # :wrappers:: See Gem::Installer::new d19 2 a21 2 + else + spec_dir = options[:install_dir], 'specifications' d26 1 a26 1 @@@@ -65,7 +70,12 @@@@ class Gem::DependencyInstaller d40 1 a40 1 @@@@ -241,6 +251,7 @@@@ class Gem::DependencyInstaller d44 1 a44 1 + :install_root => @@install_root, @ 1.8 log @Update rubygems pacakge to 1.2.0. Release 1.2.0 adds new features and fixes some bugs. 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 @ text @d1 1 a1 1 $NetBSD: patch-ab,v 1.7 2008/04/13 06:01:59 jlam Exp $ d3 1 a3 1 --- lib/rubygems/dependency_installer.rb.orig 2008-06-21 04:55:40.000000000 +0900 d5 1 a5 1 @@@@ -37,6 +37,7 @@@@ class Gem::DependencyInstaller d11 1 d14 12 a25 1 @@@@ -56,10 +57,15 @@@@ class Gem::DependencyInstaller d36 1 d38 3 a40 8 if options[:install_dir] then - spec_dir = File.join @@install_dir, 'specifications' + spec_dir = File.join install_dir, 'specifications' @@source_index = Gem::SourceIndex.from_gems_in spec_dir else @@source_index = Gem.source_index @@@@ -237,6 +243,7 @@@@ class Gem::DependencyInstaller :format_executable => @@format_executable, d42 5 a46 5 :install_dir => @@install_dir, + :install_root => @@install_root, :security_policy => @@security_policy, :wrappers => @@wrappers, :bin_dir => @@bin_dir, @ 1.7 log @Update misc/rubygems to 1.1.1. Changes from version 1.1.0 include: * 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. @ text @d1 1 a1 1 $NetBSD$ d3 1 a3 1 --- lib/rubygems/dependency_installer.rb.orig 2008-04-04 21:10:11.000000000 -0400 d5 1 a5 1 @@@@ -33,6 +33,7 @@@@ class Gem::DependencyInstaller d7 2 a8 2 # :ignore_dependencies: Don't install any dependencies. # :install_dir: See Gem::Installer#install. d10 6 a15 6 # :security_policy: See Gem::Installer::new and Gem::Security. # :wrappers: See Gem::Installer::new def initialize(options = {}) @@@@ -43,6 +44,7 @@@@ class Gem::DependencyInstaller @@format_executable = options[:format_executable] @@ignore_dependencies = options[:ignore_dependencies] d17 1 a18 8 @@security_policy = options[:security_policy] @@wrappers = options[:wrappers] @@bin_dir = options[:bin_dir] @@@@ -177,7 +179,12 @@@@ class Gem::DependencyInstaller gather_dependencies - spec_dir = File.join @@install_dir, 'specifications' d23 1 a23 3 + + spec_dir = File.join install_dir, 'specifications' source_index = Gem::SourceIndex.from_gems_in spec_dir d25 7 a31 11 @@gems_to_install.each do |spec| @@@@ -191,7 +198,7 @@@@ class Gem::DependencyInstaller _, source_uri = @@specs_and_sources.assoc spec begin local_gem_path = Gem::RemoteFetcher.fetcher.download spec, source_uri, - @@install_dir + install_dir rescue Gem::RemoteFetcher::FetchError next if @@force raise @@@@ -203,6 +210,7 @@@@ class Gem::DependencyInstaller d38 1 a38 1 :bin_dir => @@bin_dir @ 1.6 log @Update rubygems to 1.1.0. Changes from version 1.0.1 include: + Port patches to allow gems to be installed into an "installion root" from 1.0.1nb2. + Rename the --build-root option to --install-root, which more accurately reflects the purpose of the option. + Update rubygem.mk to work with rubygems-1.1.0. + Require 1.1.0 as the minimum rubygems version for the build. + Remove GEM_FORMAT and special code to extract the gemspec file from a gem archive -- `gem spec' can now do it correctly by itself. + Rename various *buildroot* targets to *install-root* to match the name of the `gem' option. * RubyGems now uses persistent connections on index updates and only updates from a latest index by default, cutting candidate gems for updates to roughly 1/4 (at present). Index updates are much faster now. * `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. This update has been tested with the 3 packages in pkgsrc that install using the ``gem'' command: devel/rubyforge misc/ruby-gem_plugin www/mongrel This update has also been tested with the 129 packages in my local tree that install using the ``gem'' command. @ text @d3 1 a3 1 --- lib/rubygems/dependency_installer.rb.orig 2008-03-20 21:00:57.000000000 -0400 d35 1 a35 3 @@@@ -189,7 +196,8 @@@@ class Gem::DependencyInstaller say "Installing gem #{spec.full_name}" if Gem.configuration.really_verbose d37 8 a44 7 - local_gem_path = Gem::RemoteFetcher.fetcher.download spec, source_uri + local_gem_path = Gem::RemoteFetcher.fetcher.download spec, source_uri, + install_dir inst = Gem::Installer.new local_gem_path, :env_shebang => @@env_shebang, @@@@ -197,6 +205,7 @@@@ class Gem::DependencyInstaller @ 1.5 log @Fix bug in the interaction between --build-root and --remote noted in: http://rubyforge.org/pipermail/rubygems-developers/2006-June/002010.html If --build-root is specified, then any remote gems are now downloaded into the "cache" directory under the buildroot. Bump PKGREVISION to 2. @ text @d3 1 a3 5 Patch by Marcus Rueckert for staged installation of gems. Additional changes by Johnny C. Lam to download remote gems into the cache directory in @@build_root if specified. --- lib/rubygems/dependency_installer.rb.orig 2007-12-17 22:45:04.000000000 -0500 d5 9 a13 1 @@@@ -44,6 +44,7 @@@@ class Gem::DependencyInstaller d17 1 a17 1 + @@build_root = options[:build_root] d20 2 d23 6 a28 8 @@@@ -121,9 +122,14 @@@@ class Gem::DependencyInstaller # always replaced. def download(spec, source_uri) gem_file_name = "#{spec.full_name}.gem" - local_gem_path = File.join @@install_dir, 'cache', gem_file_name + installdir = @@install_dir + unless @@build_root.nil? or @@build_root == "" + installdir = File.join(@@build_root, @@install_dir) d31 6 a36 1 + local_gem_path = File.join installdir, 'cache', gem_file_name d38 4 a41 2 - Gem.ensure_gem_subdirectories @@install_dir + Gem.ensure_gem_subdirectories installdir d43 3 a45 3 source_uri = URI.parse source_uri unless URI::Generic === source_uri scheme = source_uri.scheme @@@@ -230,6 +236,7 @@@@ class Gem::DependencyInstaller d49 1 a49 1 + :build_root => @@build_root, d51 2 a52 2 :wrappers => @@wrappers @ 1.4 log @+ Add patches by Marcus Rueckert for destdir-style installation of gems. Patches from the OpenSuSE rubygems-1.0.1 src rpm. + Support user-destdir installation. + Dynamically generate the entire portion of the PLIST that corresponds to the documentation generated by rubygem at install-time. Bump the PKGREVISION to 1. @ text @d4 2 d17 18 a34 1 @@@@ -230,6 +231,7 @@@@ class Gem::DependencyInstaller @ 1.3 log @Update rubygems to 0.9.2. Major changes since 0.9.0: * RubyGems no longer allows installation of files outside the gem directory * #require_gem will now print a warning, use #gem instead * RubyGems now requires ruby 1.8.2 or greater * RubyGems is -w clean * The "unpack" command now works properly. * User name and password are now passed properly to the authenticating proxy when downloading gems. @ text @d1 1 a1 1 $NetBSD: patch-ab,v 1.2 2007/02/03 20:42:33 salo Exp $ d3 20 a22 33 Index: lib/rubygems/installer.rb =================================================================== --- lib/rubygems/installer.rb (revision 1195) +++ lib/rubygems/installer.rb (working copy) @@@@ -335,14 +335,20 @@@@ TEXT # def extract_files(directory, format) require 'fileutils' - wd = Dir.getwd - Dir.chdir directory do - format.file_entries.each do |entry, file_data| - path = entry['path'].untaint - FileUtils.mkdir_p File.dirname(path) - File.open(path, "wb") do |out| - out.write file_data - end + format.file_entries.each do |entry, file_data| + path = entry['path'].untaint + if path =~ /\A\// then # for extra sanity + raise Gem::InstallError, + "attempt to install file into #{entry['path'].inspect}" + end + path = File.expand_path File.join(directory, path) + if path !~ /\A#{Regexp.escape directory}/ then + raise Gem::InstallError, + "attempt to install file into #{entry['path'].inspect}" + end + FileUtils.mkdir_p File.dirname(path) + File.open(path, "wb") do |out| + out.write file_data end end end @ 1.2 log @Add missing rcsid. @ text @d1 1 a1 1 $NetBSD$ @ 1.2.2.1 log @file patch-ab was added on branch pkgsrc-2006Q4 on 2007-02-03 20:42:33 +0000 @ text @d1 35 @ 1.2.2.2 log @Pullup ticket 2008 - requested by taca security fix for rubygems Revisions pulled up: - pkgsrc/misc/rubygems/Makefile 1.6 - pkgsrc/misc/rubygems/distinfo 1.6, 1.7 - pkgsrc/misc/rubygems/patches/patch-ab 1.1, 1.2 Module Name: pkgsrc Committed By: taca Date: Sun Jan 28 16:08:55 UTC 2007 Modified Files: pkgsrc/misc/rubygems: Makefile distinfo Added Files: pkgsrc/misc/rubygems/patches: patch-ab Log Message: Add a patch to fix security problem of RubyGems 0.9.0 and prior. (http://www.frsirt.com/english/advisories/2007/0295) Bump PKGREVISION. --- Module Name: pkgsrc Committed By: salo Date: Sat Feb 3 20:42:33 UTC 2007 Modified Files: pkgsrc/misc/rubygems: distinfo pkgsrc/misc/rubygems/patches: patch-ab Log Message: Add missing rcsid. @ text @a0 35 $NetBSD: patch-ab,v 1.2.2.1 2007/02/03 20:59:11 salo Exp $ Index: lib/rubygems/installer.rb =================================================================== --- lib/rubygems/installer.rb (revision 1195) +++ lib/rubygems/installer.rb (working copy) @@@@ -335,14 +335,20 @@@@ TEXT # def extract_files(directory, format) require 'fileutils' - wd = Dir.getwd - Dir.chdir directory do - format.file_entries.each do |entry, file_data| - path = entry['path'].untaint - FileUtils.mkdir_p File.dirname(path) - File.open(path, "wb") do |out| - out.write file_data - end + format.file_entries.each do |entry, file_data| + path = entry['path'].untaint + if path =~ /\A\// then # for extra sanity + raise Gem::InstallError, + "attempt to install file into #{entry['path'].inspect}" + end + path = File.expand_path File.join(directory, path) + if path !~ /\A#{Regexp.escape directory}/ then + raise Gem::InstallError, + "attempt to install file into #{entry['path'].inspect}" + end + FileUtils.mkdir_p File.dirname(path) + File.open(path, "wb") do |out| + out.write file_data end end end @ 1.1 log @Add a patch to fix security problem of RubyGems 0.9.0 and prior. (http://www.frsirt.com/english/advisories/2007/0295) Bump PKGREVISION. @ text @d1 2 @