Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

V2 beta #278

Merged
merged 155 commits into from
Nov 17, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
155 commits
Select commit Hold shift + click to select a range
514e3be
made package more in-line with best practisces
Qile0317 Jul 17, 2023
7dff110
few changes
Qile0317 Jul 24, 2023
66df30b
made R CMD check only check the qile branch for now
Qile0317 Jul 24, 2023
e4adb05
added license and badges
Qile0317 Jul 24, 2023
ab40e8a
Merge pull request #252 from Qile0317/test
ncborcherding Jul 24, 2023
cdf4028
added citation, package docs, rcpp, and syntax adjustments
Qile0317 Aug 2, 2023
ac00255
improved readability in utils
Qile0317 Aug 2, 2023
84c7109
added seurat command, utils, started Rcpp src
Qile0317 Aug 8, 2023
01f2ebd
added many utils testcases and testdata
Qile0317 Aug 8, 2023
9084df6
more tests
Qile0317 Aug 8, 2023
dae9ac5
more tests and vdiffr setup
Qile0317 Aug 8, 2023
c6e9c71
more vdiffr tests
Qile0317 Aug 8, 2023
f027181
modified quantContig to display single run samples better, added seed…
Qile0317 Aug 8, 2023
057173a
fixed spelling, cleaned up files, added new example data for testing
Qile0317 Aug 9, 2023
c1edee6
more tests and minor changes
Qile0317 Aug 10, 2023
b92c401
minor spelling and syntax fixes
Qile0317 Aug 10, 2023
260f4e4
Merge pull request #256 from Qile0317/qile
ncborcherding Aug 11, 2023
8e4cf1c
Update DESCRIPTION
ncborcherding Aug 15, 2023
e5aff14
Create percentAA.R
ncborcherding Sep 5, 2023
bd17a0c
Merge pull request #261 from ncborcherding/qile
ncborcherding Sep 6, 2023
f07f071
Update DESCRIPTION
ncborcherding Sep 6, 2023
d0bbaf5
example overhaul
ncborcherding Sep 6, 2023
72a0464
Update combineExpression.R
ncborcherding Sep 6, 2023
4afc321
finished percentAA
ncborcherding Sep 6, 2023
eac5327
update examples to new data
ncborcherding Sep 6, 2023
3de9b4f
Update vignette.Rmd
ncborcherding Sep 6, 2023
7a47c59
Update Diversity
ncborcherding Sep 6, 2023
45ae7f0
Update clonalOverlap
ncborcherding Sep 6, 2023
b06184d
update color handling
ncborcherding Sep 6, 2023
d16eedc
polishing manual and vignette
ncborcherding Sep 7, 2023
be94b48
running check()
ncborcherding Sep 7, 2023
98ca89d
Adding percentGenes
ncborcherding Sep 8, 2023
ee3ecdb
Create percentVJ.R
ncborcherding Sep 8, 2023
d43d909
Add visualizations to percentVJ
ncborcherding Sep 8, 2023
fa375a8
Add default color scheme to compareClonotypes()
ncborcherding Sep 9, 2023
9f179b7
Update clonalOverlap.R
ncborcherding Sep 9, 2023
6b4dbef
updating manual
ncborcherding Sep 9, 2023
2ec54db
update name space and working alluvialClonotype visualization
ncborcherding Sep 10, 2023
4cf7fa0
Update clonalOverlap.R
ncborcherding Sep 10, 2023
b038bc9
Update clonalOverlap.R
ncborcherding Sep 10, 2023
3772e02
update clonalDiversity
ncborcherding Sep 11, 2023
68b23f6
update startrac
ncborcherding Sep 12, 2023
da0e0cc
Update startrac.R
ncborcherding Sep 13, 2023
698ea4f
Update after new check()
ncborcherding Sep 13, 2023
b73bc9a
clonalCompare
ncborcherding Sep 14, 2023
9cbf09e
clonalSizeDistribution
ncborcherding Sep 15, 2023
31dcec1
Update clonalSizeDistribution.R
ncborcherding Sep 15, 2023
b656fb3
Update README.md
ncborcherding Sep 21, 2023
5123243
Update data.R
ncborcherding Sep 21, 2023
2edcc1c
Update vignette.Rmd
ncborcherding Sep 21, 2023
4f5a7d2
Update abundanceContig.R
ncborcherding Sep 21, 2023
26e4eb1
clonalScatter
ncborcherding Sep 21, 2023
b6ed26f
Update README.md
ncborcherding Sep 22, 2023
c1fb5a9
Clean vignette
ncborcherding Sep 22, 2023
de75d8c
Merge branch 'v2' of https://github.com/ncborcherding/scRepertoire in…
ncborcherding Sep 22, 2023
27113ec
Create exportClones.R
ncborcherding Sep 22, 2023
cd5ddd6
Pass check
ncborcherding Sep 22, 2023
5753a36
Update internal linkage of functions
ncborcherding Sep 23, 2023
59a7a32
remove expression2List()
ncborcherding Sep 23, 2023
9b005c3
finalize exportClones
ncborcherding Sep 24, 2023
5d0fbd4
clean loadContigs
ncborcherding Sep 24, 2023
ad45d96
update global.R
ncborcherding Sep 24, 2023
c2f4d90
clonalRarefaction draft
ncborcherding Sep 25, 2023
4bf4c0f
organize clonalLength()
ncborcherding Sep 25, 2023
9eabd12
clean clonalHomeostasis/clonalProportion
ncborcherding Sep 26, 2023
8daacdf
clean clonalOverlay
ncborcherding Sep 27, 2023
62bd552
converting utils internal functions to dot
ncborcherding Sep 28, 2023
9097b62
final scrub of .utils
ncborcherding Sep 28, 2023
3207794
add equations to function manual
ncborcherding Oct 1, 2023
dce9dc8
clean combineContigs
ncborcherding Oct 1, 2023
c63da1a
housekeeping
ncborcherding Oct 2, 2023
4ced5c4
clarify group.by and split.by
ncborcherding Oct 2, 2023
4941e5a
Cleaning combineExpression()
ncborcherding Oct 3, 2023
c4aba9d
inferCDR
ncborcherding Oct 3, 2023
cc48946
percentKmer
ncborcherding Oct 5, 2023
26ecf2b
remove MatrixGenerics import
ncborcherding Oct 5, 2023
07e9e7f
update clonalDiversity on vignette
ncborcherding Oct 5, 2023
d03f59a
clean alluvialClones
ncborcherding Oct 5, 2023
b49bddc
cleaning documentation
ncborcherding Oct 5, 2023
94a2680
Add support for new formats
ncborcherding Oct 6, 2023
fb1a6ce
clonalAbundance manual change
ncborcherding Oct 6, 2023
8ecd957
Adding equations for cloneSizeDist
ncborcherding Oct 6, 2023
5796aee
Annotating getCirclize
ncborcherding Oct 6, 2023
9f66b91
Fix latex formating
ncborcherding Oct 8, 2023
6f4b35b
clonalBias scrub
ncborcherding Oct 8, 2023
7e4f236
scrub clonalNetwork
ncborcherding Oct 9, 2023
ebb8c31
editing vizgenes
ncborcherding Oct 10, 2023
ace544f
Summary for vizGenes
ncborcherding Oct 11, 2023
8340d15
redo on vizGenes
ncborcherding Oct 12, 2023
3f7a8e9
debug clonalNetwork
ncborcherding Oct 12, 2023
fe62880
Speed up edit distance calc
ncborcherding Oct 13, 2023
d45bbb8
Update cloneCompare
ncborcherding Oct 13, 2023
2fcbb3b
Update combineExpression.R
ncborcherding Oct 13, 2023
003cba8
Update hex
ncborcherding Oct 14, 2023
1829ba0
Update screpertoire_hex.png
ncborcherding Oct 14, 2023
2f37b1a
Delete inferCDR.R
ncborcherding Oct 16, 2023
6ebe96c
MiXCR support
ncborcherding Oct 17, 2023
72fb3c8
Redo of clustering
ncborcherding Oct 18, 2023
4383899
Update combineContigs.R
ncborcherding Oct 18, 2023
3cfc5d9
pkgdown first deploy
ncborcherding Oct 22, 2023
da438ba
Updated Trex and NEWS
ncborcherding Oct 23, 2023
cb44c55
Update _pkgdown.yml
ncborcherding Oct 23, 2023
4c61b43
Update README.md
ncborcherding Oct 24, 2023
25a8095
Update README.md
ncborcherding Oct 24, 2023
46729b9
updated syntax
ncborcherding Oct 25, 2023
9bb2921
Merge branch 'v2' of https://github.com/ncborcherding/scRepertoire in…
ncborcherding Oct 25, 2023
b76dc9b
exportClones added support
ncborcherding Oct 26, 2023
7347904
Finalize clonalCluster
ncborcherding Oct 27, 2023
9b3afb0
preliminary rcppGetNtKmerPercent
Qile0317 Oct 28, 2023
e779588
Merge branch 'v2' of https://github.com/Qile0317/scRepertoire into v2
Qile0317 Oct 28, 2023
fd3e63f
slight changes to kmer.cpp
Qile0317 Oct 31, 2023
69c22d3
attempted merge
Qile0317 Oct 31, 2023
0fd39d3
update spelling
ncborcherding Oct 31, 2023
451f852
slight code refactoring and rcpp kmer counting
Qile0317 Oct 31, 2023
4ffed9e
working through testthat backlog
ncborcherding Oct 31, 2023
01e9e31
some refactoring and tested .parseTCR
Qile0317 Nov 1, 2023
b535066
Push 1 towards testthat
ncborcherding Nov 1, 2023
52dfba3
update viz testthat
ncborcherding Nov 1, 2023
b9d62c8
changed the rownames of mini_contig_list to be in numerical order
Qile0317 Nov 1, 2023
08d8238
fixed name of scRep_example & minor refactoring
Qile0317 Nov 2, 2023
7c82612
renamed screp_example + minor refactoring
Qile0317 Nov 2, 2023
9c365a4
testthat push 2
ncborcherding Nov 2, 2023
0d36e86
Merge pull request #274 from Qile0317/v2
ncborcherding Nov 4, 2023
8f9c6c9
harmonizing testthat, qile, and my progess
ncborcherding Nov 4, 2023
b56a2fc
removing extra line in vignettes
ncborcherding Nov 4, 2023
0c8f2a9
check yaml
ncborcherding Nov 5, 2023
6149814
Create .codecov.yml
ncborcherding Nov 6, 2023
1080cf0
usethis check
ncborcherding Nov 6, 2023
2536d93
Merge branch 'v2' of https://github.com/ncborcherding/scRepertoire in…
ncborcherding Nov 6, 2023
d507737
Delete screpertoire_hex.png
ncborcherding Nov 6, 2023
940ef6e
Update R-CMD-check.yaml
ncborcherding Nov 6, 2023
4826103
refactored tests by adding to testdata and adding an alias to acces…
Qile0317 Nov 6, 2023
0879a33
implemented AA kmer counting in Rcpp
Qile0317 Nov 7, 2023
88a876c
merged with upstream branch
Qile0317 Nov 7, 2023
3ea947c
fixed AA kmer counting
Qile0317 Nov 7, 2023
80f06ad
slight refactoring of src/aaKmers.cpp
Qile0317 Nov 7, 2023
afc62ee
fixed most vdiffr tests except startrac and clonalBias
Qile0317 Nov 7, 2023
357e63f
Merge pull request #275 from Qile0317/v2
ncborcherding Nov 7, 2023
e878a41
sped up .parseTCR by using barcodeIndex
Qile0317 Nov 7, 2023
d0c3a4a
slightly refactored parseTCR
Qile0317 Nov 7, 2023
8c5bbc6
slight modification to src/parseTCR.cpp
Qile0317 Nov 7, 2023
8a5a2a2
working through final testthat
ncborcherding Nov 8, 2023
b762f01
Removing legends on testthat svg
ncborcherding Nov 8, 2023
9bd9486
Update DESCRIPTION
ncborcherding Nov 8, 2023
3adf21d
importing ggraph
ncborcherding Nov 8, 2023
daba008
naive faulty implementation of parseTCR
Qile0317 Nov 9, 2023
dc1d7c7
fixed parseTCR and slightly refactored combineTCR
Qile0317 Nov 9, 2023
0121717
completely fixed constructConDfAndParseTCR
Qile0317 Nov 9, 2023
50ac737
implemented barcodeIndex for parseBCR and started cpp version
Qile0317 Nov 9, 2023
f88e4d9
Merge pull request #276 from Qile0317/v2
ncborcherding Nov 10, 2023
2e8b888
Added Immcantation support
ncborcherding Nov 11, 2023
cd35b21
Delete .github/workflows/.codecov.yml
ncborcherding Nov 13, 2023
2b50e78
pass on linux testthat
ncborcherding Nov 16, 2023
59b95dd
remove clonalBias plot
ncborcherding Nov 17, 2023
d8d4baa
Merge branch 'master' into v2
ncborcherding Nov 17, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 10 additions & 0 deletions .Rbuildignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,13 @@
^scRepertoire\.Rproj$
^\.Rproj\.user$
^www$
^\.github$
^local_tests\.R$
^LICENSE\.md$
^JOSS$
^draft-pdf\.yml$
^_pkgdown\.yml$
^docs$
^pkgdown$
^index\.md$
^dev\.R$
1 change: 1 addition & 0 deletions .github/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
*.html
29 changes: 29 additions & 0 deletions .github/workflows/R-CMD-check.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
# Workflow derived from https://github.com/r-lib/actions/tree/v2/examples
# Need help debugging build failures? Start at https://github.com/r-lib/actions#where-to-find-help
on:
push:
branches: [main, master, v2]
pull_request:
branches: [main, master, v2]

name: R-CMD-check

jobs:
R-CMD-check:
runs-on: ubuntu-latest
env:
GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }}
R_KEEP_PKG_SOURCE: yes
steps:
- uses: actions/checkout@v3

- uses: r-lib/actions/setup-r@v2
with:
use-public-rspm: true

- uses: r-lib/actions/setup-r-dependencies@v2
with:
extra-packages: any::rcmdcheck
needs: check

- uses: r-lib/actions/check-r-package@v2
48 changes: 48 additions & 0 deletions .github/workflows/pkgdown.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
# Workflow derived from https://github.com/r-lib/actions/tree/v2/examples
# Need help debugging build failures? Start at https://github.com/r-lib/actions#where-to-find-help
on:
push:
branches: [main, master]
pull_request:
branches: [main, master]
release:
types: [published]
workflow_dispatch:

name: pkgdown

jobs:
pkgdown:
runs-on: ubuntu-latest
# Only restrict concurrency for non-PR jobs
concurrency:
group: pkgdown-${{ github.event_name != 'pull_request' || github.run_id }}
env:
GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }}
permissions:
contents: write
steps:
- uses: actions/checkout@v3

- uses: r-lib/actions/setup-pandoc@v2

- uses: r-lib/actions/setup-r@v2
with:
use-public-rspm: true

- uses: r-lib/actions/setup-r-dependencies@v2
with:
extra-packages: any::pkgdown, local::.
needs: website

- name: Build site
run: pkgdown::build_site_github_pages(new_process = FALSE, install = FALSE)
shell: Rscript {0}

- name: Deploy to GitHub pages 🚀
if: github.event_name != 'pull_request'
uses: JamesIves/[email protected]
with:
clean: false
branch: gh-pages
folder: docs
79 changes: 79 additions & 0 deletions .github/workflows/pr-commands.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
# Workflow derived from https://github.com/r-lib/actions/tree/v2/examples
# Need help debugging build failures? Start at https://github.com/r-lib/actions#where-to-find-help
on:
issue_comment:
types: [created]

name: Commands

jobs:
document:
if: ${{ github.event.issue.pull_request && (github.event.comment.author_association == 'MEMBER' || github.event.comment.author_association == 'OWNER') && startsWith(github.event.comment.body, '/document') }}
name: document
runs-on: ubuntu-latest
env:
GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }}
steps:
- uses: actions/checkout@v3

- uses: r-lib/actions/pr-fetch@v2
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}

- uses: r-lib/actions/setup-r@v2
with:
use-public-rspm: true

- uses: r-lib/actions/setup-r-dependencies@v2
with:
extra-packages: any::roxygen2
needs: pr-document

- name: Document
run: roxygen2::roxygenise()
shell: Rscript {0}

- name: commit
run: |
git config --local user.name "$GITHUB_ACTOR"
git config --local user.email "[email protected]"
git add man/\* NAMESPACE
git commit -m 'Document'

- uses: r-lib/actions/pr-push@v2
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}

style:
if: ${{ github.event.issue.pull_request && (github.event.comment.author_association == 'MEMBER' || github.event.comment.author_association == 'OWNER') && startsWith(github.event.comment.body, '/style') }}
name: style
runs-on: ubuntu-latest
env:
GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }}
steps:
- uses: actions/checkout@v3

- uses: r-lib/actions/pr-fetch@v2
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}

- uses: r-lib/actions/setup-r@v2

- name: Install dependencies
run: install.packages("styler")
shell: Rscript {0}

- name: Style
run: styler::style_pkg()
shell: Rscript {0}

- name: commit
run: |
git config --local user.name "$GITHUB_ACTOR"
git config --local user.email "[email protected]"
git add \*.R
git commit -m 'Style'

- uses: r-lib/actions/pr-push@v2
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
50 changes: 50 additions & 0 deletions .github/workflows/test-coverage.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
# Workflow derived from https://github.com/r-lib/actions/tree/v2/examples
# Need help debugging build failures? Start at https://github.com/r-lib/actions#where-to-find-help
on:
push:
branches: [main, master]
pull_request:
branches: [main, master]

name: test-coverage

jobs:
test-coverage:
runs-on: ubuntu-latest
env:
GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }}

steps:
- uses: actions/checkout@v3

- uses: r-lib/actions/setup-r@v2
with:
use-public-rspm: true

- uses: r-lib/actions/setup-r-dependencies@v2
with:
extra-packages: any::covr
needs: coverage

- name: Test coverage
run: |
covr::codecov(
quiet = FALSE,
clean = FALSE,
install_path = file.path(normalizePath(Sys.getenv("RUNNER_TEMP"), winslash = "/"), "package")
)
shell: Rscript {0}

- name: Show testthat output
if: always()
run: |
## --------------------------------------------------------------------
find ${{ runner.temp }}/package -name 'testthat.Rout*' -exec cat '{}' \; || true
shell: bash

- name: Upload test results
if: failure()
uses: actions/upload-artifact@v3
with:
name: coverage-test-failures
path: ${{ runner.temp }}/package
6 changes: 6 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,3 +2,9 @@
.DS_Store
.Rhistory
.Rhistory
local_tests.R
.RData
docs
vignettes/articles/scRep_example_full.rds
.vscode
dev.R
79 changes: 48 additions & 31 deletions DESCRIPTION
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
Package: scRepertoire
Title: A toolkit for single-cell immune receptor profiling
Version: 1.11.0
Version: 2.0.0
Authors@R: c(
person(given = "Nick", family = "Borcherding", role = c("aut", "cre"), email = "[email protected]"))
Description: scRepertoire was built to process data derived from the 10x Genomics Chromium Immune Profiling for both T-cell receptor (TCR) and immunoglobulin (Ig) enrichment workflows and subsequently interacts with the popular Seurat and SingleCellExperiment R packages. It also allows for general analysis of single-cell clonotype information without the use of expression information. The package functions as a wrapper for Startrac and powerTCR R packages.
License: GPL-2
person(given = "Nick", family = "Borcherding", role = c("aut", "cre"), email = "[email protected]"),
person(given = "Qile", family = "Yang", role = c("aut"), email = "[email protected]"))
Description: scRepertoire was built to process data derived from the 10x Genomics Chromium Immune Profiling for both T-cell receptor (TCR) and immunoglobulin (Ig) enrichment workflows and subsequently interacts with the popular Seurat and SingleCellExperiment R packages.
License: MIT + file LICENSE
Encoding: UTF-8
LazyData: true
RoxygenNote: 7.2.3
Expand All @@ -13,32 +14,48 @@ Depends:
ggplot2,
R (>= 4.0)
Imports:
stringdist,
dplyr,
reshape2,
ggalluvial,
stringr,
vegan,
powerTCR,
SingleCellExperiment,
SummarizedExperiment,
plyr,
parallel,
doParallel,
methods,
utils,
rlang,
igraph,
ggraph,
tidygraph,
SeuratObject,
stats
cubature,
dplyr,
evmix,
ggalluvial,
ggdendro,
ggraph,
grDevices,
igraph,
iNEXT,
methods,
plyr,
quantreg,
Rcpp,
reshape2,
rjson,
rlang,
S4Vectors,
SeuratObject,
SingleCellExperiment,
stats,
stringr,
stringdist,
SummarizedExperiment,
tidygraph,
truncdist,
utils,
VGAM
Suggests:
knitr,
rmarkdown,
BiocStyle,
circlize,
scales,
Seurat,
scater
BiocManager,
BiocStyle,
circlize,
knitr,
rmarkdown,
scales,
scater,
Seurat,
spelling,
testthat (>= 3.0.0),
vdiffr
VignetteBuilder: knitr
Config/testthat/edition: 3
Language: en-US
LinkingTo:
Rcpp
URL: https://ncborcherding.github.io/scRepertoire/
21 changes: 21 additions & 0 deletions LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
MIT License

Copyright (c) 2023 Nick Borcherding

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
Loading
Loading