Skip to contents

phutil (development version)

phutil 0.0.2

CRAN release: 2026-04-17

New features

  • New as_diagram() generic and methods for persistence and PHom classes, enabling round-trip conversion back to the diagram class used by {TDA} (#53).

Bug fixes

  • as_persistence.diagram() now correctly handles diagram objects whose Birth and Death columns appear in a different order, which can occur with some {TDA} filtrations (#52).
  • Graphics options are now properly restored to the user’s original settings after being temporarily changed (#41).

Minor improvements

  • {TDA} functions are now called with explicit TDA:: namespace prefixes and print.progress = FALSE for cleaner output (#41).
  • Tests for {ripserr} integration are now run conditionally on {ripserr} being installed, removing it as a hard suggested dependency (#41).
  • The vignette no longer requires {ggplot2} or {scales}, reducing optional dependencies for building the documentation (#46, closes #45).
  • Vendored {cpp11} headers have been removed; the package now relies on the {cpp11} headers provided by the installed package, allowing it to benefit from updated versions. The NO_LEGACY_NONAPI flag is set to comply with the R API going forward (#55).
  • Package description updated with references to the distance methods implemented (#41).

phutil 0.0.1

CRAN release: 2025-05-15

This is a new submission to CRAN.

Goals

The {phutil} package is intended to be a low-level package for hosting persistence data. It is part of the TDAverse suite of packages, which are designed to provide a collection of packages for enabling machine learning and data science tasks using persistent homology.

Current features

The package currently exposes:

Dependencies

Messages, warnings and errors are relayed to the user using the {rlang} package and the {cli} package which are both licensed under the MIT license and with no dependency trail.

Computation of distances is performed using the BSD-licensed Hera C++ library. The code interfacing R and C++ is generated by the header-only {cpp11} package which is MIT-licensed. Computation of pairwise distances is parallelized over the number of pairs using OpenMP.