Bug 295049 - sysutils/R-cran-processx: Update to 3.9.0
Summary: sysutils/R-cran-processx: Update to 3.9.0
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: Zsolt Udvari
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2026-05-06 10:28 UTC by Einar Bjarni Halldórsson
Modified: 2026-05-12 18:12 UTC (History)
3 users (show)

See Also:
bugzilla: maintainer-feedback? (uzsolt)


Attachments
Update sysutils/R-cran-processx to 3.9.0 and updated sysutils/R-cran-ps to 1.9.3 (2.51 KB, patch)
2026-05-06 10:29 UTC, Einar Bjarni Halldórsson
einar: maintainer-approval? (uzsolt)
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Einar Bjarni Halldórsson 2026-05-06 10:28:07 UTC
Current version 3.8.6 fails to build with R-4.6.0 in poudriere
Comment 1 Einar Bjarni Halldórsson 2026-05-06 10:29:46 UTC
Created attachment 270455 [details]
Update sysutils/R-cran-processx to 3.9.0 and updated sysutils/R-cran-ps to 1.9.3

processx requires ps >= 1.9.3 now, so update that as well.

Tested build with poudriere on 14.4-RELEASE amd64
Comment 2 Zsolt Udvari freebsd_committer freebsd_triage 2026-05-08 05:02:32 UTC
The `make test` fails on R-cran-processx.
Comment 3 Zsolt Udvari freebsd_committer freebsd_triage 2026-05-08 05:05:10 UTC
(In reply to Zsolt Udvari from comment #2)
Sorry, the output:

===>   Installing existing package /packages/All/R-cran-pillar-1.11.1.pkg
[14-default] Installing R-cran-pillar-1.11.1...
[14-default] `-- Installing R-cran-glue-1.8.1...
[14-default] `-- Extracting R-cran-glue-1.8.1: 100%
pkg-static: Missing dependency 'R-cran-lifecycle'

Failed to install the following 1 package(s): /packages/All/R-cran-pillar-1.11.1.pkg
*** Error code 1

I'll check it.
Comment 4 Zsolt Udvari freebsd_committer freebsd_triage 2026-05-08 11:02:52 UTC
The devel/R-cran-rlang fails.
Comment 5 Einar Bjarni Halldórsson 2026-05-08 15:59:06 UTC
R-cran-rlang was fixed in https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=295048
Comment 6 Nuno Teixeira freebsd_committer freebsd_triage 2026-05-09 10:31:08 UTC
Still having:

[00:02:51] Failed ports: sysutils/R-cran-processx:stage math/R-cran-dplyr:stage

I will take a look at math/R-cran-dplyr
Comment 7 Nuno Teixeira freebsd_committer freebsd_triage 2026-05-09 10:35:49 UTC
(In reply to Nuno Teixeira from comment #6)

nvm, theres an PR 295051 already
Comment 8 Einar Bjarni Halldórsson 2026-05-09 13:21:17 UTC
(In reply to Nuno Teixeira from comment #7)

Yes, I was working through R libs that stopped working with R-4.6.0 (and their dependencies) and forgot to link the PR's.

But I think what caused the most problems with the R upgrade is that libs like R-cran-vctrs get rebuilt when R is upgraded, but if there isn't a version bump pkg doesn't know it needs to re-install. It would have needed a PORTREVISION bump for the R upgrade
Comment 9 Nuno Teixeira freebsd_committer freebsd_triage 2026-05-09 13:46:15 UTC
(In reply to Einar Bjarni Halldórsson from comment #8)

yes, a bump on consumers and an exp-run would be good.
Comment 10 Joseph Mingrone freebsd_committer freebsd_triage 2026-05-09 15:47:31 UTC
(In reply to Einar Bjarni Halldórsson from comment #8)
Nuno let me know about these issues today.  I spent a bit of time investigating, and here is part of my reply to Nuno's email. 

The main problem is that R 4.6.0 removed declarations for some non-API functions from its installed headers, and this change does not appear to have been well documented in the NEWS for this release.

Here is a proposed commit message for this update.

sysutils/R-cran-processx: Update to 3.9.0

The previous version (3.8.6) failed to build against math/R 4.6.0.  Rf_findVar is a non-API entry point whose declaration is no longer available in R 4.6.0's installed headers. The vendored copy of cleancall in processx called Rf_findVar directly in both cleancall.c and init.c, causing a compile error.  Version 3.9.0 fixes this upstream by replacing the calls with R_getVar, with a compatibility shim for R < 4.5.0.

Release notes: https://github.com/r-lib/processx/releases/tag/v3.9.0
Comment 11 Einar Bjarni Halldórsson 2026-05-09 16:48:00 UTC
(In reply to Joseph Mingrone from comment #10)

I agree, and it's the same with bug #295051
Comment 12 Zsolt Udvari freebsd_committer freebsd_triage 2026-05-10 08:29:15 UTC
I'm testing R-cran-processx.
Comment 13 Zsolt Udvari freebsd_committer freebsd_triage 2026-05-11 03:18:57 UTC
* checking tests ...
  Running 'testthat.R'Segmentation fault (core dumped)

 ERROR
Running the tests in 'tests/testthat.R' failed.
Last 13 lines of output:
  28: withRestarts(tryCatch(withCallingHandlers({    eval(code, test_env)    new_expectations <- the$test_expectations > starting_expectations    if (snapshot_skipped) {        skip("On CRA
N")    }    else if (!new_expectations && skip_on_empty) {        skip_empty()    }}, expectation = handle_expectation, packageNotFoundError = function(e) {    if (on_cran()) {        skip(
paste0("{", e$package, "} is not installed."))    }}, snapshot_on_cran = function(cnd) {    snapshot_skipped <<- TRUE    invokeRestart("muffle_cran_snapshot")}, skip = handle_skip, warning
= handle_warning, message = handle_message,     error = handle_error, interrupt = handle_interrupt), error = handle_fatal),     end_test = function() {    })
  29: test_code(code = exprs, env = env, reporter = get_reporter() %||%     StopReporter$new())
  30: source_file(path, env = env(env), desc = desc, shuffle = shuffle,     error_call = error_call)
  31: FUN(X[[i]], ...)
  32: lapply(test_paths, test_one_file, env = env, desc = desc, shuffle = shuffle,     error_call = error_call)
  33: doTryCatch(return(expr), name, parentenv, handler)
  34: tryCatchOne(expr, names, parentenv, handlers[[1L]])
  35: tryCatchList(expr, classes, parentenv, handlers)
  36: tryCatch(code, testthat_abort_reporter = function(cnd) {    cat(conditionMessage(cnd), "\n")    NULL})
  37: with_reporter(reporters$multi, lapply(test_paths, test_one_file,     env = env, desc = desc, shuffle = shuffle, error_call = error_call))
  38: test_files_serial(test_dir = test_dir, test_package = test_package,     test_paths = test_paths, load_helpers = load_helpers, reporter = reporter,     env = env, stop_on_failure = sto
p_on_failure, stop_on_warning = stop_on_warning,     desc = desc, load_package = load_package, shuffle = shuffle,     error_call = error_call)
  39: test_files(test_dir = path, test_paths = test_paths, test_package = package,     reporter = reporter, load_helpers = load_helpers, env = env,     stop_on_failure = stop_on_failure, st
op_on_warning = stop_on_warning,     load_package = load_package, parallel = parallel, shuffle = shuffle)
  40: test_dir("testthat", package = package, reporter = reporter,     ..., load_package = "installed")
  41: test_check("processx", reporter = "summary")
  An irrecoverable exception occurred. R is aborting now ...
* DONE
Comment 14 Einar Bjarni Halldórsson 2026-05-11 09:16:17 UTC
(In reply to Zsolt Udvari from comment #13)

That's not good...

I've updated TEST_DEPENDS in my tree, but I still get a segfault.
I'll see what I can do to fix it.
Comment 15 Einar Bjarni Halldórsson 2026-05-11 12:42:44 UTC
Tried downgrading R to 4.5.3, made no difference. Seems to be a problem above my paygrade
Comment 16 Nuno Teixeira freebsd_committer freebsd_triage 2026-05-11 14:47:49 UTC
My opinion is that you should commit update if you get a run-test OK and leave tests for later testing.
Comment 17 Zsolt Udvari freebsd_committer freebsd_triage 2026-05-12 18:00:27 UTC
(In reply to Nuno Teixeira from comment #16)
Yes. The port which builds fine is better than a port which doesn't build :)
Comment 18 commit-hook freebsd_committer freebsd_triage 2026-05-12 18:03:12 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=165891aa1d131e49d67355778bb22e0c6a4580b3

commit 165891aa1d131e49d67355778bb22e0c6a4580b3
Author:     Einar Bjarni Halldórsson <einar@isnic.is>
AuthorDate: 2026-05-12 18:01:00 +0000
Commit:     Zsolt Udvari <uzsolt@FreeBSD.org>
CommitDate: 2026-05-12 18:02:04 +0000

    sysutils/R-cran-processx: Update to 3.9.0

    Changelog:
    https://cran.r-project.org/web/packages/processx/news/news.html

    PR:             295049

 sysutils/R-cran-processx/Makefile | 4 ++--
 sysutils/R-cran-processx/distinfo | 6 +++---
 2 files changed, 5 insertions(+), 5 deletions(-)