From noreply at rubyforge.org Sat Dec 10 05:22:54 2011 From: noreply at rubyforge.org (noreply at rubyforge.org) Date: Sat, 10 Dec 2011 05:22:54 -0500 (EST) Subject: [ rubygems-Bugs-29469 ] installing pg - error: clang: error: linker command failed with exit code 1 (use -v to see invocation) make: *** [pg_ext.bundle] Error 1 Message-ID: <20111210102254.B64DB1D78108@rubyforge.org> Bugs item #29469, was opened at 10/12/2011 10:22 You can respond by visiting: http://rubyforge.org/tracker/?func=detail&atid=575&aid=29469&group_id=126 Category: `gem install` command Group: v1.9.x Status: Open Resolution: None Priority: 3 Submitted By: Guido Viarengo (guidov2) Assigned to: Nobody (None) Summary: installing pg - error: clang: error: linker command failed with exit code 1 (use -v to see invocation) make: *** [pg_ext.bundle] Error 1 Initial Comment: Hw: MACBOOK Processore 2 Ghz Intel Core 2 Duo Memoria 4 GB 667 MHz DDR2 SDRAM Grafica Intel GMA 950 64 MB Numero di serie 4H646HQ1WGL Software Mac OS X Lion 10.7.2 (11C74) Ruby version: MacBook-Guido-2:~ guidov$ ruby --version ruby 1.9.3p0 (2011-10-30 revision 33570) [x86_64-darwin11] MacBook-Guido-2:~ guidov$ Installed via mac port try to install pg I got this error: MacBook-Guido-2:~ guidov$ sudo gem install pg Building native extensions. This could take a while... ERROR: Error installing pg: ERROR: Failed to build gem native extension. /opt/local/bin/ruby extconf.rb checking for pg_config... yes Using config values from /usr/bin/pg_config checking for libpq-fe.h... yes checking for libpq/libpq-fs.h... yes checking for PQconnectdb() in -lpq... yes checking for PQconnectionUsedPassword()... yes checking for PQisthreadsafe()... yes checking for PQprepare()... yes checking for PQexecParams()... yes checking for PQescapeString()... yes checking for PQescapeStringConn()... yes checking for PQgetCancel()... yes checking for lo_create()... yes checking for pg_encoding_to_char()... yes checking for PQsetClientEncoding()... yes checking for rb_encdb_alias()... yes checking for rb_enc_alias()... no checking for struct pgNotify.extra in libpq-fe.h... yes checking for unistd.h... yes creating extconf.h creating Makefile make compiling compat.c compiling pg.c pg.c:2110:9: warning: 'rb_thread_select' is deprecated [-Wdeprecated-declarations] ret = rb_thread_select( sd+1, &sd_rset, NULL, NULL, ptimeout ); ^ pg.c:2585:26: warning: format string is not a string literal(potentially insecure) [-Wformat-security] rb_raise( rb_ePGError, PQerrorMessage(conn) ); ^~~~~~~~~~~~~~~~~~~~ pg.c:2591:15: warning: 'rb_thread_select' is deprecated [-Wdeprecated-declarations] if ( (ret = rb_thread_select( sd+1, &sd_rset, NULL, NULL, ptimeout )) < 0 ) pg.c:2600:27: warning: format string is not a string literal(potentially insecure) [-Wformat-security] rb_raise( rb_ePGError, PQerrorMessage(conn) ); ^~~~~~~~~~~~~~~~~~~~ pg.c:3940:3: warning: implicit declaration of function 'rb_encdb_alias' is invalid in C99 [-Wimplicit-function-declaration] ENC_ALIAS(aliases[i], aliases[0]); ^ pg.c:3919:32: note: instantiated from: # define ENC_ALIAS(name, orig) rb_encdb_alias((name), (orig)) ^ 5 warnings generated. linking shared-object pg_ext.bundle ld: in /usr/local/lib/libssl.0.9.8.dylib, missing required architecture x86_64 in file for architecture x86_64 clang: error: linker command failed with exit code 1 (use -v to see invocation) make: *** [pg_ext.bundle] Error 1 Gem files will remain installed in /opt/local/lib/ruby1.9/gems/1.9.1/gems/pg-0.12.0 for inspection. Results logged to /opt/local/lib/ruby1.9/gems/1.9.1/gems/pg-0.12.0/ext/gem_make.out MacBook-Guido-2:~ guidov$ Best regards ---------------------------------------------------------------------- You can respond by visiting: http://rubyforge.org/tracker/?func=detail&atid=575&aid=29469&group_id=126 From noreply at rubyforge.org Sat Dec 10 10:38:49 2011 From: noreply at rubyforge.org (noreply at rubyforge.org) Date: Sat, 10 Dec 2011 10:38:49 -0500 (EST) Subject: [ rubygems-Bugs-29469 ] installing pg - error: clang: error: linker command failed with exit code 1 (use -v to see invocation) make: *** [pg_ext.bundle] Error 1 Message-ID: <20111210153849.80B551D783DF@rubyforge.org> Bugs item #29469, was opened at 2011-12-10 02:22 You can respond by visiting: http://rubyforge.org/tracker/?func=detail&atid=575&aid=29469&group_id=126 Category: `gem install` command Group: v1.9.x >Status: Closed >Resolution: Rejected Priority: 3 Submitted By: Guido Viarengo (guidov2) Assigned to: Nobody (None) Summary: installing pg - error: clang: error: linker command failed with exit code 1 (use -v to see invocation) make: *** [pg_ext.bundle] Error 1 Initial Comment: Hw: MACBOOK Processore 2 Ghz Intel Core 2 Duo Memoria 4 GB 667 MHz DDR2 SDRAM Grafica Intel GMA 950 64 MB Numero di serie 4H646HQ1WGL Software Mac OS X Lion 10.7.2 (11C74) Ruby version: MacBook-Guido-2:~ guidov$ ruby --version ruby 1.9.3p0 (2011-10-30 revision 33570) [x86_64-darwin11] MacBook-Guido-2:~ guidov$ Installed via mac port try to install pg I got this error: MacBook-Guido-2:~ guidov$ sudo gem install pg Building native extensions. This could take a while... ERROR: Error installing pg: ERROR: Failed to build gem native extension. /opt/local/bin/ruby extconf.rb checking for pg_config... yes Using config values from /usr/bin/pg_config checking for libpq-fe.h... yes checking for libpq/libpq-fs.h... yes checking for PQconnectdb() in -lpq... yes checking for PQconnectionUsedPassword()... yes checking for PQisthreadsafe()... yes checking for PQprepare()... yes checking for PQexecParams()... yes checking for PQescapeString()... yes checking for PQescapeStringConn()... yes checking for PQgetCancel()... yes checking for lo_create()... yes checking for pg_encoding_to_char()... yes checking for PQsetClientEncoding()... yes checking for rb_encdb_alias()... yes checking for rb_enc_alias()... no checking for struct pgNotify.extra in libpq-fe.h... yes checking for unistd.h... yes creating extconf.h creating Makefile make compiling compat.c compiling pg.c pg.c:2110:9: warning: 'rb_thread_select' is deprecated [-Wdeprecated-declarations] ret = rb_thread_select( sd+1, &sd_rset, NULL, NULL, ptimeout ); ^ pg.c:2585:26: warning: format string is not a string literal(potentially insecure) [-Wformat-security] rb_raise( rb_ePGError, PQerrorMessage(conn) ); ^~~~~~~~~~~~~~~~~~~~ pg.c:2591:15: warning: 'rb_thread_select' is deprecated [-Wdeprecated-declarations] if ( (ret = rb_thread_select( sd+1, &sd_rset, NULL, NULL, ptimeout )) < 0 ) pg.c:2600:27: warning: format string is not a string literal(potentially insecure) [-Wformat-security] rb_raise( rb_ePGError, PQerrorMessage(conn) ); ^~~~~~~~~~~~~~~~~~~~ pg.c:3940:3: warning: implicit declaration of function 'rb_encdb_alias' is invalid in C99 [-Wimplicit-function-declaration] ENC_ALIAS(aliases[i], aliases[0]); ^ pg.c:3919:32: note: instantiated from: # define ENC_ALIAS(name, orig) rb_encdb_alias((name), (orig)) ^ 5 warnings generated. linking shared-object pg_ext.bundle ld: in /usr/local/lib/libssl.0.9.8.dylib, missing required architecture x86_64 in file for architecture x86_64 clang: error: linker command failed with exit code 1 (use -v to see invocation) make: *** [pg_ext.bundle] Error 1 Gem files will remain installed in /opt/local/lib/ruby1.9/gems/1.9.1/gems/pg-0.12.0 for inspection. Results logged to /opt/local/lib/ruby1.9/gems/1.9.1/gems/pg-0.12.0/ext/gem_make.out MacBook-Guido-2:~ guidov$ Best regards ---------------------------------------------------------------------- >Comment By: Ryan Davis (zenspider) Date: 2011-12-10 07:38 Message: This is a problem with pg. ---------------------------------------------------------------------- You can respond by visiting: http://rubyforge.org/tracker/?func=detail&atid=575&aid=29469&group_id=126 From noreply at rubyforge.org Sun Dec 11 03:29:06 2011 From: noreply at rubyforge.org (noreply at rubyforge.org) Date: Sun, 11 Dec 2011 03:29:06 -0500 (EST) Subject: [ rubygems-Bugs-29469 ] installing pg - error: clang: error: linker command failed with exit code 1 (use -v to see invocation) make: *** [pg_ext.bundle] Error 1 Message-ID: <20111211082906.9E7D41858361@rubyforge.org> Bugs item #29469, was opened at 2011-12-10 02:22 You can respond by visiting: http://rubyforge.org/tracker/?func=detail&atid=575&aid=29469&group_id=126 Category: `gem install` command Group: v1.9.x Status: Closed Resolution: Rejected Priority: 3 Submitted By: Guido Viarengo (guidov2) Assigned to: Nobody (None) Summary: installing pg - error: clang: error: linker command failed with exit code 1 (use -v to see invocation) make: *** [pg_ext.bundle] Error 1 Initial Comment: Hw: MACBOOK Processore 2 Ghz Intel Core 2 Duo Memoria 4 GB 667 MHz DDR2 SDRAM Grafica Intel GMA 950 64 MB Numero di serie 4H646HQ1WGL Software Mac OS X Lion 10.7.2 (11C74) Ruby version: MacBook-Guido-2:~ guidov$ ruby --version ruby 1.9.3p0 (2011-10-30 revision 33570) [x86_64-darwin11] MacBook-Guido-2:~ guidov$ Installed via mac port try to install pg I got this error: MacBook-Guido-2:~ guidov$ sudo gem install pg Building native extensions. This could take a while... ERROR: Error installing pg: ERROR: Failed to build gem native extension. /opt/local/bin/ruby extconf.rb checking for pg_config... yes Using config values from /usr/bin/pg_config checking for libpq-fe.h... yes checking for libpq/libpq-fs.h... yes checking for PQconnectdb() in -lpq... yes checking for PQconnectionUsedPassword()... yes checking for PQisthreadsafe()... yes checking for PQprepare()... yes checking for PQexecParams()... yes checking for PQescapeString()... yes checking for PQescapeStringConn()... yes checking for PQgetCancel()... yes checking for lo_create()... yes checking for pg_encoding_to_char()... yes checking for PQsetClientEncoding()... yes checking for rb_encdb_alias()... yes checking for rb_enc_alias()... no checking for struct pgNotify.extra in libpq-fe.h... yes checking for unistd.h... yes creating extconf.h creating Makefile make compiling compat.c compiling pg.c pg.c:2110:9: warning: 'rb_thread_select' is deprecated [-Wdeprecated-declarations] ret = rb_thread_select( sd+1, &sd_rset, NULL, NULL, ptimeout ); ^ pg.c:2585:26: warning: format string is not a string literal(potentially insecure) [-Wformat-security] rb_raise( rb_ePGError, PQerrorMessage(conn) ); ^~~~~~~~~~~~~~~~~~~~ pg.c:2591:15: warning: 'rb_thread_select' is deprecated [-Wdeprecated-declarations] if ( (ret = rb_thread_select( sd+1, &sd_rset, NULL, NULL, ptimeout )) < 0 ) pg.c:2600:27: warning: format string is not a string literal(potentially insecure) [-Wformat-security] rb_raise( rb_ePGError, PQerrorMessage(conn) ); ^~~~~~~~~~~~~~~~~~~~ pg.c:3940:3: warning: implicit declaration of function 'rb_encdb_alias' is invalid in C99 [-Wimplicit-function-declaration] ENC_ALIAS(aliases[i], aliases[0]); ^ pg.c:3919:32: note: instantiated from: # define ENC_ALIAS(name, orig) rb_encdb_alias((name), (orig)) ^ 5 warnings generated. linking shared-object pg_ext.bundle ld: in /usr/local/lib/libssl.0.9.8.dylib, missing required architecture x86_64 in file for architecture x86_64 clang: error: linker command failed with exit code 1 (use -v to see invocation) make: *** [pg_ext.bundle] Error 1 Gem files will remain installed in /opt/local/lib/ruby1.9/gems/1.9.1/gems/pg-0.12.0 for inspection. Results logged to /opt/local/lib/ruby1.9/gems/1.9.1/gems/pg-0.12.0/ext/gem_make.out MacBook-Guido-2:~ guidov$ Best regards ---------------------------------------------------------------------- >Comment By: Eric Hodel (drbrain) Date: 2011-12-11 00:29 Message: No, the problem is with the libraries. Ruby appears to be compiled x86_64, but libssl is not. It's still not a bug in rubygems. The ruby-talk mailing list is the best place to bring it up. ---------------------------------------------------------------------- Comment By: Ryan Davis (zenspider) Date: 2011-12-10 07:38 Message: This is a problem with pg. ---------------------------------------------------------------------- You can respond by visiting: http://rubyforge.org/tracker/?func=detail&atid=575&aid=29469&group_id=126 From ryand-ruby at zenspider.com Mon Dec 12 21:09:20 2011 From: ryand-ruby at zenspider.com (Ryan Davis) Date: Mon, 12 Dec 2011 18:09:20 -0800 Subject: Code Reviews Message-ID: <83CA56CF-68E1-41AC-B264-B94817A7C414@zenspider.com> Hi there! As discussed on the rubygems-dev mailing-list a couple weeks ago, rubygems codebase is a crufty mess and we need to fix it. First, we need to know what to fix. I'd like to see us do a full set of code reviews across the entire codebase with comment tags put in where the pain points are (detailed below). That way we can prioritize our pain and start to address it. This effort is intended to go towards a 2.0 release, NOT a 1.x release. It is meant to rejuvenate the codebase and get us pointed in the right direction. I'd like you to do a code review of rubygems specifically focusing on the following files: Aaron Patterson: lib/rubygems/command.rb lib/rubygems/commands/*.rb Eric Hodel: lib/rubygems/builder.rb lib/rubygems/command_manager.rb lib/rubygems/config_file.rb lib/rubygems/custom_require.rb lib/rubygems/defaults.rb lib/rubygems/dependency_list.rb lib/rubygems/deprecate.rb lib/rubygems/doc_manager.rb lib/rubygems/errors.rb lib/rubygems/exceptions.rb lib/rubygems/format.rb lib/rubygems/gem_openssl.rb lib/rubygems/gem_path_searcher.rb lib/rubygems/gem_runner.rb lib/rubygems/gemcutter_utilities.rb lib/rubygems/indexer.rb lib/rubygems/install_message.rb lib/rubygems/install_update_options.rb lib/rubygems/installer_test_case.rb Ryan Davis: lib/rubygems/local_remote_options.rb lib/rubygems/mock_gem_ui.rb lib/rubygems/old_format.rb lib/rubygems/package_task.rb lib/rubygems/path_support.rb lib/rubygems/platform.rb lib/rubygems/rdoc.rb lib/rubygems/remote_fetcher.rb lib/rubygems/require_paths_builder.rb lib/rubygems/security.rb lib/rubygems/server.rb lib/rubygems/source_index.rb lib/rubygems/spec_fetcher.rb lib/rubygems/test_case.rb lib/rubygems/test_utilities.rb lib/rubygems/text.rb lib/rubygems/user_interaction.rb lib/rubygems/validator.rb lib/rubygems/version_option.rb Evan Phoenix: lib/rubygems/dependency_installer.rb lib/rubygems/installer.rb lib/rubygems/uninstaller.rb lib/rubygems/ext/builder.rb lib/rubygems/ext/configure_builder.rb lib/rubygems/ext/ext_conf_builder.rb lib/rubygems/ext/rake_builder.rb lib/rubygems/ext.rb Steven Baker: lib/rubygems.rb lib/rubygems/specification.rb lib/rubygems/version.rb lib/rubygems/requirement.rb lib/rubygems/dependency.rb Steve Klabnik: lib/rubygems.rb lib/rubygems/specification.rb lib/rubygems/version.rb lib/rubygems/requirement.rb lib/rubygems/dependency.rb Secondarily, anything on the following list needs as many eyeballs as we can get: lib/rubygems.rb lib/rubygems/specification.rb lib/rubygems/installer.rb Tertiarily, I'd like to get eyeballs on these: test/**/*.rb ## Timeframe: I'd like to get these reviews done in the next week or two. Please let me know if that is an issue for you so I can juggle assignments. ## Submitting your review: If you don't have commit bit already, just fork rubygems and submit a pull request to me. If you do have commit bit, please commit to master. If you find overarching issues with the code that you don't think is appropriate as a code comment (eg, all option related files should be namespaced under rubygems/opt/*.rb), feel free to create a new issue on github instead. ## Tagging: Nothing complex... I standardize on the following (examples): # FIX: xxx is wrong # HACK: should have done xxx instead # TODO: xxx needs yyy # DOC # REFACTOR: duplicated from xxx # RETIRE: replaced by xxx # WARN: xxx is scary From noreply at rubyforge.org Tue Dec 13 11:45:45 2011 From: noreply at rubyforge.org (noreply at rubyforge.org) Date: Tue, 13 Dec 2011 11:45:45 -0500 (EST) Subject: [ rubygems-Bugs-28907 ] [RG 1.5.0/Ruby 1.9.x] source gem build error due to syck? Message-ID: <20111213164549.6850D1218277@rubyforge.org> Bugs item #28907, was opened at 2011-02-03 18:59 You can respond by visiting: http://rubyforge.org/tracker/?func=detail&atid=575&aid=28907&group_id=126 Category: `gem` commands (other) Group: v1.5.x Status: Closed Resolution: Accepted Priority: 3 Submitted By: Jon Forums (jonforums) Assigned to: Eric Hodel (drbrain) Summary: [RG 1.5.0/Ruby 1.9.x] source gem build error due to syck? Initial Comment: When building a source gem from http://github.com/oopsforge/oops-null using 'rake gem' I get the following error on Win7 with: * ruby 1.9.2p174 (2011-01-28 revision 30696) [i386-mingw32] * ruby 1.9.3dev (2011-02-04 trunk 30776) [i386-mingw32] but no errors using "ruby 1.8.7 (2010-12-23 patchlevel 330) [i386-mingw32]". Manually building via 'gem build oops-null.gemspec' work fine on all the Ruby versions including JRuby 1.6.0.RC1. All versions have been upgraded to RG 1.5.0 via "gem update --system". FWIW, the failure does not occur on "ruby 1.9.2 (2010-12-25 patchlevel 136) [i386-mingw32]" using RG 1.3.7 My "fix" was to add the following lines to the project Rakefile after the 3 require's: require 'yaml' YAML::ENGINE.yamler='psych' if defined?(YAML::ENGINE) I will try to replicate on my Arch system later this afternoon. Reproducible? Jon == ERROR == C:\projects\oops-null-git>gem env RubyGems Environment: - RUBYGEMS VERSION: 1.5.0 - RUBY VERSION: 1.9.2 (2011-01-28 patchlevel 174) [i386-mingw32] - INSTALLATION DIRECTORY: C:/ruby192/lib/ruby/gems/1.9.1 - RUBY EXECUTABLE: C:/ruby192/bin/ruby.exe - EXECUTABLE DIRECTORY: C:/ruby192/bin - RUBYGEMS PLATFORMS: - ruby - x86-mingw32 - GEM PATHS: - C:/ruby192/lib/ruby/gems/1.9.1 - C:/Users/Jon/.gem/ruby/1.9.1 - GEM CONFIGURATION: - :update_sources => true - :verbose => true - :benchmark => false - :backtrace => false - :bulk_threshold => 1000 - :sources => ["http://rubygems.org", "http://gemcutter.org"] - "gem" => "--no-ri --no-rdoc" - REMOTE SOURCES: - http://rubygems.org - http://gemcutter.org C:\projects\oops-null-git>rake gem (in C:/projects/oops-null-git) mkdir -p pkg mkdir -p pkg mkdir -p pkg/oops-null-0.3.0/bin rm -f pkg/oops-null-0.3.0/bin/nulloops ln bin/nulloops pkg/oops-null-0.3.0/bin/nulloops rm -f pkg/oops-null-0.3.0/Rakefile ln Rakefile pkg/oops-null-0.3.0/Rakefile rm -f pkg/oops-null-0.3.0/oops-null.gemspec ln oops-null.gemspec pkg/oops-null-0.3.0/oops-null.gemspec mkdir -p pkg/oops-null-0.3.0/ext/oops_null rm -f pkg/oops-null-0.3.0/ext/oops_null/extconf.rb ln ext/oops_null/extconf.rb pkg/oops-null-0.3.0/ext/oops_null/extconf.rb rm -f pkg/oops-null-0.3.0/ext/oops_null/oops_null.c ln ext/oops_null/oops_null.c pkg/oops-null-0.3.0/ext/oops_null/oops_null.c rm -f pkg/oops-null-0.3.0/ext/oops_null/oops_null.h ln ext/oops_null/oops_null.h pkg/oops-null-0.3.0/ext/oops_null/oops_null.h mkdir -p pkg/oops-null-0.3.0/lib rm -f pkg/oops-null-0.3.0/lib/oops-null.rb ln lib/oops-null.rb pkg/oops-null-0.3.0/lib/oops-null.rb cd pkg/oops-null-0.3.0 rake aborted! undefined method `write' for # C:/ruby192/lib/ruby/1.9.1/psych/visitors/emitter.rb:17:in `end_document' C:/ruby192/lib/ruby/1.9.1/psych/visitors/emitter.rb:17:in `visit_Psych_Nodes_Document' C:/ruby192/lib/ruby/1.9.1/psych/visitors/visitor.rb:10:in `accept' C:/ruby192/lib/ruby/1.9.1/psych/visitors/emitter.rb:10:in `block in visit_Psych_Nodes_Stream' C:/ruby192/lib/ruby/1.9.1/psych/visitors/emitter.rb:10:in `each' C:/ruby192/lib/ruby/1.9.1/psych/visitors/emitter.rb:10:in `visit_Psych_Nodes_Stream' C:/ruby192/lib/ruby/1.9.1/psych/visitors/visitor.rb:11:in `accept' C:/ruby192/lib/ruby/1.9.1/psych/nodes/node.rb:36:in `to_yaml' C:/ruby192/lib/ruby/1.9.1/psych.rb:166:in `dump' C:/ruby192/lib/ruby/1.9.1/psych/core_ext.rb:13:in `psych_to_yaml' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/specification.rb:706:in `node_export' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/specification.rb:706:in `add' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/specification.rb:706:in `encode_with' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/specification.rb:727:in `block (2 levels) in to_yaml' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/specification.rb:726:in `map' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/specification.rb:726:in `block in to_yaml' C:/ruby192/lib/ruby/1.9.1/syck.rb:401:in `call' C:/ruby192/lib/ruby/1.9.1/syck.rb:401:in `emit' C:/ruby192/lib/ruby/1.9.1/syck.rb:401:in `quick_emit' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/specification.rb:725:in `to_yaml' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/builder.rb:78:in `block (2 levels) in write_package' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_output.rb:73:in `block (3 levels) in add_gem_contents' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_writer.rb:83:in `new' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_output.rb:67:in `block (2 levels) in add_gem_contents' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_output.rb:65:in `wrap' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_output.rb:65:in `block in add_gem_contents' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_writer.rb:113:in `add_file' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_output.rb:63:in `add_gem_contents' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_output.rb:31:in `open' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/package.rb:68:in `open' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/builder.rb:77:in `block in write_package' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/builder.rb:76:in `open' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/builder.rb:76:in `write_package' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/builder.rb:39:in `build' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/package_task.rb:116:in `block (3 levels) in define' C:/ruby192/lib/ruby/1.9.1/rake.rb:1157:in `when_writing' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/package_task.rb:115:in `block (2 levels) in define' C:/ruby192/lib/ruby/1.9.1/fileutils.rb:121:in `chdir' C:/ruby192/lib/ruby/1.9.1/fileutils.rb:121:in `cd' C:/ruby192/lib/ruby/1.9.1/rake.rb:1092:in `chdir' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/package_task.rb:114:in `block in define' C:/ruby192/lib/ruby/1.9.1/rake.rb:634:in `call' C:/ruby192/lib/ruby/1.9.1/rake.rb:634:in `block in execute' C:/ruby192/lib/ruby/1.9.1/rake.rb:629:in `each' C:/ruby192/lib/ruby/1.9.1/rake.rb:629:in `execute' C:/ruby192/lib/ruby/1.9.1/rake.rb:595:in `block in invoke_with_call_chain' C:/ruby192/lib/ruby/1.9.1/monitor.rb:201:in `mon_synchronize' C:/ruby192/lib/ruby/1.9.1/rake.rb:588:in `invoke_with_call_chain' C:/ruby192/lib/ruby/1.9.1/rake.rb:605:in `block in invoke_prerequisites' C:/ruby192/lib/ruby/1.9.1/rake.rb:602:in `each' C:/ruby192/lib/ruby/1.9.1/rake.rb:602:in `invoke_prerequisites' C:/ruby192/lib/ruby/1.9.1/rake.rb:594:in `block in invoke_with_call_chain' C:/ruby192/lib/ruby/1.9.1/monitor.rb:201:in `mon_synchronize' C:/ruby192/lib/ruby/1.9.1/rake.rb:588:in `invoke_with_call_chain' C:/ruby192/lib/ruby/1.9.1/rake.rb:581:in `invoke' C:/ruby192/lib/ruby/1.9.1/rake.rb:2041:in `invoke_task' C:/ruby192/lib/ruby/1.9.1/rake.rb:2019:in `block (2 levels) in top_level' C:/ruby192/lib/ruby/1.9.1/rake.rb:2019:in `each' C:/ruby192/lib/ruby/1.9.1/rake.rb:2019:in `block in top_level' C:/ruby192/lib/ruby/1.9.1/rake.rb:2058:in `standard_exception_handling' C:/ruby192/lib/ruby/1.9.1/rake.rb:2013:in `top_level' C:/ruby192/lib/ruby/1.9.1/rake.rb:1992:in `run' C:/ruby192/bin/rake:31:in `
' ---------------------------------------------------------------------- Comment By: Roger Pack (rogerdpack) Date: 2011-12-13 16:45 Message: just got this today: undefined method `write' for # ruby 1.9.2p290 (2011-07-09) [i386-mingw32] full output: https://gist.github.com/1472862 will reopen if I run into this again... ---------------------------------------------------------------------- Comment By: Roger Pack (rogerdpack) Date: 2011-03-03 20:01 Message: Was this still fixed in 1.6.0? (I'm still getting it there). Thanks! -r ---------------------------------------------------------------------- Comment By: Eric Hodel (drbrain) Date: 2011-02-28 18:56 Message: Fixed by 1.5.3 ---------------------------------------------------------------------- Comment By: Ryan Davis (zenspider) Date: 2011-02-25 19:38 Message: So, to be clear, if psych is used to create a gemspec with a version specifier using "=", and the gem is subsequently loaded using syck, this error will occur. This is a bug in syck. Our workaround is to look up the parsed value and if it looks up nil, fall back on a manual "=". We should backport this fix into the 1.5 line. Eric. I'll leave the backport to you. ---------------------------------------------------------------------- Comment By: Roger Pack (rogerdpack) Date: 2011-02-25 18:24 Message: Just got this with jeweler, too, FYI. https://gist.github.com/844237 ---------------------------------------------------------------------- Comment By: Leonard Chin (lchin) Date: 2011-02-10 07:37 Message: The same error occurs with hoe Using RubyGems at commit 182bcaf7bd4f77493794 with Ruby 1.9.2-p136 https://github.com/rubygems/rubygems/tree/182bcaf7bd4f77493794d216ac37aa9935655943 rake package --trace (in /Users/lchin/Downloads/buggy) ** Invoke package (first_time) ** Invoke pkg/buggy-1.0.0.tgz (first_time, not_needed) ** Invoke pkg/buggy-1.0.0 (first_time, not_needed) ** Invoke .autotest (first_time, not_needed) ** Invoke History.txt (first_time, not_needed) ** Invoke Manifest.txt (first_time, not_needed) ** Invoke README.txt (first_time, not_needed) ** Invoke Rakefile (first_time, not_needed) ** Invoke bin/buggy (first_time, not_needed) ** Invoke lib/buggy.rb (first_time, not_needed) ** Invoke test/test_buggy.rb (first_time, not_needed) ** Invoke .autotest (not_needed) ** Invoke History.txt (not_needed) ** Invoke Manifest.txt (not_needed) ** Invoke README.txt (not_needed) ** Invoke Rakefile (not_needed) ** Invoke bin/buggy (not_needed) ** Invoke lib/buggy.rb (not_needed) ** Invoke test/test_buggy.rb (not_needed) ** Invoke gem (first_time) ** Invoke pkg/buggy-1.0.0.gem (first_time) ** Invoke pkg (first_time, not_needed) ** Invoke pkg/buggy-1.0.0 (not_needed) ** Invoke .autotest (not_needed) ** Invoke History.txt (not_needed) ** Invoke Manifest.txt (not_needed) ** Invoke README.txt (not_needed) ** Invoke Rakefile (not_needed) ** Invoke bin/buggy (not_needed) ** Invoke lib/buggy.rb (not_needed) ** Invoke test/test_buggy.rb (not_needed) ** Execute pkg/buggy-1.0.0.gem cd pkg/buggy-1.0.0 WARNING: description and summary are identical rake aborted! undefined method `write' for # /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/1.9.1/psych/visitors/emitter.rb:17:in `end_document' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/1.9.1/psych/visitors/emitter.rb:17:in `visit_Psych_Nodes_Document' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/1.9.1/psych/visitors/visitor.rb:10:in `accept' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/1.9.1/psych/visitors/emitter.rb:10:in `block in visit_Psych_Nodes_Stream' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/1.9.1/psych/visitors/emitter.rb:10:in `each' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/1.9.1/psych/visitors/emitter.rb:10:in `visit_Psych_Nodes_Stream' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/1.9.1/psych/visitors/visitor.rb:11:in `accept' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/1.9.1/psych/nodes/node.rb:36:in `to_yaml' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/1.9.1/psych.rb:166:in `dump' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/1.9.1/psych/core_ext.rb:13:in `psych_to_yaml' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/specification.rb:706:in `node_export' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/specification.rb:706:in `add' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/specification.rb:706:in `encode_with' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/specification.rb:728:in `block (2 levels) in to_yaml' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/specification.rb:727:in `map' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/specification.rb:727:in `block in to_yaml' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/1.9.1/syck.rb:401:in `call' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/1.9.1/syck.rb:401:in `emit' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/1.9.1/syck.rb:401:in `quick_emit' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/specification.rb:726:in `to_yaml' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/builder.rb:78:in `block (2 levels) in write_package' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_output.rb:73:in `block (3 levels) in add_gem_contents' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_writer.rb:83:in `new' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_output.rb:67:in `block (2 levels) in add_gem_contents' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_output.rb:65:in `wrap' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_output.rb:65:in `block in add_gem_contents' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_writer.rb:113:in `add_file' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_output.rb:63:in `add_gem_contents' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_output.rb:31:in `open' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/package.rb:68:in `open' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/builder.rb:77:in `block in write_package' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/builder.rb:76:in `open' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/builder.rb:76:in `write_package' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/builder.rb:39:in `build' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/package_task.rb:116:in `block (3 levels) in define' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:1159:in `when_writing' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/package_task.rb:115:in `block (2 levels) in define' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/1.9.1/fileutils.rb:121:in `chdir' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/1.9.1/fileutils.rb:121:in `cd' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:1094:in `chdir' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/package_task.rb:114:in `block in define' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:636:in `call' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:636:in `block in execute' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:631:in `each' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:631:in `execute' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:597:in `block in invoke_with_call_chain' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/1.9.1/monitor.rb:201:in `mon_synchronize' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:590:in `invoke_with_call_chain' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:607:in `block in invoke_prerequisites' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:604:in `each' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:604:in `invoke_prerequisites' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:596:in `block in invoke_with_call_chain' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/1.9.1/monitor.rb:201:in `mon_synchronize' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:590:in `invoke_with_call_chain' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:607:in `block in invoke_prerequisites' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:604:in `each' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:604:in `invoke_prerequisites' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:596:in `block in invoke_with_call_chain' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/1.9.1/monitor.rb:201:in `mon_synchronize' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:590:in `invoke_with_call_chain' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:583:in `invoke' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:2051:in `invoke_task' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:2029:in `block (2 levels) in top_level' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:2029:in `each' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:2029:in `block in top_level' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:2068:in `standard_exception_handling' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:2023:in `top_level' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:2001:in `block in run' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:2068:in `standard_exception_handling' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:1998:in `run' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/bin/rake:31:in `' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/bin/rake:19:in `load' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/bin/rake:19:in `
' ---------------------------------------------------------------------- Comment By: Jon Forums (jonforums) Date: 2011-02-05 22:00 Message: All OK now with the updated rake-compiler. So I'm clear, this is the main commit to pay attention to? https://github.com/rubygems/rubygems/commit/67f9f760c782142d9bfd8099750274ba498d6682 Given the simple tweak to rake-compiler, is your recommendation that other gems requiring yaml also prefer psych when running on 1.9.2+ and RG 1.5.0+ FWIW, I personally like the idea of preferring psych, but would like to have first seen it mentioned in one of the following rather than in a bt: http://blog.segment7.net/2011/01/31/rubygems-1-5 https://github.com/rubygems/rubygems/blob/master/UPGRADING.rdoc Jon ---------------------------------------------------------------------- Comment By: Eric Hodel (drbrain) Date: 2011-02-04 23:37 Message: Yes, you are loading syck (require 'yaml') before psych (require 'psych'): https://github.com/luislavena/rake-compiler/blob/master/lib/rake/baseextensiontask.rb This is not supported. A patch will be sent to rake-compiler. You can work around this by requiring psych before rake-compiler. ---------------------------------------------------------------------- Comment By: Jon Forums (jonforums) Date: 2011-02-04 21:01 Message: That's not the issue, sorry I wasn't clear. I'm not mixing syck or psyck in the same ruby in my code. My original Rakefile https://github.com/oopsforge/oops- null/blob/master/Rakefile that worked pre-1.5.0 didn't explicitly require 'yaml' or the YAML::ENGINE.yamler= nonsense. I added these lines to get the gem to build when I saw the error message undefined method `write' for # C:/ruby192/lib/ruby/1.9.1/psych/visitors/emitter.rb:17:in `end_document' ... ..as I guessed that explicitly setting the YAML engine to psych would prevent syck from being visited/wrapped by psych. I think something's changed in RG 1.5.0 and/or ruby_1_9_2 or trunk that's causing the problem. I wanted to dig into how psych was visiting/wrapping syck but ran out of time. I also did a quick look through rake-compiler and don't think it's to blame. Given that my original Rakefile fails on Win7 MRI 1.9.2- p174, 1.9.2-p136, 1.9.3dev and Arch 1.9.3dev when using RG 1.5.0 I still think the problem is in RG. Hopefully I explained it more clearly this time. Would you take one more look at that long back trace and see if you change your mind on the issue? ---------------------------------------------------------------------- Comment By: Eric Hodel (drbrain) Date: 2011-02-04 20:33 Message: Do not mix syck (require 'yaml') and psych (require 'psych') in the same ruby. RubyGems uses psych on ruby 1.9.2 and newer as syck is deprecated and will be removed at a future date. Please update your Rakefile to match. ---------------------------------------------------------------------- Comment By: Jon Forums (jonforums) Date: 2011-02-04 14:53 Message: same failure on "ruby 1.9.2p136 (2010-12-25) [i386-mingw32]" upgraded from RG 1.3.7 to RG 1.5.0 ---------------------------------------------------------------------- Comment By: Jon Forums (jonforums) Date: 2011-02-03 19:13 Message: similar failure and working "fix" on Arch using: ruby 1.9.3dev (2011-02-04 trunk 30776) [i686-linux] RubyGems Environment: - RUBYGEMS VERSION: 1.5.0 - RUBY VERSION: 1.9.3 (2011-02-04 patchlevel -1) [i686- linux] - INSTALLATION DIRECTORY: /usr/local/lib/ruby/gems/1.9.1 - RUBY EXECUTABLE: /usr/local/bin/ruby - EXECUTABLE DIRECTORY: /usr/local/bin - RUBYGEMS PLATFORMS: - ruby - x86-linux - GEM PATHS: - /usr/local/lib/ruby/gems/1.9.1 - /home/jon/.gem/ruby/1.9.1 - GEM CONFIGURATION: - :update_sources => true - :verbose => true - :benchmark => false - :backtrace => false - :bulk_threshold => 1000 - :sources => ["http://rubygems.org", "http://gemcutter.org"] - "gem" => "--no-ri --no-rdoc" - REMOTE SOURCES: - http://rubygems.org - http://gemcutter.org ---------------------------------------------------------------------- You can respond by visiting: http://rubyforge.org/tracker/?func=detail&atid=575&aid=28907&group_id=126 From noreply at rubyforge.org Tue Dec 13 12:29:28 2011 From: noreply at rubyforge.org (noreply at rubyforge.org) Date: Tue, 13 Dec 2011 12:29:28 -0500 (EST) Subject: [ rubygems-Bugs-28907 ] [RG 1.5.0/Ruby 1.9.x] source gem build error due to syck? Message-ID: <20111213172928.676A7185838A@rubyforge.org> Bugs item #28907, was opened at 2011-02-03 18:59 You can respond by visiting: http://rubyforge.org/tracker/?func=detail&atid=575&aid=28907&group_id=126 Category: `gem` commands (other) Group: v1.5.x Status: Closed Resolution: Accepted Priority: 3 Submitted By: Jon Forums (jonforums) Assigned to: Eric Hodel (drbrain) Summary: [RG 1.5.0/Ruby 1.9.x] source gem build error due to syck? Initial Comment: When building a source gem from http://github.com/oopsforge/oops-null using 'rake gem' I get the following error on Win7 with: * ruby 1.9.2p174 (2011-01-28 revision 30696) [i386-mingw32] * ruby 1.9.3dev (2011-02-04 trunk 30776) [i386-mingw32] but no errors using "ruby 1.8.7 (2010-12-23 patchlevel 330) [i386-mingw32]". Manually building via 'gem build oops-null.gemspec' work fine on all the Ruby versions including JRuby 1.6.0.RC1. All versions have been upgraded to RG 1.5.0 via "gem update --system". FWIW, the failure does not occur on "ruby 1.9.2 (2010-12-25 patchlevel 136) [i386-mingw32]" using RG 1.3.7 My "fix" was to add the following lines to the project Rakefile after the 3 require's: require 'yaml' YAML::ENGINE.yamler='psych' if defined?(YAML::ENGINE) I will try to replicate on my Arch system later this afternoon. Reproducible? Jon == ERROR == C:\projects\oops-null-git>gem env RubyGems Environment: - RUBYGEMS VERSION: 1.5.0 - RUBY VERSION: 1.9.2 (2011-01-28 patchlevel 174) [i386-mingw32] - INSTALLATION DIRECTORY: C:/ruby192/lib/ruby/gems/1.9.1 - RUBY EXECUTABLE: C:/ruby192/bin/ruby.exe - EXECUTABLE DIRECTORY: C:/ruby192/bin - RUBYGEMS PLATFORMS: - ruby - x86-mingw32 - GEM PATHS: - C:/ruby192/lib/ruby/gems/1.9.1 - C:/Users/Jon/.gem/ruby/1.9.1 - GEM CONFIGURATION: - :update_sources => true - :verbose => true - :benchmark => false - :backtrace => false - :bulk_threshold => 1000 - :sources => ["http://rubygems.org", "http://gemcutter.org"] - "gem" => "--no-ri --no-rdoc" - REMOTE SOURCES: - http://rubygems.org - http://gemcutter.org C:\projects\oops-null-git>rake gem (in C:/projects/oops-null-git) mkdir -p pkg mkdir -p pkg mkdir -p pkg/oops-null-0.3.0/bin rm -f pkg/oops-null-0.3.0/bin/nulloops ln bin/nulloops pkg/oops-null-0.3.0/bin/nulloops rm -f pkg/oops-null-0.3.0/Rakefile ln Rakefile pkg/oops-null-0.3.0/Rakefile rm -f pkg/oops-null-0.3.0/oops-null.gemspec ln oops-null.gemspec pkg/oops-null-0.3.0/oops-null.gemspec mkdir -p pkg/oops-null-0.3.0/ext/oops_null rm -f pkg/oops-null-0.3.0/ext/oops_null/extconf.rb ln ext/oops_null/extconf.rb pkg/oops-null-0.3.0/ext/oops_null/extconf.rb rm -f pkg/oops-null-0.3.0/ext/oops_null/oops_null.c ln ext/oops_null/oops_null.c pkg/oops-null-0.3.0/ext/oops_null/oops_null.c rm -f pkg/oops-null-0.3.0/ext/oops_null/oops_null.h ln ext/oops_null/oops_null.h pkg/oops-null-0.3.0/ext/oops_null/oops_null.h mkdir -p pkg/oops-null-0.3.0/lib rm -f pkg/oops-null-0.3.0/lib/oops-null.rb ln lib/oops-null.rb pkg/oops-null-0.3.0/lib/oops-null.rb cd pkg/oops-null-0.3.0 rake aborted! undefined method `write' for # C:/ruby192/lib/ruby/1.9.1/psych/visitors/emitter.rb:17:in `end_document' C:/ruby192/lib/ruby/1.9.1/psych/visitors/emitter.rb:17:in `visit_Psych_Nodes_Document' C:/ruby192/lib/ruby/1.9.1/psych/visitors/visitor.rb:10:in `accept' C:/ruby192/lib/ruby/1.9.1/psych/visitors/emitter.rb:10:in `block in visit_Psych_Nodes_Stream' C:/ruby192/lib/ruby/1.9.1/psych/visitors/emitter.rb:10:in `each' C:/ruby192/lib/ruby/1.9.1/psych/visitors/emitter.rb:10:in `visit_Psych_Nodes_Stream' C:/ruby192/lib/ruby/1.9.1/psych/visitors/visitor.rb:11:in `accept' C:/ruby192/lib/ruby/1.9.1/psych/nodes/node.rb:36:in `to_yaml' C:/ruby192/lib/ruby/1.9.1/psych.rb:166:in `dump' C:/ruby192/lib/ruby/1.9.1/psych/core_ext.rb:13:in `psych_to_yaml' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/specification.rb:706:in `node_export' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/specification.rb:706:in `add' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/specification.rb:706:in `encode_with' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/specification.rb:727:in `block (2 levels) in to_yaml' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/specification.rb:726:in `map' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/specification.rb:726:in `block in to_yaml' C:/ruby192/lib/ruby/1.9.1/syck.rb:401:in `call' C:/ruby192/lib/ruby/1.9.1/syck.rb:401:in `emit' C:/ruby192/lib/ruby/1.9.1/syck.rb:401:in `quick_emit' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/specification.rb:725:in `to_yaml' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/builder.rb:78:in `block (2 levels) in write_package' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_output.rb:73:in `block (3 levels) in add_gem_contents' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_writer.rb:83:in `new' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_output.rb:67:in `block (2 levels) in add_gem_contents' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_output.rb:65:in `wrap' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_output.rb:65:in `block in add_gem_contents' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_writer.rb:113:in `add_file' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_output.rb:63:in `add_gem_contents' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_output.rb:31:in `open' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/package.rb:68:in `open' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/builder.rb:77:in `block in write_package' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/builder.rb:76:in `open' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/builder.rb:76:in `write_package' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/builder.rb:39:in `build' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/package_task.rb:116:in `block (3 levels) in define' C:/ruby192/lib/ruby/1.9.1/rake.rb:1157:in `when_writing' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/package_task.rb:115:in `block (2 levels) in define' C:/ruby192/lib/ruby/1.9.1/fileutils.rb:121:in `chdir' C:/ruby192/lib/ruby/1.9.1/fileutils.rb:121:in `cd' C:/ruby192/lib/ruby/1.9.1/rake.rb:1092:in `chdir' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/package_task.rb:114:in `block in define' C:/ruby192/lib/ruby/1.9.1/rake.rb:634:in `call' C:/ruby192/lib/ruby/1.9.1/rake.rb:634:in `block in execute' C:/ruby192/lib/ruby/1.9.1/rake.rb:629:in `each' C:/ruby192/lib/ruby/1.9.1/rake.rb:629:in `execute' C:/ruby192/lib/ruby/1.9.1/rake.rb:595:in `block in invoke_with_call_chain' C:/ruby192/lib/ruby/1.9.1/monitor.rb:201:in `mon_synchronize' C:/ruby192/lib/ruby/1.9.1/rake.rb:588:in `invoke_with_call_chain' C:/ruby192/lib/ruby/1.9.1/rake.rb:605:in `block in invoke_prerequisites' C:/ruby192/lib/ruby/1.9.1/rake.rb:602:in `each' C:/ruby192/lib/ruby/1.9.1/rake.rb:602:in `invoke_prerequisites' C:/ruby192/lib/ruby/1.9.1/rake.rb:594:in `block in invoke_with_call_chain' C:/ruby192/lib/ruby/1.9.1/monitor.rb:201:in `mon_synchronize' C:/ruby192/lib/ruby/1.9.1/rake.rb:588:in `invoke_with_call_chain' C:/ruby192/lib/ruby/1.9.1/rake.rb:581:in `invoke' C:/ruby192/lib/ruby/1.9.1/rake.rb:2041:in `invoke_task' C:/ruby192/lib/ruby/1.9.1/rake.rb:2019:in `block (2 levels) in top_level' C:/ruby192/lib/ruby/1.9.1/rake.rb:2019:in `each' C:/ruby192/lib/ruby/1.9.1/rake.rb:2019:in `block in top_level' C:/ruby192/lib/ruby/1.9.1/rake.rb:2058:in `standard_exception_handling' C:/ruby192/lib/ruby/1.9.1/rake.rb:2013:in `top_level' C:/ruby192/lib/ruby/1.9.1/rake.rb:1992:in `run' C:/ruby192/bin/rake:31:in `
' ---------------------------------------------------------------------- >Comment By: Evan Phoenix (evan) Date: 2011-12-13 17:29 Message: This tracker is completely disabled. Please do not use it. ---------------------------------------------------------------------- Comment By: Roger Pack (rogerdpack) Date: 2011-12-13 16:45 Message: just got this today: undefined method `write' for # ruby 1.9.2p290 (2011-07-09) [i386-mingw32] full output: https://gist.github.com/1472862 will reopen if I run into this again... ---------------------------------------------------------------------- Comment By: Roger Pack (rogerdpack) Date: 2011-03-03 20:01 Message: Was this still fixed in 1.6.0? (I'm still getting it there). Thanks! -r ---------------------------------------------------------------------- Comment By: Eric Hodel (drbrain) Date: 2011-02-28 18:56 Message: Fixed by 1.5.3 ---------------------------------------------------------------------- Comment By: Ryan Davis (zenspider) Date: 2011-02-25 19:38 Message: So, to be clear, if psych is used to create a gemspec with a version specifier using "=", and the gem is subsequently loaded using syck, this error will occur. This is a bug in syck. Our workaround is to look up the parsed value and if it looks up nil, fall back on a manual "=". We should backport this fix into the 1.5 line. Eric. I'll leave the backport to you. ---------------------------------------------------------------------- Comment By: Roger Pack (rogerdpack) Date: 2011-02-25 18:24 Message: Just got this with jeweler, too, FYI. https://gist.github.com/844237 ---------------------------------------------------------------------- Comment By: Leonard Chin (lchin) Date: 2011-02-10 07:37 Message: The same error occurs with hoe Using RubyGems at commit 182bcaf7bd4f77493794 with Ruby 1.9.2-p136 https://github.com/rubygems/rubygems/tree/182bcaf7bd4f77493794d216ac37aa9935655943 rake package --trace (in /Users/lchin/Downloads/buggy) ** Invoke package (first_time) ** Invoke pkg/buggy-1.0.0.tgz (first_time, not_needed) ** Invoke pkg/buggy-1.0.0 (first_time, not_needed) ** Invoke .autotest (first_time, not_needed) ** Invoke History.txt (first_time, not_needed) ** Invoke Manifest.txt (first_time, not_needed) ** Invoke README.txt (first_time, not_needed) ** Invoke Rakefile (first_time, not_needed) ** Invoke bin/buggy (first_time, not_needed) ** Invoke lib/buggy.rb (first_time, not_needed) ** Invoke test/test_buggy.rb (first_time, not_needed) ** Invoke .autotest (not_needed) ** Invoke History.txt (not_needed) ** Invoke Manifest.txt (not_needed) ** Invoke README.txt (not_needed) ** Invoke Rakefile (not_needed) ** Invoke bin/buggy (not_needed) ** Invoke lib/buggy.rb (not_needed) ** Invoke test/test_buggy.rb (not_needed) ** Invoke gem (first_time) ** Invoke pkg/buggy-1.0.0.gem (first_time) ** Invoke pkg (first_time, not_needed) ** Invoke pkg/buggy-1.0.0 (not_needed) ** Invoke .autotest (not_needed) ** Invoke History.txt (not_needed) ** Invoke Manifest.txt (not_needed) ** Invoke README.txt (not_needed) ** Invoke Rakefile (not_needed) ** Invoke bin/buggy (not_needed) ** Invoke lib/buggy.rb (not_needed) ** Invoke test/test_buggy.rb (not_needed) ** Execute pkg/buggy-1.0.0.gem cd pkg/buggy-1.0.0 WARNING: description and summary are identical rake aborted! undefined method `write' for # /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/1.9.1/psych/visitors/emitter.rb:17:in `end_document' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/1.9.1/psych/visitors/emitter.rb:17:in `visit_Psych_Nodes_Document' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/1.9.1/psych/visitors/visitor.rb:10:in `accept' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/1.9.1/psych/visitors/emitter.rb:10:in `block in visit_Psych_Nodes_Stream' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/1.9.1/psych/visitors/emitter.rb:10:in `each' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/1.9.1/psych/visitors/emitter.rb:10:in `visit_Psych_Nodes_Stream' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/1.9.1/psych/visitors/visitor.rb:11:in `accept' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/1.9.1/psych/nodes/node.rb:36:in `to_yaml' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/1.9.1/psych.rb:166:in `dump' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/1.9.1/psych/core_ext.rb:13:in `psych_to_yaml' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/specification.rb:706:in `node_export' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/specification.rb:706:in `add' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/specification.rb:706:in `encode_with' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/specification.rb:728:in `block (2 levels) in to_yaml' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/specification.rb:727:in `map' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/specification.rb:727:in `block in to_yaml' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/1.9.1/syck.rb:401:in `call' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/1.9.1/syck.rb:401:in `emit' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/1.9.1/syck.rb:401:in `quick_emit' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/specification.rb:726:in `to_yaml' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/builder.rb:78:in `block (2 levels) in write_package' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_output.rb:73:in `block (3 levels) in add_gem_contents' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_writer.rb:83:in `new' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_output.rb:67:in `block (2 levels) in add_gem_contents' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_output.rb:65:in `wrap' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_output.rb:65:in `block in add_gem_contents' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_writer.rb:113:in `add_file' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_output.rb:63:in `add_gem_contents' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_output.rb:31:in `open' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/package.rb:68:in `open' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/builder.rb:77:in `block in write_package' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/builder.rb:76:in `open' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/builder.rb:76:in `write_package' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/builder.rb:39:in `build' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/package_task.rb:116:in `block (3 levels) in define' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:1159:in `when_writing' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/package_task.rb:115:in `block (2 levels) in define' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/1.9.1/fileutils.rb:121:in `chdir' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/1.9.1/fileutils.rb:121:in `cd' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:1094:in `chdir' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/package_task.rb:114:in `block in define' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:636:in `call' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:636:in `block in execute' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:631:in `each' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:631:in `execute' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:597:in `block in invoke_with_call_chain' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/1.9.1/monitor.rb:201:in `mon_synchronize' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:590:in `invoke_with_call_chain' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:607:in `block in invoke_prerequisites' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:604:in `each' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:604:in `invoke_prerequisites' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:596:in `block in invoke_with_call_chain' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/1.9.1/monitor.rb:201:in `mon_synchronize' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:590:in `invoke_with_call_chain' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:607:in `block in invoke_prerequisites' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:604:in `each' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:604:in `invoke_prerequisites' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:596:in `block in invoke_with_call_chain' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/1.9.1/monitor.rb:201:in `mon_synchronize' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:590:in `invoke_with_call_chain' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:583:in `invoke' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:2051:in `invoke_task' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:2029:in `block (2 levels) in top_level' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:2029:in `each' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:2029:in `block in top_level' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:2068:in `standard_exception_handling' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:2023:in `top_level' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:2001:in `block in run' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:2068:in `standard_exception_handling' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:1998:in `run' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/bin/rake:31:in `' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/bin/rake:19:in `load' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/bin/rake:19:in `
' ---------------------------------------------------------------------- Comment By: Jon Forums (jonforums) Date: 2011-02-05 22:00 Message: All OK now with the updated rake-compiler. So I'm clear, this is the main commit to pay attention to? https://github.com/rubygems/rubygems/commit/67f9f760c782142d9bfd8099750274ba498d6682 Given the simple tweak to rake-compiler, is your recommendation that other gems requiring yaml also prefer psych when running on 1.9.2+ and RG 1.5.0+ FWIW, I personally like the idea of preferring psych, but would like to have first seen it mentioned in one of the following rather than in a bt: http://blog.segment7.net/2011/01/31/rubygems-1-5 https://github.com/rubygems/rubygems/blob/master/UPGRADING.rdoc Jon ---------------------------------------------------------------------- Comment By: Eric Hodel (drbrain) Date: 2011-02-04 23:37 Message: Yes, you are loading syck (require 'yaml') before psych (require 'psych'): https://github.com/luislavena/rake-compiler/blob/master/lib/rake/baseextensiontask.rb This is not supported. A patch will be sent to rake-compiler. You can work around this by requiring psych before rake-compiler. ---------------------------------------------------------------------- Comment By: Jon Forums (jonforums) Date: 2011-02-04 21:01 Message: That's not the issue, sorry I wasn't clear. I'm not mixing syck or psyck in the same ruby in my code. My original Rakefile https://github.com/oopsforge/oops- null/blob/master/Rakefile that worked pre-1.5.0 didn't explicitly require 'yaml' or the YAML::ENGINE.yamler= nonsense. I added these lines to get the gem to build when I saw the error message undefined method `write' for # C:/ruby192/lib/ruby/1.9.1/psych/visitors/emitter.rb:17:in `end_document' ... ..as I guessed that explicitly setting the YAML engine to psych would prevent syck from being visited/wrapped by psych. I think something's changed in RG 1.5.0 and/or ruby_1_9_2 or trunk that's causing the problem. I wanted to dig into how psych was visiting/wrapping syck but ran out of time. I also did a quick look through rake-compiler and don't think it's to blame. Given that my original Rakefile fails on Win7 MRI 1.9.2- p174, 1.9.2-p136, 1.9.3dev and Arch 1.9.3dev when using RG 1.5.0 I still think the problem is in RG. Hopefully I explained it more clearly this time. Would you take one more look at that long back trace and see if you change your mind on the issue? ---------------------------------------------------------------------- Comment By: Eric Hodel (drbrain) Date: 2011-02-04 20:33 Message: Do not mix syck (require 'yaml') and psych (require 'psych') in the same ruby. RubyGems uses psych on ruby 1.9.2 and newer as syck is deprecated and will be removed at a future date. Please update your Rakefile to match. ---------------------------------------------------------------------- Comment By: Jon Forums (jonforums) Date: 2011-02-04 14:53 Message: same failure on "ruby 1.9.2p136 (2010-12-25) [i386-mingw32]" upgraded from RG 1.3.7 to RG 1.5.0 ---------------------------------------------------------------------- Comment By: Jon Forums (jonforums) Date: 2011-02-03 19:13 Message: similar failure and working "fix" on Arch using: ruby 1.9.3dev (2011-02-04 trunk 30776) [i686-linux] RubyGems Environment: - RUBYGEMS VERSION: 1.5.0 - RUBY VERSION: 1.9.3 (2011-02-04 patchlevel -1) [i686- linux] - INSTALLATION DIRECTORY: /usr/local/lib/ruby/gems/1.9.1 - RUBY EXECUTABLE: /usr/local/bin/ruby - EXECUTABLE DIRECTORY: /usr/local/bin - RUBYGEMS PLATFORMS: - ruby - x86-linux - GEM PATHS: - /usr/local/lib/ruby/gems/1.9.1 - /home/jon/.gem/ruby/1.9.1 - GEM CONFIGURATION: - :update_sources => true - :verbose => true - :benchmark => false - :backtrace => false - :bulk_threshold => 1000 - :sources => ["http://rubygems.org", "http://gemcutter.org"] - "gem" => "--no-ri --no-rdoc" - REMOTE SOURCES: - http://rubygems.org - http://gemcutter.org ---------------------------------------------------------------------- You can respond by visiting: http://rubyforge.org/tracker/?func=detail&atid=575&aid=28907&group_id=126 From noreply at rubyforge.org Tue Dec 13 12:42:08 2011 From: noreply at rubyforge.org (noreply at rubyforge.org) Date: Tue, 13 Dec 2011 12:42:08 -0500 (EST) Subject: [ rubygems-Bugs-28907 ] [RG 1.5.0/Ruby 1.9.x] source gem build error due to syck? Message-ID: <20111213174208.54A5B1218277@rubyforge.org> Bugs item #28907, was opened at 2011-02-03 18:59 You can respond by visiting: http://rubyforge.org/tracker/?func=detail&atid=575&aid=28907&group_id=126 Category: `gem` commands (other) Group: v1.5.x Status: Closed Resolution: Accepted Priority: 3 Submitted By: Jon Forums (jonforums) Assigned to: Eric Hodel (drbrain) Summary: [RG 1.5.0/Ruby 1.9.x] source gem build error due to syck? Initial Comment: When building a source gem from http://github.com/oopsforge/oops-null using 'rake gem' I get the following error on Win7 with: * ruby 1.9.2p174 (2011-01-28 revision 30696) [i386-mingw32] * ruby 1.9.3dev (2011-02-04 trunk 30776) [i386-mingw32] but no errors using "ruby 1.8.7 (2010-12-23 patchlevel 330) [i386-mingw32]". Manually building via 'gem build oops-null.gemspec' work fine on all the Ruby versions including JRuby 1.6.0.RC1. All versions have been upgraded to RG 1.5.0 via "gem update --system". FWIW, the failure does not occur on "ruby 1.9.2 (2010-12-25 patchlevel 136) [i386-mingw32]" using RG 1.3.7 My "fix" was to add the following lines to the project Rakefile after the 3 require's: require 'yaml' YAML::ENGINE.yamler='psych' if defined?(YAML::ENGINE) I will try to replicate on my Arch system later this afternoon. Reproducible? Jon == ERROR == C:\projects\oops-null-git>gem env RubyGems Environment: - RUBYGEMS VERSION: 1.5.0 - RUBY VERSION: 1.9.2 (2011-01-28 patchlevel 174) [i386-mingw32] - INSTALLATION DIRECTORY: C:/ruby192/lib/ruby/gems/1.9.1 - RUBY EXECUTABLE: C:/ruby192/bin/ruby.exe - EXECUTABLE DIRECTORY: C:/ruby192/bin - RUBYGEMS PLATFORMS: - ruby - x86-mingw32 - GEM PATHS: - C:/ruby192/lib/ruby/gems/1.9.1 - C:/Users/Jon/.gem/ruby/1.9.1 - GEM CONFIGURATION: - :update_sources => true - :verbose => true - :benchmark => false - :backtrace => false - :bulk_threshold => 1000 - :sources => ["http://rubygems.org", "http://gemcutter.org"] - "gem" => "--no-ri --no-rdoc" - REMOTE SOURCES: - http://rubygems.org - http://gemcutter.org C:\projects\oops-null-git>rake gem (in C:/projects/oops-null-git) mkdir -p pkg mkdir -p pkg mkdir -p pkg/oops-null-0.3.0/bin rm -f pkg/oops-null-0.3.0/bin/nulloops ln bin/nulloops pkg/oops-null-0.3.0/bin/nulloops rm -f pkg/oops-null-0.3.0/Rakefile ln Rakefile pkg/oops-null-0.3.0/Rakefile rm -f pkg/oops-null-0.3.0/oops-null.gemspec ln oops-null.gemspec pkg/oops-null-0.3.0/oops-null.gemspec mkdir -p pkg/oops-null-0.3.0/ext/oops_null rm -f pkg/oops-null-0.3.0/ext/oops_null/extconf.rb ln ext/oops_null/extconf.rb pkg/oops-null-0.3.0/ext/oops_null/extconf.rb rm -f pkg/oops-null-0.3.0/ext/oops_null/oops_null.c ln ext/oops_null/oops_null.c pkg/oops-null-0.3.0/ext/oops_null/oops_null.c rm -f pkg/oops-null-0.3.0/ext/oops_null/oops_null.h ln ext/oops_null/oops_null.h pkg/oops-null-0.3.0/ext/oops_null/oops_null.h mkdir -p pkg/oops-null-0.3.0/lib rm -f pkg/oops-null-0.3.0/lib/oops-null.rb ln lib/oops-null.rb pkg/oops-null-0.3.0/lib/oops-null.rb cd pkg/oops-null-0.3.0 rake aborted! undefined method `write' for # C:/ruby192/lib/ruby/1.9.1/psych/visitors/emitter.rb:17:in `end_document' C:/ruby192/lib/ruby/1.9.1/psych/visitors/emitter.rb:17:in `visit_Psych_Nodes_Document' C:/ruby192/lib/ruby/1.9.1/psych/visitors/visitor.rb:10:in `accept' C:/ruby192/lib/ruby/1.9.1/psych/visitors/emitter.rb:10:in `block in visit_Psych_Nodes_Stream' C:/ruby192/lib/ruby/1.9.1/psych/visitors/emitter.rb:10:in `each' C:/ruby192/lib/ruby/1.9.1/psych/visitors/emitter.rb:10:in `visit_Psych_Nodes_Stream' C:/ruby192/lib/ruby/1.9.1/psych/visitors/visitor.rb:11:in `accept' C:/ruby192/lib/ruby/1.9.1/psych/nodes/node.rb:36:in `to_yaml' C:/ruby192/lib/ruby/1.9.1/psych.rb:166:in `dump' C:/ruby192/lib/ruby/1.9.1/psych/core_ext.rb:13:in `psych_to_yaml' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/specification.rb:706:in `node_export' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/specification.rb:706:in `add' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/specification.rb:706:in `encode_with' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/specification.rb:727:in `block (2 levels) in to_yaml' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/specification.rb:726:in `map' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/specification.rb:726:in `block in to_yaml' C:/ruby192/lib/ruby/1.9.1/syck.rb:401:in `call' C:/ruby192/lib/ruby/1.9.1/syck.rb:401:in `emit' C:/ruby192/lib/ruby/1.9.1/syck.rb:401:in `quick_emit' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/specification.rb:725:in `to_yaml' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/builder.rb:78:in `block (2 levels) in write_package' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_output.rb:73:in `block (3 levels) in add_gem_contents' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_writer.rb:83:in `new' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_output.rb:67:in `block (2 levels) in add_gem_contents' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_output.rb:65:in `wrap' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_output.rb:65:in `block in add_gem_contents' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_writer.rb:113:in `add_file' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_output.rb:63:in `add_gem_contents' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_output.rb:31:in `open' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/package.rb:68:in `open' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/builder.rb:77:in `block in write_package' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/builder.rb:76:in `open' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/builder.rb:76:in `write_package' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/builder.rb:39:in `build' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/package_task.rb:116:in `block (3 levels) in define' C:/ruby192/lib/ruby/1.9.1/rake.rb:1157:in `when_writing' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/package_task.rb:115:in `block (2 levels) in define' C:/ruby192/lib/ruby/1.9.1/fileutils.rb:121:in `chdir' C:/ruby192/lib/ruby/1.9.1/fileutils.rb:121:in `cd' C:/ruby192/lib/ruby/1.9.1/rake.rb:1092:in `chdir' C:/ruby192/lib/ruby/site_ruby/1.9.1/rubygems/package_task.rb:114:in `block in define' C:/ruby192/lib/ruby/1.9.1/rake.rb:634:in `call' C:/ruby192/lib/ruby/1.9.1/rake.rb:634:in `block in execute' C:/ruby192/lib/ruby/1.9.1/rake.rb:629:in `each' C:/ruby192/lib/ruby/1.9.1/rake.rb:629:in `execute' C:/ruby192/lib/ruby/1.9.1/rake.rb:595:in `block in invoke_with_call_chain' C:/ruby192/lib/ruby/1.9.1/monitor.rb:201:in `mon_synchronize' C:/ruby192/lib/ruby/1.9.1/rake.rb:588:in `invoke_with_call_chain' C:/ruby192/lib/ruby/1.9.1/rake.rb:605:in `block in invoke_prerequisites' C:/ruby192/lib/ruby/1.9.1/rake.rb:602:in `each' C:/ruby192/lib/ruby/1.9.1/rake.rb:602:in `invoke_prerequisites' C:/ruby192/lib/ruby/1.9.1/rake.rb:594:in `block in invoke_with_call_chain' C:/ruby192/lib/ruby/1.9.1/monitor.rb:201:in `mon_synchronize' C:/ruby192/lib/ruby/1.9.1/rake.rb:588:in `invoke_with_call_chain' C:/ruby192/lib/ruby/1.9.1/rake.rb:581:in `invoke' C:/ruby192/lib/ruby/1.9.1/rake.rb:2041:in `invoke_task' C:/ruby192/lib/ruby/1.9.1/rake.rb:2019:in `block (2 levels) in top_level' C:/ruby192/lib/ruby/1.9.1/rake.rb:2019:in `each' C:/ruby192/lib/ruby/1.9.1/rake.rb:2019:in `block in top_level' C:/ruby192/lib/ruby/1.9.1/rake.rb:2058:in `standard_exception_handling' C:/ruby192/lib/ruby/1.9.1/rake.rb:2013:in `top_level' C:/ruby192/lib/ruby/1.9.1/rake.rb:1992:in `run' C:/ruby192/bin/rake:31:in `
' ---------------------------------------------------------------------- Comment By: Roger Pack (rogerdpack) Date: 2011-12-13 17:42 Message: Yes I noticed the "this tracker is disabled" message after posting my last comment. I reposted my comment to https://github.com/rubygems/rubygems/issues/230 for followers. ---------------------------------------------------------------------- Comment By: Evan Phoenix (evan) Date: 2011-12-13 17:29 Message: This tracker is completely disabled. Please do not use it. ---------------------------------------------------------------------- Comment By: Roger Pack (rogerdpack) Date: 2011-12-13 16:45 Message: just got this today: undefined method `write' for # ruby 1.9.2p290 (2011-07-09) [i386-mingw32] full output: https://gist.github.com/1472862 will reopen if I run into this again... ---------------------------------------------------------------------- Comment By: Roger Pack (rogerdpack) Date: 2011-03-03 20:01 Message: Was this still fixed in 1.6.0? (I'm still getting it there). Thanks! -r ---------------------------------------------------------------------- Comment By: Eric Hodel (drbrain) Date: 2011-02-28 18:56 Message: Fixed by 1.5.3 ---------------------------------------------------------------------- Comment By: Ryan Davis (zenspider) Date: 2011-02-25 19:38 Message: So, to be clear, if psych is used to create a gemspec with a version specifier using "=", and the gem is subsequently loaded using syck, this error will occur. This is a bug in syck. Our workaround is to look up the parsed value and if it looks up nil, fall back on a manual "=". We should backport this fix into the 1.5 line. Eric. I'll leave the backport to you. ---------------------------------------------------------------------- Comment By: Roger Pack (rogerdpack) Date: 2011-02-25 18:24 Message: Just got this with jeweler, too, FYI. https://gist.github.com/844237 ---------------------------------------------------------------------- Comment By: Leonard Chin (lchin) Date: 2011-02-10 07:37 Message: The same error occurs with hoe Using RubyGems at commit 182bcaf7bd4f77493794 with Ruby 1.9.2-p136 https://github.com/rubygems/rubygems/tree/182bcaf7bd4f77493794d216ac37aa9935655943 rake package --trace (in /Users/lchin/Downloads/buggy) ** Invoke package (first_time) ** Invoke pkg/buggy-1.0.0.tgz (first_time, not_needed) ** Invoke pkg/buggy-1.0.0 (first_time, not_needed) ** Invoke .autotest (first_time, not_needed) ** Invoke History.txt (first_time, not_needed) ** Invoke Manifest.txt (first_time, not_needed) ** Invoke README.txt (first_time, not_needed) ** Invoke Rakefile (first_time, not_needed) ** Invoke bin/buggy (first_time, not_needed) ** Invoke lib/buggy.rb (first_time, not_needed) ** Invoke test/test_buggy.rb (first_time, not_needed) ** Invoke .autotest (not_needed) ** Invoke History.txt (not_needed) ** Invoke Manifest.txt (not_needed) ** Invoke README.txt (not_needed) ** Invoke Rakefile (not_needed) ** Invoke bin/buggy (not_needed) ** Invoke lib/buggy.rb (not_needed) ** Invoke test/test_buggy.rb (not_needed) ** Invoke gem (first_time) ** Invoke pkg/buggy-1.0.0.gem (first_time) ** Invoke pkg (first_time, not_needed) ** Invoke pkg/buggy-1.0.0 (not_needed) ** Invoke .autotest (not_needed) ** Invoke History.txt (not_needed) ** Invoke Manifest.txt (not_needed) ** Invoke README.txt (not_needed) ** Invoke Rakefile (not_needed) ** Invoke bin/buggy (not_needed) ** Invoke lib/buggy.rb (not_needed) ** Invoke test/test_buggy.rb (not_needed) ** Execute pkg/buggy-1.0.0.gem cd pkg/buggy-1.0.0 WARNING: description and summary are identical rake aborted! undefined method `write' for # /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/1.9.1/psych/visitors/emitter.rb:17:in `end_document' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/1.9.1/psych/visitors/emitter.rb:17:in `visit_Psych_Nodes_Document' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/1.9.1/psych/visitors/visitor.rb:10:in `accept' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/1.9.1/psych/visitors/emitter.rb:10:in `block in visit_Psych_Nodes_Stream' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/1.9.1/psych/visitors/emitter.rb:10:in `each' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/1.9.1/psych/visitors/emitter.rb:10:in `visit_Psych_Nodes_Stream' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/1.9.1/psych/visitors/visitor.rb:11:in `accept' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/1.9.1/psych/nodes/node.rb:36:in `to_yaml' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/1.9.1/psych.rb:166:in `dump' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/1.9.1/psych/core_ext.rb:13:in `psych_to_yaml' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/specification.rb:706:in `node_export' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/specification.rb:706:in `add' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/specification.rb:706:in `encode_with' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/specification.rb:728:in `block (2 levels) in to_yaml' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/specification.rb:727:in `map' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/specification.rb:727:in `block in to_yaml' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/1.9.1/syck.rb:401:in `call' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/1.9.1/syck.rb:401:in `emit' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/1.9.1/syck.rb:401:in `quick_emit' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/specification.rb:726:in `to_yaml' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/builder.rb:78:in `block (2 levels) in write_package' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_output.rb:73:in `block (3 levels) in add_gem_contents' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_writer.rb:83:in `new' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_output.rb:67:in `block (2 levels) in add_gem_contents' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_output.rb:65:in `wrap' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_output.rb:65:in `block in add_gem_contents' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_writer.rb:113:in `add_file' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_output.rb:63:in `add_gem_contents' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_output.rb:31:in `open' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/package.rb:68:in `open' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/builder.rb:77:in `block in write_package' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/builder.rb:76:in `open' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/builder.rb:76:in `write_package' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/builder.rb:39:in `build' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/package_task.rb:116:in `block (3 levels) in define' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:1159:in `when_writing' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/package_task.rb:115:in `block (2 levels) in define' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/1.9.1/fileutils.rb:121:in `chdir' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/1.9.1/fileutils.rb:121:in `cd' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:1094:in `chdir' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/package_task.rb:114:in `block in define' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:636:in `call' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:636:in `block in execute' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:631:in `each' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:631:in `execute' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:597:in `block in invoke_with_call_chain' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/1.9.1/monitor.rb:201:in `mon_synchronize' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:590:in `invoke_with_call_chain' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:607:in `block in invoke_prerequisites' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:604:in `each' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:604:in `invoke_prerequisites' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:596:in `block in invoke_with_call_chain' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/1.9.1/monitor.rb:201:in `mon_synchronize' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:590:in `invoke_with_call_chain' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:607:in `block in invoke_prerequisites' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:604:in `each' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:604:in `invoke_prerequisites' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:596:in `block in invoke_with_call_chain' /Users/lchin/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/1.9.1/monitor.rb:201:in `mon_synchronize' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:590:in `invoke_with_call_chain' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:583:in `invoke' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:2051:in `invoke_task' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:2029:in `block (2 levels) in top_level' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:2029:in `each' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:2029:in `block in top_level' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:2068:in `standard_exception_handling' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:2023:in `top_level' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:2001:in `block in run' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:2068:in `standard_exception_handling' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/lib/rake.rb:1998:in `run' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/gems/rake-0.8.7/bin/rake:31:in `' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/bin/rake:19:in `load' /Users/lchin/.rvm/gems/ruby-1.9.2-p136 at global/bin/rake:19:in `
' ---------------------------------------------------------------------- Comment By: Jon Forums (jonforums) Date: 2011-02-05 22:00 Message: All OK now with the updated rake-compiler. So I'm clear, this is the main commit to pay attention to? https://github.com/rubygems/rubygems/commit/67f9f760c782142d9bfd8099750274ba498d6682 Given the simple tweak to rake-compiler, is your recommendation that other gems requiring yaml also prefer psych when running on 1.9.2+ and RG 1.5.0+ FWIW, I personally like the idea of preferring psych, but would like to have first seen it mentioned in one of the following rather than in a bt: http://blog.segment7.net/2011/01/31/rubygems-1-5 https://github.com/rubygems/rubygems/blob/master/UPGRADING.rdoc Jon ---------------------------------------------------------------------- Comment By: Eric Hodel (drbrain) Date: 2011-02-04 23:37 Message: Yes, you are loading syck (require 'yaml') before psych (require 'psych'): https://github.com/luislavena/rake-compiler/blob/master/lib/rake/baseextensiontask.rb This is not supported. A patch will be sent to rake-compiler. You can work around this by requiring psych before rake-compiler. ---------------------------------------------------------------------- Comment By: Jon Forums (jonforums) Date: 2011-02-04 21:01 Message: That's not the issue, sorry I wasn't clear. I'm not mixing syck or psyck in the same ruby in my code. My original Rakefile https://github.com/oopsforge/oops- null/blob/master/Rakefile that worked pre-1.5.0 didn't explicitly require 'yaml' or the YAML::ENGINE.yamler= nonsense. I added these lines to get the gem to build when I saw the error message undefined method `write' for # C:/ruby192/lib/ruby/1.9.1/psych/visitors/emitter.rb:17:in `end_document' ... ..as I guessed that explicitly setting the YAML engine to psych would prevent syck from being visited/wrapped by psych. I think something's changed in RG 1.5.0 and/or ruby_1_9_2 or trunk that's causing the problem. I wanted to dig into how psych was visiting/wrapping syck but ran out of time. I also did a quick look through rake-compiler and don't think it's to blame. Given that my original Rakefile fails on Win7 MRI 1.9.2- p174, 1.9.2-p136, 1.9.3dev and Arch 1.9.3dev when using RG 1.5.0 I still think the problem is in RG. Hopefully I explained it more clearly this time. Would you take one more look at that long back trace and see if you change your mind on the issue? ---------------------------------------------------------------------- Comment By: Eric Hodel (drbrain) Date: 2011-02-04 20:33 Message: Do not mix syck (require 'yaml') and psych (require 'psych') in the same ruby. RubyGems uses psych on ruby 1.9.2 and newer as syck is deprecated and will be removed at a future date. Please update your Rakefile to match. ---------------------------------------------------------------------- Comment By: Jon Forums (jonforums) Date: 2011-02-04 14:53 Message: same failure on "ruby 1.9.2p136 (2010-12-25) [i386-mingw32]" upgraded from RG 1.3.7 to RG 1.5.0 ---------------------------------------------------------------------- Comment By: Jon Forums (jonforums) Date: 2011-02-03 19:13 Message: similar failure and working "fix" on Arch using: ruby 1.9.3dev (2011-02-04 trunk 30776) [i686-linux] RubyGems Environment: - RUBYGEMS VERSION: 1.5.0 - RUBY VERSION: 1.9.3 (2011-02-04 patchlevel -1) [i686- linux] - INSTALLATION DIRECTORY: /usr/local/lib/ruby/gems/1.9.1 - RUBY EXECUTABLE: /usr/local/bin/ruby - EXECUTABLE DIRECTORY: /usr/local/bin - RUBYGEMS PLATFORMS: - ruby - x86-linux - GEM PATHS: - /usr/local/lib/ruby/gems/1.9.1 - /home/jon/.gem/ruby/1.9.1 - GEM CONFIGURATION: - :update_sources => true - :verbose => true - :benchmark => false - :backtrace => false - :bulk_threshold => 1000 - :sources => ["http://rubygems.org", "http://gemcutter.org"] - "gem" => "--no-ri --no-rdoc" - REMOTE SOURCES: - http://rubygems.org - http://gemcutter.org ---------------------------------------------------------------------- You can respond by visiting: http://rubyforge.org/tracker/?func=detail&atid=575&aid=28907&group_id=126 From luislavena at gmail.com Mon Dec 19 19:25:31 2011 From: luislavena at gmail.com (Luis Lavena) Date: Mon, 19 Dec 2011 21:25:31 -0300 Subject: Dropping Ruby 1.8.x support for 2.0? Message-ID: Hello guys, While working on my TODO notes found that we have a couple of things (like checks for tty?) that were broken in 1.8.7 but are fixed in 1.9.3. Shall we consider EOL for Ruby 1.8.7 in RubyGems? /me wants a smaller and cleaner codebase, so was wondering your thoughts? Thank you. -- Luis Lavena AREA 17 - Perfection in design is achieved not when there is nothing more to add, but rather when there is nothing more to take away. Antoine de Saint-Exup?ry From erik at hollensbe.org Mon Dec 19 19:36:36 2011 From: erik at hollensbe.org (Erik Hollensbe) Date: Mon, 19 Dec 2011 16:36:36 -0800 Subject: Dropping Ruby 1.8.x support for 2.0? In-Reply-To: References: Message-ID: A lot of people in the real world(?) still depend on 1.8.7. As much as it sucks, I can't see how this would go well for the rubygems project. Maybe a spelled out deprecation roadmap would be a better way of saying "hey, 1.8.7 users, get your shit together". -Erik On Dec 19, 2011, at 4:25 PM, Luis Lavena wrote: > Hello guys, > > While working on my TODO notes found that we have a couple of things > (like checks for tty?) that were broken in 1.8.7 but are fixed in > 1.9.3. > > Shall we consider EOL for Ruby 1.8.7 in RubyGems? > > /me wants a smaller and cleaner codebase, so was wondering your thoughts? > > Thank you. > -- > Luis Lavena > AREA 17 > - > Perfection in design is achieved not when there is nothing more to add, > but rather when there is nothing more to take away. > Antoine de Saint-Exup?ry > _______________________________________________ > RubyGems-Developers mailing list > http://rubyforge.org/projects/rubygems > RubyGems-Developers at rubyforge.org > http://rubyforge.org/mailman/listinfo/rubygems-developers From luislavena at gmail.com Mon Dec 19 19:39:15 2011 From: luislavena at gmail.com (Luis Lavena) Date: Mon, 19 Dec 2011 21:39:15 -0300 Subject: Dropping Ruby 1.8.x support for 2.0? In-Reply-To: References: Message-ID: On Mon, Dec 19, 2011 at 9:36 PM, Erik Hollensbe wrote: > A lot of people in the real world(?) still depend on 1.8.7. As much as it sucks, I can't see how this would go well for the rubygems project. > > Maybe a spelled out deprecation roadmap would be a better way of saying "hey, 1.8.7 users, get your shit together". > Yes, I understand that, however it make things a bit more complicated when RubyGems is merged into Ruby itself and we need to keep track of different codebase, because simply for Ruby-Core, 1.8.7 is dead. -- Luis Lavena AREA 17 - Perfection in design is achieved not when there is nothing more to add, but rather when there is nothing more to take away. Antoine de Saint-Exup?ry From erik at hollensbe.org Mon Dec 19 19:45:31 2011 From: erik at hollensbe.org (Erik Hollensbe) Date: Mon, 19 Dec 2011 16:45:31 -0800 Subject: Dropping Ruby 1.8.x support for 2.0? In-Reply-To: References: Message-ID: On Dec 19, 2011, at 4:39 PM, Luis Lavena wrote: > On Mon, Dec 19, 2011 at 9:36 PM, Erik Hollensbe wrote: >> A lot of people in the real world(?) still depend on 1.8.7. As much as it sucks, I can't see how this would go well for the rubygems project. >> >> Maybe a spelled out deprecation roadmap would be a better way of saying "hey, 1.8.7 users, get your shit together". >> > > Yes, I understand that, however it make things a bit more complicated > when RubyGems is merged into Ruby itself and we need to keep track of > different codebase, because simply for Ruby-Core, 1.8.7 is dead. Oh, I'm not disagreeing with you regarding the concerns; I just think that communicating the plan is just as important as carrying out. That might mean a later point of removed 1.8.7 support to give people enough time to react appropriately. I guess what I'm envisioning is a bunch of big changes to rubygems and a large portion of the user base not being able to work with the changes (be they to gem/spec formats, etc) because they're on a previously well-supported version of ruby. Communicating "we're doing this in 2.1" for example gives plenty of time for the invested users to say, "ok, we really need to get off 1.8.7 now". Anyhow just $0.02, I'll stay out of it from here on out. :) -Erik From luislavena at gmail.com Mon Dec 19 19:50:35 2011 From: luislavena at gmail.com (Luis Lavena) Date: Mon, 19 Dec 2011 21:50:35 -0300 Subject: Dropping Ruby 1.8.x support for 2.0? In-Reply-To: References: Message-ID: On Mon, Dec 19, 2011 at 9:45 PM, Erik Hollensbe wrote: > > Oh, I'm not disagreeing with you regarding the concerns; I just think that communicating the plan is just as important as carrying out. That might mean a later point of removed 1.8.7 support to give people enough time to react appropriately. > > I guess what I'm envisioning is a bunch of big changes to rubygems and a large portion of the user base not being able to work with the changes (be they to gem/spec formats, etc) because they're on a previously well-supported version of ruby. Communicating "we're doing this in 2.1" for example gives plenty of time for the invested users to say, "ok, we really need to get off 1.8.7 now". > Hehe, is funny, because no matter what we do, people will complain (proof: deprecation warnings since 2008, nobody paid attention to them, world was on fire for months, several times) I was just expressing my thoughts in relation to code maintenance, not saying we should do it right now. I still support RubyInstaller releases of Ruby 1.8.7 and will keep doing until it gets officially dead or I die, whatever happens first :-) -- Luis Lavena AREA 17 - Perfection in design is achieved not when there is nothing more to add, but rather when there is nothing more to take away. Antoine de Saint-Exup?ry From ryand-ruby at zenspider.com Mon Dec 19 19:53:38 2011 From: ryand-ruby at zenspider.com (Ryan Davis) Date: Mon, 19 Dec 2011 16:53:38 -0800 Subject: Dropping Ruby 1.8.x support for 2.0? In-Reply-To: References: Message-ID: On Dec 19, 2011, at 16:36 , Erik Hollensbe wrote: > A lot of people in the real world(?) still depend on 1.8.7. As much as it sucks, I can't see how this would go well for the rubygems project. > > Maybe a spelled out deprecation roadmap would be a better way of saying "hey, 1.8.7 users, get your shit together". We're not dropping 1.8.x support anytime soon.