-
Notifications
You must be signed in to change notification settings - Fork 3
/
DEVEL-README
70 lines (45 loc) · 1.68 KB
/
DEVEL-README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
README file for developers
===========================
To use R-hub, you need to validate your email:
install.packages("rhub")
library(rhub)
validate_email()
RELEASE Process:
1. git pull --rebase # to get the latest version
2. "make check" passes
3. "make cran" passes
4. make releasebuild # Inspect the output for strange files!
5. make releasecheck # Wait for email and check logs!
6. make closeversion
7. Edit cran-comments.md and run devtools::submit() in R
* IF the package requires further changes:
* Make the changes.
* Repeat the whole RELEASE process above without changing the version number.
* IF the package is released in CRAN:
8. Bump the version number in DESCRIPTION and NEWS.md
9. make build # To update other files with the new version."
10. git ci -a -m "Bump development version to $NEW_VERSION
Sanitizers
==========
sudo apt install docker.io
sudo groupadd docker
sudo gpasswd -a $USER docker
newgrp docker
docker run --rm -ti -v /home/manu/work/perfassess/eaf/R/:/host rocker/r-devel-san /bin/bash
apt update
apt install libssl-dev
apt install r-cran-modeltools r-cran-devtools
Rscript -e 'install.packages("roxygen2")'
mkdir ~/.R/
echo > ~/.R/Makevars <<EOF
CC = gcc -std=gnu99 -fsanitize=address,undefined,signed-integer-overflow -fno-omit-frame-pointer
CXX = g++ -fsanitize=address,undefined,signed-integer-overflow -fno-omit-frame-pointer
MAIN_LDFLAGS = -fsanitize=address,undefined,signed-integer-overflow
EOF
export LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libasan.so.4
export NOT_CRAN=true
cd /host
R CMD build git && R CMD check eaf_1.9.tar.gz --run-dontrun --run-donttest --as-cran
# On a different shell
docker ps
docker commit CONTAINER_ID manu/r-devel-san