From 0a77395f30aac9e7be162171ba7ec2862c99cc4b Mon Sep 17 00:00:00 2001 From: mb706 Date: Tue, 12 Aug 2025 14:17:00 +0200 Subject: [PATCH 01/12] progress --- .lintr | 4 +-- R/Tuner.R | 96 +++++++++---------------------------------------------- 2 files changed, 16 insertions(+), 84 deletions(-) diff --git a/.lintr b/.lintr index b8e47eb50..b85c30811 100644 --- a/.lintr +++ b/.lintr @@ -3,8 +3,6 @@ linters: linters_with_defaults( # the following setup changes/removes certain linters assignment_linter = NULL, # do not force using <- for assignments object_name_linter = object_name_linter(c("snake_case", "CamelCase")), # only allow snake case and camel case object names - cyclocomp_linter = NULL, # do not check function complexity commented_code_linter = NULL, # allow code in comments line_length_linter = NULL -) - + ) diff --git a/R/Tuner.R b/R/Tuner.R index 1bd1dd97b..165f10b2f 100644 --- a/R/Tuner.R +++ b/R/Tuner.R @@ -29,40 +29,29 @@ #' #' @export Tuner = R6Class("Tuner", + inherit = Mlr3Component, public = list( - - id = NULL, - #' @description #' Creates a new instance of this [R6][R6::R6Class] class. initialize = function( - id = "tuner", + id, param_set, param_classes, properties, - packages = character(), - label = NA_character_, - man = NA_character_ - ) { - self$id = assert_string(id, min.chars = 1L) - private$.param_set = assert_param_set(param_set) + packages = character(0), + label, + man + ) { + if (!missing(label) || !missing(man)) { + deprecated_component("label and man are deprecated for Tuner construction and will be removed in the future.") + } + + super$initialize(dict_entry = id, dict_shortaccess = "tnr", + param_set = param_set, packages = packages, properties = properties + ) private$.param_classes = assert_subset(param_classes, c("ParamLgl", "ParamInt", "ParamDbl", "ParamFct", "ParamUty")) # has to have at least multi-crit or single-crit property - private$.properties = assert_subset(properties, bbotk_reflections$optimizer_properties, empty.ok = FALSE) - private$.packages = union("mlr3tuning", assert_character(packages, any.missing = FALSE, min.chars = 1L)) - private$.label = assert_string(label, na.ok = TRUE) - private$.man = assert_string(man, na.ok = TRUE) - - check_packages_installed(self$packages, msg = sprintf("Package '%%s' required but not installed for Tuner '%s'", format(self))) - }, - - #' @description - #' Helper for print outputs. - #' - #' @return (`character()`). - #' @param ... (ignored). - format = function(...) { - sprintf("<%s>", class(self)[1L]) + assert_subset(properties, bbotk_reflections$optimizer_properties, empty.ok = FALSE) }, #' @description @@ -90,16 +79,6 @@ Tuner = R6Class("Tuner", ), active = list( - - #' @field param_set ([paradox::ParamSet])\cr - #' Set of control parameters. - param_set = function(rhs) { - if (!missing(rhs) && !identical(rhs, private$.param_set)) { - stop("$param_set is read-only.") - } - private$.param_set - }, - #' @field param_classes (`character()`)\cr #' Supported parameter classes for learner hyperparameters that the tuner can optimize, as given in the [paradox::ParamSet] `$class` field. param_classes = function(rhs) { @@ -107,46 +86,6 @@ Tuner = R6Class("Tuner", stop("$param_classes is read-only.") } private$.param_classes - }, - - #' @field properties (`character()`)\cr - #' Set of properties of the tuner. - #' Must be a subset of [`mlr_reflections$tuner_properties`][mlr3::mlr_reflections]. - properties = function(rhs) { - if (!missing(rhs) && !identical(rhs, private$.properties)) { - stop("$properties is read-only.") - } - private$.properties - }, - - #' @field packages (`character()`)\cr - #' Set of required packages. - #' Note that these packages will be loaded via [requireNamespace()], and are not attached. - packages = function(rhs) { - if (!missing(rhs) && !identical(rhs, private$.packages)) { - stop("$packages is read-only.") - } - private$.packages - }, - - #' @field label (`character(1)`)\cr - #' Label for this object. - #' Can be used in tables, plot and text output instead of the ID. - label = function(rhs) { - if (!missing(rhs) && !identical(rhs, private$.param_set)) { - stop("$label is read-only.") - } - private$.label - }, - - #' @field man (`character(1)`)\cr - #' String in the format `[pkg]::[topic]` pointing to a manual page for this object. - #' The referenced help package can be opened via method `$help()`. - man = function(rhs) { - if (!missing(rhs) && !identical(rhs, private$.man)) { - stop("$man is read-only.") - } - private$.man } ), @@ -158,12 +97,7 @@ Tuner = R6Class("Tuner", assign_result_default(inst) }, - .param_set = NULL, - .param_classes = NULL, - .properties = NULL, - .packages = NULL, - .label = NULL, - .man = NULL + .param_classes = NULL ) ) From d8c12cdab6f736e34feaf958632658e9177d58ea Mon Sep 17 00:00:00 2001 From: mb706 Date: Wed, 13 Aug 2025 22:06:38 +0200 Subject: [PATCH 02/12] don't use man and label --- R/TunerAsyncDesignPoints.R | 3 +-- R/TunerAsyncGridSearch.R | 3 +-- R/TunerAsyncRandomSearch.R | 3 +-- R/TunerBatch.R | 4 +--- R/TunerBatchDesignPoints.R | 3 +-- R/TunerBatchFromBatchOptimizer.R | 4 +--- R/TunerBatchGenSA.R | 3 +-- R/TunerBatchGridSearch.R | 3 +-- R/TunerBatchIrace.R | 3 +-- R/TunerBatchNLoptr.R | 3 +-- R/TunerBatchRandomSearch.R | 3 +-- 11 files changed, 11 insertions(+), 24 deletions(-) diff --git a/R/TunerAsyncDesignPoints.R b/R/TunerAsyncDesignPoints.R index bb3d491e8..1e63d93bc 100644 --- a/R/TunerAsyncDesignPoints.R +++ b/R/TunerAsyncDesignPoints.R @@ -20,8 +20,7 @@ TunerAsyncDesignPoints = R6Class("TunerAsyncDesignPoints", #' Creates a new instance of this [R6][R6::R6Class] class. initialize = function() { super$initialize( - optimizer = OptimizerAsyncDesignPoints$new(), - man = "mlr3tuning::mlr_tuners_async_design_points" + optimizer = OptimizerAsyncDesignPoints$new() ) } ) diff --git a/R/TunerAsyncGridSearch.R b/R/TunerAsyncGridSearch.R index 8b16d9b09..0e496a6cb 100644 --- a/R/TunerAsyncGridSearch.R +++ b/R/TunerAsyncGridSearch.R @@ -20,8 +20,7 @@ TunerAsyncGridSearch = R6Class("TunerAsyncGridSearch", #' Creates a new instance of this [R6][R6::R6Class] class. initialize = function() { super$initialize( - optimizer = bbotk::OptimizerAsyncGridSearch$new(), - man = "mlr3tuning::mlr_tuners_async_grid_search" + optimizer = bbotk::OptimizerAsyncGridSearch$new() ) } ) diff --git a/R/TunerAsyncRandomSearch.R b/R/TunerAsyncRandomSearch.R index 0c849574b..b286c58bd 100644 --- a/R/TunerAsyncRandomSearch.R +++ b/R/TunerAsyncRandomSearch.R @@ -24,8 +24,7 @@ TunerAsyncRandomSearch = R6Class("TunerAsyncRandomSearch", #' Creates a new instance of this [R6][R6::R6Class] class. initialize = function() { super$initialize( - optimizer = bbotk::OptimizerAsyncRandomSearch$new(), - man = "mlr3tuning::mlr_tuners_async_random_search" + optimizer = bbotk::OptimizerAsyncRandomSearch$new() ) } ) diff --git a/R/TunerBatch.R b/R/TunerBatch.R index 0ca97ee28..aa964b9f8 100644 --- a/R/TunerBatch.R +++ b/R/TunerBatch.R @@ -59,9 +59,7 @@ TunerBatch = R6Class("TunerBatch", param_set = param_set, param_classes = param_classes, properties = properties, - packages = packages, - label = label, - man = man + packages = packages ) }, diff --git a/R/TunerBatchDesignPoints.R b/R/TunerBatchDesignPoints.R index 45c555c9c..898d1c46a 100644 --- a/R/TunerBatchDesignPoints.R +++ b/R/TunerBatchDesignPoints.R @@ -66,8 +66,7 @@ TunerBatchDesignPoints = R6Class("TunerBatchDesignPoints", #' Creates a new instance of this [R6][R6::R6Class] class. initialize = function() { super$initialize( - optimizer = OptimizerBatchDesignPoints$new(), - man = "mlr3tuning::mlr_tuners_design_points" + optimizer = OptimizerBatchDesignPoints$new() ) } ) diff --git a/R/TunerBatchFromBatchOptimizer.R b/R/TunerBatchFromBatchOptimizer.R index 3548bce23..dd5125589 100644 --- a/R/TunerBatchFromBatchOptimizer.R +++ b/R/TunerBatchFromBatchOptimizer.R @@ -26,9 +26,7 @@ TunerBatchFromOptimizerBatch = R6Class("TunerBatchFromOptimizerBatch", param_set = optimizer$param_set, param_classes = optimizer$param_classes, properties = optimizer$properties, - packages = packages, - label = optimizer$label, - man = man + packages = packages ) }, diff --git a/R/TunerBatchGenSA.R b/R/TunerBatchGenSA.R index 1ccc141e8..ca93fe30c 100644 --- a/R/TunerBatchGenSA.R +++ b/R/TunerBatchGenSA.R @@ -36,8 +36,7 @@ TunerBatchGenSA = R6Class("TunerBatchGenSA", optimizer = OptimizerBatchGenSA$new() optimizer$param_set$values$smooth = FALSE super$initialize( - optimizer = optimizer, - man = "mlr3tuning::mlr_tuners_gensa" + optimizer = optimizer ) } ) diff --git a/R/TunerBatchGridSearch.R b/R/TunerBatchGridSearch.R index 6a6fb789c..15e636e8c 100644 --- a/R/TunerBatchGridSearch.R +++ b/R/TunerBatchGridSearch.R @@ -41,8 +41,7 @@ TunerBatchGridSearch = R6Class("TunerBatchGridSearch", #' Creates a new instance of this [R6][R6::R6Class] class. initialize = function() { super$initialize( - optimizer = OptimizerBatchGridSearch$new(), - man = "mlr3tuning::mlr_tuners_grid_search" + optimizer = OptimizerBatchGridSearch$new() ) } ) diff --git a/R/TunerBatchIrace.R b/R/TunerBatchIrace.R index 8b3fab88d..1be74d528 100644 --- a/R/TunerBatchIrace.R +++ b/R/TunerBatchIrace.R @@ -92,8 +92,7 @@ TunerBatchIrace = R6Class("TunerBatchIrace", ) super$initialize( - optimizer = optimizer, - man = "mlr3tuning::mlr_tuners_irace" + optimizer = optimizer ) private$.optimizer$.__enclos_env__$private$.param_set = ParamSetCollection$new(list( diff --git a/R/TunerBatchNLoptr.R b/R/TunerBatchNLoptr.R index a5db91e28..37686f9ce 100644 --- a/R/TunerBatchNLoptr.R +++ b/R/TunerBatchNLoptr.R @@ -63,8 +63,7 @@ TunerBatchNLoptr = R6Class("TunerBatchNLoptr", #' Creates a new instance of this [R6][R6::R6Class] class. initialize = function() { super$initialize( - optimizer = OptimizerBatchNLoptr$new(), - man = "mlr3tuning::mlr_tuners_nloptr" + optimizer = OptimizerBatchNLoptr$new() ) } ) diff --git a/R/TunerBatchRandomSearch.R b/R/TunerBatchRandomSearch.R index da4f803e6..24ae6fe8b 100644 --- a/R/TunerBatchRandomSearch.R +++ b/R/TunerBatchRandomSearch.R @@ -35,8 +35,7 @@ TunerBatchRandomSearch = R6Class("TunerBatchRandomSearch", #' Creates a new instance of this [R6][R6::R6Class] class. initialize = function() { super$initialize( - optimizer = OptimizerBatchRandomSearch$new(), - man = "mlr3tuning::mlr_tuners_random_search" + optimizer = OptimizerBatchRandomSearch$new() ) } ) From 8cfa92a63ee580bd8a0d0d7454a6de55f56615bb Mon Sep 17 00:00:00 2001 From: mb706 Date: Wed, 13 Aug 2025 22:06:51 +0200 Subject: [PATCH 03/12] document() --- man/AutoTuner.Rd | 12 ++--- man/Tuner.Rd | 63 +++++++++------------------ man/TunerAsync.Rd | 11 +++-- man/TunerAsyncFromOptimizerAsync.Rd | 9 ++-- man/TunerBatch.Rd | 11 +++-- man/TunerBatchFromOptimizerBatch.Rd | 9 ++-- man/mlr_tuners_async_design_points.Rd | 9 ++-- man/mlr_tuners_async_grid_search.Rd | 9 ++-- man/mlr_tuners_async_random_search.Rd | 9 ++-- man/mlr_tuners_cmaes.Rd | 9 ++-- man/mlr_tuners_design_points.Rd | 9 ++-- man/mlr_tuners_gensa.Rd | 9 ++-- man/mlr_tuners_grid_search.Rd | 9 ++-- man/mlr_tuners_internal.Rd | 9 ++-- man/mlr_tuners_irace.Rd | 9 ++-- man/mlr_tuners_nloptr.Rd | 9 ++-- man/mlr_tuners_random_search.Rd | 9 ++-- 17 files changed, 119 insertions(+), 95 deletions(-) diff --git a/man/AutoTuner.Rd b/man/AutoTuner.Rd index 53fa236c2..cad3a64a9 100644 --- a/man/AutoTuner.Rd +++ b/man/AutoTuner.Rd @@ -137,8 +137,8 @@ rr$score() # unbiased performance of the final model trained on the full data set rr$aggregate() } -\section{Super class}{ -\code{\link[mlr3:Learner]{mlr3::Learner}} -> \code{AutoTuner} +\section{Super classes}{ +\code{\link[mlr3misc:Mlr3Component]{mlr3misc::Mlr3Component}} -> \code{\link[mlr3:Learner]{mlr3::Learner}} -> \code{AutoTuner} } \section{Public fields}{ \if{html}{\out{
}} @@ -199,10 +199,12 @@ Hash (unique identifier) for this partial object, excluding some components whic \if{html}{\out{
Inherited methods
    -
  • mlr3::Learner$configure()
  • +
  • mlr3misc::Mlr3Component$configure()
  • +
  • mlr3misc::Mlr3Component$format()
  • +
  • mlr3misc::Mlr3Component$help()
  • +
  • mlr3misc::Mlr3Component$override_info()
  • +
  • mlr3misc::Mlr3Component$require_namespaces()
  • mlr3::Learner$encapsulate()
  • -
  • mlr3::Learner$format()
  • -
  • mlr3::Learner$help()
  • mlr3::Learner$predict()
  • mlr3::Learner$predict_newdata()
  • mlr3::Learner$reset()
  • diff --git a/man/Tuner.Rd b/man/Tuner.Rd index e2a6504a3..6eb06f706 100644 --- a/man/Tuner.Rd +++ b/man/Tuner.Rd @@ -56,6 +56,9 @@ Other Tuner: \code{\link{mlr_tuners_random_search}} } \concept{Tuner} +\section{Super class}{ +\code{\link[mlr3misc:Mlr3Component]{mlr3misc::Mlr3Component}} -> \code{Tuner} +} \section{Public fields}{ \if{html}{\out{
    }} \describe{ @@ -68,27 +71,12 @@ Used in tables, plot and text output.} \section{Active bindings}{ \if{html}{\out{
    }} \describe{ -\item{\code{param_set}}{(\link[paradox:ParamSet]{paradox::ParamSet})\cr -Set of control parameters.} +\item{\code{id}}{(\code{character(1)})\cr +Identifier of the object. +Used in tables, plot and text output.} \item{\code{param_classes}}{(\code{character()})\cr Supported parameter classes for learner hyperparameters that the tuner can optimize, as given in the \link[paradox:ParamSet]{paradox::ParamSet} \verb{$class} field.} - -\item{\code{properties}}{(\code{character()})\cr -Set of properties of the tuner. -Must be a subset of \code{\link[mlr3:mlr_reflections]{mlr_reflections$tuner_properties}}.} - -\item{\code{packages}}{(\code{character()})\cr -Set of required packages. -Note that these packages will be loaded via \code{\link[=requireNamespace]{requireNamespace()}}, and are not attached.} - -\item{\code{label}}{(\code{character(1)})\cr -Label for this object. -Can be used in tables, plot and text output instead of the ID.} - -\item{\code{man}}{(\code{character(1)})\cr -String in the format \verb{[pkg]::[topic]} pointing to a manual page for this object. -The referenced help package can be opened via method \verb{$help()}.} } \if{html}{\out{
    }} } @@ -96,12 +84,21 @@ The referenced help package can be opened via method \verb{$help()}.} \subsection{Public methods}{ \itemize{ \item \href{#method-Tuner-new}{\code{Tuner$new()}} -\item \href{#method-Tuner-format}{\code{Tuner$format()}} \item \href{#method-Tuner-print}{\code{Tuner$print()}} \item \href{#method-Tuner-help}{\code{Tuner$help()}} \item \href{#method-Tuner-clone}{\code{Tuner$clone()}} } } +\if{html}{\out{ +
    Inherited methods + +
    +}} \if{html}{\out{
    }} \if{html}{\out{}} \if{latex}{\out{\hypertarget{method-Tuner-new}{}}} @@ -109,13 +106,13 @@ The referenced help package can be opened via method \verb{$help()}.} Creates a new instance of this \link[R6:R6Class]{R6} class. \subsection{Usage}{ \if{html}{\out{
    }}\preformatted{Tuner$new( - id = "tuner", + id, param_set, param_classes, properties, - packages = character(), - label = NA_character_, - man = NA_character_ + packages = character(0), + label, + man )}\if{html}{\out{
    }} } @@ -151,26 +148,6 @@ The referenced help package can be opened via method \verb{$help()}.} } } \if{html}{\out{
    }} -\if{html}{\out{}} -\if{latex}{\out{\hypertarget{method-Tuner-format}{}}} -\subsection{Method \code{format()}}{ -Helper for print outputs. -\subsection{Usage}{ -\if{html}{\out{
    }}\preformatted{Tuner$format(...)}\if{html}{\out{
    }} -} - -\subsection{Arguments}{ -\if{html}{\out{
    }} -\describe{ -\item{\code{...}}{(ignored).} -} -\if{html}{\out{
    }} -} -\subsection{Returns}{ -(\code{character()}). -} -} -\if{html}{\out{
    }} \if{html}{\out{}} \if{latex}{\out{\hypertarget{method-Tuner-print}{}}} \subsection{Method \code{print()}}{ diff --git a/man/TunerAsync.Rd b/man/TunerAsync.Rd index ba52f2ee4..03c9a4ad0 100644 --- a/man/TunerAsync.Rd +++ b/man/TunerAsync.Rd @@ -34,8 +34,8 @@ The \href{https://mlr-org.com/gallery-all-optimization.html}{gallery} features a The \href{https://cheatsheets.mlr-org.com/mlr3tuning.pdf}{cheatsheet} summarizes the most important functions of mlr3tuning. } -\section{Super class}{ -\code{\link[mlr3tuning:Tuner]{mlr3tuning::Tuner}} -> \code{TunerAsync} +\section{Super classes}{ +\code{\link[mlr3misc:Mlr3Component]{mlr3misc::Mlr3Component}} -> \code{\link[mlr3tuning:Tuner]{mlr3tuning::Tuner}} -> \code{TunerAsync} } \section{Methods}{ \subsection{Public methods}{ @@ -45,9 +45,12 @@ The \href{https://cheatsheets.mlr-org.com/mlr3tuning.pdf}{cheatsheet} summarizes } } \if{html}{\out{ -
    Inherited methods +
    Inherited methods
      -
    • mlr3tuning::Tuner$format()
    • +
    • mlr3misc::Mlr3Component$configure()
    • +
    • mlr3misc::Mlr3Component$format()
    • +
    • mlr3misc::Mlr3Component$override_info()
    • +
    • mlr3misc::Mlr3Component$require_namespaces()
    • mlr3tuning::Tuner$help()
    • mlr3tuning::Tuner$initialize()
    • mlr3tuning::Tuner$print()
    • diff --git a/man/TunerAsyncFromOptimizerAsync.Rd b/man/TunerAsyncFromOptimizerAsync.Rd index 4e298b967..321d55ee6 100644 --- a/man/TunerAsyncFromOptimizerAsync.Rd +++ b/man/TunerAsyncFromOptimizerAsync.Rd @@ -8,7 +8,7 @@ Internally used to transform \link[bbotk:Optimizer]{bbotk::Optimizer} to \link{T } \keyword{internal} \section{Super classes}{ -\code{\link[mlr3tuning:Tuner]{mlr3tuning::Tuner}} -> \code{\link[mlr3tuning:TunerAsync]{mlr3tuning::TunerAsync}} -> \code{TunerAsyncFromOptimizerAsync} +\code{\link[mlr3misc:Mlr3Component]{mlr3misc::Mlr3Component}} -> \code{\link[mlr3tuning:Tuner]{mlr3tuning::Tuner}} -> \code{\link[mlr3tuning:TunerAsync]{mlr3tuning::TunerAsync}} -> \code{TunerAsyncFromOptimizerAsync} } \section{Active bindings}{ \if{html}{\out{
      }} @@ -27,9 +27,12 @@ Set of control parameters.} } } \if{html}{\out{ -
      Inherited methods +
      Inherited methods diff --git a/man/TunerBatch.Rd b/man/TunerBatch.Rd index a9965f616..ffb9c8493 100644 --- a/man/TunerBatch.Rd +++ b/man/TunerBatch.Rd @@ -60,8 +60,8 @@ The \href{https://mlr-org.com/gallery-all-optimization.html}{gallery} features a The \href{https://cheatsheets.mlr-org.com/mlr3tuning.pdf}{cheatsheet} summarizes the most important functions of mlr3tuning. } -\section{Super class}{ -\code{\link[mlr3tuning:Tuner]{mlr3tuning::Tuner}} -> \code{TunerBatch} +\section{Super classes}{ +\code{\link[mlr3misc:Mlr3Component]{mlr3misc::Mlr3Component}} -> \code{\link[mlr3tuning:Tuner]{mlr3tuning::Tuner}} -> \code{TunerBatch} } \section{Methods}{ \subsection{Public methods}{ @@ -72,9 +72,12 @@ The \href{https://cheatsheets.mlr-org.com/mlr3tuning.pdf}{cheatsheet} summarizes } } \if{html}{\out{ -
      Inherited methods +
      Inherited methods diff --git a/man/TunerBatchFromOptimizerBatch.Rd b/man/TunerBatchFromOptimizerBatch.Rd index f8cfb4201..5defd0426 100644 --- a/man/TunerBatchFromOptimizerBatch.Rd +++ b/man/TunerBatchFromOptimizerBatch.Rd @@ -8,7 +8,7 @@ Internally used to transform \link[bbotk:Optimizer]{bbotk::Optimizer} to \link{T } \keyword{internal} \section{Super classes}{ -\code{\link[mlr3tuning:Tuner]{mlr3tuning::Tuner}} -> \code{\link[mlr3tuning:TunerBatch]{mlr3tuning::TunerBatch}} -> \code{TunerBatchFromOptimizerBatch} +\code{\link[mlr3misc:Mlr3Component]{mlr3misc::Mlr3Component}} -> \code{\link[mlr3tuning:Tuner]{mlr3tuning::Tuner}} -> \code{\link[mlr3tuning:TunerBatch]{mlr3tuning::TunerBatch}} -> \code{TunerBatchFromOptimizerBatch} } \section{Active bindings}{ \if{html}{\out{
      }} @@ -27,9 +27,12 @@ Set of control parameters.} } } \if{html}{\out{ -
      Inherited methods +
      Inherited methods diff --git a/man/mlr_tuners_async_design_points.Rd b/man/mlr_tuners_async_design_points.Rd index 83bfc08a4..3a92457fe 100644 --- a/man/mlr_tuners_async_design_points.Rd +++ b/man/mlr_tuners_async_design_points.Rd @@ -32,7 +32,7 @@ Other TunerAsync: } \concept{TunerAsync} \section{Super classes}{ -\code{\link[mlr3tuning:Tuner]{mlr3tuning::Tuner}} -> \code{\link[mlr3tuning:TunerAsync]{mlr3tuning::TunerAsync}} -> \code{\link[mlr3tuning:TunerAsyncFromOptimizerAsync]{mlr3tuning::TunerAsyncFromOptimizerAsync}} -> \code{TunerAsyncDesignPoints} +\code{\link[mlr3misc:Mlr3Component]{mlr3misc::Mlr3Component}} -> \code{\link[mlr3tuning:Tuner]{mlr3tuning::Tuner}} -> \code{\link[mlr3tuning:TunerAsync]{mlr3tuning::TunerAsync}} -> \code{\link[mlr3tuning:TunerAsyncFromOptimizerAsync]{mlr3tuning::TunerAsyncFromOptimizerAsync}} -> \code{TunerAsyncDesignPoints} } \section{Methods}{ \subsection{Public methods}{ @@ -42,9 +42,12 @@ Other TunerAsync: } } \if{html}{\out{ -
      Inherited methods +
      Inherited methods
        -
      • mlr3tuning::Tuner$format()
      • +
      • mlr3misc::Mlr3Component$configure()
      • +
      • mlr3misc::Mlr3Component$format()
      • +
      • mlr3misc::Mlr3Component$override_info()
      • +
      • mlr3misc::Mlr3Component$require_namespaces()
      • mlr3tuning::Tuner$help()
      • mlr3tuning::Tuner$print()
      • mlr3tuning::TunerAsyncFromOptimizerAsync$optimize()
      • diff --git a/man/mlr_tuners_async_grid_search.Rd b/man/mlr_tuners_async_grid_search.Rd index 638867d55..26ba71459 100644 --- a/man/mlr_tuners_async_grid_search.Rd +++ b/man/mlr_tuners_async_grid_search.Rd @@ -32,7 +32,7 @@ Other TunerAsync: } \concept{TunerAsync} \section{Super classes}{ -\code{\link[mlr3tuning:Tuner]{mlr3tuning::Tuner}} -> \code{\link[mlr3tuning:TunerAsync]{mlr3tuning::TunerAsync}} -> \code{\link[mlr3tuning:TunerAsyncFromOptimizerAsync]{mlr3tuning::TunerAsyncFromOptimizerAsync}} -> \code{TunerAsyncGridSearch} +\code{\link[mlr3misc:Mlr3Component]{mlr3misc::Mlr3Component}} -> \code{\link[mlr3tuning:Tuner]{mlr3tuning::Tuner}} -> \code{\link[mlr3tuning:TunerAsync]{mlr3tuning::TunerAsync}} -> \code{\link[mlr3tuning:TunerAsyncFromOptimizerAsync]{mlr3tuning::TunerAsyncFromOptimizerAsync}} -> \code{TunerAsyncGridSearch} } \section{Methods}{ \subsection{Public methods}{ @@ -42,9 +42,12 @@ Other TunerAsync: } } \if{html}{\out{ -
        Inherited methods +
        Inherited methods
          -
        • mlr3tuning::Tuner$format()
        • +
        • mlr3misc::Mlr3Component$configure()
        • +
        • mlr3misc::Mlr3Component$format()
        • +
        • mlr3misc::Mlr3Component$override_info()
        • +
        • mlr3misc::Mlr3Component$require_namespaces()
        • mlr3tuning::Tuner$help()
        • mlr3tuning::Tuner$print()
        • mlr3tuning::TunerAsyncFromOptimizerAsync$optimize()
        • diff --git a/man/mlr_tuners_async_random_search.Rd b/man/mlr_tuners_async_random_search.Rd index aedf24342..97ad180d2 100644 --- a/man/mlr_tuners_async_random_search.Rd +++ b/man/mlr_tuners_async_random_search.Rd @@ -31,7 +31,7 @@ Other TunerAsync: } \concept{TunerAsync} \section{Super classes}{ -\code{\link[mlr3tuning:Tuner]{mlr3tuning::Tuner}} -> \code{\link[mlr3tuning:TunerAsync]{mlr3tuning::TunerAsync}} -> \code{\link[mlr3tuning:TunerAsyncFromOptimizerAsync]{mlr3tuning::TunerAsyncFromOptimizerAsync}} -> \code{TunerAsyncRandomSearch} +\code{\link[mlr3misc:Mlr3Component]{mlr3misc::Mlr3Component}} -> \code{\link[mlr3tuning:Tuner]{mlr3tuning::Tuner}} -> \code{\link[mlr3tuning:TunerAsync]{mlr3tuning::TunerAsync}} -> \code{\link[mlr3tuning:TunerAsyncFromOptimizerAsync]{mlr3tuning::TunerAsyncFromOptimizerAsync}} -> \code{TunerAsyncRandomSearch} } \section{Methods}{ \subsection{Public methods}{ @@ -41,9 +41,12 @@ Other TunerAsync: } } \if{html}{\out{ -
          Inherited methods +
          Inherited methods
            -
          • mlr3tuning::Tuner$format()
          • +
          • mlr3misc::Mlr3Component$configure()
          • +
          • mlr3misc::Mlr3Component$format()
          • +
          • mlr3misc::Mlr3Component$override_info()
          • +
          • mlr3misc::Mlr3Component$require_namespaces()
          • mlr3tuning::Tuner$help()
          • mlr3tuning::Tuner$print()
          • mlr3tuning::TunerAsyncFromOptimizerAsync$optimize()
          • diff --git a/man/mlr_tuners_cmaes.Rd b/man/mlr_tuners_cmaes.Rd index 1e50c815f..c4877fcd9 100644 --- a/man/mlr_tuners_cmaes.Rd +++ b/man/mlr_tuners_cmaes.Rd @@ -122,7 +122,7 @@ Other Tuner: } \concept{Tuner} \section{Super classes}{ -\code{\link[mlr3tuning:Tuner]{mlr3tuning::Tuner}} -> \code{\link[mlr3tuning:TunerBatch]{mlr3tuning::TunerBatch}} -> \code{\link[mlr3tuning:TunerBatchFromOptimizerBatch]{mlr3tuning::TunerBatchFromOptimizerBatch}} -> \code{TunerBatchCmaes} +\code{\link[mlr3misc:Mlr3Component]{mlr3misc::Mlr3Component}} -> \code{\link[mlr3tuning:Tuner]{mlr3tuning::Tuner}} -> \code{\link[mlr3tuning:TunerBatch]{mlr3tuning::TunerBatch}} -> \code{\link[mlr3tuning:TunerBatchFromOptimizerBatch]{mlr3tuning::TunerBatchFromOptimizerBatch}} -> \code{TunerBatchCmaes} } \section{Methods}{ \subsection{Public methods}{ @@ -132,9 +132,12 @@ Other Tuner: } } \if{html}{\out{ -
            Inherited methods +
            Inherited methods
              -
            • mlr3tuning::Tuner$format()
            • +
            • mlr3misc::Mlr3Component$configure()
            • +
            • mlr3misc::Mlr3Component$format()
            • +
            • mlr3misc::Mlr3Component$override_info()
            • +
            • mlr3misc::Mlr3Component$require_namespaces()
            • mlr3tuning::Tuner$help()
            • mlr3tuning::Tuner$print()
            • mlr3tuning::TunerBatchFromOptimizerBatch$optimize()
            • diff --git a/man/mlr_tuners_design_points.Rd b/man/mlr_tuners_design_points.Rd index 0bca73c7d..38bf8a461 100644 --- a/man/mlr_tuners_design_points.Rd +++ b/man/mlr_tuners_design_points.Rd @@ -144,7 +144,7 @@ Other Tuner: } \concept{Tuner} \section{Super classes}{ -\code{\link[mlr3tuning:Tuner]{mlr3tuning::Tuner}} -> \code{\link[mlr3tuning:TunerBatch]{mlr3tuning::TunerBatch}} -> \code{\link[mlr3tuning:TunerBatchFromOptimizerBatch]{mlr3tuning::TunerBatchFromOptimizerBatch}} -> \code{TunerBatchDesignPoints} +\code{\link[mlr3misc:Mlr3Component]{mlr3misc::Mlr3Component}} -> \code{\link[mlr3tuning:Tuner]{mlr3tuning::Tuner}} -> \code{\link[mlr3tuning:TunerBatch]{mlr3tuning::TunerBatch}} -> \code{\link[mlr3tuning:TunerBatchFromOptimizerBatch]{mlr3tuning::TunerBatchFromOptimizerBatch}} -> \code{TunerBatchDesignPoints} } \section{Methods}{ \subsection{Public methods}{ @@ -154,9 +154,12 @@ Other Tuner: } } \if{html}{\out{ -
              Inherited methods +
              Inherited methods
                -
              • mlr3tuning::Tuner$format()
              • +
              • mlr3misc::Mlr3Component$configure()
              • +
              • mlr3misc::Mlr3Component$format()
              • +
              • mlr3misc::Mlr3Component$override_info()
              • +
              • mlr3misc::Mlr3Component$require_namespaces()
              • mlr3tuning::Tuner$help()
              • mlr3tuning::Tuner$print()
              • mlr3tuning::TunerBatchFromOptimizerBatch$optimize()
              • diff --git a/man/mlr_tuners_gensa.Rd b/man/mlr_tuners_gensa.Rd index d77ac8656..8a5fd088a 100644 --- a/man/mlr_tuners_gensa.Rd +++ b/man/mlr_tuners_gensa.Rd @@ -155,7 +155,7 @@ Other Tuner: } \concept{Tuner} \section{Super classes}{ -\code{\link[mlr3tuning:Tuner]{mlr3tuning::Tuner}} -> \code{\link[mlr3tuning:TunerBatch]{mlr3tuning::TunerBatch}} -> \code{\link[mlr3tuning:TunerBatchFromOptimizerBatch]{mlr3tuning::TunerBatchFromOptimizerBatch}} -> \code{TunerBatchGenSA} +\code{\link[mlr3misc:Mlr3Component]{mlr3misc::Mlr3Component}} -> \code{\link[mlr3tuning:Tuner]{mlr3tuning::Tuner}} -> \code{\link[mlr3tuning:TunerBatch]{mlr3tuning::TunerBatch}} -> \code{\link[mlr3tuning:TunerBatchFromOptimizerBatch]{mlr3tuning::TunerBatchFromOptimizerBatch}} -> \code{TunerBatchGenSA} } \section{Methods}{ \subsection{Public methods}{ @@ -165,9 +165,12 @@ Other Tuner: } } \if{html}{\out{ -
                Inherited methods +
                Inherited methods
                  -
                • mlr3tuning::Tuner$format()
                • +
                • mlr3misc::Mlr3Component$configure()
                • +
                • mlr3misc::Mlr3Component$format()
                • +
                • mlr3misc::Mlr3Component$override_info()
                • +
                • mlr3misc::Mlr3Component$require_namespaces()
                • mlr3tuning::Tuner$help()
                • mlr3tuning::Tuner$print()
                • mlr3tuning::TunerBatchFromOptimizerBatch$optimize()
                • diff --git a/man/mlr_tuners_grid_search.Rd b/man/mlr_tuners_grid_search.Rd index 1a012e4c7..bc398e9ea 100644 --- a/man/mlr_tuners_grid_search.Rd +++ b/man/mlr_tuners_grid_search.Rd @@ -133,7 +133,7 @@ Other Tuner: } \concept{Tuner} \section{Super classes}{ -\code{\link[mlr3tuning:Tuner]{mlr3tuning::Tuner}} -> \code{\link[mlr3tuning:TunerBatch]{mlr3tuning::TunerBatch}} -> \code{\link[mlr3tuning:TunerBatchFromOptimizerBatch]{mlr3tuning::TunerBatchFromOptimizerBatch}} -> \code{TunerBatchGridSearch} +\code{\link[mlr3misc:Mlr3Component]{mlr3misc::Mlr3Component}} -> \code{\link[mlr3tuning:Tuner]{mlr3tuning::Tuner}} -> \code{\link[mlr3tuning:TunerBatch]{mlr3tuning::TunerBatch}} -> \code{\link[mlr3tuning:TunerBatchFromOptimizerBatch]{mlr3tuning::TunerBatchFromOptimizerBatch}} -> \code{TunerBatchGridSearch} } \section{Methods}{ \subsection{Public methods}{ @@ -143,9 +143,12 @@ Other Tuner: } } \if{html}{\out{ -
                  Inherited methods +
                  Inherited methods
                    -
                  • mlr3tuning::Tuner$format()
                  • +
                  • mlr3misc::Mlr3Component$configure()
                  • +
                  • mlr3misc::Mlr3Component$format()
                  • +
                  • mlr3misc::Mlr3Component$override_info()
                  • +
                  • mlr3misc::Mlr3Component$require_namespaces()
                  • mlr3tuning::Tuner$help()
                  • mlr3tuning::Tuner$print()
                  • mlr3tuning::TunerBatchFromOptimizerBatch$optimize()
                  • diff --git a/man/mlr_tuners_internal.Rd b/man/mlr_tuners_internal.Rd index 08e2e4583..ce8e3cceb 100644 --- a/man/mlr_tuners_internal.Rd +++ b/man/mlr_tuners_internal.Rd @@ -103,7 +103,7 @@ Other Tuner: } \concept{Tuner} \section{Super classes}{ -\code{\link[mlr3tuning:Tuner]{mlr3tuning::Tuner}} -> \code{\link[mlr3tuning:TunerBatch]{mlr3tuning::TunerBatch}} -> \code{TunerBatchInternal} +\code{\link[mlr3misc:Mlr3Component]{mlr3misc::Mlr3Component}} -> \code{\link[mlr3tuning:Tuner]{mlr3tuning::Tuner}} -> \code{\link[mlr3tuning:TunerBatch]{mlr3tuning::TunerBatch}} -> \code{TunerBatchInternal} } \section{Methods}{ \subsection{Public methods}{ @@ -113,9 +113,12 @@ Other Tuner: } } \if{html}{\out{ -
                    Inherited methods +
                    Inherited methods
                      -
                    • mlr3tuning::Tuner$format()
                    • +
                    • mlr3misc::Mlr3Component$configure()
                    • +
                    • mlr3misc::Mlr3Component$format()
                    • +
                    • mlr3misc::Mlr3Component$override_info()
                    • +
                    • mlr3misc::Mlr3Component$require_namespaces()
                    • mlr3tuning::Tuner$help()
                    • mlr3tuning::Tuner$print()
                    • mlr3tuning::TunerBatch$optimize()
                    • diff --git a/man/mlr_tuners_irace.Rd b/man/mlr_tuners_irace.Rd index 65bcf2f7c..4df81c746 100644 --- a/man/mlr_tuners_irace.Rd +++ b/man/mlr_tuners_irace.Rd @@ -146,7 +146,7 @@ Other Tuner: } \concept{Tuner} \section{Super classes}{ -\code{\link[mlr3tuning:Tuner]{mlr3tuning::Tuner}} -> \code{\link[mlr3tuning:TunerBatch]{mlr3tuning::TunerBatch}} -> \code{\link[mlr3tuning:TunerBatchFromOptimizerBatch]{mlr3tuning::TunerBatchFromOptimizerBatch}} -> \code{TunerBatchIrace} +\code{\link[mlr3misc:Mlr3Component]{mlr3misc::Mlr3Component}} -> \code{\link[mlr3tuning:Tuner]{mlr3tuning::Tuner}} -> \code{\link[mlr3tuning:TunerBatch]{mlr3tuning::TunerBatch}} -> \code{\link[mlr3tuning:TunerBatchFromOptimizerBatch]{mlr3tuning::TunerBatchFromOptimizerBatch}} -> \code{TunerBatchIrace} } \section{Methods}{ \subsection{Public methods}{ @@ -157,9 +157,12 @@ Other Tuner: } } \if{html}{\out{ -
                      Inherited methods +
                      Inherited methods diff --git a/man/mlr_tuners_nloptr.Rd b/man/mlr_tuners_nloptr.Rd index 686d2150b..a0d5cfeac 100644 --- a/man/mlr_tuners_nloptr.Rd +++ b/man/mlr_tuners_nloptr.Rd @@ -152,7 +152,7 @@ Other Tuner: } \concept{Tuner} \section{Super classes}{ -\code{\link[mlr3tuning:Tuner]{mlr3tuning::Tuner}} -> \code{\link[mlr3tuning:TunerBatch]{mlr3tuning::TunerBatch}} -> \code{\link[mlr3tuning:TunerBatchFromOptimizerBatch]{mlr3tuning::TunerBatchFromOptimizerBatch}} -> \code{TunerBatchNLoptr} +\code{\link[mlr3misc:Mlr3Component]{mlr3misc::Mlr3Component}} -> \code{\link[mlr3tuning:Tuner]{mlr3tuning::Tuner}} -> \code{\link[mlr3tuning:TunerBatch]{mlr3tuning::TunerBatch}} -> \code{\link[mlr3tuning:TunerBatchFromOptimizerBatch]{mlr3tuning::TunerBatchFromOptimizerBatch}} -> \code{TunerBatchNLoptr} } \section{Methods}{ \subsection{Public methods}{ @@ -162,9 +162,12 @@ Other Tuner: } } \if{html}{\out{ -
                      Inherited methods +
                      Inherited methods
                        -
                      • mlr3tuning::Tuner$format()
                      • +
                      • mlr3misc::Mlr3Component$configure()
                      • +
                      • mlr3misc::Mlr3Component$format()
                      • +
                      • mlr3misc::Mlr3Component$override_info()
                      • +
                      • mlr3misc::Mlr3Component$require_namespaces()
                      • mlr3tuning::Tuner$help()
                      • mlr3tuning::Tuner$print()
                      • mlr3tuning::TunerBatchFromOptimizerBatch$optimize()
                      • diff --git a/man/mlr_tuners_random_search.Rd b/man/mlr_tuners_random_search.Rd index a4e589148..4b48a1177 100644 --- a/man/mlr_tuners_random_search.Rd +++ b/man/mlr_tuners_random_search.Rd @@ -139,7 +139,7 @@ Other Tuner: } \concept{Tuner} \section{Super classes}{ -\code{\link[mlr3tuning:Tuner]{mlr3tuning::Tuner}} -> \code{\link[mlr3tuning:TunerBatch]{mlr3tuning::TunerBatch}} -> \code{\link[mlr3tuning:TunerBatchFromOptimizerBatch]{mlr3tuning::TunerBatchFromOptimizerBatch}} -> \code{TunerBatchRandomSearch} +\code{\link[mlr3misc:Mlr3Component]{mlr3misc::Mlr3Component}} -> \code{\link[mlr3tuning:Tuner]{mlr3tuning::Tuner}} -> \code{\link[mlr3tuning:TunerBatch]{mlr3tuning::TunerBatch}} -> \code{\link[mlr3tuning:TunerBatchFromOptimizerBatch]{mlr3tuning::TunerBatchFromOptimizerBatch}} -> \code{TunerBatchRandomSearch} } \section{Methods}{ \subsection{Public methods}{ @@ -149,9 +149,12 @@ Other Tuner: } } \if{html}{\out{ -
                        Inherited methods +
                        Inherited methods
                          -
                        • mlr3tuning::Tuner$format()
                        • +
                        • mlr3misc::Mlr3Component$configure()
                        • +
                        • mlr3misc::Mlr3Component$format()
                        • +
                        • mlr3misc::Mlr3Component$override_info()
                        • +
                        • mlr3misc::Mlr3Component$require_namespaces()
                        • mlr3tuning::Tuner$help()
                        • mlr3tuning::Tuner$print()
                        • mlr3tuning::TunerBatchFromOptimizerBatch$optimize()
                        • From e9fa94eeac9ab776b3ffac43817a8800382ae381 Mon Sep 17 00:00:00 2001 From: mb706 Date: Wed, 13 Aug 2025 22:17:47 +0200 Subject: [PATCH 04/12] remotes --- DESCRIPTION | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/DESCRIPTION b/DESCRIPTION index 4f1be86d3..3c891be0a 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -54,6 +54,10 @@ Suggests: xgboost VignetteBuilder: knitr +Remotes: + mlr-org/mlr3misc@common_baseclass, + mlr-org/mlr3@common_baseclass + mlr-org/mlr3pipelines@common_baseclass Config/testthat/edition: 3 Config/testthat/parallel: false Encoding: UTF-8 From cf210f7081adc7117725e5e71d34d0f22180da79 Mon Sep 17 00:00:00 2001 From: mb706 Date: Wed, 13 Aug 2025 22:37:22 +0200 Subject: [PATCH 05/12] DESCRIPTION fix --- DESCRIPTION | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/DESCRIPTION b/DESCRIPTION index 3c891be0a..766e2f925 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -56,7 +56,7 @@ VignetteBuilder: knitr Remotes: mlr-org/mlr3misc@common_baseclass, - mlr-org/mlr3@common_baseclass + mlr-org/mlr3@common_baseclass, mlr-org/mlr3pipelines@common_baseclass Config/testthat/edition: 3 Config/testthat/parallel: false From 20fbadabf6ebeee14703fd48e876f46ffc80a0e5 Mon Sep 17 00:00:00 2001 From: mb706 Date: Fri, 15 Aug 2025 00:28:38 +0200 Subject: [PATCH 06/12] use bbotk dev branch --- DESCRIPTION | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/DESCRIPTION b/DESCRIPTION index 766e2f925..03c6312ee 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -57,7 +57,8 @@ VignetteBuilder: Remotes: mlr-org/mlr3misc@common_baseclass, mlr-org/mlr3@common_baseclass, - mlr-org/mlr3pipelines@common_baseclass + mlr-org/mlr3pipelines@common_baseclass, + mlr-org/bbotk@common_baseclass Config/testthat/edition: 3 Config/testthat/parallel: false Encoding: UTF-8 From 7cd0538d59825650ec0ae6b8799112fdfcdadd13 Mon Sep 17 00:00:00 2001 From: mb706 Date: Fri, 15 Aug 2025 00:30:40 +0200 Subject: [PATCH 07/12] error on deprecation usage --- tests/testthat/setup.R | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/tests/testthat/setup.R b/tests/testthat/setup.R index 2e35ee03e..b8b23235a 100644 --- a/tests/testthat/setup.R +++ b/tests/testthat/setup.R @@ -1,11 +1,12 @@ old_opts = options( warnPartialMatchArgs = TRUE, warnPartialMatchAttr = TRUE, - warnPartialMatchDollar = TRUE + warnPartialMatchDollar = TRUE, + mlr3.on_deprecated = "error" ) # https://github.com/HenrikBengtsson/Wishlist-for-R/issues/88 -old_opts = lapply(old_opts, function(x) if (is.null(x)) FALSE else x) +old_opts[1:3] = lapply(old_opts[1:3], function(x) if (is.null(x)) FALSE else x) lg_mlr3 = lgr::get_logger("mlr3") lg_rush = lgr::get_logger("rush") From 1c35fc722fc44184bf03026fb11c3ded383f06f9 Mon Sep 17 00:00:00 2001 From: mb706 Date: Fri, 15 Aug 2025 11:54:58 +0200 Subject: [PATCH 08/12] use adjusted mlr3learners --- DESCRIPTION | 1 + 1 file changed, 1 insertion(+) diff --git a/DESCRIPTION b/DESCRIPTION index 03c6312ee..935e953ca 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -58,6 +58,7 @@ Remotes: mlr-org/mlr3misc@common_baseclass, mlr-org/mlr3@common_baseclass, mlr-org/mlr3pipelines@common_baseclass, + mlr-org/mlr3learners@common_baseclass, mlr-org/bbotk@common_baseclass Config/testthat/edition: 3 Config/testthat/parallel: false From f74b41153e4e9de385df36e2ca2df0bc84f5053f Mon Sep 17 00:00:00 2001 From: mb706 Date: Fri, 15 Aug 2025 12:43:18 +0200 Subject: [PATCH 09/12] man and label deprecation --- R/TunerAsyncFromOptimizerAsync.R | 11 ++++++----- R/TunerBatchFromBatchOptimizer.R | 7 +++++-- 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/R/TunerAsyncFromOptimizerAsync.R b/R/TunerAsyncFromOptimizerAsync.R index 28f8bc99f..c4dafba3a 100644 --- a/R/TunerAsyncFromOptimizerAsync.R +++ b/R/TunerAsyncFromOptimizerAsync.R @@ -16,19 +16,20 @@ TunerAsyncFromOptimizerAsync = R6Class("TunerAsyncFromOptimizerAsync", #' #' @param optimizer [bbotk::Optimizer]\cr #' Optimizer that is called. - initialize = function(optimizer, man = NA_character_) { + initialize = function(optimizer, man) { private$.optimizer = assert_optimizer_async(optimizer) packages = union("mlr3tuning", optimizer$packages) - assert_string(man, na.ok = TRUE) + + if (!missing(man)) { + deprecated_component("man is deprecated for Tuner construction and will be removed in the future.") + } super$initialize( id = if ("id" %in% names(optimizer)) optimizer$id else "tuner", param_set = optimizer$param_set, param_classes = optimizer$param_classes, properties = optimizer$properties, - packages = packages, - label = optimizer$label, - man = man + packages = packages ) }, diff --git a/R/TunerBatchFromBatchOptimizer.R b/R/TunerBatchFromBatchOptimizer.R index dd5125589..a5cc286ec 100644 --- a/R/TunerBatchFromBatchOptimizer.R +++ b/R/TunerBatchFromBatchOptimizer.R @@ -16,10 +16,13 @@ TunerBatchFromOptimizerBatch = R6Class("TunerBatchFromOptimizerBatch", #' #' @param optimizer [bbotk::Optimizer]\cr #' Optimizer that is called. - initialize = function(optimizer, man = NA_character_) { + initialize = function(optimizer, man) { private$.optimizer = assert_optimizer(optimizer) packages = union("mlr3tuning", optimizer$packages) - assert_string(man, na.ok = TRUE) + + if (!missing(man)) { + deprecated_component("man is deprecated for Tuner construction and will be removed in the future.") + } super$initialize( id = if ("id" %in% names(optimizer)) optimizer$id else "tuner", From ab4b78381da8f690fcd7cd61f9fea8a89c380ad9 Mon Sep 17 00:00:00 2001 From: mb706 Date: Fri, 15 Aug 2025 13:17:59 +0200 Subject: [PATCH 10/12] progress --- R/TunerBatchCmaes.R | 3 +-- R/TunerBatchInternal.R | 8 ++------ tests/testthat/test_Tuner.R | 6 +++--- 3 files changed, 6 insertions(+), 11 deletions(-) diff --git a/R/TunerBatchCmaes.R b/R/TunerBatchCmaes.R index 99f69fad6..10df411d1 100644 --- a/R/TunerBatchCmaes.R +++ b/R/TunerBatchCmaes.R @@ -66,8 +66,7 @@ TunerBatchCmaes = R6Class("TunerBatchCmaes", #' Creates a new instance of this [R6][R6::R6Class] class. initialize = function() { super$initialize( - optimizer = OptimizerBatchCmaes$new(), - man = "mlr3tuning::mlr_tuners_cmaes" + optimizer = OptimizerBatchCmaes$new() ) } ) diff --git a/R/TunerBatchInternal.R b/R/TunerBatchInternal.R index 739902115..f02734877 100644 --- a/R/TunerBatchInternal.R +++ b/R/TunerBatchInternal.R @@ -56,9 +56,7 @@ TunerBatchInternal = R6Class("TunerBatchInternal", id = "internal", param_set = ps(), param_classes = c("ParamLgl", "ParamInt", "ParamDbl", "ParamFct"), - properties = c("dependencies", "single-crit"), - label = "Internal Optimizer", - man = "mlr3tuning::mlr_tuners_internal" + properties = c("dependencies", "single-crit") ) } ), @@ -80,9 +78,7 @@ OptimizerBatchInternal = R6Class("OptimizerBatchInternal", id = "internal", param_set = ps(), param_classes = c("ParamLgl", "ParamInt", "ParamDbl", "ParamFct"), - properties = c("dependencies", "single-crit"), - label = "Internal Optimizer", - man = "bbotk::mlr_optimizers_internal" + properties = c("dependencies", "single-crit") ) } ), diff --git a/tests/testthat/test_Tuner.R b/tests/testthat/test_Tuner.R index b5eb9ce74..6609ee94c 100644 --- a/tests/testthat/test_Tuner.R +++ b/tests/testthat/test_Tuner.R @@ -149,7 +149,7 @@ test_that("Tuner active bindings work", { expect_error({ tuner$param_set = ps(p2 = p_lgl()) }, - regexp = "$param_set is read-only", + regexp = "param_set is read-only", fixed = TRUE) expect_error({ @@ -161,13 +161,13 @@ test_that("Tuner active bindings work", { expect_error({ tuner$properties = "foo" }, - regexp = "$properties is read-only", + regexp = "writing to properties is deprecated", fixed = TRUE) expect_error({ tuner$packages = "foo" }, - regexp = "$packages is read-only", + regexp = "packages is read-only", fixed = TRUE) }) From 18b806fb8049774e759c1a8dfd2257af29608ebd Mon Sep 17 00:00:00 2001 From: mb706 Date: Fri, 15 Aug 2025 13:45:57 +0200 Subject: [PATCH 11/12] snapshot --- tests/testthat/_snaps/Tuner.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/testthat/_snaps/Tuner.md b/tests/testthat/_snaps/Tuner.md index fb1ede231..4d7516dd8 100644 --- a/tests/testthat/_snaps/Tuner.md +++ b/tests/testthat/_snaps/Tuner.md @@ -4,9 +4,9 @@ tuner Output - -- --------------------------------------------------------------------- + -- : Tuner -------------------------------------------------------------- * Parameters: p1=TRUE * Parameter classes: * Properties: single-crit - * Packages: mlr3tuning and GenSA + * Packages: GenSA and mlr3tuning From e2c57638b5cab9a873456a2cb839be8de3007e70 Mon Sep 17 00:00:00 2001 From: mb706 Date: Fri, 15 Aug 2025 15:38:16 +0200 Subject: [PATCH 12/12] deprecation message rename --- R/Tuner.R | 2 +- R/TunerAsyncFromOptimizerAsync.R | 2 +- R/TunerBatchFromBatchOptimizer.R | 2 +- tests/testthat/setup.R | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/R/Tuner.R b/R/Tuner.R index 165f10b2f..0e54f747f 100644 --- a/R/Tuner.R +++ b/R/Tuner.R @@ -43,7 +43,7 @@ Tuner = R6Class("Tuner", man ) { if (!missing(label) || !missing(man)) { - deprecated_component("label and man are deprecated for Tuner construction and will be removed in the future.") + mlr3component_deprecation_msg("label and man are deprecated for Tuner construction and will be removed in the future.") } super$initialize(dict_entry = id, dict_shortaccess = "tnr", diff --git a/R/TunerAsyncFromOptimizerAsync.R b/R/TunerAsyncFromOptimizerAsync.R index c4dafba3a..7279aa4b4 100644 --- a/R/TunerAsyncFromOptimizerAsync.R +++ b/R/TunerAsyncFromOptimizerAsync.R @@ -21,7 +21,7 @@ TunerAsyncFromOptimizerAsync = R6Class("TunerAsyncFromOptimizerAsync", packages = union("mlr3tuning", optimizer$packages) if (!missing(man)) { - deprecated_component("man is deprecated for Tuner construction and will be removed in the future.") + mlr3component_deprecation_msg("man is deprecated for Tuner construction and will be removed in the future.") } super$initialize( diff --git a/R/TunerBatchFromBatchOptimizer.R b/R/TunerBatchFromBatchOptimizer.R index a5cc286ec..cfc1ea6b0 100644 --- a/R/TunerBatchFromBatchOptimizer.R +++ b/R/TunerBatchFromBatchOptimizer.R @@ -21,7 +21,7 @@ TunerBatchFromOptimizerBatch = R6Class("TunerBatchFromOptimizerBatch", packages = union("mlr3tuning", optimizer$packages) if (!missing(man)) { - deprecated_component("man is deprecated for Tuner construction and will be removed in the future.") + mlr3component_deprecation_msg("man is deprecated for Tuner construction and will be removed in the future.") } super$initialize( diff --git a/tests/testthat/setup.R b/tests/testthat/setup.R index b8b23235a..8b93bd2b3 100644 --- a/tests/testthat/setup.R +++ b/tests/testthat/setup.R @@ -2,7 +2,7 @@ old_opts = options( warnPartialMatchArgs = TRUE, warnPartialMatchAttr = TRUE, warnPartialMatchDollar = TRUE, - mlr3.on_deprecated = "error" + mlr3.on_deprecated_mlr3component = "error" ) # https://github.com/HenrikBengtsson/Wishlist-for-R/issues/88