← Back to all sparks
R

rncl

ANALYTICS
Velocity2.5

An Interface to the Nexus Class Library

A phylogenetics parser on life support, shipping only what CRAN's compilers demand.

phylogeneticsfile-parsingcran-maintenancec++dormant
Current state
rncl wraps the Nexus Class Library so R can read Newick and NEXUS tree files. Every release since 2016 has been custodial: 0.8.9 exists solely to pull upstream NCL changes so the bundled C++ compiles under the C++20 standard. No user-facing function has changed in close to a decade.
Where it's heading
The release cadence tracks toolchain deprecations rather than user demand: gcc 12 removing binary_function in 2022, a deprecated Rcpp call in 2025, C++20 in 2026. The package is maintained as a stable parsing dependency for phylogenetics tooling, and the goal visible in these entries is keeping it installable, not extending it.
Prediction
Expect the next release only when a compiler or CRAN policy change breaks the build again; nothing in these entries points to new parsing features.

Recent moves

  1. 15d ago

    NCL sources refreshed for C++20 compilation

    Pulls upstream NCL changes so the bundled C++ compiles under the C++20 standard. This is the toolchain-tracking pattern that has defined every rncl release since 2016 — nothing changes for R users.

    View source ↗
  2. 8mo ago

    Deprecated Rcpp call removed in maintenance release

    Removes a deprecated Rcpp call and a documentation formatting issue, both contributed externally. Consistent with a package that absorbs upstream deprecations rather than adding features.

    View source ↗
  3. 4y ago

    Build fixed for gcc 12 and clang 14

    Clears CRAN check warnings caused by the removal of binary_function in newer compilers. Another turn of the toolchain treadmill that sets this package's release schedule.

    View source ↗
  4. 6y ago

    Maintenance release clearing CRAN check warnings

    A warnings-only cleanup with no functional change, keeping the package installable from CRAN.

    View source ↗
  5. 8y ago

    CRAN check notes and warnings cleared

    Addresses CRAN check notes and warnings. The multi-year gaps on either side of this release underline how little the parsing code itself changes.

    View source ↗
  6. 9y ago

    Singleton removal moves to C++ for a 3x speedup

    The last release to touch behavior users can feel: edge-matrix renumbering moved into C++ for roughly a 3x speedup on a 1700-tip tree, plus a progress bar for large trees and integer storage for the edge matrix. Everything after this is compiler maintenance.

    View source ↗