lobstr
Understanding complex R objects with tools similar to str()
R's object inspector is losing its view of the internals as CRAN closes off the private C API.
◆Recent moves
- 5mo ago
New src() for srcrefs; environment bindings stop erroring
src() arrives for exploring srcref and srcfile objects, with documentation of what the maintainers know about them. obj_size(), obj_addrs() and sxp() no longer throw "bad binding access" on for-loop and immediate bindings, and sxp() hides internal frame structures to stay within R's public C API.
View source ↗ - 9mo ago
truelength reporting dropped for public C API compliance
⚡ SPARKR's public API restrictions cost lobstr the ability to report a vector's truelength, and the named indicator is replaced by an refs:n scale mapped to NO_REFERENCES and MAYBE_SHARED. For an introspection tool, this is the release where the platform started deciding what can be seen.
View source ↗ - 4y ago
Moves to cpp11, relicensed MIT, adds experimental tree()
The C++ layer switches from Rcpp to cpp11 and the package is relicensed as MIT. obj_size() gains human-readable units and stops returning NA above 2^31 bytes, and an experimental tree() lands as an alternative to str().
View source ↗ - 7y ago
PROTECT error fixed
A PROTECT error is fixed and UTF-8 characters removed from comments. Compilation-level housekeeping.
View source ↗ - 7y ago
ALTREP sizes computed correctly; obj_addr() stops side-effecting
obj_size() handles ALTREP objects correctly on R 3.5.0 and obj_addr() no longer increments its input's reference count — a real problem for a tool whose job is reporting reference counts. ast() also prints scalar integers and complex numbers more accurately.
View source ↗