-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
faac33e
commit 683740c
Showing
11 changed files
with
144 additions
and
86 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,3 @@ | ||
Version: 0.1.0 | ||
Date: 2024-01-13 17:01:35 UTC | ||
SHA: fd2f234b30b0a802fbed3cdad3ccbd4d22b6a58a | ||
Version: 0.1.2 | ||
Date: 2024-07-31 14:47:25 UTC | ||
SHA: 6c89e6f5986430ea6f2556f4e628bbb62f8b2f5b |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,20 +1,3 @@ | ||
#!/usr/bin/env sh | ||
|
||
# https://github.com/eitsupi/prqlr/blob/main/configure | ||
export PATH="$PATH:$HOME/.cargo/bin" | ||
|
||
if [ ! "$(command -v cargo)" ]; then | ||
echo "----------------------- [RUST NOT FOUND]---------------------------" | ||
echo "The 'cargo' command was not found on the PATH. Please install rustc" | ||
echo "from: https://www.rust-lang.org/tools/install" | ||
echo "" | ||
echo "Alternatively, you may install cargo from your OS package manager:" | ||
echo " - Debian/Ubuntu: apt-get install cargo" | ||
echo " - Fedora/CentOS: dnf install cargo" | ||
echo " - macOS: brew install rustc" | ||
echo "-------------------------------------------------------------------" | ||
echo "" | ||
exit 1 | ||
fi | ||
|
||
exit 0 | ||
: "${R_HOME=`R RHOME`}" | ||
"${R_HOME}/bin/Rscript" tools/msrv.R |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,15 +1,2 @@ | ||
#!/bin/sh | ||
|
||
# https://github.com/eitsupi/prqlr/blob/main/configure.win | ||
export PATH="$PATH:$HOME/.cargo/bin" | ||
|
||
if [ ! "$(command -v cargo)" ]; then | ||
echo "----------------------- [RUST NOT FOUND]---------------------------" | ||
echo "The 'cargo' command was not found on the PATH. Please install rustc" | ||
echo "from: https://www.rust-lang.org/tools/install" | ||
echo "-------------------------------------------------------------------" | ||
echo "" | ||
exit 1 | ||
fi | ||
|
||
exit 0 | ||
#!/usr/bin/env sh | ||
"${R_HOME}/bin${R_ARCH_BIN}/Rscript.exe" tools/msrv.R |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
## R CMD check results | ||
|
||
This release addresses failing CRAN checks. | ||
|
||
0 errors | 0 warnings | 1 note | ||
|
||
* This is a new release. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,10 +1,5 @@ | ||
[source.crates-io] | ||
replace-with = "vendored-sources" | ||
|
||
[source."git+https://github.com/extendr/libR-sys?rev=976c56d396175f8d09548b0a1f0a77fc393018f2"] | ||
git = "https://github.com/extendr/libR-sys" | ||
rev = "976c56d396175f8d09548b0a1f0a77fc393018f2" | ||
replace-with = "vendored-sources" | ||
|
||
[source.vendored-sources] | ||
directory = "vendor" |
Binary file not shown.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,116 @@ | ||
# read the DESCRIPTION file | ||
desc <- read.dcf("DESCRIPTION") | ||
|
||
if (!"SystemRequirements" %in% colnames(desc)) { | ||
fmt <- c( | ||
"`SystemRequirements` not found in `DESCRIPTION`.", | ||
"Please specify `SystemRequirements: Cargo (Rust's package manager), rustc`" | ||
) | ||
stop(paste(fmt, collapse = "\n")) | ||
} | ||
|
||
# extract system requirements | ||
sysreqs <- desc[, "SystemRequirements"] | ||
|
||
# check that cargo and rustc is found | ||
if (!grepl("cargo", sysreqs, ignore.case = TRUE)) { | ||
stop("You must specify `Cargo (Rust's package manager)` in your `SystemRequirements`") | ||
} | ||
|
||
if (!grepl("rustc", sysreqs, ignore.case = TRUE)) { | ||
stop("You must specify `Cargo (Rust's package manager), rustc` in your `SystemRequirements`") | ||
} | ||
|
||
# split into parts | ||
parts <- strsplit(sysreqs, ", ")[[1]] | ||
|
||
# identify which is the rustc | ||
rustc_ver <- parts[grepl("rustc", parts)] | ||
|
||
# perform checks for the presence of rustc and cargo on the OS | ||
no_cargo_msg <- c( | ||
"----------------------- [CARGO NOT FOUND]--------------------------", | ||
"The 'cargo' command was not found on the PATH. Please install Cargo", | ||
"from: https://www.rust-lang.org/tools/install", | ||
"", | ||
"Alternatively, you may install Cargo from your OS package manager:", | ||
" - Debian/Ubuntu: apt-get install cargo", | ||
" - Fedora/CentOS: dnf install cargo", | ||
" - macOS: brew install rustc", | ||
"-------------------------------------------------------------------" | ||
) | ||
|
||
no_rustc_msg <- c( | ||
"----------------------- [RUST NOT FOUND]---------------------------", | ||
"The 'rustc' compiler was not found on the PATH. Please install", | ||
paste(rustc_ver, "or higher from:"), | ||
"https://www.rust-lang.org/tools/install", | ||
"", | ||
"Alternatively, you may install Rust from your OS package manager:", | ||
" - Debian/Ubuntu: apt-get install rustc", | ||
" - Fedora/CentOS: dnf install rustc", | ||
" - macOS: brew install rustc", | ||
"-------------------------------------------------------------------" | ||
) | ||
|
||
# Add {user}/.cargo/bin to path before checking | ||
new_path <- paste0( | ||
Sys.getenv("PATH"), | ||
":", | ||
paste0(Sys.getenv("HOME"), "/.cargo/bin") | ||
) | ||
|
||
# set the path with the new path | ||
Sys.setenv("PATH" = new_path) | ||
|
||
# check for rustc installation | ||
rustc_version <- tryCatch( | ||
system("rustc --version", intern = TRUE), | ||
error = function(e) { | ||
stop(paste(no_rustc_msg, collapse = "\n")) | ||
} | ||
) | ||
|
||
# check for cargo installation | ||
cargo_version <- tryCatch( | ||
system("cargo --version", intern = TRUE), | ||
error = function(e) { | ||
stop(paste(no_cargo_msg, collapse = "\n")) | ||
} | ||
) | ||
|
||
# helper function to extract versions | ||
extract_semver <- function(ver) { | ||
if (grepl("\\d+\\.\\d+(\\.\\d+)?", ver)) { | ||
sub(".*?(\\d+\\.\\d+(\\.\\d+)?).*", "\\1", ver) | ||
} else { | ||
NA | ||
} | ||
} | ||
|
||
# get the MSRV | ||
msrv <- extract_semver(rustc_ver) | ||
|
||
# extract current version | ||
current_rust_version <- extract_semver(rustc_version) | ||
|
||
# perform check | ||
if (!is.na(msrv)) { | ||
# -1 when current version is later | ||
# 0 when they are the same | ||
# 1 when MSRV is newer than current | ||
is_msrv <- utils::compareVersion(msrv, current_rust_version) | ||
if (is_msrv == 1) { | ||
fmt <- paste0( | ||
"\n------------------ [UNSUPPORTED RUST VERSION]------------------\n", | ||
"- Minimum supported Rust version is %s.\n", | ||
"- Installed Rust version is %s.\n", | ||
"---------------------------------------------------------------" | ||
) | ||
stop(sprintf(fmt, msrv, current_rust_version)) | ||
} | ||
} | ||
|
||
# print the versions | ||
versions_fmt <- "Using %s\nUsing %s" | ||
message(sprintf(versions_fmt, cargo_version, rustc_version)) |