Fix CV_Tissue merge loop producing duplicate columns and missing Anatomical_entity_name - #72
Merged
Conversation
update maintainer Conflicts: DESCRIPTION
… markers - Add tests/testthat/ suite with 59 tests covering CoSIAn constructor, viewCoSIAn, getConversion, getGEx, and getGExMetrics (all 6 metric types) - Fix viewCoSIAn: replace ifelse() with if/else so data frame slots are returned intact rather than coerced to a scalar - Fix CV_Tissue in getGExMetrics: guard Anatomical_entity_name.x filter behind a column existence check so single-species calls no longer crash - Remove PackageStatus: Deprecated from DESCRIPTION and .Deprecated() call from R/zzz.R; package remains active in Bioconductor 3.22 - Add Config/testthat/edition: 3 to DESCRIPTION - Add CLAUDE.md and CLAUDE_CHANGELOG.md Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…omical_entity_name The original loop fed the accumulated result back into each merge iteration, creating a Cartesian product with cascading .x/.y column duplicates and a broken Anatomical_entity_name column (also contained a typo in the fallback rename). Rewritten to join each species independently against the original id_dataframe and combine on all ID columns + Anatomical_entity_name. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Three scripts in validation/ compare Bioconductor release against the dev version to verify correctness of the CV_Tissue merge rewrite: - 01_run_bioc.R: captures reference output from installed Bioconductor CoSIA - 02_run_dev.R: captures output from the modified dev version - 03_compare.R: compares results with structural checks, exact value comparison for single-species, and manual spot-check instructions .Rbuildignore updated to exclude validation/, CLAUDE.md, CLAUDE_CHANGELOG.md. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Runs devtools::test() on push/PR to devel and main using the official bioconductor/bioconductor_docker:RELEASE_3_22 container. Caches R packages keyed to DESCRIPTION and ExperimentHub data (EH7858-EH7863) with a static key to avoid redundant downloads across runs. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…parison 1.11.1 is the Bioconductor production version with the CV_Tissue bug. 1.11.2 is the fixed release. Validation strategy: - CV_Tissue: confirm 1.11.1 crashes (bug), 1.11.2 succeeds (fix), with structural checks and cross-species consistency check on the fixed output - CV_Species and DS_* metrics: unchanged code paths, so values must match exactly between versions All scripts now cover all six metric types with a shared set of inputs. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
mkdir -p now runs unconditionally in ensure_sif so the bin/container directory is created even when the SIF is already present. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
toniecrumley
marked this pull request as ready for review
May 8, 2026 18:03
|
Trying to run the testthat unit suite, I run into this, but haven't looked further into it yet **EDIT my bad-- did not realize test.sh was not a job, but runs interactively when I tried earlier. 😅 Rerunning on interactive node now! |
tsoelter
approved these changes
May 15, 2026
There was a problem hiding this comment.
I think everything works as expected. I played around with the reproducible example, with the vignette, and the Shiny app (in addition to what is in the PR instructions) and did not encounter any issues.
lizzyjoan
approved these changes
May 26, 2026
lizzyjoan
left a comment
There was a problem hiding this comment.
Everything looks good and worked with the different examples, tests, and seems to be as expected results!
toniecrumley
added a commit
that referenced
this pull request
Jul 22, 2026
Fix CV_Tissue merge loop producing duplicate columns and missing Anatomical_entity_name
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.
Summary
There are several old changes for version numbers and such that I didn't realize were in here. Also, I should have branched off of devel and then merged back to it but I will do that right next time.
Fix CV_Tissue merge loop producing duplicate columns and missing Anatomical_entity_name
The original loop fed the accumulated result back into each merge iteration,
creating a Cartesian product with cascading .x/.y column duplicates and a
broken Anatomical_entity_name column (also contained a typo in the fallback
rename). This was rewritten to join each species independently against the original
id_dataframe and combine on all ID columns + Anatomical_entity_name.
Fixes #71
Author Checklist
See instructions here.
cap_container command has been included in each script using a container.
in this pull request.
or unrelated files are part of this pull request. Use
.gitignoreto preventirrelevant files from accidentally being included.
lasseignelabanddefaultenvironments by running the job until two consecutive runs producethe same results. Code comments (per script) have been added for
non-reproducible scripts. Include information about why the script is not
reproducible.
message should show in the GitHub pull request status box above the
"Merge pull request" button.
branch has conflicts that must be resolved" message in the GitHub pull
request status box above the "Merge pull request" button.
pull request.
Self/Peer Review Checklist (Coding Guidelines)
why, not what the code is doing. Avoid excessive or redundant commenting.
CoSIA
Verify that the modifications to CoSIA work correctly.
Setup
Test
Run the testthat unit test suite:
Validate that new and old CoSIA produce the same results for functionality that wasn't broken:
Cleanup
Worthey Lab
Verify that the modifications to CoSIA fix the issues identified by the Worthey Lab in the
vignette_script_walkthrough_CPAM_All_Models_Together_Tissues.Rscript and that the results of that script are correct.Setup
Test
Run the testthat unit test suite:
Validate that new and old CoSIA produce the same results for functionality that wasn't broken:
Run the analysis scripts created by the Worthey Lab.
Cleanup