[#66126] Creation/Conversion methods/functions table for Ruby types — SASADA Koichi <ko1@...>
Hi,
5 messages
2014/11/07
[#66248] [ruby-trunk - Feature #10423] [PATCH] opt_str_lit*: avoid literal string allocations — normalperson@...
Issue #10423 has been updated by Eric Wong.
3 messages
2014/11/13
[#66595] [ruby-trunk - Bug #10557] [Open] Block not given when the argument is a string — bartosz@...
Issue #10557 has been reported by Bartosz Kopinski.
3 messages
2014/11/30
[ruby-core:66585] [ruby-trunk - Bug #10364] Malformed CSV Header Causes NoMethodError
From:
jrodrigosm@...
Date:
2014-11-30 06:56:39 UTC
List:
ruby-core #66585
Issue #10364 has been updated by Rodrigo Serrano. This issue is also present in ruby 2.1.5p273 (2014-11-13 revision 48405) [x86_64-linux] ---------------------------------------- Bug #10364: Malformed CSV Header Causes NoMethodError https://bugs.ruby-lang.org/issues/10364#change-50200 * Author: Jon Israelson * Status: Assigned * Priority: Normal * Assignee: James Gray * Category: * Target version: * ruby -v: ruby 2.1.3p242 (2014-09-19 revision 47630) [x86_64-darwin13.0] * Backport: 2.0.0: UNKNOWN, 2.1: UNKNOWN ---------------------------------------- The method CSV#readline raises a "NoMethodError: undefined method 'encode' for nil:NilClass" exception when the CSV file's header row contains a trailing delimiter (a comma in my case). The following CSV data can be used to recreate this error: ~~~ col1,col2, 1,2 3,4 ~~~ The resulting stack trace: ~~~ csv.rb:993:in `block in <class:CSV>' csv.rb:2175:in `[]' csv.rb:2175:in `block (2 levels) in convert_fields' csv.rb:2173:in `each' csv.rb:2173:in `block in convert_fields' csv.rb:2172:in `map' csv.rb:2172:in `with_index' csv.rb:2172:in `convert_fields' csv.rb:2213:in `parse_headers' csv.rb:1887:in `block in shift' csv.rb:1779:in `loop' csv.rb:1779:in `shift' ~~~ Assuming that the header row is considered malformed (IMHO it is), it seems that it would be better to raise a CSV::MalformedCSVError exception, which can be more easily handled. -- https://bugs.ruby-lang.org/