Skip to content
Merged

Dev #19

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
96 commits
Select commit Hold shift + click to select a range
a7dddec
feat: more flexbile non-productive filtering + chores
vadimnazarov Oct 30, 2025
1a95368
chore: version bump + fix readme
vadimnazarov Oct 31, 2025
881b009
feat: relaxed paired chains aggregation and fixes; for #18
vadimnazarov Nov 12, 2025
472b53f
tests: tests for input-output and schema parsing
vadimnazarov Nov 12, 2025
2370418
chore: version bump
vadimnazarov Nov 12, 2025
3ec7616
refactor: split tests by schema
vadimnazarov Nov 12, 2025
24994ef
refactor: remove purrr
vadimnazarov Nov 13, 2025
7c5a2b0
feat: correct handling of counts for paired-chain data
vadimnazarov Nov 13, 2025
f0efc74
refactor: few minor changes
vadimnazarov Nov 13, 2025
879e78a
docs: docs for agg functions
vadimnazarov Nov 13, 2025
0c92fb8
tests: extensive tests for receptor and repertoire counts
vadimnazarov Nov 13, 2025
6443548
chore: version bump
vadimnazarov Nov 13, 2025
13903be
chore: version bump
vadimnazarov Nov 13, 2025
8c8578e
chore: make issue templates a bit easier
vadimnazarov Nov 18, 2025
2a94dc8
fix: fix the bug when agg_repertoires messes up with paired chain dat…
vadimnazarov Dec 16, 2025
4d8b953
chore: update gitignore
vadimnazarov Dec 16, 2025
d58977b
chore: version bump
vadimnazarov Dec 16, 2025
2c65579
chore: update versions of dplyr and duckplyr to match the latest ones
vadimnazarov Feb 27, 2026
1fe7dda
chore: update dplyr imports
vadimnazarov Feb 27, 2026
747ab2a
fix: write_immundata specific handling of duckplyr==1.2.0 issue with …
vadimnazarov Feb 27, 2026
dfbf7d0
feat: add compute and collect
vadimnazarov Feb 27, 2026
69876cb
refactor: add a bit more verbose error messages in case of issues wit…
vadimnazarov Feb 27, 2026
5ffb1ec
refactor: better error messages for agg_receptors
vadimnazarov Feb 27, 2026
8e53743
feat: dimnames for ImmunData
vadimnazarov Feb 27, 2026
5b45289
wip: add initial agg_strata and rename_strata implementation
vadimnazarov Feb 27, 2026
8cc064e
feat: annotate_anndata for anndataR
vadimnazarov Feb 27, 2026
c7c9f04
wip: add initial implementation for downsampling
vadimnazarov Feb 27, 2026
aea2b23
fix: dimnames import
vadimnazarov Feb 27, 2026
4a70e7b
feat: metadata files have more details
vadimnazarov Mar 14, 2026
af0493a
feat: add data provenance and snapshotting
vadimnazarov Apr 3, 2026
97a28ea
feat: add data provenance support to old functions
vadimnazarov Apr 3, 2026
3dc7afd
fix: duckdb 1.5 optimizer for rows breaks the old code
vadimnazarov Apr 3, 2026
6883e0f
fix: agg_strata converts repertoires to data frame
vadimnazarov May 15, 2026
056424e
refactor: change arrange_at to arrange
vadimnazarov Jul 8, 2026
ad25560
refactor: add arrange
vadimnazarov Jul 8, 2026
1a57b1a
chore: update package versions
vadimnazarov Jul 8, 2026
4509fc3
fix: downsample works for duckdb >= 1.5
vadimnazarov Jul 8, 2026
69d9020
refactor: few minor changes, docs and tests
vadimnazarov Jul 8, 2026
246832f
refactor: better handling of system or existing columns
vadimnazarov Jul 8, 2026
5003a0e
tests: tests for annotate and mutate
vadimnazarov Jul 8, 2026
b9ff674
refactor: replace repertoire metadata file with manifest files
vadimnazarov Jul 8, 2026
267b4c4
docs: add FAQ record for manifest
vadimnazarov Jul 8, 2026
9cfff33
feat: creation of repertoire attributes via manifest
vadimnazarov Jul 8, 2026
63c1df5
feat: strata support for ImmunData
vadimnazarov Jul 18, 2026
33c0e54
fix: harden ingestion, filtering, and mutation contracts
vadimnazarov Jul 18, 2026
62b38b9
feat: strata support for ImmunData
vadimnazarov Jul 18, 2026
326aa57
chore: refresh package metadata and generated documentation
vadimnazarov Jul 18, 2026
1f4b7a3
fix: stratas -> strata
vadimnazarov Jul 24, 2026
a4b4697
feat: add artifacts path to the provenance
vadimnazarov Jul 25, 2026
11154d6
refactor: simplify the code
vadimnazarov Jul 25, 2026
439d0a0
refactor: simplify the code even more
vadimnazarov Jul 25, 2026
2f36518
refactor: simplify the code even more
vadimnazarov Jul 25, 2026
089ac55
fix: mutate and compute preserve the state
vadimnazarov Jul 25, 2026
df8acba
refactor: two modes collision resolution in annotation -- error and r…
vadimnazarov Jul 26, 2026
203ba11
chore: version bump
vadimnazarov Jul 26, 2026
b5e2747
fix: annotate.ImmunData does not recompute repertoires and preserves …
vadimnazarov Jul 29, 2026
71d63ff
fix: correctly preserve repertoire and strata state
vadimnazarov Jul 29, 2026
f726ef9
refactor: helper functions name convention -- imd_ for externally ava…
vadimnazarov Jul 29, 2026
7f9bc12
chore: remove ggplot2
vadimnazarov Aug 2, 2026
fd2acaa
fix: fix the bug with inconsistent assignment of repertoire IDs
vadimnazarov Aug 7, 2026
6cc5980
chore: version bump
vadimnazarov Aug 7, 2026
1a14a21
fix: fix the bug with incorrect receptor counts
vadimnazarov Aug 7, 2026
c112121
chore: version bump
vadimnazarov Aug 7, 2026
595bf8d
fix: remove unused ggplot2; replace check_ with assert_; scope barcod…
vadimnazarov Aug 11, 2026
20aa9b3
chore: version bump
vadimnazarov Aug 12, 2026
5655d1a
chore: fix R check problems
vadimnazarov Aug 12, 2026
1c94f92
refactor: add verbosity parameters
vadimnazarov Aug 12, 2026
bad95e8
docs: change docs to altdoc
vadimnazarov Aug 13, 2026
f7f5829
docs: fix the order
vadimnazarov Aug 13, 2026
fadf9dc
tests: add dedicated tests with data generation
vadimnazarov Aug 14, 2026
8c4b579
build: add docs generation for the dev branch
vadimnazarov Aug 14, 2026
41d886a
ci: change the group
vadimnazarov Aug 14, 2026
12a120b
refactor: clean up helpers and files with helpers
vadimnazarov Aug 17, 2026
2d5b2de
docs: update docs for agg_receptors and read_repertoires
vadimnazarov Aug 17, 2026
b513829
feat: support for .by in mutate
vadimnazarov Aug 17, 2026
73bf235
docs: docs rehaul
vadimnazarov Aug 17, 2026
eb77825
fix: fix for the table name collision, remove the kmer-based optimisa…
vadimnazarov Aug 17, 2026
ea7e719
docs: update docs for ImmunData
vadimnazarov Aug 25, 2026
647d884
docs: docs for helper functions
vadimnazarov Aug 25, 2026
af98e46
docs: docs for read_immundata
vadimnazarov Aug 25, 2026
1ef2369
docs: docs for write_immundata
vadimnazarov Aug 25, 2026
93e73cd
docs: docs for pre/processing
vadimnazarov Aug 25, 2026
068f818
docs: update docs for agg_repertoires
vadimnazarov Aug 25, 2026
2f1baab
docs: docs for strata operations
vadimnazarov Aug 25, 2026
74012e9
docs: docs for count
vadimnazarov Aug 25, 2026
d884106
docs: docs for print
vadimnazarov Aug 25, 2026
799b379
docs: docs for downsample
vadimnazarov Aug 25, 2026
ca59dde
docs: mroe docs
vadimnazarov Aug 25, 2026
adaf2eb
fix: fix windows paths for tests for CRAN
vadimnazarov Aug 25, 2026
f252b2a
docs: wrapper the examples so they don't run on CRAN
vadimnazarov Aug 25, 2026
0c67e3e
docs: docs with updated examples check
vadimnazarov Aug 25, 2026
ce95eed
chore: add NEWS.md
vadimnazarov Aug 25, 2026
bc13c12
chore: add NEWS.md to the website
vadimnazarov Aug 25, 2026
eae42c7
feat: add prematerialization and update docs and tests
vadimnazarov Aug 25, 2026
40147bf
tests: fix the number of DuckDB threads to 1
vadimnazarov Aug 26, 2026
456f0a7
chore: version bump and news
vadimnazarov Aug 26, 2026
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
3 changes: 1 addition & 2 deletions .Rbuildignore
Original file line number Diff line number Diff line change
Expand Up @@ -5,16 +5,15 @@
^CRAN-SUBMISSION$
^cran-comments\.md$
^inst/extdata/testing
^TODO.md$
^.*\.DS_Store$
.DS_Store
.venv_altdoc
^docs$
^altdoc$
^_pkgdown\.yml$
^pkgdown$
(^|/)wip-.*$
^.venv_altdoc$
^edit-bench$
^immdata-test$
^immundata-quick-start$
^dev$
11 changes: 0 additions & 11 deletions .github/ISSUE_TEMPLATE/2-enhancement.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,17 +3,6 @@ description: "Propose a new feature or an improvement."
labels:
- enhancement
body:
- type: dropdown
id: kind
attributes:
label: What kind of feature would you like to request?
options:
- 'New data processing, filtering, wrangling methods you are missing'
- 'Request enhancement to input/output - format processing, reading data, writing data to the disk'
- 'Improve existing functions, e.g., add additional function parameters, change how a function works, change default values'
- 'Other - please describe it in the ticket body'
validations:
required: true
- type: textarea
id: description
attributes:
Expand Down
13 changes: 2 additions & 11 deletions .github/ISSUE_TEMPLATE/3-documentation.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,19 +3,10 @@ description: "Propose a tutorial for a specific use case or new documentation."
labels:
- documentation
body:
- type: dropdown
id: kind
attributes:
label: What kind of documentation would you like to request?
options:
- 'New tutorial for a specific use case'
- 'Improved documentation or error message'
- 'Other - please describe it in the ticket body'
validations:
required: true
- type: textarea
id: description
attributes:
label: Please describe your idea or what you want to achieve
label: What type of documentation would you like to see on the website?
description: Interested in a tutorial? More details on how a specific method works? More examples? Something else entirely?
validations:
required: true
4 changes: 2 additions & 2 deletions .github/ISSUE_TEMPLATE/4-question.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ body:
- type: textarea
id: description
attributes:
label: Question
description: Describe what you want to know.
label: Your question
description: Describe what you want to know. E.g., how to analyse a specific data, how to do X, when a method will be available, etc.
validations:
required: true
66 changes: 66 additions & 0 deletions .github/workflows/altdoc-dev.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
name: Build development documentation

on:
push:
branches: [dev]
workflow_dispatch:

concurrency:
group: altdoc-pages
cancel-in-progress: false

permissions: read-all

jobs:
altdoc-dev:
if: github.ref == 'refs/heads/dev'
runs-on: ubuntu-latest
env:
GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }}
R_KEEP_PKG_SOURCE: yes
permissions:
contents: write

steps:
- uses: actions/checkout@v4

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

- uses: quarto-dev/quarto-actions/setup@v2

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

- uses: actions/setup-python@v5
with:
python-version: "3.12"
cache: pip
cache-dependency-path: altdoc/requirements.txt

- name: Install MkDocs
run: |
python -m venv .venv_altdoc
.venv_altdoc/bin/python -m pip install --requirement altdoc/requirements.txt

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

- name: Configure development preview
run: |
sed -i 's#https://immunomind.github.io/immundata/#https://immunomind.github.io/immundata/dev/#g' altdoc/mkdocs.yml altdoc/pkgdown.yml README.md
sed -i 's/^site_name: immundata$/site_name: immundata dev/' altdoc/mkdocs.yml

- name: Build site
run: altdoc::render_docs(freeze = FALSE, parallel = FALSE, verbose = TRUE)
shell: Rscript {0}

- name: Deploy development preview
uses: JamesIves/github-pages-deploy-action@v4
with:
clean: true
branch: gh-pages
folder: docs
target-folder: dev
68 changes: 68 additions & 0 deletions .github/workflows/altdoc.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
name: Build documentation

on:
push:
branches: [main, master]
pull_request:
release:
types: [published]
workflow_dispatch:

concurrency:
group: ${{ github.event_name == 'pull_request' && format('altdoc-pr-{0}', github.event.pull_request.number) || 'altdoc-pages' }}
cancel-in-progress: false

permissions: read-all

jobs:
altdoc:
runs-on: ubuntu-latest
env:
GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }}
R_KEEP_PKG_SOURCE: yes
permissions:
contents: write

steps:
- uses: actions/checkout@v4

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

- uses: quarto-dev/quarto-actions/setup@v2

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

- uses: actions/setup-python@v5
with:
python-version: "3.12"
cache: pip
cache-dependency-path: altdoc/requirements.txt

- name: Install MkDocs
run: |
python -m venv .venv_altdoc
.venv_altdoc/bin/python -m pip install --requirement altdoc/requirements.txt

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

- name: Build site
run: altdoc::render_docs(freeze = FALSE, parallel = FALSE, verbose = TRUE)
shell: Rscript {0}

- name: Deploy to GitHub Pages
if: >-
github.event_name != 'pull_request' &&
(github.ref == 'refs/heads/main' ||
github.ref == 'refs/heads/master' ||
startsWith(github.ref, 'refs/tags/'))
uses: JamesIves/github-pages-deploy-action@v4
with:
clean: true
clean-exclude: dev
branch: gh-pages
folder: docs
49 changes: 0 additions & 49 deletions .github/workflows/pkgdown.yaml

This file was deleted.

2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -15,3 +15,5 @@ immdata-test
altdoc/freeze.rds
docs
wip-*
annotations.parquet
metadata.json
13 changes: 7 additions & 6 deletions DESCRIPTION
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
Package: immundata
Title: A Unified Data Layer for Large-Scale Single-Cell, Spatial and Bulk Immunomics
Version: 0.0.5
Version: 0.1.0
Authors@R:
person("Vadim I.", "Nazarov", , "support@immunomind.com", role = c("aut", "cre"),
comment = c(ORCID = "0000-0003-3659-2709"))
Expand All @@ -14,18 +14,16 @@ URL: https://immunomind.github.io/docs/, https://github.com/immunomind/immundata
BugReports: https://github.com/immunomind/immundata/issues
Encoding: UTF-8
Roxygen: list(markdown = TRUE)
RoxygenNote: 7.3.3
Depends:
R (>= 4.1.0),
dplyr,
duckplyr (>= 1.1.0)
dplyr (>= 1.2.1),
duckplyr (>= 1.2.1)
Imports:
checkmate,
cli,
dbplyr,
ggplot2,
glue,
jsonlite (>= 2.0.0),
jsonlite,
lifecycle,
R6,
readr,
Expand All @@ -34,8 +32,11 @@ Imports:
tools,
utils
Suggests:
duckdb,
rmarkdown,
testthat (>= 3.0.0),
Seurat
Config/Needs/website: altdoc
Config/testthat/edition: 3
Config/testthat/parallel: true
Config/roxygen2/version: 8.1.0
Loading
Loading