-
Notifications
You must be signed in to change notification settings - Fork 14
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #54 from ropensci/i51-cran-update
- Loading branch information
Showing
14 changed files
with
2,384 additions
and
13,078 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 |
---|---|---|
|
@@ -15,3 +15,5 @@ | |
^doc$ | ||
^Meta$ | ||
^\.github$ | ||
^revdep$ | ||
^docker$ |
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 |
---|---|---|
|
@@ -10,3 +10,5 @@ js/node_modules | |
js/bundle*js | ||
doc | ||
Meta | ||
.idea | ||
revdep |
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,14 +1,17 @@ | ||
Package: jsonvalidate | ||
Title: Validate 'JSON' Schema | ||
Version: 1.3.1 | ||
Version: 1.3.2 | ||
Authors@R: c(person("Rich", "FitzJohn", role = c("aut", "cre"), | ||
email = "[email protected]"), | ||
person("Rob", "Ashton", role = "aut"), | ||
person("Alex", "Hill", role = "ctb"), | ||
person("Alicia", "Schep", role = "ctb"), | ||
person("Ian", "Lyttle", role = "ctb"), | ||
person("Kara", "Woo", role = "ctb"), | ||
person("Mathias", "Buus", role = "cph"), | ||
person("Evgeny", "Poberezkin", role = "cph")) | ||
person("Mathias", "Buus", role = c("aut", "cph"), | ||
comment = "Author of bundled imjv library"), | ||
person("Evgeny", "Poberezkin", role = c("aut", "cph"), | ||
comment = "Author of bundled Ajv library")) | ||
Maintainer: Rich FitzJohn <[email protected]> | ||
Description: Uses the node library 'is-my-json-valid' or 'ajv' to | ||
validate 'JSON' against a 'JSON' schema. Drafts 04, 06 and 07 of | ||
|
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 |
---|---|---|
@@ -0,0 +1,30 @@ | ||
FROM ubuntu:18.04 | ||
RUN apt-get update -qq && \ | ||
apt-get install --no-install-recommends -y \ | ||
dirmngr \ | ||
software-properties-common \ | ||
wget && \ | ||
wget -qO- https://cloud.r-project.org/bin/linux/ubuntu/marutter_pubkey.asc | tee -a /etc/apt/trusted.gpg.d/cran_ubuntu_key.asc && \ | ||
add-apt-repository "deb https://cloud.r-project.org/bin/linux/ubuntu $(lsb_release -cs)-cran40/" && \ | ||
DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \ | ||
build-essential \ | ||
gfortran \ | ||
liblapack-dev \ | ||
libblas-dev \ | ||
libcairo2-dev \ | ||
libcurl4-openssl-dev \ | ||
libfontconfig1-dev \ | ||
libssl-dev \ | ||
libv8-dev \ | ||
libxml2-dev \ | ||
r-base | ||
|
||
RUN apt-get install -y --no-install-recommends locales && \ | ||
echo "en_US.UTF-8 UTF-8" >> /etc/locale.gen && \ | ||
locale-gen en_US.utf8 && \ | ||
/usr/sbin/update-locale LANG=en_US.UTF-8 | ||
|
||
ENV LANG=en_US.UTF-8 | ||
ENV LC_ALL=en_US.UTF-8 | ||
|
||
RUN Rscript -e 'install.packages(c("jsonvalidate", "testthat"))' |
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,76 @@ | ||
# docker/es5 support | ||
|
||
This dockerfile exists to make it easier to test that things still work in an es5 environment, as that is still fairly common (notably Solaris, but also ubuntu 18.04 LTS and RHEL 7). | ||
|
||
From the root directory of jsonvalidate source, run | ||
|
||
``` | ||
docker build --tag richfitz/jsonvalidate:es5 docker | ||
``` | ||
|
||
to build the image; this should not take that long. It installs the current r-release along with the CRAN versions of jsonvalidate and testthat (which ensures all core dependencies are present). | ||
|
||
Once setup, you can bring up a container with: | ||
|
||
``` | ||
docker run --rm -it -v $PWD:/src:ro richfitz/jsonvalidate:es5 bash | ||
``` | ||
|
||
which mounts the current directory read-only into the container at `/src`. That version of the source (rather than the CRAN one installed in the base image) can be installed with `R CMD INSTALL /src` | ||
|
||
To run the whole test suite run: | ||
|
||
``` | ||
Rscript -e 'testthat::test_local("/src")' | ||
``` | ||
|
||
More simply, to just confirm that the bundle is valid you can do | ||
|
||
``` | ||
Rscript -e 'V8::new_context()$source("/src/inst/bundle.js")' | ||
``` | ||
|
||
which will error if the bundle is invalid. | ||
|
||
To do a full reverse dependencies check with old libv8, you can bring up R in this container: | ||
|
||
``` | ||
docker run --rm -it -v $PWD:/src:ro richfitz/jsonvalidate:es5 bash | ||
``` | ||
|
||
Then install revdepcheck itself | ||
|
||
``` | ||
install.packages("remotes") | ||
remotes::install_github("r-lib/revdepcheck", upgrade = TRUE) | ||
``` | ||
|
||
Additional packages that we need, for some reason these did not get installed automatically though we'd have expected them to (see [this issue](https://github.com/r-lib/revdepcheck/issues/209)) | ||
|
||
``` | ||
install.packages(c( | ||
"cinterpolate", | ||
"deSolve", | ||
"devtools", | ||
"golem", | ||
"inTextSummaryTable", | ||
"patientProfilesVis", | ||
"reticulate", | ||
"rlist", | ||
"shiny", | ||
"shinyBS", | ||
"shinydashboard", | ||
"shinyjs", | ||
"tableschema.r", | ||
"xml2")) | ||
``` | ||
|
||
At this point you will need to cycle the R session because the package DB will be corrupted by all the installations. | ||
|
||
Finally we can run the reverse dependency check: | ||
|
||
``` | ||
unlink("/tmp/src", recursive = TRUE) | ||
file.copy("/src", "/tmp", recursive = TRUE) | ||
revdepcheck::revdep_check("/tmp/src", num_workers = 4) | ||
``` |
Oops, something went wrong.