Skip to content

v0.1.0 - Initial Release

Choose a tag to compare

@RezaKargar RezaKargar released this 15 Feb 11:56
· 8 commits to main since this release

go-igbinary v0.1.0

Pure Go decoder for PHP's igbinary serialization format.

Features

  • Zero external dependencies for the core igbinary package (stdlib only)
  • Decodes all igbinary v2 types: strings, integers, floats, booleans, nil, arrays, objects
  • String deduplication support (igbinary's compact string table)
  • PHP object decoding with class name preservation (__class key)
  • Class inheritance support (parent properties are flattened)

memcached sub-package

  • Full PHP memcached interop via flag-based dispatch
  • Built-in compressors: FastLZ, Zlib
  • Built-in serializers: igbinary, JSON, String, Long, Double, Bool
  • Pluggable Compressor and Serializer interfaces for custom implementations
  • Builder pattern for codec configuration

Installation

go get github.com/RezaKargar/go-igbinary@v0.1.0

Test Coverage

  • 93%+ overall test coverage
  • 88 unit tests + 21 integration tests (PHP writes to memcached, Go reads and decodes)
  • Docker-based integration tests (test-only dependency, not required by the library)