-
-
Notifications
You must be signed in to change notification settings - Fork 8.7k
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
Use type name for data type check. #5364
Conversation
* Avoid importing datatable. * Fix dmlc#5363.
Thank you very much it is work perfect. I spent so much time to google it. Thank you much. |
Should we include this fix in 1.0.2? |
@hcho3 I would like to hear about your opinion. I want to merge it in 1.0.2 as I keep it small, but it will be great if you can help deciding about it as I sometimes can be over optimistic. |
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.
LGTM on the surface. How vulnerable are we if external libraries change the names or structure of imports? I guess we can just add possibilities as they occur.
@RAMitchell That's a risk we need to take. For datatable the original code uses |
I think it's small enough to be included in the patch release. |
I will push into 1.0 release branch. |
* Avoid importing datatable. * Fix dmlc#5363.
@brydag The 1.0.2 release is now available. |
I replaced explicit import for datatable with simple string. The trick should also work with other packages. But I'm keeping this PR to be minimum so that others can raise concerns around the new compatibility check.
Should close #5363 . @brydag Could you please try this patch? I can't reproduce it as there are some specific libraries in your dependencies that are using
sys.__stdin__
.@RAMitchell Just tried importing dask + datatable, it seems they still don't play well with each others. But I don't think XGBoost is a good place to workaround the limitation.
@hcho3