v3.0.0
BREAKING CHANGES
- Require php
>=7.4 - Uses php7 type hinting throughout with
declare(strict_types=1); - Uses
"ramsey/uuid": "^4.0" - Replaces
moontoast/mathwithbrick/math - Moves
Gdbots\Pbj\WellKnown\MessageReftoGdbots\Pbj\WellKnown\MessageRef - Removes
Gdbots\Pbj\WellKnown\BigNumber, we are just usingBigIntdirect frombrick/mathnow. - Removes
MixinandAbstractMixinsince thegdbots/pbjcno longer uses them. - Changes
MessageResolver::findOneUsingMixinandMessageResolver::findAllUsingMixinto use a curie (string) for resolution and instead of returning the schema it just returns curies (strings) of the messages using the mixin. - Removes
Gdbots\Pbj\Exception\HasEndUserMessage. - Changes
MessageResolver::registerto accept a map of curie to classname since mixin resolution uses separate manifests. - Simplifies
Schemaso the mixins are just the curies in string form, not objects. - Adds
Gdbots\Pbj\WellKnown\NodeRefandGdbots\Pbj\Type\NodeRefType. - Removes use of
gdbots/commonlib as those classes moved toGdbots\Pbj\Util\*Util. - Removes use of
Gdbots\Common\FromArrayandGdbots\Common\ToArrayinterfaces as it wasn't really needed. - Adds
Gdbots\Pbj\Enumwhich replacesGdbots\Common\Enum. - Adds
Codec::skipValidationwhich allows an optimized process for encoding/decoding that uses native php scalars/arrays where possible instead of objects. This should only be used when data is very trusted and highest performance possible is required. - Replaces
Gdbots\Pbj\Marshaler\Elastica\MappingFactorywithGdbots\Pbj\Marshaler\Elastica\MappingBuilderwhich produces a single mapping (for 7.x) from one or more schemas since elasticsearch no longer uses types.