-
Notifications
You must be signed in to change notification settings - Fork 15
Release version 2.0 of FOCUS Validator #125
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
Merged
Merged
Conversation
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
…es with yaml files. (#86) Signed-off-by: Varun Mittal <varunmittal91@gmail.com>
Signed-off-by: Varun Mittal <varunmittal91@gmail.com>
… be used. (#91) --------- Signed-off-by: Varun Mittal <varunmittal91@gmail.com>
Signed-off-by: Varun Mittal <varunmittal91@gmail.com>
Signed-off-by: Varun Mittal <varunmittal91@gmail.com>
Signed-off-by: Varun Mittal <varunmittal91@gmail.com>
Signed-off-by: Varun Mittal <varunmittal91@gmail.com>
Signed-off-by: Varun Mittal <varunmittal91@gmail.com>
Signed-off-by: Joshua Kwan <joshk@ternary.app>
Allow np.datetime64 as well. This variant of Python time type has no time zone information (it's an instant.) so we don't check that tzname is UTC in that case. Signed-off-by: Joshua Kwan <joshk@ternary.app>
Failures are grouped by the check name, description, and aggregate the distinct values and rows where those failing values occur Signed-off-by: Joshua Kwan <joshk@ternary.app>
Signed-off-by: Joshua Kwan <joshk@ternary.app> Co-authored-by: Varun Mittal <varunmittal91@gmail.com>
Signed-off-by: Varun Mittal <varunmittal91@gmail.com>
…105) Signed-off-by: Varun Mittal <varunmittal91@gmail.com>
…ter and null checks, deprecates support for python 3.9. (#107) Signed-off-by: Varun Mittal <varunmittal91@gmail.com>
Moved current 1.0 to 1.0-preview to match FOCUS project releases Added new 1.0 Ruleset matching the upcoming release of FOCUS 1.0 Signed-off-by: Mike Fuller <mike@finops.org>
Signed-off-by: Mike Fuller <mike@finops.org>
…#108) Signed-off-by: Justin Ohrenberger <justinohrenberger@gmail.com>
Signed-off-by: Justin Ohrenberger <justinohrenberger@gmail.com>
Signed-off-by: Justin Ohrenberger <justinohrenberger@gmail.com>
Signed-off-by: Justin Ohrenberger <justinohrenberger@gmail.com> Signed-off-by: Mike Fuller <mike@finops.org>
Added capability to load some of the billed cost functions from the cr-1.2.json and interpret them. Began moving over rules from yaml to json. Signed-off-by: Mike Fuller <mike@finops.org>
Signed-off-by: Mike Fuller <mike@finops.org>
Signed-off-by: Mike Fuller <mike@finops.org>
Signed-off-by: Mike Fuller <mike@finops.org>
restructure the duckdb system to be more modular and easily expandable to add more checks in the future Signed-off-by: Mike Fuller <mike@finops.org>
Signed-off-by: Mike Fuller <mike@finops.org>
Improvements made to make local dev quicker by only building the poetry environment when the poetry config is changed. Signed-off-by: Mike Fuller <mike@finops.org>
Added better handling of loading non-conformant datasets Signed-off-by: Mike Fuller <mike@finops.org>
Update packages to take best advantage of newer versions Signed-off-by: Mike Fuller <mike@finops.org>
Signed-off-by: Mike Fuller <mike@finops.org>
Signed-off-by: Mike Fuller <mike@finops.org>
…location, needed for when downstream packages use this as a library function. Signed-off-by: Mike Fuller <mike@finops.org>
Signed-off-by: Mike Fuller <mike@finops.org>
… memory management Signed-off-by: Mike Fuller <mike@finops.org>
Signed-off-by: Mike Fuller <mike@finops.org>
Signed-off-by: Mike Fuller <mike@finops.org>
Update tags check to pass KeyValue checks Fix up error messages to provide more details. Signed-off-by: Mike Fuller <mike@finops.org>
…in validation errors Signed-off-by: Mike Fuller <mike@finops.org>
…s will be needed as newer versions of FOCUS come out. Signed-off-by: Mike Fuller <mike@finops.org>
Signed-off-by: Mike Fuller <mike@finops.org>
Added option for output-type web Added outputter for HTML (web) Fixed handling of dynamic checks to fail when the column isnt present instead of getting a default pass. Signed-off-by: Mike Fuller <mike@finops.org>
Add lint check script for ease of development Refinements for the web outputter for better validation results management Signed-off-by: Mike Fuller <mike@finops.org>
Clean up README Fix unittests after some refactoring Signed-off-by: Mike Fuller <mike@finops.org>
Corrected rules based slicer Signed-off-by: Mike Fuller <mike@finops.org>
Matt-Cowsert
approved these changes
Dec 8, 2025
Collaborator
Matt-Cowsert
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We've reviewed this PR and handful of times recently. Approving with the recognition that we'll have additional improvements and fixes to the FOCUS validator in the future.
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.
FOCUS Validator 2.0 is a major revamp of the project
It now uses the FOCUS Requirements Model made available as of release 1.2 of FOCUS