|Changelog for var_representation
|What has changed?
* No code changes.
* Adds steps to build DLLs for Windows in CI.
* Fix improper detection of VAR_REPRESENTATION_UNESCAPED flag. The var_representation function was previously checking for VAR_REPRESENTATION_SINGLE_LINE due to missing parenthesis in a bitwise operation.
* Switch from infinite recursion detection on the object's properties to infinite recursion detection on the object itself.
This conforms with the change to var_export/debug_zval_dump in php 8.2-dev,
and would allow data structures to safely start returning temporary arrays that can be garbage collected to save memory
(after dumping the representation) starting in php 8.2+.
* Optimize escaping single quoted strings
* Add a new flag VAR_REPRESENTATION_UNESCAPED to always encode strings as single quoted strings without escaping control characters.
This may be useful when the result of var_representation is escaped again before being rendered (e.g. json encoding),
or when a short representation is desired.
* Fix handling of dumping arrays created from $GLOBALS in php versions prior to 8.1
* Move the C var_representation_ex API to var_representation.h