Skip to content

Releases: thephpleague/csv

version 9.3.0

30 Jul 14:44
Compare
Choose a tag to compare

Added

  • XMLConverter::import see #348 thanks @kusabi
  • Support for thead, tfoot and tbody in HTMLConverter::convert via the addition of
    protected methods HTMLConverter::addHTMLAttributes and HTMLConverter::appendHeaderSection #348 thanks @kusabi

Deprecated

  • Nothing

Fixed

  • Internal improvement in Reader dockblock thanks @ghobaty.
  • Improve strict comparison when using preg_match.
  • Improve CSV control in Stream.

Removed

  • Nothing

version 9.2.1

08 Jun 07:40
b574a7d
Compare
Choose a tag to compare

Added

  • Nothing

Fixed

  • AbstractCSV::chunk see #325 remove CSV flags from the Stream class to avoid infinite loop.
  • Internal improve HTMLConverter.

Deprecated

  • Nothing

Removed

  • Nothing

version 9.2.0

08 Mar 06:56
f3a3c69
Compare
Choose a tag to compare

Added

  • Supports for PHP7.4 empty string for the escape character.
  • Supports for empty string for the escape character with a polyfill for PHP7.4- versions.
  • AbstractCSV::getPathname see #321 thanks @tomkyle

Deprecated

  • League\Csv\RFC4180Field use AbstractCSV::setEscape method with an empty string instead.

Fixed

  • AbstractCSV::__construct correctly initializes properties

  • AbstractCSV::createFromString named constructor default argument is now the empty string

  • AbstractCSV::setEscape now accepts the empty string like fputcsv and fgetcsv

  • Writer::insertOne fixes throwing exception when record can not be inserted

  • XMLConverter convert to string the record value to avoid PHP warning on null value

  • Internal Stream::createFromString named constructor default argument is now the empty string

  • Internal Stream::fwrite improved

  • Internal Stream::__destruct no longer emit warning on invalid stream filter removal.

  • Internal Stream::seek returns 0 if the seeked position 0 is valid see #321 thanks @HaozhouChen

  • Reader:getHeader when the record is an empty line.

Removed

  • Nothing

version 9.1.4

01 May 18:53
Compare
Choose a tag to compare

Added

  • Nothing

Deprecated

  • Nothing

Fixed

  • Writer::setFlushThreshold should accept 1 as an argument #289

  • CharsetConverter::convert should not try to convert numeric value #287

Removed

  • Nothing

version 9.1.3

12 Mar 07:21
Compare
Choose a tag to compare

Added

  • Nothing

Deprecated

  • Nothing

Fixed

  • Writer::insertOne allow empty array to be added to the CSV (allow inserting empty row)
  • Removed all return type from named constructor see #285
  • Added PHPStan for static code analysis

Removed

  • Nothing

version 8.2.3

06 Feb 08:28
Compare
Choose a tag to compare

Added

  • None

Deprecated

  • None

Fixed

  • Reader::fetchAssoc no longer throws exception because of a bug in PHP7.2+ issue #279

Removed

  • None

version 9.1.2

05 Feb 14:11
Compare
Choose a tag to compare

Added

  • Nothing

Deprecated

  • Nothing

Fixed

  • is_iterable polyfill for PHP7.0
  • Reader::getHeader no longer throws exception because of a bug in PHP7.2+ issue #279

Removed

  • Nothing

version 9.1.1

28 Nov 08:37
Compare
Choose a tag to compare

Added

  • Nothing

Deprecated

  • Nothing

Fixed

  • issue with error_get_last usage when using a modified PHP error handler see #254 - fixed by @csiszarattila

  • Removed seekable word from Stream exception messages.

Removed

  • Nothing

version 9.1.0

20 Oct 08:06
Compare
Choose a tag to compare

Added

  • Support for non seekable stream. When seekable feature are required an exceptions will be thrown.
  • League\Csv\EncloseField to force enclosure insertion on every field. #269
  • League\Csv\EscapeFormula a League CSV formatter to prevent CSV Formula Injection in Spreadsheet programs.
  • League\Csv\RFC4180Field::addTo accept an option $replace_whitespace argument to improve RFC4180 compliance.
  • League\Csv\Abstract::getContent to replace League\Csv\Abstract::__toString. The __toString method may trigger a Fatal Error with non seekable stream, instead you are recommended to used the new getContent method which will trigger an exception instead.

Deprecated

  • League\Csv\Abstract::__toString use League\Csv\Abstract::getContent instead. the __toString triggers a Fatal Error when used on a non-seekable CSV document. use the getContent method instead which will trigger an exception instead.

Fixed

  • Bug fixes headers from AbstractCsv::output according to RFC6266 #250
  • Make sure the internal source still exists before closing it #251
  • Make sure the Reader::createFromPath default open mode is r see #258 and #266

Removed

  • Nothing

version 9.0.1

22 Aug 06:30
Compare
Choose a tag to compare

Added

  • Nothing

Deprecated

  • Nothing

Fixed

  • CSV controls not applied when calling Writer::insertOne see issue #244

Removed

  • Nothing