This changeset replaces the existing HeaderBag class with a simpler API using properties in the Message class. This class is quite low level and directly maps to the field names in the DNS protocol messages, so it shares the same names for its properties. These APIs are somewhat internal and it's unlikely this will affect many consumers of this package.
// old assert($message->header->get('id') !== 0); assert($message->header->isTruncated() === false); // new assert($message->id !== 0); assert($message->tc === false);
Among others, this also resolves a temporal dependence in the previous layout, because the headers now longer have to be "prepared" after performing modifications on the message.