          self._package = package
          self._command = command
          self._is_gui = is_gui
  
          self._progess_bar = ProgressBar()
          self._re_conda = re.compile(
              rb"(?P<lib>^\S+)\s+\|\s+(?P<tot>\d+\.?\d*\s\w+).*\|\s+(?P<prg>\d+%)")
          self._re_pip_pkg = re.compile(rb"^\s*Downloading\s(?P<lib>\w+-.+?)-")
 
</s> remove         self._last_line_cr = False
        self._seen_lines: Set[str] = set()
 </s> add         self._progess_bar = ProgressBar()
        self._re_conda = re.compile(
            rb"(?P<lib>^\S+)\s+\|\s+(?P<tot>\d+\.?\d*\s\w+).*\|\s+(?P<prg>\d+%)")
        self._re_pip_pkg = re.compile(rb"^\s*Downloading\s(?P<lib>\w+-.+?)-")
        self._re_pip = re.compile(rb"(?P<done>\d+\.?\d*)/(?P<tot>\d+\.?\d*\s\w+)")
        self._pip_pkg = ""
        self._seen_lines: set[str] = set() </s> remove                  command: List[str],
 </s> add                  command: list[str], </s> remove         self._options = dict(title=title,
                             subgroup=subgroup,
                             group=group,
                             default=default,
                             initial_value=initial_value,
                             choices=choices,
                             is_radio=is_radio,
                             is_multi_option=is_multi_option,
                             rounding=rounding,
                             min_max=min_max,
                             helptext=helptext)
 </s> add         self._options = {"title": title,
                         "subgroup": subgroup,
                         "group": group,
                         "default": default,
                         "initial_value": initial_value,
                         "choices": choices,
                         "is_radio": is_radio,
                         "is_multi_option": is_multi_option,
                         "rounding": rounding,
                         "min_max": min_max,
                         "helptext": helptext} </s> remove         if package.startswith("tensorflow-gpu"):
            # Here we will install the cuda/cudnn toolkits, currently only available from
            # conda-forge, but fail tensorflow itself so that it can be handled by pip.
            specs = Requirement.parse(package).specs
            for key, val in _TENSORFLOW_REQUIREMENTS.items():
                req_specs = Requirement.parse("foobar" + key).specs
                if all(item in req_specs for item in specs):
                    cuda, cudnn = val
                    break
            condaexe.extend(["-c", "conda-forge", f"cudatoolkit={cuda}", f"cudnn={cudnn}"])
            package = "Cuda Toolkit"
            success = False

        if package != "Cuda Toolkit":
            if any(char in package for char in (" ", "<", ">", "*", "|")):
                package = f"\"{package}\""
            condaexe.append(package)
 </s> add         if any(char in package for char in (" ", "<", ">", "*", "|")):
            package = f"\"{package}\""
        condaexe.append(package) </s> remove                     channel: Optional[str] = None,
 </s> add                     channel: str = "",
        self._is_conda = "conda" in command
          self._package = package
          self._command = command
        self._is_conda = "conda" in command
          self._is_gui = is_gui
  
          self._progess_bar = ProgressBar()
          self._re_conda = re.compile(
              rb"(?P<lib>^\S+)\s+\|\s+(?P<tot>\d+\.?\d*\s\w+).*\|\s+(?P<prg>\d+%)")
          self._re_pip_pkg = re.compile(rb"^\s*Downloading\s(?P<lib>\w+-.+?)-")
keep add keep keep keep keep keep keep
 Rebase code (#1326)

* Remove tensorflow_probability requirement

* setup.py - fix progress bars

* requirements.txt: Remove pre python 3.9 packages

* update apple requirements.txt

* update INSTALL.md

* Remove python<3.9 code

* setup.py - fix Windows Installer

* typing: python3.9 compliant

* Update pytest and readthedocs python versions

* typing fixes

* Python Version updates
  - Reduce max version to 3.10
  - Default to 3.10 in installers
  - Remove incompatible 3.11 tests

* Update dependencies

* Downgrade imageio dep for Windows

* typing: merge optional unions and fixes

* Updates
  - min python version 3.10
  - typing to python 3.10 spec
  - remove pre-tf2.10 code
  - Add conda tests

* train: re-enable optimizer saving

* Update dockerfiles

* Update setup.py
  - Apple Conda deps to setup.py
  - Better Cuda + dependency handling

* bugfix: Patch logging to prevent Autograph errors

* Update dockerfiles

* Setup.py - Setup.py - stdout to utf-8

* Add more OSes to github Actions

* suppress mac-os end to end test 
setup.py