-
-
Notifications
You must be signed in to change notification settings - Fork 26.5k
Closed
Description
SLEP009 is all but accepted.
It proposes to make most parameters keyword-only.
We should do this by first:
- Merging ENH Add Deprecating Position Arguments Helper #13311
- Perhaps getting some stats on usage of positional arguments as per SLEP009: keyword only arguments enhancement_proposals#19 (comment)
- applying the deprecation to each subpackage. Checked means PR opened at least.
- base
- calibration
- cluster
- compose
- covariance
- cross_decomposition
- datasets
- decomposition
- discriminant_analysis
- dummy
- ensemble
- feature_extraction
- feature_selection
- gaussian_process
- impute
- inspection
- isotonic
- kernel_approximation
- kernel_ridge
- linear_model
- manifold
- metrics
- metrics.pairwise
- mixture
- model_selection
- multiclass
- multioutput
- naive_bayes
- neighbors
- neural_network
- pipeline
- preprocessing
- random_projection
- semi_supervised
- svm
- tree
- utils
We might along the way establish rules of thumb and principles like "are the semantics reasonably clear when the argument is passed positionally?" As I noted on the mailing list, I think they are clear for PCA's components, for Pipeline's steps, and for GridSearchCV's estimator and parameter grid. Other parameters of those estimators seem more suitable for keyword-only. Trickier is whether n_components in TSNE should follow PCA in being positional... It's not as commonly set by users.
rth and aaniin