diff --git a/plugins/python-build/scripts/add_miniconda.py b/plugins/python-build/scripts/add_miniconda.py index bed6f591..0cacdcc0 100755 --- a/plugins/python-build/scripts/add_miniconda.py +++ b/plugins/python-build/scripts/add_miniconda.py @@ -130,6 +130,9 @@ class MinicondaVersion(NamedTuple): @classmethod def from_str(cls, s): + """ + Convert a string of the form "miniconda_n-ver" or "miniconda_n-py_ver-ver" to a :class:`MinicondaVersion` object. + """ components = s.split("-") if len(components) == 3: miniconda_n, py_ver, ver = components @@ -146,6 +149,9 @@ class MinicondaVersion(NamedTuple): return f"miniconda{self.suffix}-{self.version_str}" def default_py_version(self): + """ + :class:`PyVersion` of Python used with this Miniconda version + """ if self.py_version: return self.py_version elif self.suffix == Suffix.TWO: @@ -188,6 +194,9 @@ class MinicondaSpec(NamedTuple): return spec def to_install_lines(self): + """ + Installation command for this version of Miniconda for use in a Pyenv installation script + """ return install_line_fmt.format( repo=MINICONDA_REPO, suffix=self.version.suffix, @@ -213,6 +222,11 @@ def make_script(specs: List[MinicondaSpec]): def get_existing_minicondas(): + """ + Enumerate existing Miniconda installation scripts in share/python-build/ except rolling releases. + + :returns: A generator of :class:`MinicondaVersion` objects. + """ logger.info("Getting known miniconda versions") for p in out_dir.iterdir(): name = p.name @@ -228,6 +242,12 @@ def get_existing_minicondas(): def get_available_minicondas(): + """ + Fetch remote miniconda versions. + + :returns: A generator of :class:`MinicondaSpec` objects for each release available for download + except rolling releases. + """ logger.info("Fetching remote miniconda versions") session = requests_html.HTMLSession() response = session.get(MINICONDA_REPO)