Skip to content

Commit

Permalink
Merge branch 'master' into dllname
Browse files Browse the repository at this point in the history
  • Loading branch information
jangorecki committed Oct 12, 2020
2 parents 2763e37 + ba2d7bb commit 7365625
Show file tree
Hide file tree
Showing 84 changed files with 3,764 additions and 2,254 deletions.
9 changes: 9 additions & 0 deletions .Rbuildignore
Original file line number Diff line number Diff line change
@@ -1,6 +1,13 @@
^\.Rprofile$
^data\.table_.*\.tar\.gz$
^vignettes/plots/figures$
^\.Renviron$
^[^/]+\.R$
^[^/]+\.csv$
^[^/]+\.csvy$
^[^/]+\.RDS$
^[^/]+\.diff$
^[^/]+\.patch$

^\.ci$
^\.dev$
Expand Down Expand Up @@ -30,3 +37,5 @@

^bus$
^pkgdown$
^lib$
^library$
2 changes: 1 addition & 1 deletion .appveyor.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ environment:

- R_VERSION: release # the single Windows.zip binary (both 32bit/64bit) that users following dev version of installation instructions should click

# - R_VERSION: devel # When off it's to speed up dev cycle; R-devel is still checked but by GLCI on a roughly hourly cycle.
- R_VERSION: devel # When off it's to speed up dev cycle; R-devel is still checked but by GLCI on a roughly hourly cycle. CRAN_Release.cmd has a reminder to turn back on.

before_build:
- cmd: ECHO no Revision metadata added to DESCRIPTION
Expand Down
8 changes: 4 additions & 4 deletions .ci/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# data.table continuous integration and deployment

On each Pull Request opened in GitHub we run Travis CI and Appveyor to provide prompt feedback about the status of PR. Our main CI pipeline runs on GitLab CI. GitLab repository automatically mirrors our GitHub repository and runs pipeline on `master` branch. It tests more environments and different configurations. It publish variety of artifacts. Windows jobs are being run on our private windows CI runner.
On each Pull Request opened in GitHub we run Travis CI and Appveyor to provide prompt feedback about the status of PR. Our main CI pipeline runs on GitLab CI. GitLab repository automatically mirrors our GitHub repository and runs pipeline on `master` branch. It tests more environments and different configurations. It publish variety of artifacts.

## Environments

Expand All @@ -9,7 +9,7 @@ On each Pull Request opened in GitHub we run Travis CI and Appveyor to provide p
Test jobs:
- `test-rel-lin` - `r-release` on Linux, most comprehensive test environment, `-O3 -flto -fno-common -Wunused-result`, extra check for no compilation warnings, includes testing [_with other packages_](./../inst/tests/other.Rraw) ([extended suggests](./../inst/tests/tests-DESCRIPTION))
- `test-rel-cran-lin` - `--as-cran` on Linux, `-g0`, extra check for final status of `R CMD check` where we allow one NOTE (_size of tarball_).
- `test-dev-cran-lin` - `r-devel` and `--as-cran` on Linux, `--enable-strict-barrier --disable-long-double`
- `test-dev-cran-lin` - `r-devel` and `--as-cran` on Linux, `--with-recommended-packages --enable-strict-barrier --disable-long-double`, tests for compilation warnings in pkg install and new NOTEs/Warnings in pkg check, and because it is R-devel it is marked as allow_failure
- `test-rel-vanilla-lin` - `r-release` on Linux, no suggested deps, no OpenMP, `-O0`, tracks memory usage during tests
- `test-310-cran-lin` - R 3.1.0 on Linux
- `test-344-cran-lin` - R 3.4.4 on Linux
Expand All @@ -27,7 +27,7 @@ Artifacts:
- sources
- Windows binaries for `r-release` and `r-devel`
- [CRAN-like homepage](https://rdatatable.gitlab.io/data.table/web/packages/data.table/index.html)
- [CRAN-like checks results](https://rdatatable.gitlab.io/data.table/web/checks/check_results_data.table.html) - note that all artifacts, including this page, are being published only when all test jobs successfully pass, thus one will not see an _ERROR_ status there (unless `allow_failure` option has been used in a job).
- [CRAN-like checks results](https://rdatatable.gitlab.io/data.table/web/checks/check_results_data.table.html) - note that all artifacts, including check results page, are being published only when all test jobs successfully pass, thus one will not see an _ERROR_ status there (unless error happened on a job marked as `allow_failure`).
- [docker images](https://gitlab.com/Rdatatable/data.table/container_registry) - copy/paste-able `docker pull` commands can be found at the bottom of our [CRAN-like homepage](https://rdatatable.gitlab.io/data.table/web/packages/data.table/index.html)

### [Travis CI](./../.travis.yml)
Expand Down Expand Up @@ -64,7 +64,7 @@ Base R implemented helper script to orchestrate generation of most artifacts. It
Template file to produce `Dockerfile` for, as of now, three docker images. Docker images are being built and published in [_deploy_ stage in GitLab CI pipeline](./../.gitlab-ci.yml).
- `r-base-dev` using `r-release`: publish docker image of `data.table` on R-release
- `r-builder` using `r-release`: publish on R-release and OS dependencies for building Rmarkdown vignettes
- `r-devel`: publish docker image of `data.table` on R-devel
- `r-devel`: publish docker image of `data.table` on R-devel built with `--with-recommended-packages --enable-strict-barrier --disable-long-double`

### [`deploy.sh`](./deploy.sh)

Expand Down
2 changes: 1 addition & 1 deletion .ci/publish.R
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ package.index <- function(package, lib.loc, repodir="bus/integration/cran") {
images = c("r-release","r-devel","r-release-builder")
images.title = c("Base R release", "Base R development", "R release package builder")
tags = rep("latest", 3)
docker.dl = sprintf("<tr><td> %s: </td><td> <pre><code>docker pull %s/%s/%s/%s:%s</code></pre> </td></tr>", images.title, registry, namespace, project, images, tags)
docker.dl = sprintf("<tr><td> %s: </td><td> <pre><code>docker pull %s/%s/%s/%s:%s</code></pre> </td></tr>", images.title, tolower(registry), tolower(namespace), tolower(project), tolower(images), tags)
}
index.file = file.path(repodir, "web/packages", pkg, "index.html")
if (!dir.exists(dirname(index.file))) dir.create(dirname(index.file), recursive=TRUE)
Expand Down
14 changes: 14 additions & 0 deletions .dev/.Rprofile
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# Matt's ~/.Rprofile is a link to this file at ~/GitHub/data.table/.dev/.Rprofile

# options(repos = c(CRAN="http://cran.stat.ucla.edu"))
# options(repos = c(CRAN=c("http://cran.stat.ucla.edu", "http://cloud.r-project.org"))) # both needed for revdep checks sometimes
options(repos = c(CRAN="http://cloud.r-project.org"))

options(help_type="html")
options(error=quote(dump.frames()))
options(width=200)
options(digits.secs=3) # for POSIXct to print milliseconds
suppressWarnings(RNGversion("3.5.0")) # so when I create tests in dev there isn't a mismatch when run by cc()

Sys.setenv(PROJ_PATH=path.expand("~/GitHub/data.table"))
source(paste0(Sys.getenv("PROJ_PATH"),"/.dev/cc.R"))
24 changes: 24 additions & 0 deletions .dev/.bash_aliases
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
# Matt's ~/.bash_aliases is a link to this file ~/GitHub/data.table/.dev/.bash_aliases

# One off configure meld as difftool:
# git config --global diff.tool meld
# git config --global difftool.prompt false
alias gd='git difftool &> /dev/null'
alias gdm='git difftool master &> /dev/null'
# If meld has scrolling issues, turn off GTK animation (which I don't need anyway):
# https://gitlab.gnome.org/GNOME/meld/-/issues/479#note_866040

alias Rdevel='~/build/R-devel/bin/R --vanilla'
alias Rdevel-strict-gcc='~/build/R-devel-strict-gcc/bin/R --vanilla'
alias Rdevel-strict-clang='~/build/R-devel-strict-clang/bin/R --vanilla'
alias Rdevel-valgrind='~/build/R-devel-valgrind/bin/R --vanilla'
alias Rdevel32='~/build/32bit/R-devel/bin/R --vanilla'
alias R310='~/build/R-3.1.0/bin/R --vanilla'
alias revdepsh='cd ~/build/revdeplib/ && export TZ=UTC && export R_LIBS_SITE=none && export R_LIBS=~/build/revdeplib/ && export _R_CHECK_FORCE_SUGGESTS_=false'
alias revdepr='revdepsh; R_PROFILE_USER=~/GitHub/data.table/.dev/revdep.R ~/build/R-devel/bin/R'

export R_PROFILE_USER='~/.Rprofile'
# there's a .Rprofile in ~/GitHub/data.table/ so Matt sets R_PROFILE_USER here to always use ~/.Rprofile
# even when starting R in ~/GitHub/data.table
# Matt's ~/.Rprofile as a link to ~/GitHub/data.table/.dev/.Rprofile

Loading

0 comments on commit 7365625

Please sign in to comment.