← Back to all sparks
D

dbparser

ANALYTICS
Velocity0.0

Parse DrugBank XML database files into tidy R data frames

dbparser shed its database and CSV writers to become just a DrugBank parser.

drugbankxml parsingbioinformaticsscope reductionr6 classes
Current state
dbparser reads DrugBank's XML release into R tibbles. Its 2.0 line removed the persistence features that defined 1.x, writing to a database or to CSV, in favour of returning a dvobject the caller handles. Releases since have been column-naming normalization and test updates against newer DrugBank versions.
Where it's heading
The arc is scope reduction. Version 1.2.0 was the high-water mark of ambition, adding collective parsers, an R6 redesign and progress bars; 2.0.1 then deprecated the database and CSV writers and the old public methods outright. What remains is a narrower package whose ongoing work is keeping column names consistent and tests current with DrugBank's schema.
Prediction
The last two releases track DrugBank data versions rather than adding features, so the next is most likely another compatibility pass against a newer DrugBank release.

Recent moves

  1. 2y ago

    Duplicate drugbank_id column fixed in drug targets

    Fixes drug targets coming back with two drugbank_id columns and refreshes tests against DrugBank 5.1.12. Maintenance in the post-2.0 pattern of tracking the upstream data release.

    View source ↗
  2. 2y ago

    Tibble column names normalized to snake_case and drugbank_id

    Normalizes column naming across parsed tibbles: hyphens become underscores, primary_key becomes drugbank_id, and parent_key placeholders are replaced with real parent names. Breaking for existing scripts, but it settles naming that had been inconsistent since 1.x.

    View source ↗
  3. 3y ago

    Persistence layer dropped; parsers now return a dvobject

    ⚡ SPARK

    The release that redefined what dbparser is for, deprecating the database and CSV writers along with the old public methods and returning a dvobject instead. Everything after it is naming and compatibility work on the narrower package this left behind.

    View source ↗
  4. 5y ago

    Collective parsers added; parsers reimplemented as R6 classes

    The most expansive release in the history: collective parsers for drugs, cett and references, new element parsers, clearer function names and a progress bar, all on a new R6 class foundation. Ambition here is what 2.0.1 later trimmed back.

    View source ↗
  5. 6y ago

    Memory and performance gains across parsers

    Addresses memory and speed problems across many parsers and reworks how drug classification is represented to carry more information. Size columns in the main drugs table were dropped in the process.

    View source ↗
  6. 6y ago

    Fixes for SQL Server column sizes and dplyr compatibility

    Fixes a column-size failure when importing into SQL Server plus compatibility with an upcoming dplyr release and CRAN notes. Routine repair from the era when the package still wrote to databases itself.

    View source ↗