def lint()

in noxfile.py [0:0]


def lint(session):
    session.install(
        "flake8", "black~=24.0", "mypy", "isort", "types-requests", "opentelemetry-api"
    )

    session.run("isort", "--check", "--profile=black", *SOURCE_FILES)
    session.run("black", "--check", *SOURCE_FILES)
    session.run("flake8", *SOURCE_FILES)
    session.run("python", "utils/license-headers.py", "check", *SOURCE_FILES)

    session.install(".[dev]", env=INSTALL_ENV)

    # Run mypy on the package and then the type examples separately for
    # the two different mypy use-cases, ourselves and our users.
    session.run("mypy", "--strict", "--show-error-codes", "elasticsearch_serverless/")
    session.run(
        "mypy",
        "--strict",
        "--show-error-codes",
        "test_elasticsearch_serverless/test_types/sync_types.py",
    )
    session.run(
        "mypy",
        "--strict",
        "--show-error-codes",
        "test_elasticsearch_serverless/test_types/async_types.py",
    )

    # Make sure we don't require aiohttp to be installed for users to
    # receive type hint information from mypy.
    session.run("python", "-m", "pip", "uninstall", "--yes", "aiohttp")
    session.run("mypy", "--strict", "--show-error-codes", "elasticsearch_serverless/")
    session.run(
        "mypy",
        "--strict",
        "--show-error-codes",
        "test_elasticsearch_serverless/test_types/sync_types.py",
    )