All Versions
60
Latest Version
Avg Release Cycle
86 days
Latest Release
836 days ago

Changelog History
Page 3

  • v9.0.1 Changes

    August 21, 2017

    โž• Added

    • Nothing

    ๐Ÿ—„ Deprecated

    • Nothing

    ๐Ÿ›  Fixed

    • ๐Ÿ‘€ CSV controls not applied when calling Writer::insertOne see issue #244

    โœ‚ Removed

    • Nothing
  • v9.0.0 Changes

    August 18, 2017

    โž• Added

    • ๐Ÿ‘Œ Improved CSV Records selection
      • League\Csv\Reader::getRecords to access all CSV records
      • League\Csv\Statement provides a constraint builder to select CSV records.
      • League\Csv\ResultSet represents the result set of the selected CSV records.
      • League\Csv\delimiter_detect function to detect CSV delimiter character
    • ๐Ÿ‘Œ Improved CSV document header selection.
      • League\Csv\Reader::getHeader
      • League\Csv\Reader::getHeaderOffset
      • League\Csv\Reader::setHeaderOffset
    • ๐Ÿ‘Œ Improved CSV Records conversion
      • League\Csv\CharsetConverter converts CSV records charset.
      • League\Csv\XMLConverter converts CSV records into DOMDocument
      • League\Csv\HTMLConverter converts CSV records into HTML table.
    • ๐Ÿ‘Œ Improved Exception handling
      • League\Csv\Exception the default exception
      • League\Csv\CannotInsertRecord
    • ๐Ÿ‘Œ Improved CSV document output
      • League\Csv\AbstractCsv::chunk method to output the CSV document in chunk
      • League\Csv\bom_match function to detect BOM sequence in a given string
      • League\Csv\ByteSequence interface to decoupled BOM sequence from CSV documents
    • ๐Ÿ‘Œ Improved CSV records column count consistency on insertion
      • League\Csv\ColumnConsistency
    • ๐Ÿ‘Œ Improved CSV document flush mechanism on insertion
      • League\Csv\Writer::setFlushThreshold
      • League\Csv\Writer::getFlushThreshold
    • ๐Ÿ‘Œ Improve RFC4180 compliance
      • League\Csv\RFC4180Field to format field according to RFC4180 rules

    ๐Ÿ—„ Deprecated

    • Nothing

    ๐Ÿ›  Fixed

    • ๐Ÿ‘Œ Improved CSV record insertion

      • League\Csv\Writer::insertOne only accepts an array and returns a integer
      • League\Csv\Writer::insertAll only accepts an iterable of array and returns an integer
    • Normalized CSV offset returned value

      • League\Csv\Reader::fetchColumn always returns the CSV document original offset.

    โœ‚ Removed

    • examples directory
    • ๐Ÿ‘ PHP5 support
    • ๐Ÿšš The following method is removed because The BOM API is simplified:
      • League\Csv\AbstractCsv::stripBOM
    • ๐Ÿšš All conversion methods are removed in favor of the conversion classes:
      • League\Csv\Writer::jsonSerialize
      • League\Csv\AbstractCsv::toHTML
      • League\Csv\AbstractCsv::toXML
      • League\Csv\AbstractCsv::setInputEncoding
      • League\Csv\AbstractCsv::getInputEncoding
    • ๐Ÿšš The following methods are removed because the PHP stream filter API is simplified:
      • League\Csv\AbstractCsv::isActiveStreamFilter
      • League\Csv\AbstractCsv::setStreamFilterMode
      • League\Csv\AbstractCsv::appendStreamFilter
      • League\Csv\AbstractCsv::prependStreamFilter
      • League\Csv\AbstractCsv::removeStreamFilter
      • League\Csv\AbstractCsv::clearStreamFilters
    • ๐Ÿšš The following methods are removed because switching between connections is no longer possible:
      • League\Csv\AbstractCsv::newReader
      • League\Csv\AbstractCsv::newWriter
      • League\Csv\Reader::getNewline
      • League\Csv\Reader::setNewline
    • ๐Ÿšš The Exception mechanism is improved thus the following class is removed:
      • League\Csv\Exception\InvalidRowException;
    • ๐Ÿšš The CSV records filtering methods are removed in favor of the League\Csv\Statement class:
      • League\Csv\AbstractCsv::addFilter,
      • League\Csv\AbstractCsv::addSortBy,
      • League\Csv\AbstractCsv::setOffset,
      • League\Csv\AbstractCsv::setLimit;
    • CSV records selecting API methods is simplified:
      • League\Csv\Reader::each
      • League\Csv\Reader::fetch
      • League\Csv\Reader::fetchAll
      • League\Csv\Reader::fetchAssoc
      • League\Csv\Reader::fetchPairsWithoutDuplicates
    • ๐Ÿšš Formatting and validating CSV records on insertion is simplified, the following methods are removed:
      • League\Csv\Writer::hasFormatter
      • League\Csv\Writer::removeFormatter
      • League\Csv\Writer::clearFormatters
      • League\Csv\Writer::hasValidator
      • League\Csv\Writer::removeValidator
      • League\Csv\Writer::clearValidators
      • League\Csv\Writer::getIterator
    • ๐Ÿ“ฆ The following Formatters and Validators classes are removed from the package:
      • League\Csv\Plugin\SkipNullValuesFormatter
      • League\Csv\Plugin\ForbiddenNullValuesValidator
      • League\Csv\Plugin\ColumnConsistencyValidator replace by League\Csv\ColumnConsistency
    • League\Csv\Writer no longers implements the IteratorAggregate interface
    • League\Csv\AbstractCsv::fetchDelimitersOccurrence is removed replace by League\Csv\delimiter_detect function
  • v8.2.3 Changes

    February 06, 2018

    โž• Added

    • None

    ๐Ÿ—„ Deprecated

    • None

    ๐Ÿ›  Fixed

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

    โœ‚ Removed

    • None
  • v8.2.2 Changes

    July 12, 2017

    โž• Added

    • None

    ๐Ÿ—„ Deprecated

    • None

    ๐Ÿ›  Fixed

    • Writer::insertOne was silently failing when inserting record in a CSV document in non-writing mode.
    • ๐Ÿ› bug fix docblock

    โœ‚ Removed

    • None
  • v8.2.1 Changes

    February 22, 2017

    โž• Added

    • Nothing

    ๐Ÿ—„ Deprecated

    • Nothing

    ๐Ÿ›  Fixed

    • internal Reader::getRow when using a StreamIterator issue #213
    • โœ‚ Removed @deprecated from selected methods issue #208

    โœ‚ Removed

    • Nothing
  • v8.2.0 Changes

    January 25, 2017

    โž• Added

    • AbstractCsv::createFromStream to enable working with resource stream issue #202

    ๐Ÿ—„ Deprecated

    • League\Csv\AbstractCsv::stripBom
    • League\Csv\Reader::getOffset
    • League\Csv\Reader::getLimit
    • League\Csv\Reader::getSortBy
    • League\Csv\Reader::getFilter
    • League\Csv\Reader::setOffset
    • League\Csv\Reader::setLimit
    • League\Csv\Reader::addSortBy
    • League\Csv\Reader::addFilter
    • League\Csv\Reader::fetch
    • League\Csv\Reader::each
    • League\Csv\Reader::fetchPairsWithoutDuplicates
    • League\Csv\Reader::fetchAssoc
    • ๐Ÿšš League\Csv\Writer::removeFormatter
    • League\Csv\Writer::hasFormatter
    • League\Csv\Writer::clearFormatters
    • ๐Ÿšš League\Csv\Writer::removeValidator
    • League\Csv\Writer::hasValidator
    • League\Csv\Writer::clearValidators
    • League\Csv\Writer::jsonSerialize
    • League\Csv\Writer::toHTML
    • League\Csv\Writer::toXML

    ๐Ÿ›  Fixed

    • Nothing

    โœ‚ Removed

    • Nothing
  • v8.1.2 Changes

    October 27, 2016

    โž• Added

    • Nothing

    ๐Ÿ—„ Deprecated

    • Nothing

    ๐Ÿ›  Fixed

    • BOM filtering fix issue #184
    • AbstractCsv::BOM_UTF32_LE value fixed

    โœ‚ Removed

    • Nothing
  • v8.1.1 Changes

    September 05, 2016

    โž• Added

    • Nothing

    ๐Ÿ—„ Deprecated

    • Nothing

    ๐Ÿ›  Fixed

    • getInputBOM method name is now consistent everywhere in the API PR #171
    • preserve fileObject CSV controls commit #8a20c56
    • ๐Ÿ”„ Change output method header content-type value to text/csv PR #175

    โœ‚ Removed

    • Nothing
  • v8.1.0 Changes

    May 31, 2016

    โž• Added

    • ๐Ÿ“ฆ The package now includes its own autoloader.
    • Ouput::getInputEncoding
    • Ouput::setInputEncoding

    ๐Ÿ—„ Deprecated

    • Ouput::getEncodingFrom replaced by Ouput::getInputEncoding
    • Ouput::setEncodingFrom replaced by Ouput::setInputEncoding

    ๐Ÿ›  Fixed

    • Stream Filters are now url encoded before usage issue #72
    • All internal parameters are now using the snake case format

    โœ‚ Removed

    • Nothing
  • v8.0.0 Changes

    December 11, 2015

    โž• Added

    • Reader::fetchPairs
    • Reader::fetchPairsWithoutDuplicates

    ๐Ÿ—„ Deprecated

    • Nothing

    ๐Ÿ›  Fixed

    • Reader::fetchColumn and Reader::fetchAssoc now return Iterator
    • Reader::fetchAssoc callable argument expects an indexed row using the submitted keys as its first argument
    • Reader::fetchColumn callable argument expects the selected column value as its first argument
    • ๐Ÿšš Default value on setOutputBOM is removed
    • AbstractCsv::getOutputBOM always return a string
    • AbstractCsv::getInputBOM always return a string

    โœ‚ Removed

    • Controls::setFlags
    • Controls::getFlags
    • Controls::detectDelimiterList
    • ๐Ÿšš QueryFilter::removeFilter
    • ๐Ÿšš QueryFilter::removeSortBy
    • QueryFilter::hasFilter
    • QueryFilter::hasSortBy
    • QueryFilter::clearFilter
    • QueryFilter::clearSortBy
    • Reader::query
    • The $newline argument from AbstractCsv::createFromString