Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Disallow implicit reexport with mypy #773

Merged
merged 1 commit into from
Oct 7, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion ethicml/data/tabular_data/acs.py
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,9 @@
from ethicml.utility.data_helpers import undo_one_hot
from ethicml.utility.data_structures import DataTuple

from ..dataset import Dataset, DiscFeatureGroup, FeatureOrder, FeatureSplit
from ..dataset import Dataset, FeatureOrder, FeatureSplit
from ..util import (
DiscFeatureGroup,
LabelSpec,
filter_features_by_prefixes,
flatten_dict,
Expand Down
2 changes: 1 addition & 1 deletion ethicml/implementations/vfae_modules/__init__.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
"""Modules used within the VFAE implementation."""

from .utils import *
from .vfae_network import VFAENetwork
from .vfae_network import VFAENetwork as VFAENetwork
3 changes: 1 addition & 2 deletions ethicml/models/inprocess/adv_debiasing.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,8 @@

from ranzen import implements

from ethicml.models.inprocess.in_algorithm import HyperParamType
from ethicml.models.inprocess.in_subprocess import InAlgorithmSubprocess
from ethicml.utility.data_structures import ModelType
from ethicml.utility.data_structures import HyperParamType, ModelType

__all__ = ["AdvDebiasing", "AdvDebArgs"]

Expand Down
3 changes: 1 addition & 2 deletions ethicml/models/inprocess/fair_dummies.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,8 @@

from ranzen import implements

from ethicml.models.inprocess.in_algorithm import HyperParamType
from ethicml.models.inprocess.in_subprocess import InAlgorithmSubprocess
from ethicml.utility.data_structures import ModelType
from ethicml.utility.data_structures import HyperParamType, ModelType

__all__ = ["FairDummies", "FairDummiesArgs"]

Expand Down
4 changes: 2 additions & 2 deletions ethicml/models/inprocess/installed_model.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
import subprocess
import sys

import git
import git.cmd
from ranzen.decorators import implements

from ethicml.models.inprocess.in_algorithm import InAlgorithm
Expand Down Expand Up @@ -86,7 +86,7 @@ def _clone_directory(self, url: str) -> None:
"""
if not self._store_dir.exists():
self._store_dir.mkdir()
git.Git(self._store_dir).clone(url)
git.cmd.Git(self._store_dir).clone(url)

def _create_venv(self, use_poetry: bool) -> None:
"""Create a venv based on the Pipfile in the repository.
Expand Down
14 changes: 11 additions & 3 deletions ethicml/models/inprocess/kamiran.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,10 +9,18 @@
import sklearn
from sklearn.linear_model import LogisticRegression

from ethicml.models.inprocess.in_algorithm import HyperParamType, InAlgorithm
from ethicml.models.inprocess.in_algorithm import InAlgorithm
from ethicml.models.inprocess.shared import settings_for_svm_lr
from ethicml.models.inprocess.svm import KernelType, select_svm
from ethicml.utility import ClassifierType, DataTuple, Prediction, SoftPrediction, TestTuple
from ethicml.models.inprocess.svm import select_svm
from ethicml.utility import (
ClassifierType,
DataTuple,
HyperParamType,
KernelType,
Prediction,
SoftPrediction,
TestTuple,
)

__all__ = ["Reweighting", "compute_instance_weights"]

Expand Down
4 changes: 2 additions & 2 deletions ethicml/models/inprocess/kamishima.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,9 @@
import pandas as pd
from ranzen import implements

from ethicml.models.inprocess.in_algorithm import HyperParamType, InAlgorithm
from ethicml.models.inprocess.in_algorithm import InAlgorithm
from ethicml.models.inprocess.installed_model import InstalledModel
from ethicml.utility import DataTuple, Prediction, TestTuple
from ethicml.utility import DataTuple, HyperParamType, Prediction, TestTuple

__all__ = ["Kamishima"]

Expand Down
4 changes: 2 additions & 2 deletions ethicml/models/inprocess/zafar.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,9 @@
from ranzen import implements

from ethicml.preprocessing.adjust_labels import LabelBinarizer
from ethicml.utility import DataTuple, Prediction, TestTuple
from ethicml.utility import DataTuple, HyperParamType, Prediction, TestTuple

from .in_algorithm import HyperParamType, InAlgorithm
from .in_algorithm import InAlgorithm
from .installed_model import InstalledModel

__all__ = ["ZafarAccuracy", "ZafarBaseline", "ZafarEqOdds", "ZafarEqOpp", "ZafarFairness"]
Expand Down
1 change: 1 addition & 0 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -133,6 +133,7 @@ disallow_incomplete_defs = true
show_error_codes = true
warn_unused_ignores = true
mypy_path = "typings"
implicit_reexport = false

# ===== the following modules in EthicML aren't ready to be type checked so strictly =====
[[tool.mypy.overrides]]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
ClassifierType,
DataTuple,
FairnessType,
HyperParamType,
KernelType,
ModelType,
Prediction,
Expand Down Expand Up @@ -39,7 +40,6 @@
Reweighting,
SVM,
)
from ethicml.models.inprocess.in_algorithm import HyperParamType
from ethicml.run import CrossValidator, evaluate_models

TMPDIR: Final = Path("/tmp")
Expand Down