Inspect 7.x-2.5


The main subjects of this release are:


'Fuses' - graceful degradation
------------------------------
Inspectors and tracers now stop - and do a second attempt using less depth/more truncation - when producing overly long output.
And inspectors/tracers abort if time is closing in on PHP's maximum execution tion.
These measures - and the recursion checks and limits - should make it practically impossible for Inspect to fail.

Highlighting of truncated strings and objects/arrays
----------------------------------------------------
Dumps now highlight errors, string truncation, path removal, and object/array truncation (~ max depth).

More lenient string truncation
------------------------------
Default string truncation is now 1,000.
Used to be 100, but users reported that as an annoyance, and the length of truncation has btw little importance performance-wise.


Security issues
---------------
Backend (PHP)
 * Better path removal; now detects symlinked document root, and scrutinizes strings for real path as well as symlinked path (__FILE__ vs. SCRIPT_FILENAME).

Frontend (Javascript)
None.


New features
------------
Backend (PHP)
 * Graceful degradation when overly long inspection/trace output, and when closing in to max execution time.
 * Combined output functions/methods are now deprecated and will log trace as error: inspect_log_get()/InspectVar::log_get(), inspect_trace_log_get()/InspectTrc::log_get().
 * Default inspection string truncation is now 1,000.
 * inspect_args_get()/InspectVar::args_get() now defaults to return one_lined output.
 * Options name and message are now being truncated to 255, and logging category to 64.
 * Tuned profiler's measuring of it's own time.
 * Better documentation on help and configuration pages.

Frontend (Javascript)
 * Folding now renders newlines (as _NL_newline).
 * Folding now highlights errors, string truncation, path removal, and object/array truncation (~ max depth).


Bug fixes
---------
Backend (PHP)
 * The database logging methods did not check the length of output (query length) resulting in database error when attempting to log overly long output.
Frontend (Javascript)
 * Minor formatting issues for frontend inspection output folding.
