Skip to content

Update bundled vinecopulib to the 1.0 conditional-simulation stack - #328

Merged
tnagler merged 3 commits into
devfrom
backend/cond-simulate-sync
Aug 17, 2026
Merged

Update bundled vinecopulib to the 1.0 conditional-simulation stack#328
tnagler merged 3 commits into
devfrom
backend/cond-simulate-sync

Conversation

@tnagler

@tnagler tnagler commented Aug 14, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • vendor all headers from vinecopulib@4efce25966871a09f71891183b57082ff5e080e1, the current tip of cond-simulate
  • make the source update script location-independent and ref-selectable, preserve package-owned wrapper headers, and stop patching/deleting upstream headers
  • require C++17, R >= 4.0.0, and BH >= 1.75.0-0
  • select the RcppThread backend from the package-owned wrapper, keeping the vendored upstream headers pristine and exportable

Backend/API changes relevant to the R frontend

The imported stack adds explicit conditioning-set overloads for conditional simulation and Rosenblatt transforms, a per-observation-parameter Bicop::simulate() overload, serial evaluation of custom tree criteria, unified compact/expanded discrete layouts, and the vinecopulib 1.0 API cleanup. Follow-up stack layers consume these APIs; the existing frontend compiles without compatibility shims.

The backend also contains the Tawn override corrections, corrected BB6/BB7/BB8/Tawn Kendall-tau integration, and the final fix that treats omitted pair copulas as implicit independence during evaluation.

Tests

  • R CMD INSTALL with C++17
  • complete current testthat suite against the installed package
  • downstream Rcpp::sourceCpp() smoke test using the installed vinecopulib-wrappers.hpp; constructed a Bicop and verified VINECOPULIB_VERSION == 100000
  • verified the vendored upstream header tree byte-for-byte against the pinned backend checkout
  • after cascading the final backend refresh through stack #330: 817 testthat checks passed and R CMD check --no-manual --no-build-vignettes reported Status: OK at the release tip

No existing R simulation API is changed in this bottom layer; R-side seed handling is exercised in the conditional and vectorized simulation layers.

tnagler added 2 commits August 14, 2026 10:03
Vendor vinecopulib commit fff109c6b7782d4ef0e9ad3d91b816af0e8773d3.
@codecov

codecov Bot commented Aug 14, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 97.15%. Comparing base (044a1c9) to head (251b548).

Additional details and impacted files
@@           Coverage Diff           @@
##              dev     #328   +/-   ##
=======================================
  Coverage   97.15%   97.15%           
=======================================
  Files          16       16           
  Lines        2001     2001           
=======================================
  Hits         1944     1944           
  Misses         57       57           

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@tnagler
tnagler merged commit 4383487 into dev Aug 17, 2026
13 checks passed
@tnagler
tnagler deleted the backend/cond-simulate-sync branch August 17, 2026 10:51
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