class_docstr: Provides progress bar for `urlretrieve`.
  
  Taken from: https://gist.github.com/leimao/37ff6e990b3226c2c9670a2cd1e4a6f5
class_docstr_tok: ["Provides","progress","bar","for","`","urlretrieve","`",".","Taken","from",":","https",":","\/\/gist.github.com\/leimao\/37ff6e990b3226c2c9670a2cd1e4a6f5"]
docstr: b  : int, optional
      Number of blocks transferred so far [default: 1].
  bsize  : int, optional
      Size of each block (in tqdm units) [default: 1].
  tsize  : int, optional
      Total size (in tqdm units). If [default: None] remains unchanged.
docstr_tok: ["b",":","int",",","optional","Number","of","blocks","transferred","so","far","[","default",":","1","]",".","bsize",":","int",",","optional","Size","of","each","block","(","in","tqdm","units",")","[","default",":","1","]",".","tsize",":","int",",","optional","Total","size","(","in","tqdm","units",")",".","If","[","default",":","None","]","remains","unchanged","."]
code: def update_to(self, b=1, bsize=1, tsize=None):
      """
      b  : int, optional
          Number of blocks transferred so far [default: 1].
      bsize  : int, optional
          Size of each block (in tqdm units) [default: 1].
      tsize  : int, optional
          Total size (in tqdm units). If [default: None] remains unchanged.
      """
      if tsize is not None:
          self.total = tsize  # noqa W0201
      self.update(b * bsize - self.n)
  
imports: from __future__ import annotations
  import glob
  import hashlib
  import logging
  import os
  import shutil
  import urllib
  from enum import Enum
  from urllib.parse import urlparse
  import pandas
  from tqdm import tqdm
  from ludwig.api_annotations import DeveloperAPI, PublicAPI
  from ludwig.constants import SPLIT
  from ludwig.datasets.archives import extract_archive, is_archive, list_archive
  from ludwig.datasets.dataset_config import DatasetConfig, DatasetFallbackMirror
  from ludwig.datasets.kaggle import download_kaggle_dataset
  from ludwig.datasets.utils import model_configs_for_dataset
  from ludwig.utils.fs_utils import get_default_cache_location, get_fs_and_path
  from ludwig.utils.strings_utils import make_safe_filename
label_desc: Use image node_id 1 for calling the TqdmUpTo obj's underlying member method code with example usage: obj.update_to(b, bsize, tsize) without return types