add G4S proxiome-v2 panel#397
Merged
Merged
Conversation
johandahlberg
approved these changes
Jun 15, 2026
elhb
added a commit
that referenced
this pull request
Jun 15, 2026
* add celltype annotation functions * applying comments from PR review * linting * add a test against results from a known cell type annotation method. * add test data * remove duplicate test data * fix linting * apply comments from the PR review * update CHANGELOG * fix putting the new addition in CHANGELOG.md as unreleased * docs: migrate to google style doc format (#368) * refactor(pna): aggregate edgelist-to-anndata in component batches The original `pna_edgelist_to_anndata` ran two global queries with `COUNT(DISTINCT umi1)` / `COUNT(DISTINCT umi2)` grouped by `(component, marker_*)` over the entire edgelist. The per-thread distinct hash tables built by DuckDB dominated peak memory on large datasets. Aggregations now happen in fixed-size batches of components (`_COMPONENT_BATCH_SIZE = 512`) using `WHERE component IN (...)`, bounding each query's distinct hash table to one batch's worth of UMIs while still benefiting from DuckDB row-group zone maps when the edgelist is clustered by component. Output schema, column order, and all dtypes are preserved. On a 67M-row synthetic edgelist (30k components x 158 markers): | variant | wall time | rss_delta | rss_peak | | ----------- | --------: | --------: | -------: | | baseline | 1.3s | 2.77 GiB | 3.05 GiB | | refactored | 15.2s | 0.79 GiB | 1.07 GiB | Also adds an opt-in benchmark script and captured before/after results under `tests/pna/benchmarks/`. Co-authored-by: Cursor <cursoragent@cursor.com> * switch to enrichment based sample calling * Added proxiome-v2-immuno-155-v2.1 * update CHANGELOG.md * apply PR review suggestions * set --enrichment-threshold to 10 * Update src/pixelator/pna/cli/sample_calling.py Co-authored-by: Johan Dahlberg <johan.dahlberg@pixelgen.tech> * Expose coarsened_pmds_3d on the PNA layout CLI Add coarsened_pmds_3d (and the rest of SupportedLayoutAlgorithm) as selectable values for `pixelator single-cell-pna layout --layout-algorithm`, and make coarsened_pmds_3d the default since it produces more performant cell layouts. Co-authored-by: Cursor <cursoragent@cursor.com> * do one more refinement iteration after edge cycle verification * Revert "do one more refinement iteration after edge cycle verification" This reverts commit e2fac5f. * Always route DuckDB spill files to a local temp directory DuckDB defaults its temp_directory to a location next to the database file. When a .pxl file lives on a networked filesystem (e.g. Fusion/S3), spill files land there and heavy queries (e.g. in denoise) fail to read them back. Add a shared pixelator.common.duckdb_utils helper that always sets temp_directory (PIXELATOR_DUCKDB_TEMP_DIR or /tmp) and route all DuckDB connections through it, including PixelFileWriter, InplacePixelDataFilterer, the PXL IO readers/viewer and the graph stage helpers. Co-authored-by: Cursor <cursoragent@cursor.com> * Apply ruff-format to PixelFileWriter temp-dir tests Co-authored-by: Cursor <cursoragent@cursor.com> * Use double-backtick literals consistently in DuckDB docstrings Co-authored-by: Cursor <cursoragent@cursor.com> * fix formats. * update CHANGELOG.md and remove benchmarking tests * Fix typo * fix: rename prerelease panel files (#394) * fix: rename proxiome-v2 panels (#395) * Fix typo in README: runnning -> running Co-authored-by: Johan Dahlberg <johan@uppsala-bioinformatics.se> * Add cursoragent to CLA bot allowlist Co-authored-by: Johan Dahlberg <johan@uppsala-bioinformatics.se> * feat: add G4S proxiome-v2 panel (#397) * prepare release 0.29.0 (#398) * Add karlmoresco to CLA bot --------- Co-authored-by: ptajvar <ptajvar@gmail.com> Co-authored-by: Pouria Tajvar <31826342+ptajvar@users.noreply.github.com> Co-authored-by: Johan Dahlberg <johan.dahlberg@pixelgen.com> Co-authored-by: Cursor <cursoragent@cursor.com> Co-authored-by: Johan Dahlberg <johan.dahlberg@pixelgen.tech> Co-authored-by: Johan Dahlberg <johan@uppsala-bioinformatics.se>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
add G4S proxiome-v2 panel
Fixes: TECH-416
Type of change
Please delete options that are not relevant.
How Has This Been Tested?
Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce it when relevant.
PR checklist:
pyproject.tomland cited it properly