-
Notifications
You must be signed in to change notification settings - Fork 6.5k
Closed
Labels
staleIssues that haven't received updatesIssues that haven't received updates
Description
Context: #655.
A kwargs argument was added to schedulers in d7dcba4 just to display a deprecation warning. kwargs was interpreted as a configurable attribute, but it could not be serialized. This broke:
- Pipeline loading, via
__repr__in the warning message. - Pipeline saving.
We just added a quick fix, but there were other ideas to address it. @anton-l proposed the following in
| ignore = getattr(self, "ignore_for_config", []) |
ignore = getattr(self, "ignore_for_config", [])
ignore.append("kwargs")There is also another check in
| if "kwargs" in expected_keys: |
Perhaps we should do this in a more general way and prevent accepting attributes that cannot be serialized, informing the user about the problem. A similar thing happened for dtype and is bound to happen again.
My first approach would be to attempt a JSON serialization in register_to_config and go from there, but I'm not fully familiar with the details of the code. Any thoughts?
Metadata
Metadata
Assignees
Labels
staleIssues that haven't received updatesIssues that haven't received updates