Skip to content

Release 1.1.6

Latest

Choose a tag to compare

@github-actions github-actions released this 05 Sep 03:50

feat: refactor JSON API and migrate yyjson integration

  • Break IJsonManager ABI: remove std::variant, split signed/unsigned APIs,
    add uint64 support for object/array/root/pointer access.
  • Replace void*/yyjson iterators with typed key/value/removal APIs.
  • Remove deprecated Foreach* and PtrTryGetVal natives.
  • Rename Release → ReleaseJsonValue; add ReleaseString for WriteToStringPtr.
  • Add error-buffer params to all major API paths; return null/false on failure.
  • Add ToStringDirect (zero-alloc) and route serialized cleanup via ReleaseString.
  • Centralize pointer resolution, mutation, and patch execution into helpers.
  • Extract RefCounted/RefPtr to RefCounted.h; extract type/container helpers to JsonTemplates.h.
  • Improve signed/unsigned, uint64, integer parsing, and FP comparison (NaN/inf/tolerance).
  • Validate negative SourcePawn array/index/buffer sizes before conversion.
  • Replace yyjson with a submodule.
  • Update tests, benchmarks, README, build docs, and project URLs.
  • Bump IJsonManager interface version from 3 to 4.