massProps
A mass-properties rollup spends a year on documentation and follows its sibling's API
A side-by-side editorial comparison of prospectr and rollupTree — release velocity, themes, recent moves, and the top alternatives to consider.
prospectr spent its biggest release in years fixing spectra it had been quietly mangling.
prospectr provides the signal-processing layer for near-infrared and visible spectroscopy in R — Savitzky-Golay and gap-segment derivatives, standard normal variate, detrending, continuum removal, splice correction, plus calibration sampling algorithms like Kennard-Stone and DUPLEX and readers for ASD and BUCHI NIRCal instrument files. The May release is the substantial one: a long list of corrections to functions that were returning wrong or missing values rather than failing.
The recursive-computation engine under massProps grows the accessors its consumer needed
rollupTree performs recursive computations over tree and DAG structures — the generic engine that its author's massProps package uses to roll mass properties up an assembly breakdown. It is small and moves slowly: five releases in a year, of which two are README and vignette work. The current surface added row-level get and set accessors by key and by id at 0.4.0.
prospectr provides the signal-processing layer for near-infrared and visible spectroscopy in R — Savitzky-Golay and gap-segment derivatives, standard normal variate, detrending, continuum removal, splice correction, plus calibration sampling algorithms like Kennard-Stone and DUPLEX and readers for ASD and BUCHI NIRCal instrument files. The May release is the substantial one: a long list of corrections to functions that were returning wrong or missing values rather than failing.
The recent work is corrective rather than additive, and several items changed results silently before being caught. continuumRemoval() derived its convex-hull boundary offset from a fixed one-wavelength assumption that broke for fine-resolution spectra or non-nanometre units; cochranTest() passed an invalid argument name to prcomp() and produced incorrect principal component scores; readASD() silently dropped spectra in one branch of its text path. Two file readers were leaking connections. Alongside that runs a smaller thread of decoupling preprocessing steps from each other, most visibly detrend() gaining an snv argument so polynomial detrending can run without the SNV transform that Barnes et al. bundled with it.
The detrend() decoupling is the only recent addition and it fits a broader pipeline-composition direction, so similar separation of other bundled preprocessing steps is the plausible next move. The misspelled substraction argument now carries a deprecation warning, which schedules its removal for a future release.
rollupTree performs recursive computations over tree and DAG structures — the generic engine that its author's massProps package uses to roll mass properties up an assembly breakdown. It is small and moves slowly: five releases in a year, of which two are README and vignette work. The current surface added row-level get and set accessors by key and by id at 0.4.0.
The package develops in response to its one visible consumer. The 0.4.0 accessors appeared in January 2026 and massProps switched to them thirteen days later; 0.4.1 then fixed missing column names in the setters, which is the kind of defect only real use surfaces. Before that, 0.3.0's default_validate_dag() extended validation past strict trees to directed acyclic graphs, widening what structures the engine will accept.
On the established pattern the next release will be whatever massProps needs next, discovered by using it. A DAG validator suggests non-tree structures are in scope, but nothing in these notes says that path is being pushed further.
Other Infra & APIs products tracked by Sparkpulse, ranked by recent ship velocity. Each card links to a full editorial trajectory and lets you pivot into a head-to-head comparison with either prospectr or rollupTree.
A mass-properties rollup spends a year on documentation and follows its sibling's API
Six months of releases and not one of them touched the scoring models
A cognitive-science sampling package ships once, then goes quiet for eighteen months
A Bayesian volatility sampler in its maintenance decade, paying for its own speed
A black-box interpreter reaches CRAN, then learns multi-class and survival responses
Spatial thinning grows a result object, and the API breaks to make room for it
See all prospectr alternatives → · See all rollupTree alternatives →
Latest ship moves from both products, interleaved chronologically. ⚡ = editorial spark.
They serve adjacent needs but don't currently overlap on shipped themes. prospectr and rollupTree are shipping at a similar cadence (velocity 0.0 vs 0.0, both within Sparkpulse's "active" band). See the at-a-glance table above for a side-by-side breakdown of velocity, recent sparks, and editorial themes.
Sparkpulse doesn't pick a winner — we score release velocity, not feature parity. prospectr and rollupTree are shipping at a similar cadence (velocity 0.0 vs 0.0, both within Sparkpulse's "active" band). For your specific use case, the alternatives sections above list other Infra & APIs products to evaluate alongside.
Top prospectr alternatives in Infra & APIs are ranked by recent ship velocity. Browse the "prospectr alternatives" section above for the current picks, or visit /alternatives/prospectr for the full list with editorial commentary on each.
Top rollupTree alternatives in Infra & APIs are ranked by recent ship velocity. Browse the "rollupTree alternatives" section above for the current picks, or visit /alternatives/rolluptree for the full list with editorial commentary on each.