← Back to home
Comparison · Infra & APIs

dialr vs PEIMAN2

A side-by-side editorial comparison of dialr and PEIMAN2 — release velocity, themes, recent moves, and the top alternatives to consider.

dialr vs PEIMAN2: at a glance

FeaturedialrPEIMAN2
SectorInfra & APIsInfra & APIs
Velocity score0.00.0
Sparks · 30d00
Top themesphone-numbers, libphonenumber, rjava, r-packageproteomics, post-translational-modification, enrichment-analysis, reproducibility
Last editorial update1h ago6h ago
WebsiteVisit →Visit →

What is dialr?

The R phone-number package stopped only parsing numbers and started asking them where they are.

dialr wraps Google's libphonenumber through rJava, giving R a phone vector class that parses, validates and formats international numbers. It has been quiet since August 2022, when the last release removed a pathology where Java would freeze after enough invalid inputs. The package covers parsing, validation, formatting, and the metadata lookups added in 0.3.0.

Read the full dialr trajectory →

What is PEIMAN2?

PEIMAN2 cut its annotation database loose from its release cycle without breaking CRAN.

PEIMAN2 does enrichment analysis over post-translational modifications, testing whether a protein list is enriched for particular PTMs against UniProt-derived annotations, with translation functions bridging to mass spectrometry workflows. Its answers are only as current as its bundled database, and until June that database could only be refreshed by releasing a new package version. Version 1.1.0 changes that.

Read the full PEIMAN2 trajectory →

dialr vs PEIMAN2: editorial side-by-side

D
dialr
INFRA · APIS
0.0

The R phone-number package stopped only parsing numbers and started asking them where they are.

◆ Current state

dialr wraps Google's libphonenumber through rJava, giving R a phone vector class that parses, validates and formats international numbers. It has been quiet since August 2022, when the last release removed a pathology where Java would freeze after enough invalid inputs. The package covers parsing, validation, formatting, and the metadata lookups added in 0.3.0.

◆ Where it's heading

Two forces shape the history. One is expansion into what libphonenumber knows beyond the number itself — carrier, geocode, timezone — which happened once, in 2019, and has not been extended since. The other is the ongoing cost of being a Java wrapper inside an R tidyverse: rJava initialisation moved so the :: form works, phone vectors reclassified when tibble 3.0.0 changed how it treats list-based classes, and repeated performance work to make crossing the Java boundary tolerable. The maintainer has floated moving the phone class onto vctrs but has not.

◆ Prediction

The vctrs migration is the one change the maintainer has explicitly signalled, and the hard-deprecated one-shot functions were slated for removal in the next major release; three years of silence make neither imminent.

P
PEIMAN2
INFRA · APIS
0.0

PEIMAN2 cut its annotation database loose from its release cycle without breaking CRAN.

◆ Current state

PEIMAN2 does enrichment analysis over post-translational modifications, testing whether a protein list is enriched for particular PTMs against UniProt-derived annotations, with translation functions bridging to mass spectrometry workflows. Its answers are only as current as its bundled database, and until June that database could only be refreshed by releasing a new package version. Version 1.1.0 changes that.

◆ Where it's heading

The package has been moving from a fixed snapshot toward versioned, user-selectable data. Earlier releases updated the bundled database in place — 1.0.0 shipped the March 2025 version and said little else — which meant the annotation vintage was whatever the package version implied. Now update_peiman_database() downloads and caches external database files and UniProt PTM lists, enrichment workflows take a database_version argument, and the mass-spec translators take a ptmlist_version, so an analysis can pin a dated database rather than a package release. The CRAN-safe default is preserved deliberately: loading, examples and checks still use the bundled internal data and need no network.

◆ Prediction

Version pinning is now expressible but the release notes do not describe how a chosen version is recorded in output, so surfacing the active database version in results is the natural companion. The database and the UniProt PTM list are versioned separately, which leaves room for a combined manifest.

Alternatives to dialr and PEIMAN2

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 dialr or PEIMAN2.

See all dialr alternatives → · See all PEIMAN2 alternatives →

Recent activity from dialr and PEIMAN2

Latest ship moves from both products, interleaved chronologically. ⚡ = editorial spark.

  1. 2mo agoPEIMAN2Database updates decouple from package releases
  2. 1y agoPEIMAN2Bundled database refreshed to the March 2025 UniProt vintage
  3. 1y agoPEIMAN2Documentation fix for the second example dataset
  4. 2y agoPEIMAN2Background lists for SEA and PSEA; tidyverse dependency dropped
  5. 3y agodialrInvalid values short-circuit the Java parser, fixing a freeze
  6. 5y agodialrJava initialises on load, so :: calls work without library()
  7. 6y agodialrR 4.0 bump and tests decoupled from libphonenumber data
  8. 6y agodialrPhone vectors work in tibbles again after the 3.0.0 change
  9. 7y agodialrCarrier, geocode, and timezone lookups added
  10. 7y agodialrTenfold rJava speedup and proper phone equality

Frequently asked questions

What is the difference between dialr and PEIMAN2?

They serve adjacent needs but don't currently overlap on shipped themes. dialr and PEIMAN2 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.

Is dialr better than PEIMAN2?

Sparkpulse doesn't pick a winner — we score release velocity, not feature parity. dialr and PEIMAN2 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.

What are the best alternatives to dialr?

Top dialr alternatives in Infra & APIs are ranked by recent ship velocity. Browse the "dialr alternatives" section above for the current picks, or visit /alternatives/dialr for the full list with editorial commentary on each.

What are the best alternatives to PEIMAN2?

Top PEIMAN2 alternatives in Infra & APIs are ranked by recent ship velocity. Browse the "PEIMAN2 alternatives" section above for the current picks, or visit /alternatives/peiman2 for the full list with editorial commentary on each.