Skip to content

dsROCrate 0.2.3 - #38

Merged
villegar merged 20 commits into
mainfrom
dev
Sep 24, 2026
Merged

villegar merged 20 commits into
mainfrom
dev

Conversation

@villegar

@villegar villegar commented Sep 24, 2026 •

Copy link
Copy Markdown
Member

dsROCrate 0.2.3

New Features

  • safe_output() now preserves Opal 6.0 RESOLVE operations independently of ASSIGN operations, including the resolved symbol and source table/resource for provenance. RESOLVE entries are retained even when no matching ASSIGN follows (e.g., a failed resolution). This is only enabled when the server reports Opal >= 6.0.
  • Every entry in the audit log tibble returned via safe_output() (and written to the _mappings.csv file) now has a unique id (UUID), and the tibble gains a column field recording the column referenced by a function call argument (e.g. D$LAB_TSC), where applicable.

Improvements

  • Function-call arguments supplied as R expressions (e.g. D$LAB_TSC) are now resolved back to the single registered symbol they reference, along with the referenced column. Expressions that reference several symbols, or none that are registered, are returned unchanged.
  • Audit log entries are now ordered by their original log-entry order and then timestamp, and operation IDs are regenerated as UUIDs.
  • Symbol IDs generated by safe_symbol() are now plain UUIDs, without the previous "symbol-" prefix.

Bug fixes

  • Fixed safe_output() failing when an audit session contains no ASSIGN operations: an empty, correctly typed symbols table is now used.
  • Fixed safe_output() failing when no function calls could be reconstructed from the logs: an empty, correctly typed calls table is now used.
  • safe_output() no longer injects a placeholder row (ds_profile = "-999999") into the parsed logs; a zero-row typed tibble is used to guarantee the ds_profile column exists instead.
  • Fixed resolve_dependencies() failing on an empty symbol registry, and resolve_provenance() failing when given an NA symbol ID. Both now return an empty tibble.
  • validate_backend_version() (opal method) no longer emits warnings from utils::compareVersion().

Internal Changes

  • Added tests covering safe_output() with RESOLVE and ASSIGN operations, and RESOLVE operations without ASSIGN; updated as.data.frame.safe_call() test for the new id column.
  • Declared additional local bindings in safe_output() to silence R CMD check notes about undefined global variables.
  • Updated roxygen2 documentation for enrich_argument() and safe_call(); regenerated with roxygen2 8.1.0.

@villegar
villegar marked this pull request as ready for review September 24, 2026 20:42
@villegar
villegar merged commit 8a33bfa into main Sep 24, 2026
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant