Skip to content

Commit 7a6f3e2

Browse files
committed
Fixing URLs and display
Fixes #90 #88
1 parent 92de878 commit 7a6f3e2

2 files changed

Lines changed: 148 additions & 136 deletions

File tree

README.md

Lines changed: 36 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,31 @@
1-
# RcppTskit: R access to the `tskit` C API
1+
# `RcppTskit`: `R` access to the `tskit C` API
22

33
## Overview
44

5+
<!-- keep in sync with DESCRIPTION file but use `` and Markdown URLs for DOIs -->
6+
57
`Tskit` enables performant storage, manipulation, and analysis of ancestral
68
recombination graphs (ARGs) using succinct tree sequence encoding.
79
The tree sequence encoding of an ARG is
8-
described in [Wong et al. (2024)](https://doi.org/10.1093/genetics/iyae100),
9-
while `tskit` project is described in
10-
[Jeffrey et al. (2026)](https://doi.org/10.48550/arXiv.2602.09649).
10+
described in Wong et al. (2024)
11+
<[doi:10.1093/genetics/iyae100](https://doi.org/10.1093/genetics/iyae100)>,
12+
while `tskit` project is described in Jeffrey et al. (2026)
13+
<[doi:10.48550/arXiv.2602.09649](https://doi.org/10.48550/arXiv.2602.09649)>.
1114
See https://tskit.dev for project news, documentation, and tutorials.
12-
`Tskit` provides Python, C, and Rust application programming interfaces (APIs).
13-
The Python API can be called from R via the `reticulate` R package to
15+
`Tskit` provides `Python`, `C`, and `Rust` application programming interfaces (APIs).
16+
The `Python` API can be called from `R` via the `reticulate` `R` package to
1417
seamlessly load and analyse a tree sequence, as described at
1518
https://tskit.dev/tutorials/RcppTskit.html.
16-
`RcppTskit` provides R access to the `tskit` C API for use cases where the
19+
`RcppTskit` provides `R` access to the `tskit C` API for use cases where the
1720
`reticulate` option is not optimal. For example, for high-performance and
1821
low-level work with tree sequences. Currently, `RcppTskit` provides a limited
19-
number of R functions due to the availability of extensive Python API and
22+
number of `R` functions due to the availability of extensive `Python` API and
2023
the `reticulate` option.
2124

2225
See more details on the state of the tree sequence ecosystem and aims of
2326
`RcppTskit` in [the introduction vignette](https://highlanderlab.r-universe.dev/articles/RcppTskit/RcppTskit_intro.html) ([source](RcppTskit/vignettes/RcppTskit_intro.qmd)).
2427
The vignette also shows examples on how to use `RcppTskit` on its own or
25-
to develop new R packages.
28+
to develop new `R` packages that can leverage `RcppTskit`.
2629

2730
## Status
2831

@@ -51,12 +54,12 @@ Code quality: [![Codecov test coverage](https://codecov.io/gh/HighlanderLab/Rcpp
5154
## Contents
5255

5356
* `extern` - Git submodule for `tskit` and instructions on
54-
obtaining the latest version and copying the `tskit` C code into
57+
obtaining the latest version and copying the `tskit C` code into
5558
`RcppTskit` directory.
5659
`extern` is saved outside of the `RcppTskit` directory
5760
because `R CMD CHECK` complains otherwise (even with `.Rbuildignore`).
5861

59-
* `RcppTskit` - R package `RcppTskit`.
62+
* `RcppTskit` - `R` package `RcppTskit`.
6063

6164
## License
6265

@@ -66,27 +69,32 @@ Code quality: [![Codecov test coverage](https://codecov.io/gh/HighlanderLab/Rcpp
6669

6770
## Installation
6871

69-
To install the published release from [CRAN](https://cran.r-project.org) use:
72+
To install the published release from
73+
[CRAN](https://cran.r-project.org/package=RcppTskit) use:
7074

7175
```
72-
# TODO: Publish on CRAN #14
73-
# https://github.com/HighlanderLab/RcppTskit/issues/14
74-
# https://github.com/HighlanderLab/RcppTskit/issues/45
75-
# install.packages("RcppTskit")
76-
# vignette("RcppTskit_intro")
76+
install.packages("RcppTskit")
77+
vignette("RcppTskit_intro")
7778
```
7879

7980
To install the latest development version (possibly unstable!) from
8081
[R universe](https://r-universe.dev) use:
8182

8283
```
83-
RUniverseAndCRAN <- c('https://highlanderlab.r-universe.dev', 'https://cloud.r-project.org')
84-
install.packages('RcppTskit', repos = RUniverseAndCRAN)
84+
r_universe_and_cran <- c(
85+
"https://highlanderlab.r-universe.dev",
86+
"https://cloud.r-project.org"
87+
)
88+
install.packages("RcppTskit", repos = r_universe_and_cran)
89+
vignette("RcppTskit_intro")
8590
```
8691

87-
To install the latest development version (possibly unstable!) from Github use the
88-
following code. Note that you will have to compile the C/C++ code and will
89-
hence require the complete R build toolchain, including compilers. See
92+
To install the latest development version (possibly unstable!) from Github
93+
use the following code.
94+
Note that you will have to compile the `C/C++` code and vignette,
95+
so you will require the complete build toolchain,
96+
including compilers, other `R` packages, and `quarto`.
97+
See
9098
https://r-pkgs.org/setup.html#setup-tools for introduction to this topic,
9199
https://cran.r-project.org/bin/windows/Rtools for Windows tools, and
92100
https://mac.r-project.org/tools for macOS tools.
@@ -131,10 +139,10 @@ cd RcppTskit
131139

132140
We use [pre-commit](https://pre-commit.com) hooks to ensure code quality.
133141
Specifically, we use:
134-
* [air](https://github.com/posit-dev/air) to format R code,
135-
* [jarl](https://github.com/etiennebacher/jarl) to lint R code,
136-
* [clang-format](https://clang.llvm.org/docs/ClangFormat.html) to format C/C++ code, and
137-
* [clang-tidy](https://clang.llvm.org/extra/clang-tidy/) to lint C/C++ code.
142+
* [air](https://github.com/posit-dev/air) to format `R` code,
143+
* [jarl](https://github.com/etiennebacher/jarl) to lint `R` code,
144+
* [clang-format](https://clang.llvm.org/docs/ClangFormat.html) to format `C/C++` code, and
145+
* [clang-tidy](https://clang.llvm.org/extra/clang-tidy/) to lint `C/C++` code.
138146

139147
To install the hooks, run:
140148

@@ -148,10 +156,10 @@ If you plan to update `tskit`, follow instructions in `extern/README.md`.
148156

149157
### RcppTskit
150158

151-
Then open `RcppTskit` package directory in your favourite R IDE
159+
Then open `RcppTskit` package directory in your favourite `R` editor
152160
(Positron, RStudio, text-editor-of-your-choice, etc.) and implement your changes.
153161

154-
You should routinely `R CMD check` your changes (in R):
162+
You should routinely `R CMD check` your changes (in `R`):
155163

156164
```
157165
# Note that the RcppTskit R package is in the RcppTskit sub-directory

0 commit comments

Comments
 (0)