[ci] [python-package] enforce flake8 checks (fixes #5566) (#5659)

This commit is contained in:
James Lamb 2023-01-12 15:59:52 -06:00 коммит произвёл GitHub
Родитель 23403a7c2c
Коммит 02d212b4c0
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 4AEE18F83AFDEB23
8 изменённых файлов: 23 добавлений и 10 удалений

Просмотреть файл

@ -76,13 +76,16 @@ if [[ $TASK == "lint" ]]; then
conda install -q -y -n $CONDA_ENV \
cmakelint \
cpplint \
flake8 \
isort \
mypy \
pycodestyle \
pydocstyle \
"r-lintr>=3.0"
echo "Linting Python code"
pycodestyle --ignore=E501,W503 --exclude=./.nuget,./external_libs . || exit -1
flake8 \
--ignore=E501,W503 \
--exclude=./.nuget,./external_libs,./python-package/build \
. || exit -1
pydocstyle --convention=numpy --add-ignore=D105 --match-dir="^(?!^external_libs|test|example).*" --match="(?!^test_|setup).*\.py" . || exit -1
isort . --check-only || exit -1
mypy --ignore-missing-imports python-package/ || true

Просмотреть файл

@ -105,7 +105,7 @@ autodoc_mock_imports = [
'scipy.sparse',
]
try:
import sklearn
import sklearn # noqa: F401
except ImportError:
autodoc_mock_imports.append('sklearn')
# hide type hints in API docs

Просмотреть файл

@ -36,14 +36,14 @@ except ImportError:
"""matplotlib"""
try:
import matplotlib
import matplotlib # noqa: F401
MATPLOTLIB_INSTALLED = True
except ImportError:
MATPLOTLIB_INSTALLED = False
"""graphviz"""
try:
import graphviz
import graphviz # noqa: F401
GRAPHVIZ_INSTALLED = True
except ImportError:
GRAPHVIZ_INSTALLED = False

Просмотреть файл

@ -96,7 +96,7 @@ def silent_call(cmd: List[str], raise_error: bool = False, error_msg: str = '')
with open(LOG_PATH, "ab") as log:
subprocess.check_call(cmd, stderr=log, stdout=log)
return 0
except Exception as err:
except Exception:
if raise_error:
raise Exception("\n".join((error_msg, LOG_NOTICE)))
return 1

Просмотреть файл

@ -3,7 +3,7 @@ import pytest
import lightgbm as lgb
from .utils import SERIALIZERS, pickle_and_unpickle_object, pickle_obj, unpickle_obj
from .utils import SERIALIZERS, pickle_and_unpickle_object
def reset_feature_fraction(boosting_round):

Просмотреть файл

@ -1723,7 +1723,7 @@ def test_dask_methods_and_sklearn_equivalents_have_similar_signatures(methods):
@pytest.mark.parametrize('task', tasks)
def test_training_succeeds_when_data_is_dataframe_and_label_is_column_array(task, cluster):
with Client(cluster) as client:
with Client(cluster):
_, _, _, _, dX, dy, dw, dg = _create_data(
objective=task,
output='dataframe',
@ -1802,7 +1802,7 @@ def _tested_estimators():
@pytest.mark.parametrize("estimator", _tested_estimators())
@pytest.mark.parametrize("check", sklearn_checks_to_run())
def test_sklearn_integration(estimator, check, cluster):
with Client(cluster) as client:
with Client(cluster):
estimator.set_params(local_listen_port=18000, time_out=5)
name = type(estimator).__name__
check(name, estimator)

Просмотреть файл

@ -2903,7 +2903,7 @@ def test_forced_split_feature_indices(tmp_path):
"forcedsplits_filename": tmp_split_file
}
with pytest.raises(lgb.basic.LightGBMError, match="Forced splits file includes feature index"):
bst = lgb.train(params, lgb_train)
lgb.train(params, lgb_train)
def test_forced_bins():

Просмотреть файл

@ -445,9 +445,19 @@ def test_clone_and_property():
gbm.fit(X, y)
gbm_clone = clone(gbm)
# original estimator is unaffected
assert gbm.n_estimators == 10
assert gbm.verbose == -1
assert isinstance(gbm.booster_, lgb.Booster)
assert isinstance(gbm.feature_importances_, np.ndarray)
# new estimator is unfitted, but has the same parameters
assert gbm_clone.__sklearn_is_fitted__() is False
assert gbm_clone.n_estimators == 10
assert gbm_clone.verbose == -1
assert gbm_clone.get_params() == gbm.get_params()
X, y = load_digits(n_class=2, return_X_y=True)
clf = lgb.LGBMClassifier(n_estimators=10, verbose=-1)
clf.fit(X, y)