Skip to content

Help with resolving non-API call warnings in Rust-based packages (ymd and fcl)

4 messages · Josiah Parry, 谭显英

#
Dear R-devel list,


I maintain two packages that use Rust code through the "extendr" library:
ymd (https://github.com/shrektan/ymd) and fcl (https://github.com/shrektan/fcl) .
These packages are currently at risk of being removed from CRAN due to calls 
to R's non-API functions.


I've addressed most of these issues by upgrading to "extendr 0.8.0".
When testing with R-win-devel, the packages pass all checks. However,
upon submission to CRAN, I'm facing a confusing situation: the packages
pass checks on Windows but fail on Debian with the following warning:


* checking compiled code ... WARNING
File 'ymd/libs/ymd.so':
  Found '_exit', possibly from '_exit' (C)
    Object: 'rust/target/release/libymd.a'
  Found 'abort', possibly from 'abort' (C)
    Object: 'rust/target/release/libymd.a'
  Found 'exit', possibly from 'exit' (C)
    Object: 'rust/target/release/libymd.a'


I'm not sure if this is still an issue with extendr or if it's a false
warning. I'm particularly puzzled by the discrepancy between Windows and
Debian check results.


Is there an easy way to check against the Debian win-devel server before
resubmitting to ensure these issues are fixed?


For reference, here's the relevant excerpt from CRAN's automated email:


package ymd_0.1.5.tar.gz does not pass the incoming checks automatically,
please see the following pre-tests (additional issue checks):
Windows: https://win-builder.r-project.org/incoming_pretest/ymd_0.1.5_20250414_114928/Windows/00check.log Status: OK
Debian: https://win-builder.r-project.org/incoming_pretest/ymd_0.1.5_20250414_114928/Debian/00check.log Status: 1 WARNING


Any insights or suggestions would be greatly appreciated.


Best regards,
Xianying Tan (shrektan)
#
Please update your Makevars template using the development version of
rextendr.

Please see:
https://github.com/extendr/extendr/releases/tag/extendr-api-v0.8.0
On Mon, Apr 14, 2025 at 18:59 ??? <shrektan at 126.com> wrote:

            

  
  
#
Thanks. I confirmed the issue has been resolved by following the instructions in your link.


Regards,


Xianying Tan (shrektan)




---- Replied Message ----
| From | Josiah Parry<josiah.parry at gmail.com> |
| Date | 04/15/2025 10:27 |
| To | ???<shrektan at 126.com> |
| Cc | r-devel at r-project.org<r-devel at r-project.org> |
| Subject | Re: [Rd] Help with resolving non-API call warnings in Rust-based packages (ymd and fcl) |
Please update your Makevars template using the development version of rextendr. 


Please see:
https://github.com/extendr/extendr/releases/tag/extendr-api-v0.8.0
On Mon, Apr 14, 2025 at 18:59 ??? <shrektan at 126.com> wrote:
Dear R-devel list,


I maintain two packages that use Rust code through the "extendr" library:
ymd (https://github.com/shrektan/ymd) and fcl (https://github.com/shrektan/fcl) .
These packages are currently at risk of being removed from CRAN due to calls
to R's non-API functions.


I've addressed most of these issues by upgrading to "extendr 0.8.0".
When testing with R-win-devel, the packages pass all checks. However,
upon submission to CRAN, I'm facing a confusing situation: the packages
pass checks on Windows but fail on Debian with the following warning:


* checking compiled code ... WARNING
File 'ymd/libs/ymd.so':
  Found '_exit', possibly from '_exit' (C)
    Object: 'rust/target/release/libymd.a'
  Found 'abort', possibly from 'abort' (C)
    Object: 'rust/target/release/libymd.a'
  Found 'exit', possibly from 'exit' (C)
    Object: 'rust/target/release/libymd.a'


I'm not sure if this is still an issue with extendr or if it's a false
warning. I'm particularly puzzled by the discrepancy between Windows and
Debian check results.


Is there an easy way to check against the Debian win-devel server before
resubmitting to ensure these issues are fixed?


For reference, here's the relevant excerpt from CRAN's automated email:


package ymd_0.1.5.tar.gz does not pass the incoming checks automatically,
please see the following pre-tests (additional issue checks):
Windows: https://win-builder.r-project.org/incoming_pretest/ymd_0.1.5_20250414_114928/Windows/00check.log Status: OK
Debian: https://win-builder.r-project.org/incoming_pretest/ymd_0.1.5_20250414_114928/Debian/00check.log Status: 1 WARNING


Any insights or suggestions would be greatly appreciated.


Best regards,
Xianying Tan (shrektan)

______________________________________________
R-devel at r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel
#
Brilliant!
On Mon, Apr 14, 2025 at 22:49 ??? <shrektan at 126.com> wrote: