← Back to all sparks
S

stringi

ANALYTICS
Velocity2.5

Fast and Portable Character String Processing Facilities

stringi has spent two years on build hardening since its Unicode 15.1 reset.

unicodeicubuild-portabilitystring-processingr-packagemaintenance
Current state
stringi is the ICU-backed string engine under a large share of R's text handling. Since the 1.8.1 reset in late 2023 — which bundled ICU 74.1, dropped Solaris, and raised the compiler floor — every subsequent release has been build and portability maintenance: PROTECT-stack fixes, Windows build errors, compiler warnings. The 1.8.8 release in July 2026 continues that pattern by dropping the configure script's C++11 fallback.
Where it's heading
The package has reached feature stability and is maintained as infrastructure. Releases arrive when a toolchain, platform, or check regime changes, not when users ask for capability. The two-and-a-half year gap between 1.8.1's Unicode bump and anything comparable suggests the next directional move will again be an ICU bundle refresh rather than new API surface.
Prediction
The next release is most likely another build-time fix or an ICU bundle update to a newer Unicode version; the entries show no in-progress feature work.

Recent moves

  1. 17d ago

    Configure script drops the C++11 fallback

    Build hygiene only: warnings cleaned up and the configure script no longer falls back to C++11, tidying up after the compiler floor 1.8.1 established. Nothing changes for callers.

    View source ↗
  2. 1y ago

    PROTECT stack imbalance fixed in stri_encode_from_marked

    A memory-management bug in stri_encode_from_marked and more build warnings cleared. Real correctness work at the C level, but invisible from R.

    View source ↗
  3. 2y ago

    Windows build errors fixed

    A Windows-only build failure resolved with help from outside contributors. Portability upkeep in the same vein as the rest of the post-1.8.1 window.

    View source ↗
  4. 2y ago

    Format-string warnings cleared

    Compiler warnings about non-literal format strings silenced. Check-farm maintenance with no user-facing effect.

    View source ↗
  5. 2y ago

    32-bit Windows and Loongarch builds restored

    Three build fixes: a missing Windows API call on 32-bit, flag ordering in configure to match Makevars, and restored ICU double-conversion support on Loongarch. Platform breadth maintained, capability unchanged.

    View source ↗
  6. 2y ago

    ICU 74.1 bundle lands; Solaris support dropped

    ⚡ SPARK

    The one release in this window that moves the package rather than maintaining it: a new ICU bundle, a dropped platform, a raised compiler floor, and changed date-time parsing defaults. Everything after it is cleanup on the foundation it laid.

    View source ↗