Update rubygems package to 1.8.23. === 1.8.23 / 2012-04-19 This release increases the security used when RubyGems is talking to an https server. If you use a custom RubyGems server over SSL, this release will cause RubyGems to no longer connect unless your SSL cert is globally valid. You can configure SSL certificate usage in RubyGems through the :ssl_ca_cert and :ssl_verify_mode options in ~/.gemrc and /etc/gemrc. The recommended way is to set :ssl_ca_cert to the CA certificate for your server or a certificate bundle containing your CA certification. You may also set :ssl_verify_mode to 0 to completely disable SSL certificate checks, but this is not recommended. * 2 security fixes: * Disallow redirects from https to http * Turn on verification of server SSL certs * 1 minor feature: * Add --clear-sources to fetch * 2 bug fixes: * Use File.identical? to check if two files are the same. * Fixed init_with warning when using psych === 1.8.22 / 2012-04-13 * 4 bug fixes: * Workaround for psych/syck YAML date parsing issue * Don't trust the encoding of ARGV. Fixes #307 * Quiet default warnings about missing spec variables * Read a binary file properly (windows fix) === 1.8.21 / 2012-03-22 * 2 bug fixes: * Add workaround for buggy yaml output from 1.9.2 * Force 1.9.1 to remove it's prelude code. Fixes #305 === 1.8.20 / 2012-03-21 * 4 bug fixes: * Add --force to `gem build` to skip validation. Fixes #297 * Gracefully deal with YAML::PrivateType objects in Marshal'd gemspecs * Treat the source as a proper url base. Fixes #304 * Warn when updating the specs cache fails. Fixes #300 === 1.8.19 / 2012-03-14 * 3 bug fixes: * Handle loading psych vs syck properly. Fixes #298 * Make sure Date objects don't leak in via Marshal * Perform Date => Time coercion on yaml loading. Fixes #266 === 1.8.18 / 2012-03-11 * 4 bug fixes: * Use Psych API to emit more compatible YAML * Download and write inside `gem fetch` directly. Fixes #289 * Honor sysconfdir on 1.8. Fixes #291 * Search everywhere for a spec for `gem spec`. Fixes #288 * Fix Gem.all_load_path. Fixes #171diff -r1.46 -r1.47 pkgsrc/misc/rubygems/Makefile
(taca)
@@ -1,16 +1,16 @@ | @@ -1,16 +1,16 @@ | |||
1 | # $NetBSD: Makefile,v 1.46 2012/02/19 16:32:43 taca Exp $ | 1 | # $NetBSD: Makefile,v 1.47 2012/04/22 08:11:54 taca Exp $ | |
2 | 2 | |||
3 | DISTNAME= rubygems-1.8.17 | 3 | DISTNAME= rubygems-1.8.23 | |
4 | CATEGORIES= misc ruby | 4 | CATEGORIES= misc ruby | |
5 | MASTER_SITES= http://production.cf.rubygems.org/rubygems/ \ | 5 | MASTER_SITES= http://production.cf.rubygems.org/rubygems/ \ | |
6 | http://rubyforge.org/frs/download.php/75309/ | 6 | http://rubyforge.org/frs/download.php/75309/ | |
7 | EXTRACT_SUFX= .tgz | 7 | EXTRACT_SUFX= .tgz | |
8 | 8 | |||
9 | MAINTAINER= taca@NetBSD.org | 9 | MAINTAINER= taca@NetBSD.org | |
10 | HOMEPAGE= http://www.rubygems.org/ | 10 | HOMEPAGE= http://www.rubygems.org/ | |
11 | COMMENT= Ruby standard for publishing and managing third party libraries | 11 | COMMENT= Ruby standard for publishing and managing third party libraries | |
12 | LICENSE= gnu-gpl-v2 OR ruby-license | 12 | LICENSE= gnu-gpl-v2 OR ruby-license | |
13 | 13 | |||
14 | PKG_DESTDIR_SUPPORT= user-destdir | 14 | PKG_DESTDIR_SUPPORT= user-destdir | |
15 | 15 | |||
16 | CONFLICTS+= rubygems-[0-9]* | 16 | CONFLICTS+= rubygems-[0-9]* | |
@@ -34,37 +34,41 @@ REQD_DIRS+= ${GEM_HOME}/specifications | @@ -34,37 +34,41 @@ REQD_DIRS+= ${GEM_HOME}/specifications | |||
34 | 34 | |||
35 | SUBST_CLASSES+= conf | 35 | SUBST_CLASSES+= conf | |
36 | SUBST_STAGE.conf= pre-install | 36 | SUBST_STAGE.conf= pre-install | |
37 | SUBST_FILES.conf= lib/rubygems/config_file.rb | 37 | SUBST_FILES.conf= lib/rubygems/config_file.rb | |
38 | SUBST_SED.conf= -e "s|@PKG_SYSCONFDIR@|${PKG_SYSCONFDIR}|g" | 38 | SUBST_SED.conf= -e "s|@PKG_SYSCONFDIR@|${PKG_SYSCONFDIR}|g" | |
39 | SUBST_MESSAGE.conf= Fixing configuration files. | 39 | SUBST_MESSAGE.conf= Fixing configuration files. | |
40 | 40 | |||
41 | FILES_SUBST+= RUBYGEM_NAME=${RUBYGEM_NAME} | 41 | FILES_SUBST+= RUBYGEM_NAME=${RUBYGEM_NAME} | |
42 | 42 | |||
43 | # Generate a dynamic PLIST for the rubygems documentation directory. | 43 | # Generate a dynamic PLIST for the rubygems documentation directory. | |
44 | GENERATE_PLIST+= \ | 44 | GENERATE_PLIST+= \ | |
45 | ${ECHO} "@comment The following lines are automatically generated." && \ | 45 | ${ECHO} "@comment The following lines are automatically generated." && \ | |
46 | cd ${DESTDIR}${PREFIX} && \ | 46 | cd ${DESTDIR}${PREFIX} && \ | |
47 | ${FIND} ${GEM_DOCDIR:S|${PREFIX}/||} \! -type d -print | \ | 47 | if [ -d ${GEM_DOCDIR:S|${PREFIX}/||} ]; then \ | |
48 | ${SORT}; | 48 | ${FIND} ${GEM_DOCDIR:S|${PREFIX}/||} \! -type d -print | \ | |
49 | ${SORT}; \ | |||
50 | else \ | |||
51 | :; \ | |||
52 | fi | |||
49 | 53 | |||
50 | # Force the Gem repository to be under ${DESTDIR}. This is harmless | 54 | # Force the Gem repository to be under ${DESTDIR}. This is harmless | |
51 | # because this package depends on no other gems. | 55 | # because this package depends on no other gems. | |
52 | # | 56 | # | |
53 | INSTALL_ENV+= GEM_HOME=${DESTDIR}${PREFIX}/${GEM_HOME} | 57 | INSTALL_ENV+= GEM_HOME=${DESTDIR}${PREFIX}/${GEM_HOME} | |
54 | INSTALL_ENV+= GEM_PATH=${DESTDIR}${PREFIX}/${GEM_HOME} | 58 | INSTALL_ENV+= GEM_PATH=${DESTDIR}${PREFIX}/${GEM_HOME} | |
55 | 59 | |||
56 | INSTALL_TARGET= install | 60 | INSTALL_TARGET= install | |
57 | INSTALL_TARGET+= --vendor | 61 | INSTALL_TARGET+= --vendor --no-rdoc --no-ri | |
58 | .if ${_USE_DESTDIR} != "no" | 62 | .if ${_USE_DESTDIR} != "no" | |
59 | INSTALL_TARGET+= --destdir=${DESTDIR:Q} | 63 | INSTALL_TARGET+= --destdir=${DESTDIR:Q} | |
60 | .endif | 64 | .endif | |
61 | 65 | |||
62 | # rubygem's setup.rb is not the typical setup.rb -- manually run the | 66 | # rubygem's setup.rb is not the typical setup.rb -- manually run the | |
63 | # command to install. | 67 | # command to install. | |
64 | # | 68 | # | |
65 | do-install: | 69 | do-install: | |
66 | if [ -f ${DESTDIR}${PREFIX}/bin/${RUBYGEM_NAME} ]; then \ | 70 | if [ -f ${DESTDIR}${PREFIX}/bin/${RUBYGEM_NAME} ]; then \ | |
67 | ${MV} ${DESTDIR}${PREFIX}/bin/${RUBYGEM_NAME} \ | 71 | ${MV} ${DESTDIR}${PREFIX}/bin/${RUBYGEM_NAME} \ | |
68 | ${DESTDIR}${PREFIX}/bin/${RUBYGEM_NAME}.orig; \ | 72 | ${DESTDIR}${PREFIX}/bin/${RUBYGEM_NAME}.orig; \ | |
69 | fi | 73 | fi | |
70 | cd ${WRKSRC} && ${SETENV} ${INSTALL_ENV} ${MAKE_ENV} \ | 74 | cd ${WRKSRC} && ${SETENV} ${INSTALL_ENV} ${MAKE_ENV} \ |
@@ -1,14 +1,14 @@ | @@ -1,14 +1,14 @@ | |||
1 | @comment $NetBSD: PLIST,v 1.19 2011/12/15 14:40:47 taca Exp $ | 1 | @comment $NetBSD: PLIST,v 1.20 2012/04/22 08:11:54 taca Exp $ | |
2 | bin/gem${RUBY_VER}.new | 2 | bin/gem${RUBY_VER}.new | |
3 | ${RUBY_VENDORLIB}/gauntlet_rubygems.rb | 3 | ${RUBY_VENDORLIB}/gauntlet_rubygems.rb | |
4 | ${RUBY_VENDORLIB}/rbconfig/datadir.rb | 4 | ${RUBY_VENDORLIB}/rbconfig/datadir.rb | |
5 | ${RUBY_VENDORLIB}/rubygems.rb | 5 | ${RUBY_VENDORLIB}/rubygems.rb | |
6 | ${RUBY_VENDORLIB}/rubygems/builder.rb | 6 | ${RUBY_VENDORLIB}/rubygems/builder.rb | |
7 | ${RUBY_VENDORLIB}/rubygems/command.rb | 7 | ${RUBY_VENDORLIB}/rubygems/command.rb | |
8 | ${RUBY_VENDORLIB}/rubygems/command_manager.rb | 8 | ${RUBY_VENDORLIB}/rubygems/command_manager.rb | |
9 | ${RUBY_VENDORLIB}/rubygems/commands/build_command.rb | 9 | ${RUBY_VENDORLIB}/rubygems/commands/build_command.rb | |
10 | ${RUBY_VENDORLIB}/rubygems/commands/cert_command.rb | 10 | ${RUBY_VENDORLIB}/rubygems/commands/cert_command.rb | |
11 | ${RUBY_VENDORLIB}/rubygems/commands/check_command.rb | 11 | ${RUBY_VENDORLIB}/rubygems/commands/check_command.rb | |
12 | ${RUBY_VENDORLIB}/rubygems/commands/cleanup_command.rb | 12 | ${RUBY_VENDORLIB}/rubygems/commands/cleanup_command.rb | |
13 | ${RUBY_VENDORLIB}/rubygems/commands/contents_command.rb | 13 | ${RUBY_VENDORLIB}/rubygems/commands/contents_command.rb | |
14 | ${RUBY_VENDORLIB}/rubygems/commands/dependency_command.rb | 14 | ${RUBY_VENDORLIB}/rubygems/commands/dependency_command.rb | |
@@ -64,31 +64,34 @@ ${RUBY_VENDORLIB}/rubygems/mock_gem_ui.r | @@ -64,31 +64,34 @@ ${RUBY_VENDORLIB}/rubygems/mock_gem_ui.r | |||
64 | ${RUBY_VENDORLIB}/rubygems/old_format.rb | 64 | ${RUBY_VENDORLIB}/rubygems/old_format.rb | |
65 | ${RUBY_VENDORLIB}/rubygems/package.rb | 65 | ${RUBY_VENDORLIB}/rubygems/package.rb | |
66 | ${RUBY_VENDORLIB}/rubygems/package/f_sync_dir.rb | 66 | ${RUBY_VENDORLIB}/rubygems/package/f_sync_dir.rb | |
67 | ${RUBY_VENDORLIB}/rubygems/package/tar_header.rb | 67 | ${RUBY_VENDORLIB}/rubygems/package/tar_header.rb | |
68 | ${RUBY_VENDORLIB}/rubygems/package/tar_input.rb | 68 | ${RUBY_VENDORLIB}/rubygems/package/tar_input.rb | |
69 | ${RUBY_VENDORLIB}/rubygems/package/tar_output.rb | 69 | ${RUBY_VENDORLIB}/rubygems/package/tar_output.rb | |
70 | ${RUBY_VENDORLIB}/rubygems/package/tar_reader.rb | 70 | ${RUBY_VENDORLIB}/rubygems/package/tar_reader.rb | |
71 | ${RUBY_VENDORLIB}/rubygems/package/tar_reader/entry.rb | 71 | ${RUBY_VENDORLIB}/rubygems/package/tar_reader/entry.rb | |
72 | ${RUBY_VENDORLIB}/rubygems/package/tar_test_case.rb | 72 | ${RUBY_VENDORLIB}/rubygems/package/tar_test_case.rb | |
73 | ${RUBY_VENDORLIB}/rubygems/package/tar_writer.rb | 73 | ${RUBY_VENDORLIB}/rubygems/package/tar_writer.rb | |
74 | ${RUBY_VENDORLIB}/rubygems/package_task.rb | 74 | ${RUBY_VENDORLIB}/rubygems/package_task.rb | |
75 | ${RUBY_VENDORLIB}/rubygems/path_support.rb | 75 | ${RUBY_VENDORLIB}/rubygems/path_support.rb | |
76 | ${RUBY_VENDORLIB}/rubygems/platform.rb | 76 | ${RUBY_VENDORLIB}/rubygems/platform.rb | |
77 | ${RUBY_VENDORLIB}/rubygems/psych_additions.rb | |||
78 | ${RUBY_VENDORLIB}/rubygems/psych_tree.rb | |||
77 | ${RUBY_VENDORLIB}/rubygems/remote_fetcher.rb | 79 | ${RUBY_VENDORLIB}/rubygems/remote_fetcher.rb | |
78 | ${RUBY_VENDORLIB}/rubygems/require_paths_builder.rb | 80 | ${RUBY_VENDORLIB}/rubygems/require_paths_builder.rb | |
79 | ${RUBY_VENDORLIB}/rubygems/requirement.rb | 81 | ${RUBY_VENDORLIB}/rubygems/requirement.rb | |
80 | ${RUBY_VENDORLIB}/rubygems/security.rb | 82 | ${RUBY_VENDORLIB}/rubygems/security.rb | |
81 | ${RUBY_VENDORLIB}/rubygems/server.rb | 83 | ${RUBY_VENDORLIB}/rubygems/server.rb | |
82 | ${RUBY_VENDORLIB}/rubygems/source_index.rb | 84 | ${RUBY_VENDORLIB}/rubygems/source_index.rb | |
83 | ${RUBY_VENDORLIB}/rubygems/spec_fetcher.rb | 85 | ${RUBY_VENDORLIB}/rubygems/spec_fetcher.rb | |
84 | ${RUBY_VENDORLIB}/rubygems/specification.rb | 86 | ${RUBY_VENDORLIB}/rubygems/specification.rb | |
85 | ${RUBY_VENDORLIB}/rubygems/syck_hack.rb | 87 | ${RUBY_VENDORLIB}/rubygems/syck_hack.rb | |
86 | ${RUBY_VENDORLIB}/rubygems/test_case.rb | 88 | ${RUBY_VENDORLIB}/rubygems/test_case.rb | |
87 | ${RUBY_VENDORLIB}/rubygems/test_utilities.rb | 89 | ${RUBY_VENDORLIB}/rubygems/test_utilities.rb | |
88 | ${RUBY_VENDORLIB}/rubygems/text.rb | 90 | ${RUBY_VENDORLIB}/rubygems/text.rb | |
89 | ${RUBY_VENDORLIB}/rubygems/uninstaller.rb | 91 | ${RUBY_VENDORLIB}/rubygems/uninstaller.rb | |
90 | ${RUBY_VENDORLIB}/rubygems/user_interaction.rb | 92 | ${RUBY_VENDORLIB}/rubygems/user_interaction.rb | |
91 | ${RUBY_VENDORLIB}/rubygems/validator.rb | 93 | ${RUBY_VENDORLIB}/rubygems/validator.rb | |
92 | ${RUBY_VENDORLIB}/rubygems/version.rb | 94 | ${RUBY_VENDORLIB}/rubygems/version.rb | |
93 | ${RUBY_VENDORLIB}/rubygems/version_option.rb | 95 | ${RUBY_VENDORLIB}/rubygems/version_option.rb | |
94 | ${RUBY_VENDORLIB}/ubygems.rb | 96 | ${RUBY_VENDORLIB}/ubygems.rb | |
97 | @pkgdir lib/ruby/gems/1.9.3/doc |
@@ -1,19 +1,19 @@ | @@ -1,19 +1,19 @@ | |||
1 | $NetBSD: distinfo,v 1.36 2012/02/19 16:32:43 taca Exp $ | 1 | $NetBSD: distinfo,v 1.37 2012/04/22 08:11:54 taca Exp $ | |
2 | 2 | |||
3 | SHA1 (rubygems-1.8.17.tgz) = ad4ab95bc3673c0c664d6fea2e40ce1cadec92cd | 3 | SHA1 (rubygems-1.8.23.tgz) = add96c8aed4e11526995bc354a213c72a393980c | |
4 | RMD160 (rubygems-1.8.17.tgz) = 06659da8d782b3196b89d9eeeefec591fa8e0822 | 4 | RMD160 (rubygems-1.8.23.tgz) = 624c47502305f9ae91ae6acb48e8772a187a2ca8 | |
5 | Size (rubygems-1.8.17.tgz) = 252560 bytes | 5 | Size (rubygems-1.8.23.tgz) = 379999 bytes | |
6 | SHA1 (patch-aa) = cd7fde36ce3d67a5d96a3280d9f11b3c5b78a820 | 6 | SHA1 (patch-aa) = 6f58690757271a230ead260a3429732067256567 | |
7 | SHA1 (patch-ab) = d2917ec23a41293049bdf901c809423126a6161d | 7 | SHA1 (patch-ab) = d2917ec23a41293049bdf901c809423126a6161d | |
8 | SHA1 (patch-ac) = 7814fd204106f67e04ee9d278666b9ba30da3478 | 8 | SHA1 (patch-ac) = 7814fd204106f67e04ee9d278666b9ba30da3478 | |
9 | SHA1 (patch-ad) = 79c1a0750925862598545a992380ef7dfd8803a1 | 9 | SHA1 (patch-ad) = 79c1a0750925862598545a992380ef7dfd8803a1 | |
10 | SHA1 (patch-af) = 4a138fb8c91189e4b39a12882a05f066100f08c4 | 10 | SHA1 (patch-af) = 4a138fb8c91189e4b39a12882a05f066100f08c4 | |
11 | SHA1 (patch-ag) = fe209f86dd68bfb8de7084b7a64e22a4dd6240f9 | 11 | SHA1 (patch-ag) = fe209f86dd68bfb8de7084b7a64e22a4dd6240f9 | |
12 | SHA1 (patch-ah) = cc3fc04696ea66670625d107872bb7c2e19b6114 | 12 | SHA1 (patch-ah) = cc3fc04696ea66670625d107872bb7c2e19b6114 | |
13 | SHA1 (patch-aj) = 3b77a675470ea3702b9870843d2bb39bb6a83f3e | 13 | SHA1 (patch-aj) = 3b77a675470ea3702b9870843d2bb39bb6a83f3e | |
14 | SHA1 (patch-al) = beeff0531ff4bd23c0796b1e28805ae6fe2202b0 | 14 | SHA1 (patch-al) = beeff0531ff4bd23c0796b1e28805ae6fe2202b0 | |
15 | SHA1 (patch-am) = 374b16a77a3471958e0fcf7a60633658f9e9d559 | 15 | SHA1 (patch-am) = 374b16a77a3471958e0fcf7a60633658f9e9d559 | |
16 | SHA1 (patch-an) = a4de56fc44a4c7556486268344d44640538db108 | 16 | SHA1 (patch-an) = a4de56fc44a4c7556486268344d44640538db108 | |
17 | SHA1 (patch-ao) = b78557ffaa2df6c251ad7bfce760574e0ef3157a | 17 | SHA1 (patch-ao) = f2b6566e01eff03302a01e407a16120397ec5b50 | |
18 | SHA1 (patch-ap) = eaf2bf2fc7cc71139df7ce2677c3ec9fa95d1081 | 18 | SHA1 (patch-ap) = eaf2bf2fc7cc71139df7ce2677c3ec9fa95d1081 | |
19 | SHA1 (patch-test_rubygems_test__gem.rb) = 8bad451e8054fe954c13d28e542509b8adae2764 | 19 | SHA1 (patch-test_rubygems_test__gem.rb) = 8bad451e8054fe954c13d28e542509b8adae2764 |
@@ -1,70 +1,70 @@ | @@ -1,70 +1,70 @@ | |||
1 | $NetBSD: patch-aa,v 1.11 2011/09/04 17:05:13 taca Exp $ | 1 | $NetBSD: patch-aa,v 1.12 2012/04/22 08:11:54 taca Exp $ | |
2 | 2 | |||
3 | * Relax to allow some attribute could be nil. | 3 | * Relax to allow some attribute could be nil. | |
4 | * Complete "http://" to homepage attribute if it isn't begin with it. | 4 | * Complete "http://" to homepage attribute if it isn't begin with it. | |
5 | * Accpet date with Time, but ignore time part. | 5 | * Accpet date with Time, but ignore time part. | |
6 | 6 | |||
7 | --- lib/rubygems/specification.rb.orig 2011-08-27 00:43:50.000000000 +0000 | 7 | --- lib/rubygems/specification.rb.orig 2012-04-13 22:21:48.000000000 +0000 | |
8 | +++ lib/rubygems/specification.rb | 8 | +++ lib/rubygems/specification.rb | |
9 | @@ -118,6 +118,12 @@ class Gem::Specification | 9 | @@ -118,6 +118,12 @@ class Gem::Specification | |
10 | @@default_value[k].nil? | 10 | @@default_value[k].nil? | |
11 | } | 11 | } | |
12 | 12 | |||
13 | + # under pkgsrc environment | 13 | + # under pkgsrc environment | |
14 | + @@pkgsrc_nil_attributes = {} | 14 | + @@pkgsrc_nil_attributes = {} | |
15 | + [:authors, :cert_chain, :executables, :extensions, :extra_rdoc_files, :licenses, :required_rubygems_version, :test_files].each do |k| | 15 | + [:authors, :cert_chain, :executables, :extensions, :extra_rdoc_files, :licenses, :required_rubygems_version, :test_files].each do |k| | |
16 | + @@pkgsrc_nil_attributes[k] = true | 16 | + @@pkgsrc_nil_attributes[k] = true | |
17 | + end | 17 | + end | |
18 | + | 18 | + | |
19 | ###################################################################### | 19 | ###################################################################### | |
20 | # :section: Required gemspec attributes | 20 | # :section: Required gemspec attributes | |
21 | 21 | |||
22 | @@ -984,7 +990,7 @@ class Gem::Specification | 22 | @@ -1000,7 +1006,7 @@ class Gem::Specification | |
23 | # way to do it. | 23 | # way to do it. | |
24 | @date = case date | 24 | @date = case date | |
25 | when String then | 25 | when String then | |
26 | - if /\A(\d{4})-(\d{2})-(\d{2})\Z/ =~ date then | 26 | - if /\A(\d{4})-(\d{2})-(\d{2})\Z/ =~ date then | |
27 | + if /\A(\d{4})-(\d{2})-(\d{2})/ =~ date then | 27 | + if /\A(\d{4})-(\d{2})-(\d{2})/ =~ date then | |
28 | Time.utc($1.to_i, $2.to_i, $3.to_i) | 28 | Time.utc($1.to_i, $2.to_i, $3.to_i) | |
29 | else | 29 | ||
30 | raise(Gem::InvalidSpecificationException, | 30 | # Workaround for where the date format output from psych isn't | |
31 | @@ -1950,7 +1956,24 @@ class Gem::Specification | 31 | @@ -1987,7 +1993,24 @@ class Gem::Specification | |
32 | normalize | 32 | normalize | |
33 | 33 | |||
34 | nil_attributes = self.class.non_nil_attributes.find_all do |name| | 34 | nil_attributes = self.class.non_nil_attributes.find_all do |name| | |
35 | - instance_variable_get("@#{name}").nil? | 35 | - instance_variable_get("@#{name}").nil? | |
36 | + val = instance_variable_get("@#{name}") | 36 | + val = instance_variable_get("@#{name}") | |
37 | + if val.nil? | 37 | + if val.nil? | |
38 | + if @@pkgsrc_nil_attributes.key?(name) | 38 | + if @@pkgsrc_nil_attributes.key?(name) | |
39 | + case name | 39 | + case name | |
40 | + when :required_rubygems_version | 40 | + when :required_rubygems_version | |
41 | + val = Gem::Requirement.default | 41 | + val = Gem::Requirement.default | |
42 | + else | 42 | + else | |
43 | + val = [] | 43 | + val = [] | |
44 | + end | 44 | + end | |
45 | + instance_variable_set("@#{name}", val) | 45 | + instance_variable_set("@#{name}", val) | |
46 | + false | 46 | + false | |
47 | + end | 47 | + end | |
48 | + end | 48 | + end | |
49 | + if name == :authors and val.empty? | 49 | + if name == :authors and val.empty? | |
50 | + val = ['not specified'] | 50 | + val = ['not specified'] | |
51 | + self.authors = val | 51 | + self.authors = val | |
52 | + false | 52 | + false | |
53 | + end | 53 | + end | |
54 | end | 54 | end | |
55 | 55 | |||
56 | unless nil_attributes.empty? then | 56 | unless nil_attributes.empty? then | |
57 | @@ -2053,10 +2076,15 @@ class Gem::Specification | 57 | @@ -2090,10 +2113,15 @@ class Gem::Specification | |
58 | raise Gem::InvalidSpecificationException, "#{lazy} is not a summary" | 58 | raise Gem::InvalidSpecificationException, "#{lazy} is not a summary" | |
59 | end | 59 | end | |
60 | 60 | |||
61 | - if homepage and not homepage.empty? and | 61 | - if homepage and not homepage.empty? and | |
62 | - homepage !~ /\A[a-z][a-z\d+.-]*:/i then | 62 | - homepage !~ /\A[a-z][a-z\d+.-]*:/i then | |
63 | - raise Gem::InvalidSpecificationException, | 63 | - raise Gem::InvalidSpecificationException, | |
64 | + if homepage and not homepage.empty? | 64 | + if homepage and not homepage.empty? | |
65 | + if @homepage =~ /\A[a-z][a-z\d+.-]*/i and | 65 | + if @homepage =~ /\A[a-z][a-z\d+.-]*/i and | |
66 | + @homepage !~ /\A[a-z][a-z\d+.-]*:/i | 66 | + @homepage !~ /\A[a-z][a-z\d+.-]*:/i | |
67 | + @homepage = "http://" + @homepage | 67 | + @homepage = "http://" + @homepage | |
68 | + end | 68 | + end | |
69 | + if homepage !~ /\A[a-z][a-z\d+.-]*:/i then | 69 | + if homepage !~ /\A[a-z][a-z\d+.-]*:/i then | |
70 | + raise Gem::InvalidSpecificationException, | 70 | + raise Gem::InvalidSpecificationException, |
@@ -1,40 +1,40 @@ | @@ -1,40 +1,40 @@ | |||
1 | $NetBSD: patch-ao,v 1.3 2011/03/23 14:35:05 taca Exp $ | 1 | $NetBSD: patch-ao,v 1.4 2012/04/22 08:11:54 taca Exp $ | |
2 | 2 | |||
3 | Don't hard code config file's path for gem. | 3 | Don't hard code config file's path for gem. | |
4 | 4 | |||
5 | --- lib/rubygems/config_file.rb.orig 2011-02-26 20:40:09.000000000 +0000 | 5 | --- lib/rubygems/config_file.rb.orig 2012-03-22 21:25:48.000000000 +0000 | |
6 | +++ lib/rubygems/config_file.rb | 6 | +++ lib/rubygems/config_file.rb | |
7 | @@ -45,32 +45,7 @@ class Gem::ConfigFile | 7 | @@ -47,32 +47,7 @@ class Gem::ConfigFile | |
8 | 8 | |||
9 | PLATFORM_DEFAULTS = {} | 9 | PLATFORM_DEFAULTS = {} | |
10 | 10 | |||
11 | - system_config_path = | 11 | - system_config_path = | |
12 | - begin | 12 | - begin | |
13 | - require "etc" | 13 | - require "etc" | |
14 | - Etc.sysconfdir | 14 | - Etc.sysconfdir | |
15 | - rescue LoadError, NoMethodError | 15 | - rescue LoadError, NoMethodError | |
16 | - begin | 16 | - begin | |
17 | - # TODO: remove after we drop 1.8.7 and 1.9.1 | 17 | - # TODO: remove after we drop 1.8.7 and 1.9.1 | |
18 | - require 'Win32API' | 18 | - require 'Win32API' | |
19 | - | 19 | - | |
20 | - CSIDL_COMMON_APPDATA = 0x0023 | 20 | - CSIDL_COMMON_APPDATA = 0x0023 | |
21 | - path = 0.chr * 260 | 21 | - path = 0.chr * 260 | |
22 | - if RUBY_VERSION > '1.9' then | 22 | - if RUBY_VERSION > '1.9' then | |
23 | - SHGetFolderPath = Win32API.new 'shell32', 'SHGetFolderPath', 'PLPLP', | 23 | - SHGetFolderPath = Win32API.new 'shell32', 'SHGetFolderPath', 'PLPLP', | |
24 | - 'L', :stdcall | 24 | - 'L', :stdcall | |
25 | - SHGetFolderPath.call nil, CSIDL_COMMON_APPDATA, nil, 1, path | 25 | - SHGetFolderPath.call nil, CSIDL_COMMON_APPDATA, nil, 1, path | |
26 | - else | 26 | - else | |
27 | - SHGetFolderPath = Win32API.new 'shell32', 'SHGetFolderPath', 'LLLLP', | 27 | - SHGetFolderPath = Win32API.new 'shell32', 'SHGetFolderPath', 'LLLLP', | |
28 | - 'L' | 28 | - 'L' | |
29 | - SHGetFolderPath.call 0, CSIDL_COMMON_APPDATA, 0, 1, path | 29 | - SHGetFolderPath.call 0, CSIDL_COMMON_APPDATA, 0, 1, path | |
30 | - end | 30 | - end | |
31 | - | 31 | - | |
32 | - path.strip | 32 | - path.strip | |
33 | - rescue LoadError | 33 | - rescue LoadError | |
34 | - "/etc" | 34 | - RbConfig::CONFIG["sysconfdir"] || "/etc" | |
35 | - end | 35 | - end | |
36 | - end | 36 | - end | |
37 | + system_config_path = '@PKG_SYSCONFDIR@' | 37 | + system_config_path = '@PKG_SYSCONFDIR@' | |
38 | 38 | |||
39 | SYSTEM_WIDE_CONFIG_FILE = File.join system_config_path, 'gemrc' | 39 | SYSTEM_WIDE_CONFIG_FILE = File.join system_config_path, 'gemrc' | |
40 | 40 |