Das setzten von Bool-Feldern sorgt dafür, dass das Objekt als geändert markiert wird, auch wenn der "gleiche" Wert gesetzt wird.
$licence->setActive(true)
Das liegt daran, dass intern ein Bool-Feld als 0 und 1 gespeichert wird. Wenn man das Feld mit true, false oder "1", "0" setzt dann stimmen die Typen nicht überein. Mit PHP 8 sind das dann nicht die gleichen Werte. Beim setzen müssen die Werte also normalisiert werden.