class_docstr: A registry of transformations which update versioned config files.
class_docstr_tok: ["A","registry","of","transformations","which","update","versioned","config","files","."]
docstr: Applies the transformations from an older version to a newer version.
  
  Args:
      config: The config, created by ludwig at from_version.
      from_version: The version of ludwig which wrote the older config.
      to_version: The version of ludwig to update to (usually the current LUDWIG_VERSION).
  
  Returns The updated config after applying update transformations and updating the "ludwig_version" key.
docstr_tok: ["Applies","the","transformations","from","an","older","version","to","a","newer","version",".","Args",":","config",":","The","config",",","created","by","ludwig","at","from_version",".","from_version",":","The","version","of","ludwig","which","wrote","the","older","config",".","to_version",":","The","version","of","ludwig","to","update","to","(","usually","the","current","LUDWIG_VERSION",")",".","Returns","The","updated","config","after","applying","update","transformations","and","updating","the","``","ludwig_version","''","key","."]
code: def update_config(
      self, config: Dict, from_version: str, to_version: str
  ) -> Dict:
      """Applies the transformations from an older version to a newer version.
  
      Args:
          config: The config, created by ludwig at from_version.
          from_version: The version of ludwig which wrote the older config.
          to_version: The version of ludwig to update to (usually the current LUDWIG_VERSION).
  
      Returns The updated config after applying update transformations and updating the "ludwig_version" key.
      """
      transformations = self.get_transformations(
          from_version, to_version
      )
      updated_config = copy.deepcopy(config)
      for t in transformations:
          updated_config = t.transform_config(updated_config)
      updated_config["ludwig_version"] = to_version
      return updated_config
  
file_path: ludwig/ludwig/utils/version_transformation.py
imports: import copy
  import logging
  from collections import defaultdict
  from functools import total_ordering
  from typing import Callable, Dict, List, Optional
  from packaging import version
label_desc: Use image node_id 4 for calling the VersionTransformationRegistry obj's underlying member method code with example usage: obj.update_config(config, from_version, to_version) and returns: updated_config