(app)
Generate min dependency table for docs.
Generate min dependency table for docs.
Generate min dependency table for docs .
def generate_min_dependency_table(app):
    """Generate min dependency table for docs."""
    from sklearn._min_dependencies import dependent_packages

    # get length of header
    package_header_len = max(len(package) for package in dependent_packages) + 4
    version_header_len = len("Minimum Version") + 4
    tags_header_len = max(len(tags) for _, tags in dependent_packages.values()) + 4

    output = StringIO()
    output.write(
        " ".join(
            ["=" * package_header_len, "=" * version_header_len, "=" * tags_header_len]
        )
    )
    output.write("\n")
    dependency_title = "Dependency"
    version_title = "Minimum Version"
    tags_title = "Purpose"

    output.write(
        f"{dependency_title:<{package_header_len}} "
        f"{version_title:<{version_header_len}} "
        f"{tags_title}\n"
    )

    output.write(
        " ".join(
            ["=" * package_header_len, "=" * version_header_len, "=" * tags_header_len]
        )
    )
    output.write("\n")

    for package, (version, tags) in dependent_packages.items():
        output.write(
            f"{package:<{package_header_len}} {version:<{version_header_len}} {tags}\n"
        )

    output.write(
        " ".join(
            ["=" * package_header_len, "=" * version_header_len, "=" * tags_header_len]
        )
    )
    output.write("\n")
    output = output.getvalue()

    with (Path(".") / "min_dependency_table.rst").open("w") as f:
        f.write(output)
def generate_min_dependency_table ( app ) : from sklearn . _min_dependencies import dependent_packages # get length of header package_header_len = max ( len ( package ) for package in dependent_packages ) + 4 version_header_len = len ( "Minimum Version" ) + 4 tags_header_len = max ( len ( tags ) for _ , tags in dependent_packages . values ( ) ) + 4 output = StringIO ( ) output . write ( " " . join ( [ "=" * package_header_len , "=" * version_header_len , "=" * tags_header_len ] ) ) output . write ( "\n" ) dependency_title = "Dependency" version_title = "Minimum Version" tags_title = "Purpose" output . write ( f"{dependency_title:<{package_header_len}} " f"{version_title:<{version_header_len}} " f"{tags_title}\n" ) output . write ( " " . join ( [ "=" * package_header_len , "=" * version_header_len , "=" * tags_header_len ] ) ) output . write ( "\n" ) for package , ( version , tags ) in dependent_packages . items ( ) : output . write ( f"{package:<{package_header_len}} {version:<{version_header_len}} {tags}\n" ) output . write ( " " . join ( [ "=" * package_header_len , "=" * version_header_len , "=" * tags_header_len ] ) ) output . write ( "\n" ) output = output . getvalue ( ) with ( Path ( "." ) / "min_dependency_table.rst" ) . open ( "w" ) as f : f . write ( output )