-
Notifications
You must be signed in to change notification settings - Fork 1.5k
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
[4/n][dagster-sling] Mark DagsterSlingTranslator.get_* methods as superseded #27142
base: maxime/sling-asset-spec-3
Are you sure you want to change the base?
[4/n][dagster-sling] Mark DagsterSlingTranslator.get_* methods as superseded #27142
Conversation
Warning This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
This stack of pull requests is managed by Graphite. Learn more about stacking. |
c6cd280
to
9fb0324
Compare
c5ceba9
to
f881d04
Compare
@maximearmstrong , I'm curious if it's necessary to deprecate the I just want to be cognizant of the impact it has on our users who having working pipelines, and want them to continue to work with little to no changes. I could imagine us having warnings on their usage, and updating all learning material to prefer |
I agree with @cmpadden 's points here -- I think maybe I think the maintenance burden of these extra methods isn't too high on our side (even if they're a bit unsightly) |
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.
Following up now that I've looked at the downstack PR, I think there's a way to delete these methods without breaking users and without having to keep these in code forever
Also having thought about it more, I'm not sure there's a good way for us to actually mark these as deprecated even if we wanted to -- the user is overriding these functions not calling them, so marking them this way won't really alert the user that anything is "wrong"
9fb0324
to
71ad256
Compare
f881d04
to
dc036e5
Compare
@OwenKephart I updated the decorator to mark methods as superseded. I think keeping the decorators and methods are important:
To make sure users get the supersession warning, I updated |
@cmpadden This thread can give you more context on why we think The main problem is that users can override The conclusion was that only |
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.
Note my comment on the warning message
supersession_warning( | ||
subject=method_name, | ||
additional_warn_text=( | ||
"Use `DagsterSlingTranslator.get_asset_spec(...)` to access the attribute instead." |
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.
so this warning comes up specifically in cases where users are overriding the method on the base class, so maybe the warning should reference that? i.e. Instead of overriding X, override DagsterSlingTranslator.get_asset_spec()
Summary & Motivation
As title.