Msgpack.php Versions Save

A pure PHP implementation of the MessagePack serialization format / msgpack.org[PHP]

v0.5.2

6 years ago

Added

  • MessagePack\BufferUnpacker::seek()

v0.5.1

6 years ago

Fixed

  • Maps detection optimization that was introduced in v0.4.1 (7af790bdfbe630616a90b678d124e5bac2ad696b)

v0.5.0

6 years ago

Added

  • The MessagePack\TypeTransformer\Unpackable interface
  • Tests for example scripts

Removed

  • The MessagePack\TypeTransformer\Extension interface

v0.4.1

6 years ago

Added

  • Methods:
    • MessagePack\PackOptions::isForceBinMode()
    • MessagePack\PackOptions::isForceMapMode()
    • MessagePack\UnpackOptions::isBigIntAsExceptionMode()

Changed

  • Optimized the detection of maps during packing

v0.4.0

6 years ago

This release drops support for old PHP versions and HHVM. The minimum PHP version requirement is 7.1.1.

Added

  • Methods:
    • MessagePack\Exception\InsufficientDataException::unexpectedLength()
    • MessagePack\Exception\InvalidOptionException::outOfRange()
    • MessagePack\Exception\PackingFailedException::unsupportedType()
    • MessagePack\Exception\UnpackingFailedException::unknownCode()
    • MessagePack\Exception\UnpackingFailedException::unexpectedCode()
    • MessagePack\PackOptions::fromDefaults()
    • MessagePack\UnpackOptions::fromDefaults()
  • Typehits
  • More tests
  • More examples

Changed

  • Method signatures:
    • MessagePack\Exception\IntegerOverflowException::__construct()
    • MessagePack\Exception\PackingFailedException::__construct()
    • MessagePack\Tests\Perf\Runner::__construct()
    • MessagePack\Tests\Perf\Runner::run()
  • Visibility:
    • MessagePack\Packer::UTF8_REGEX from public to private
  • Coding standards rules (.php_cs.dist)
  • Applied minor optimizations

Removed

  • Classes:
    • MessagePack\Exception\InvalidCodeException
  • Methods:
    • MessagePack\Exception\InsufficientDataException::fromOffset()
    • MessagePack\Exception\InvalidOptionException::fromValidOptions()

v0.3.1

6 years ago

Added

  • MessagePack\BufferUnpacker::__clone()

Changed

  • Made MessagePack\Packer::registerTransformer() and MessagePack\BufferUnpacker::registerTransformer() fluent
  • Optimized MessagePack\Packer::pack() for nulls and bools

v0.3.0

6 years ago

Added

  • Classes

    • MessagePack\Exception\InvalidCodeException
    • MessagePack\Exception\InvalidOptionException
    • MessagePack\Type\Binary
    • MessagePack\Type\Map
    • MessagePack\TypeTransformer\BinaryTransformer
    • MessagePack\TypeTransformer\MapTransformer
    • MessagePack\MessagePack
    • MessagePack\PackOptions
    • MessagePack\UnpackOptions
  • Interfaces

    • MessagePack\TypeTransformer\Packable
    • MessagePack\TypeTransformer\Extension
  • Methods

    • MessagePack\BufferUnpacker::registerTransformer()
    • MessagePack\BufferUnpacker::unpackNil()
    • MessagePack\BufferUnpacker::unpackBool()
    • MessagePack\BufferUnpacker::unpackInt()
    • MessagePack\BufferUnpacker::unpackFloat()
    • MessagePack\BufferUnpacker::unpackArray()
    • MessagePack\BufferUnpacker::unpackArrayHeader()
    • MessagePack\BufferUnpacker::unpackMap()
    • MessagePack\BufferUnpacker::unpackMapHeader()
    • MessagePack\BufferUnpacker::unpackExt()
    • MessagePack\Packer::registerTransformer()
    • MessagePack\Packer::packArrayHeader()
    • MessagePack\Packer::packMapHeader()
  • Code examples

  • @slow and @pecl_comp groups of tests which can be assigned to the MP_BENCH_TESTS environment variable

  • PHP CS Fixer configuration file, .php_cs.dist

Changed

  • Changed the signature of the following methods:
    • MessagePack\BufferUnpacker::__construct()
    • MessagePack\Packer::__construct()
    • MessagePack\Packer::packExt()
  • The MessagePack\Ext class was marked as final
  • Changed the return format of MessagePack\Tests\DataProvider::provideData()
  • Optimized unpacking empty strings, array and maps
  • Optimized working with extension types
  • Optimized working with type transformers

Removed

  • Classes

    • MessagePack\Unpacker
    • MessagePack\TypeTransformer\Collection
  • Interfaces

    • MessagePack\TypeTransformer\TypeTransformer
  • Methods

    • MessagePack\BufferUnpacker::setTransformers()
    • MessagePack\BufferUnpacker::getTransformers()
    • MessagePack\BufferUnpacker::setIntOverflowMode()
    • MessagePack\BufferUnpacker::getIntOverflowMode()
    • MessagePack\Packer::setTransformers()
    • MessagePack\Packer::getTransformers()
    • MessagePack\Packer::setTypeDetectionMode()
    • MessagePack\Ext::getType()
    • MessagePack\Ext::getData()
  • Constants

    • MessagePack\BufferUnpacker::INT_AS_EXCEPTION
    • MessagePack\BufferUnpacker::INT_AS_STR
    • MessagePack\BufferUnpacker::INT_AS_GMP
    • MessagePack\Packer::FORCE_STR
    • MessagePack\Packer::FORCE_BIN
    • MessagePack\Packer::FORCE_ARR
    • MessagePack\Packer::FORCE_MAP

v0.2.2

7 years ago
  • Added named constructor for InsufficientDataException
  • Fixed properties initialization in BufferUnpackerTarget/PackerTarget constructors
  • Replaced is_double() with is_float()
  • Updated license year

v0.2.1

7 years ago

Optimized utf8/bin auto detection when pcre.jit=0

v0.2.0

7 years ago

Core

  • Added php7 support
  • Introduced type detection modes
  • Renamed MessagePack\Packer::packDouble() to MessagePack\Packer::packFloat()
  • Applied various performance optimizations

Tests

  • Added more tests and php runtimes (php 7.0/7.1, hhvm 3.9/3.12/latest)
  • Renamed some benchmark targets, added new ones
  • Added tests/Perf/Filter/RegexpFilter.php, renamed tests/Perf/Filter/NameFilter.php to tests/Perf/Filter/ListFilter.php, tests/Perf/Benchmark/TimeBenchmark.php to tests/Perf/Benchmark/DurationBenchmark.php