path: root/test/csv
AgeCommit message (Collapse)Author
2022-12-09Reapply the following commits related to extend timeout value.Hiroshi SHIBATA
66d1900423e6fb9774c2fe72dba8c2968b54d7ab 0686e4181d04dd911316a227753ceaa96d8c6533 1a63468831524f68e73cbb068071652c6486cfc6 e1fee7f949cb6719122672fa1081c60984a5339f 232e43fd52e53f667c2c290cffb4afa524889f0f Notes: Merged:
2022-12-09Merge csv-3.2.6Hiroshi SHIBATA
Notes: Merged:
2022-08-29Respect RUBY_TESTOPTS on test-all ( Kokubun
* Respect RUBY_TESTOPTS on test-all * Increase the Cirrus timeout * Increase the CSV test timeout Notes: Merged:
2021-12-24[ruby/csv] test: reduce size for stability on GitHub ActionsSutou Kouhei Notes: Merged:
2021-12-24[ruby/csv] Revert "parser: fix a keep bug that some texts may be dropped ↵Sutou Kouhei
unexpectedly" This reverts commit This introduces another pbolem. We should try again later. Notes: Merged:
2021-12-24[ruby/csv] parser: fix a keep bug that some texts may be dropped unexpectedlySutou Kouhei
Ruby: [Bug #18245] [ruby-core:105587] Reported by Hassan Abdul Rehman. Notes: Merged:
2021-12-24[ruby/csv] Add handling for ambiguous parsing options ↵adamroyjones
( GitHub: fix GH-225 With Ruby 3.0.2 and csv 3.2.1, the file ```ruby require "csv""example.tsv", "w") { |f| f.puts("foo\t\tbar") }"example.tsv", col_sep: "\t", strip: true) ``` produces the error ``` lib/csv/parser.rb:935:in `parse_quotable_robust': TODO: Meaningful message in line 1. (CSV::MalformedCSVError) ``` However, the CSV in this example is not malformed; instead, ambiguous options were provided to the parser. It is not obvious (to me) whether the string should be parsed as - `["foo\t\tbar"]`, - `["foo", "bar"]`, - `["foo", "", "bar"]`, or - `["foo", nil, "bar"]`. This commit adds code that raises an exception when this situation is encountered. Specifically, it checks if the column separator either ends with or starts with the characters that would be stripped away. This commit also adds unit tests and updates the documentation. Notes: Merged:
2021-12-24[ruby/csv] Fix typos [ci skip] ( Nakada Notes: Merged:
2021-12-13Prepare for removing RubyVM::JIT (#5262)Takashi Kokubun
Notes: Merged-By: k0kubun <>
2021-10-24[ruby/csv] Add support for Ractor ( Notes: Merged:
2021-10-24[ruby/csv] CSV(): Add support for Ruby 3 ( Hernandez
The implementation of the `CSV` shortcut method is broken in Ruby 3 for calls that look like this: ```ruby CSV(write_stream, col_sep: "|", headers: headers, write_headers: true) do |csv| ... end ``` The above will result in the following error when the `CSV` method attempts to pass on arguments to `CSV#instance`: ``` ArgumentError: wrong number of arguments (given 2, expected 0..1) ``` The issue is due to the changes in Ruby 3 relating to positional & keyword arguments. This commit updates the `CSV()` shortcut implementation to work with Ruby 3, and also updates the documentation for the shortcut method. Notes: Merged:
2021-10-24[ruby/csv] Changed line ending handling to consider the combination \r\n as ↵Joakim Antman
a single entry when row is faulty ( Notes: Merged:
2021-01-13Rename RubyVM::MJIT to RubyVM::JITTakashi Kokubun
because the name "MJIT" is an internal code name, it's inconsistent with --jit while they are related to each other, and I want to discourage future JIT implementation-specific (e.g. MJIT-specific) APIs by this rename. [Feature #17490]
2020-11-24[ruby/csv] Add support for \r\n with skip_lines: /...$/ againSutou Kouhei
GitHub: fix GH-194 Reported by Josef Šimánek. Thanks!!! Notes: Merged:
2020-11-24[ruby/csv] Fix CSV.filter to preserve headers (#174)Burdette Lamar
Co-authored-by: Sutou Kouhei <> Notes: Merged:
2020-07-20[ruby/csv] CSV.generate_line: use the encoding of the first non ASCII field ↵Sutou Kouhei
as the expected encoding See also: Notes: Merged:
2020-07-20[ruby/csv] force_quotes: add support for specifying the target indexes or namesSutou Kouhei
GitHub: fix GH-153 Reported by Aleksandr. Thanks!!! Notes: Merged:
2020-07-20[ruby/csv] Add `invalid: :replace` for `` (#130)Koichi ITO
This PR adds `invalid: :replace` for ``. It is a PR similar to #129. Notes: Merged:
2020-07-20[ruby/csv] Fix an error for `` (#131)Koichi ITO
Follow up to This PR fixes `ArgumentError` for `` when processing invalid byte sequence in UTF-8. Notes: Merged:
2020-07-20[ruby/csv] Add `undef: :replace` for `` (#129)Koichi ITO
This PR adds `undef: :replace` option for ``. `` has `undef: :replace` option, but `` does not. It would be convenient if `` could have a shortcut by having `undef: :replace` option. Notes: Merged:
2020-07-20[ruby/csv] Fix a bug that write_nil_value or write_empty_value don't work ↵Sutou Kouhei
with non String GitHub: fix GH-123 Reported by asm256. Thanks!!! Notes: Merged:
2020-07-20[ruby/csv] Revert "test: use binary mode explicitly for Ruby 2.7"Sutou Kouhei
This reverts commit 736174d28413a4c36630b0daf2f170c8d2fc9abe. It doesn't solve anything. Notes: Merged:
2020-07-20[ruby/csv] test: use binary mode explicitly for Ruby 2.7Sutou Kouhei Notes: Merged:
2020-07-20[ruby/csv] Fix a parse bug when split character exists in middle of column valueSutou Kouhei
GitHub: fix #115 Reported by TOMITA Masahiro. Thanks!!! Notes: Merged:
2020-07-20[ruby/csv] Ensuring StringIO's encoding in CSV.generate (#111)Seiei Miyagi Notes: Merged:
2020-07-20[ruby/csv] Do not loop forever when skip_lines regexp matches zero length ↵Mike MacDonald
with anchors (#110) * Do not loop forever when skip_lines regexp matches zero length with anchors * Remove needless white spaces * Add missing eos check in skip_needless_lines * Simplify test Notes: Merged:
2020-07-20[ruby/csv] Make CSV::Row#dup return a usable Row (#108)Jim Kane
* Make CSV::Row#dup return a usable Row Previously, calling `dup` on a `CSV::Row` object yielded an object whose copy was too shallow. Changing the clone's fields would also change the fields on the source. This change makes the clone more distinct from the source, so that changes can be made to its fields without affecting the source. * Simplify Notes: Merged:
2020-07-20[ruby/csv] Suppress warningsSutou Kouhei Notes: Merged:
2020-07-20Revert "test/csv/write/test_general.rb: suppress warnings"Nobuyoshi Nakada
This reverts commit 375cf129189f32f7be76ac525035bcde691a63e7, to sync csv from the upstream. Notes: Merged:
2020-05-14Removed trailing spaces [ci skip]Nobuyoshi Nakada
2020-02-26Fixed for older versionsNobuyoshi Nakada
Fix up 66d1900423e6fb9774c2fe72dba8c2968b54d7ab, `RubyVM::MJIT` is available since ruby 2.6.
2020-02-25Increase timeout for CSV test with --jit-waitTakashi Kokubun
To prevent CI failures like
2019-11-09Remove unneeded exec bits from some filesDavid Rodríguez
I noticed that some files in rubygems were executable, and I could think of no reason why they should be. In general, I think ruby files should never have the executable bit set unless they include a shebang, so I run the following command over the whole repo: ```bash find . -name '*.rb' -type f -executable -exec bash -c 'grep -L "^#!" $1 || chmod -x $1' _ {} \; ``` Notes: Merged:
2019-10-15test/csv/write/test_general.rb: suppress warningsYusuke Endoh
of "setting Encoding.default_internal".
2019-10-12Import CSV 3.1.2 (#2547)Sutou Kouhei
Notes: Merged-By: kou <>
2019-09-06Fix keyword argument warnings in the tests from Class#newJeremy Evans
This were previously hidden because calls from C were not warned. Notes: Merged:
2019-08-30Fix remaining warning issues in the tests due to keyword argument separationJeremy Evans
Notes: Merged:
2019-08-30Fix keyword argument separation warnings in testJeremy Evans
Notes: Merged:
2019-08-08Aliases capture_output to capture_io for test-unit compatiblity.Hiroshi SHIBATA
2019-07-14[ruby/csv] Fix a bug that strip: true removes newlinesKouhei Sutou
2019-07-14[ruby/csv] Don't raise on eof?Kouhei Sutou
GitHub: fix #86 Reported by krororo. Thanks!!!
2019-07-09Restore support library for only test files that are digest and csv.Hiroshi SHIBATA
2019-07-02with_different_ofs.rb has been moved tooNobuyoshi Nakada
2019-06-30Removed unused variablesNobuyoshi Nakada
2019-04-15Import CSV 3.0.9kou
This fixes test failures on Windows. git-svn-id: svn+ssh:// b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2019-04-14Import CSV 3.0.8kou
This includes performance improvements and backward incompatibility fixes. git-svn-id: svn+ssh:// b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2019-01-25Upgrade CSV to 3.0.4kou
git-svn-id: svn+ssh:// b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-23remove trailing spaces [ci skip]nobu
git-svn-id: svn+ssh:// b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-23Import CSV 3.0.2kou
This includes performance improvement especially writing. Writing is about 2 times faster. git-svn-id: svn+ssh:// b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-09-05Merge csv-3.0.0 from ruby/csv repository.hsbt
git-svn-id: svn+ssh:// b2dd03c8-39d4-4d8f-98ff-823fe69b080e