Skip to content

chore(rpkg): re-scaffold via minirextendr; bump miniextendr pin to 3ab1ea9#194

Draft
CGMossa wants to merge 1 commit into
mainfrom
rescaffold/miniextendr-latest
Draft

chore(rpkg): re-scaffold via minirextendr; bump miniextendr pin to 3ab1ea9#194
CGMossa wants to merge 1 commit into
mainfrom
rescaffold/miniextendr-latest

Conversation

@CGMossa
Copy link
Copy Markdown
Contributor

@CGMossa CGMossa commented May 11, 2026

Re-scaffolds dvs-rpkg/ against miniextendr@3ab1ea9 via minirextendr::upgrade_miniextendr_package(configure_ac = TRUE), and bumps the cargo git pin to match. This is the project rule in action: never cherry-pick miniextendr fixes into the rpkg by hand — bump the pin upstream-first, then re-scaffold. Pulls in install-mode self-repair, the lockfile-shape-drift check, wasm32 detection, the new bootstrap.R vendoring story, and the scoped clang 21+ warning fix in mx_abi.h. Drops the now-obsolete checksum = strip in configure.ac (regression on cargo ≥ 1.95; miniextendr#408 made it a no-op). Wrapper / NAMESPACE regen tracks upstream's rust_error_valuerust_condition_value rename and the new ProgressBarCallback S3 method export.

AI-written details

Scaffolding files touched

  • bootstrap.R, configure.ac, regenerated configure
  • src/Makevars.in, src/rust/build.rs, inst/include/mx_abi.h
  • New: src/r_shim.h, tools/lock-shape-check.R, src/rust/wasm_registry.rs (auto-generated)

Test plan

  • just rpkg-configure clean, source-mode detected, lock-shape-check passes
  • just rpkg-install clean, R wrappers regenerated
  • just rpkg-document clean, NAMESPACE and man/*.Rd updated
  • devtools::test('dvs-rpkg') PASS, 0 fail / 0 warn / 0 skip
  • just rpkg-clippy -- -D warnings clean
  • just rpkg-test cargo tests + tests/rv (local-path install) PASS

Notes

  • Possible follow-up (separate PR): #[derive(DataFrameRow)] (miniextendr#485) could simplify the hand-rolled FileStatusView / FileMetadataView serde mirror structs in dvs-rpkg/src/rust/lib.rs:356-418 and their post-hoc column rename/drop chain, applied inside dvs-rpkg only so the core dvs crate stays miniextendr-free. Would need miniextendr-side views that wrap dvs::status::FileStatus / StatusDetail / GetDetail rather than deriving directly on core types.

Drafted by Claude (claude-opus-4-7). Reviewed by the author.

@CGMossa CGMossa marked this pull request as draft May 11, 2026 18:52
@CGMossa
Copy link
Copy Markdown
Contributor Author

CGMossa commented May 11, 2026

I am working on (yet again) an overhaul of how miniextendr packages are built. I needed to see how far off dvs-rpkg is right now.. This will be superseded soon.

@CGMossa CGMossa force-pushed the rescaffold/miniextendr-latest branch from 76982f3 to fa38302 Compare May 16, 2026 09:25
…b1ea9

Re-scaffolded `dvs-rpkg/` against the latest miniextendr (3ab1ea9) using
`minirextendr::upgrade_miniextendr_package(configure_ac = TRUE)` and bumped
the cargo git pin to match.

Scaffolding changes:
- bootstrap.R: produces inst/vendor.tar.xz via cargo-revendor for pkgbuild
  flows (devtools::build, r-lib/actions/check-r-package).
- configure.ac: install-mode self-repair block, lock-shape-check, wasm32
  detection (IS_WASM_INSTALL/CARGO_BUILD_STD_FLAG), drops obsolete
  `checksum =` strip (miniextendr#408 makes it a no-op / correctness
  regression on cargo >= 1.95).
- src/Makevars.in: wasm32-conditional wrapper-gen, now also calls
  miniextendr_write_wasm_registry alongside miniextendr_write_wrappers.
- src/rust/build.rs: wasm_registry.rs generator-version check.
- inst/include/mx_abi.h: scoped clang 21+ -Wunknown-warning-option
  suppression (miniextendr#443).
- New: src/r_shim.h, tools/lock-shape-check.R, src/rust/wasm_registry.rs
  (generated).

Generated artifacts:
- R/dvs-wrappers.R: tracks upstream rust_error_value → rust_condition_value
  rename and adds @export for ProgressBarCallback `$`/`[[` methods.
- NAMESPACE / man/*.Rd: regenerated by devtools::document().

Verification: configure clean, R CMD INSTALL clean, devtools::test()
PASS 123/0/0, clippy -D warnings clean.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
@CGMossa CGMossa force-pushed the rescaffold/miniextendr-latest branch from fa38302 to b4bfa72 Compare May 17, 2026 09:16
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