Skip to content

Commit

Permalink
[pre-commit.ci] pre-commit autoupdate (#175)
Browse files Browse the repository at this point in the history
* [pre-commit.ci] pre-commit autoupdate

updates:
- [github.com/pre-commit/mirrors-mypy: v1.10.1 → v1.11.1](pre-commit/mirrors-mypy@v1.10.1...v1.11.1)
- [github.com/astral-sh/ruff-pre-commit: v0.5.2 → v0.6.1](astral-sh/ruff-pre-commit@v0.5.2...v0.6.1)
- [github.com/psf/black: 24.4.2 → 24.8.0](psf/black@24.4.2...24.8.0)

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
  • Loading branch information
pre-commit-ci[bot] authored Aug 20, 2024
1 parent b0d24cf commit 753fcca
Show file tree
Hide file tree
Showing 29 changed files with 82 additions and 71 deletions.
6 changes: 3 additions & 3 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -25,20 +25,20 @@ repos:


- repo: https://github.com/pre-commit/mirrors-mypy
rev: 'v1.10.1'
rev: 'v1.11.1'
hooks:
- id: mypy
additional_dependencies:
- fastapi
- pytest

- repo: https://github.com/astral-sh/ruff-pre-commit
rev: 'v0.5.2'
rev: 'v0.6.1'
hooks:
- id: ruff
args: [--fix, --exit-non-zero-on-fix]

- repo: https://github.com/psf/black
rev: 24.4.2
rev: 24.8.0
hooks:
- id: black
3 changes: 2 additions & 1 deletion src/core/access.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
from sqlalchemy.engine import Row

from database.users import User, UserGroup
from schemas.datasets.openml import Visibility
from sqlalchemy.engine import Row


def _user_has_access(
Expand Down
4 changes: 2 additions & 2 deletions src/core/formatting.py
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
import html

from config import load_configuration
from schemas.datasets.openml import DatasetFileFormat
from sqlalchemy.engine import Row

from config import load_configuration
from core.errors import DatasetError
from schemas.datasets.openml import DatasetFileFormat


def _str_to_bool(string: str) -> bool:
Expand Down
3 changes: 2 additions & 1 deletion src/database/datasets.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,11 @@

import datetime

from schemas.datasets.openml import Feature
from sqlalchemy import Connection, text
from sqlalchemy.engine import Row

from schemas.datasets.openml import Feature


def get(id_: int, connection: Connection) -> Row | None:
row = connection.execute(
Expand Down
3 changes: 2 additions & 1 deletion src/database/evaluations.py
Original file line number Diff line number Diff line change
@@ -1,8 +1,9 @@
from typing import Sequence, cast

from sqlalchemy import Connection, Row, text

from core.formatting import _str_to_bool
from schemas.datasets.openml import EstimationProcedure
from sqlalchemy import Connection, Row, text


def get_math_functions(function_type: str, connection: Connection) -> Sequence[Row]:
Expand Down
3 changes: 2 additions & 1 deletion src/database/qualities.py
Original file line number Diff line number Diff line change
@@ -1,9 +1,10 @@
from collections import defaultdict
from typing import Iterable

from schemas.datasets.openml import Quality
from sqlalchemy import Connection, text

from schemas.datasets.openml import Quality


def get_for_dataset(dataset_id: int, connection: Connection) -> list[Quality]:
rows = connection.execute(
Expand Down
3 changes: 2 additions & 1 deletion src/database/setup.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
from config import load_database_configuration
from sqlalchemy import Engine, create_engine
from sqlalchemy.engine import URL

from config import load_database_configuration

_user_engine = None
_expdb_engine = None

Expand Down
2 changes: 1 addition & 1 deletion src/database/studies.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,10 @@
from datetime import datetime
from typing import Sequence, cast

from schemas.study import CreateStudy, StudyType
from sqlalchemy import Connection, Row, text

from database.users import User
from schemas.study import CreateStudy, StudyType


def get_by_id(id_: int, connection: Connection) -> Row | None:
Expand Down
3 changes: 2 additions & 1 deletion src/main.py
Original file line number Diff line number Diff line change
@@ -1,8 +1,9 @@
import argparse

import uvicorn
from config import load_configuration
from fastapi import FastAPI

from config import load_configuration
from routers.mldcat_ap.dataset import router as mldcat_ap_router
from routers.openml.datasets import router as datasets_router
from routers.openml.estimation_procedure import router as estimationprocedure_router
Expand Down
5 changes: 3 additions & 2 deletions src/routers/dependencies.py
Original file line number Diff line number Diff line change
@@ -1,11 +1,12 @@
from typing import Annotated

from database.setup import expdb_database, user_database
from database.users import APIKey, User
from fastapi import Depends
from pydantic import BaseModel
from sqlalchemy import Connection

from database.setup import expdb_database, user_database
from database.users import APIKey, User


def expdb_connection() -> Connection:
engine = expdb_database()
Expand Down
12 changes: 6 additions & 6 deletions src/routers/mldcat_ap/dataset.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,14 @@

from typing import Annotated

from fastapi import APIRouter, Depends, HTTPException
from sqlalchemy import Connection

import config
from database.users import User
from fastapi import APIRouter, Depends, HTTPException
from routers.dependencies import expdb_connection, fetch_user, userdb_connection
from routers.openml.datasets import get_dataset, get_dataset_features
from routers.openml.qualities import get_qualities
from schemas.datasets.mldcat_ap import (
DataService,
Dataset,
Expand All @@ -20,11 +25,6 @@
MD5Checksum,
Quality,
)
from sqlalchemy import Connection

from routers.dependencies import expdb_connection, fetch_user, userdb_connection
from routers.openml.datasets import get_dataset, get_dataset_features
from routers.openml.qualities import get_qualities

router = APIRouter(prefix="/mldcat_ap", tags=["MLDCAT-AP"])
_configuration = config.load_configuration()
Expand Down
10 changes: 5 additions & 5 deletions src/routers/openml/datasets.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,10 @@
from enum import StrEnum
from typing import Annotated, Any, Literal, NamedTuple

from fastapi import APIRouter, Body, Depends, HTTPException
from sqlalchemy import Connection, text
from sqlalchemy.engine import Row

import database.datasets
import database.qualities
from core.access import _user_has_access
Expand All @@ -15,13 +19,9 @@
_format_parquet_url,
)
from database.users import User, UserGroup
from fastapi import APIRouter, Body, Depends, HTTPException
from schemas.datasets.openml import DatasetMetadata, DatasetStatus, Feature, FeatureType
from sqlalchemy import Connection, text
from sqlalchemy.engine import Row

from routers.dependencies import Pagination, expdb_connection, fetch_user, userdb_connection
from routers.types import CasualString128, IntegerRange, SystemString64, integer_range_regex
from schemas.datasets.openml import DatasetMetadata, DatasetStatus, Feature, FeatureType

router = APIRouter(prefix="/datasets", tags=["datasets"])

Expand Down
4 changes: 2 additions & 2 deletions src/routers/openml/estimation_procedure.py
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
from typing import Annotated, Iterable

import database.evaluations
from fastapi import APIRouter, Depends
from schemas.datasets.openml import EstimationProcedure
from sqlalchemy import Connection

import database.evaluations
from routers.dependencies import expdb_connection
from schemas.datasets.openml import EstimationProcedure

router = APIRouter(prefix="/estimationprocedure", tags=["estimationprocedure"])

Expand Down
2 changes: 1 addition & 1 deletion src/routers/openml/evaluations.py
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
from typing import Annotated

import database.evaluations
from fastapi import APIRouter, Depends
from sqlalchemy import Connection

import database.evaluations
from routers.dependencies import expdb_connection

router = APIRouter(prefix="/evaluationmeasure", tags=["evaluationmeasure"])
Expand Down
6 changes: 3 additions & 3 deletions src/routers/openml/flows.py
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
import http.client
from typing import Annotated, Literal

import database.flows
from core.conversions import _str_to_num
from fastapi import APIRouter, Depends, HTTPException
from schemas.flows import Flow, Parameter
from sqlalchemy import Connection

import database.flows
from core.conversions import _str_to_num
from routers.dependencies import expdb_connection
from schemas.flows import Flow, Parameter

router = APIRouter(prefix="/flows", tags=["flows"])

Expand Down
8 changes: 4 additions & 4 deletions src/routers/openml/qualities.py
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
import http.client
from typing import Annotated, Literal

from fastapi import APIRouter, Depends, HTTPException
from sqlalchemy import Connection

import database.datasets
import database.qualities
from core.access import _user_has_access
from core.errors import DatasetError
from database.users import User
from fastapi import APIRouter, Depends, HTTPException
from schemas.datasets.openml import Quality
from sqlalchemy import Connection

from routers.dependencies import expdb_connection, fetch_user
from schemas.datasets.openml import Quality

router = APIRouter(prefix="/datasets", tags=["datasets"])

Expand Down
10 changes: 5 additions & 5 deletions src/routers/openml/study.py
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
import http.client
from typing import Annotated, Literal

import database.studies
from core.formatting import _str_to_bool
from database.users import User, UserGroup
from fastapi import APIRouter, Body, Depends, HTTPException
from pydantic import BaseModel
from schemas.core import Visibility
from schemas.study import CreateStudy, Study, StudyStatus, StudyType
from sqlalchemy import Connection, Row

import database.studies
from core.formatting import _str_to_bool
from database.users import User, UserGroup
from routers.dependencies import expdb_connection, fetch_user
from schemas.core import Visibility
from schemas.study import CreateStudy, Study, StudyStatus, StudyType

router = APIRouter(prefix="/studies", tags=["studies"])

Expand Down
6 changes: 3 additions & 3 deletions src/routers/openml/tasks.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,14 +3,14 @@
import re
from typing import Annotated, Any

import database.datasets
import database.tasks
import xmltodict
from fastapi import APIRouter, Depends, HTTPException
from schemas.datasets.openml import Task
from sqlalchemy import Connection, RowMapping, text

import database.datasets
import database.tasks
from routers.dependencies import expdb_connection
from schemas.datasets.openml import Task

router = APIRouter(prefix="/tasks", tags=["tasks"])

Expand Down
4 changes: 2 additions & 2 deletions src/routers/openml/tasktype.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,11 @@
import json
from typing import Annotated, Any, Literal, cast

from database.tasks import get_input_for_task_type, get_task_types
from database.tasks import get_task_type as db_get_task_type
from fastapi import APIRouter, Depends, HTTPException
from sqlalchemy import Connection, Row

from database.tasks import get_input_for_task_type, get_task_types
from database.tasks import get_task_type as db_get_task_type
from routers.dependencies import expdb_connection

router = APIRouter(prefix="/tasktype", tags=["tasks"])
Expand Down
21 changes: 11 additions & 10 deletions tests/conftest.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,11 +9,12 @@
import pytest
from _pytest.config import Config
from _pytest.nodes import Item
from database.setup import expdb_database, user_database
from fastapi.testclient import TestClient
from sqlalchemy import Connection, Engine, text

from database.setup import expdb_database, user_database
from main import create_api
from routers.dependencies import expdb_connection, userdb_connection
from sqlalchemy import Connection, Engine, text


class ApiKey(StrEnum):
Expand All @@ -32,25 +33,25 @@ def automatic_rollback(engine: Engine) -> Iterator[Connection]:
transaction.rollback()


@pytest.fixture()
@pytest.fixture
def expdb_test() -> Connection:
with automatic_rollback(expdb_database()) as connection:
yield connection


@pytest.fixture()
@pytest.fixture
def user_test() -> Connection:
with automatic_rollback(user_database()) as connection:
yield connection


@pytest.fixture()
@pytest.fixture
def php_api() -> Iterator[httpx.Client]:
with httpx.Client(base_url="http://server-api-php-api-1:80/api/v1/json") as client:
yield client


@pytest.fixture()
@pytest.fixture
def py_api(expdb_test: Connection, user_test: Connection) -> TestClient:
app = create_api()
# We use the lambda definitions because fixtures may not be called directly.
Expand All @@ -59,14 +60,14 @@ def py_api(expdb_test: Connection, user_test: Connection) -> TestClient:
return TestClient(app)


@pytest.fixture()
@pytest.fixture
def dataset_130() -> Iterator[dict[str, Any]]:
json_path = Path(__file__).parent / "resources" / "datasets" / "dataset_130.json"
with json_path.open("r") as dataset_file:
yield json.load(dataset_file)


@pytest.fixture()
@pytest.fixture
def default_configuration_file() -> Path:
return Path().parent.parent / "src" / "config.toml"

Expand All @@ -79,7 +80,7 @@ class Flow(NamedTuple):
external_version: str


@pytest.fixture()
@pytest.fixture
def flow(expdb_test: Connection) -> Flow:
expdb_test.execute(
text(
Expand All @@ -93,7 +94,7 @@ def flow(expdb_test: Connection) -> Flow:
return Flow(id=flow_id, name="name", external_version="external_version")


@pytest.fixture()
@pytest.fixture
def persisted_flow(flow: Flow, expdb_test: Connection) -> Iterator[Flow]:
expdb_test.commit()
yield flow
Expand Down
2 changes: 1 addition & 1 deletion tests/database/flows_test.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import database.flows
from sqlalchemy import Connection

import database.flows
from tests.conftest import Flow


Expand Down
Loading

0 comments on commit 753fcca

Please sign in to comment.