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

move stateful checks (e.g. is_visium, is_single) higher up in the validator to avoid potential state-related issues #1125

Open
5 tasks
ejmolinelli opened this issue Nov 21, 2024 · 0 comments
Labels
curation software tech Tech issues that do not require product prioritization. Tech debt, tooling, ops, etc.

Comments

@ejmolinelli
Copy link
Contributor

Motivation

The Validator object is stateful, and there are various points in the life of a validator object when a state might be set during validation. The states should be defined as early as possible and in a single place to avoid potential complications.

An example pointed out here

Definition of Done

the Validator state property setter functions are called once and only once (not counting after Validator.reset().

Tasks

Detail the specific tasks that can be used to accomplish the desired changes.
If detailed steps cannot be provided at this time, please file a Tech Proposal instead.

  • cull state proeprty setters into a new or existing function
  • call this function early in Validator life cycle
  • remove all other property setter calls.
  • state should be recomputed after adata is reassigned.

Extra Credit

  • Extend more formal object properties with @property and @property.setter decorators (already used for Validator.adata)
@ejmolinelli ejmolinelli added the tech Tech issues that do not require product prioritization. Tech debt, tooling, ops, etc. label Nov 21, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
curation software tech Tech issues that do not require product prioritization. Tech debt, tooling, ops, etc.
Projects
None yet
Development

No branches or pull requests

2 participants