-
-
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
[R] Stop when handling deprecated parameters. #11022
Conversation
I'm looking into updating the integration with mlr3 and see how difficult it is. Upstreaming this small patch, still learning. |
Sorry that I'm a bit late to the discussion. How about putting something in the error message? Also, if the issue is about spaces in names of variables, perhaps it could be solved by using Do you have some reproducer for the error as it was before merging this PR? |
Will share an example once I get back. |
library(xgboost)
data(agaricus.train, package = "xgboost")
data(agaricus.test, package = "xgboost")
nthread <- parallel::detectCores()
dtrain <- with(
agaricus.train, xgb.DMatrix(data, label = label, nthread = nthread)
)
dtest <- with(
agaricus.test, xgb.DMatrix(data, label = label, nthread = nthread)
)
evals <- list(eval = dtest)
param <- list(
max_depth = 2,
eta = 1,
nthread = nthread,
objective = "binary:logistic",
eval_metric = "auc"
)
bst <- xgb.train(param, dtrain, nrounds = 2, watchlist = evals, verbose = 0)
|
Wouldn't this other PR solve the issue? |
It would, we can merge that instead if that's desired. My preference is simpler, the better. I'm less enthusiastic about working around deprecated code. |
I think #10563 would be quite helpful for end users, considering that this will be a major release with lots of deprecations that might cause surprises. It shouldn't be an issue to remove them later, because reverse dependencies would be getting a warning at least. |
Ran into the following error when using the old
watchlist
parameter:This is caused by the R
<pointer ..>
notation used for the DMatrix object. The PR drops the compatibility with old parameter names as it's quite difficult to make robust. A clear stop might be preferred.After the PR: