feat: decorator to validate pt.Model type hints#38
Open
rm-shanebreeze wants to merge 1 commit intoJakobGM:mainfrom
Open
feat: decorator to validate pt.Model type hints#38rm-shanebreeze wants to merge 1 commit intoJakobGM:mainfrom
rm-shanebreeze wants to merge 1 commit intoJakobGM:mainfrom
Conversation
Collaborator
|
Sorry for only getting to this now! I like implementation and the idea is neat, but I'm missing a bit more info on what the usecase is here. I'd only want to add features that have a well-defined usecase so as to minimize what we have to maintain. I understand how the feature should work, but I'm missing some examples on what could replace the import patito as pt
import polars as pl
class MyModel(pt.Model):
a: int
@pt.validate_hints
def func(arg: MyModel) -> MyModel:
# ... <- What should go here?
return arg
# this df will raise an error when validated
df = pl.DataFrame({"a": [1.0, 2.0, 3.0]})
func(df)
MyModel.validate(df) # this does the same thing as the above |
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.
@validate_hintsdecorates functions or methods running.validateon function arguments and the return value if they inherit frompt.pydantic.ModelMetaclass. Example usage: