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

refactor ExperimentBuilder and validator for improved validator isolation #237

Merged
merged 4 commits into from
Mar 3, 2023

Conversation

bkmartinjr
Copy link
Contributor

@bkmartinjr bkmartinjr commented Mar 3, 2023

Fixes #215
Fixes #179

Changes:

  • Break the ExperimentBuilder into two parts:
    • ExperimentSpecification - read-only declaration of Experiment configuration. May not contain information derived from the AnnData files.
    • ExperimentBuilder - the accumulated state used during the build process, derived from AnnData input files.
  • Refactor the validator to only use the ExperimentSpecifications, increasing isolation from the build process. As a side effect, this fixes validator skips some assertions in standalone mode #179
  • Minor fixes to test_builder which was incorrectly creating AnnData's (this cleans up all of the warnings generated during the test execution)
  • Added attrs dependency (preferred over dataclasses, and used to create ExperimentSpecification)

@bkmartinjr bkmartinjr marked this pull request as ready for review March 3, 2023 15:55
@bkmartinjr
Copy link
Contributor Author

Note: tests are failing due to the mismatch between the current state of tests in main and the current census build, specifically around the shape of presence. Will be resolved when we do a new build.

Copy link
Collaborator

@atolopko-czi atolopko-czi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Very nice cleanup of numerous hacks!

@bkmartinjr bkmartinjr merged commit 57972f3 into main Mar 3, 2023
@bkmartinjr bkmartinjr deleted the bkmartinjr/215-refactor-validator branch March 3, 2023 22:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
2 participants