code: def migrate_all(destination=None, error_level=0, verbose=False):
      """Migrates the database and all datasets to the specified destination
      revision.
  
      If ``fiftyone.config.database_admin`` is ``False`` and no ``destination``
      is provided, the database and each dataset will only be migrated if their
      current versions are not compatible with the client's version.
  
      Args:
          destination (None): the destination revision. By default, the
              ``fiftyone`` client version is used
          error_level (0): the error level to use if an individual dataset cannot
              be migrated. Valid values are:
  
              -   0: raise error if a dataset cannot be migrated
              -   1: log warning if a dataset cannot be migrated
              -   2: ignore datasets that cannot be migrated
          verbose (False): whether to log incremental migrations that are run
      """
      migrate_database_if_necessary(
          destination=destination, verbose=verbose
      )
  
      for name in fo.list_datasets():
          migrate_dataset_if_necessary(
              name,
              destination=destination,
              error_level=error_level,
              verbose=verbose,
          )
  
imports: import bisect
  import logging
  import os
  from packaging.requirements import Requirement
  from packaging.version import Version
  import eta.core.utils
  import fiftyone
  import fiftyone.constants
  import fiftyone.core.odm
  import fiftyone.core.utils
label_desc: Use image node_id 5 for calling a global function with example usage: migrate_all(destination, error_level, verbose) without return types