60f07311b9
GitOrigin-RevId: f8e2ebd66d097614d51a56a755450d4ae1632df1
103 lines
2 KiB
Nix
103 lines
2 KiB
Nix
{ lib
|
|
, addict
|
|
, buildPythonPackage
|
|
, coverage
|
|
, fetchFromGitHub
|
|
, lmdb
|
|
, matplotlib
|
|
, mlflow
|
|
, numpy
|
|
, opencv4
|
|
, parameterized
|
|
, pytestCheckHook
|
|
, pythonOlder
|
|
, pyyaml
|
|
, rich
|
|
, termcolor
|
|
, torch
|
|
, yapf
|
|
}:
|
|
|
|
buildPythonPackage rec {
|
|
pname = "mmengine";
|
|
version = "0.10.3";
|
|
pyproject = true;
|
|
|
|
disabled = pythonOlder "3.7";
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "open-mmlab";
|
|
repo = "mmengine";
|
|
rev = "refs/tags/v${version}";
|
|
hash = "sha256-fKtPDdeKB3vX2mD+Tsicq8KOkPDSACzKK1XLyugdPQ4=";
|
|
};
|
|
|
|
propagatedBuildInputs = [
|
|
addict
|
|
matplotlib
|
|
numpy
|
|
opencv4
|
|
pyyaml
|
|
rich
|
|
termcolor
|
|
yapf
|
|
];
|
|
|
|
nativeCheckInputs = [
|
|
coverage
|
|
lmdb
|
|
mlflow
|
|
torch
|
|
parameterized
|
|
pytestCheckHook
|
|
];
|
|
|
|
preCheck = ''
|
|
export HOME=$TMPDIR
|
|
''
|
|
# Otherwise, the backprop hangs forever. More precisely, this exact line:
|
|
# https://github.com/open-mmlab/mmengine/blob/02f80e8bdd38f6713e04a872304861b02157905a/tests/test_runner/test_activation_checkpointing.py#L46
|
|
# Solution suggested in https://github.com/pytorch/pytorch/issues/91547#issuecomment-1370011188
|
|
+ ''
|
|
export MKL_NUM_THREADS=1
|
|
'';
|
|
|
|
pythonImportsCheck = [
|
|
"mmengine"
|
|
];
|
|
|
|
disabledTestPaths = [
|
|
# AttributeError
|
|
"tests/test_fileio/test_backends/test_petrel_backend.py"
|
|
];
|
|
|
|
disabledTests = [
|
|
# Tests are disabled due to sandbox
|
|
"test_fileclient"
|
|
"test_http_backend"
|
|
"test_misc"
|
|
# RuntimeError
|
|
"test_dump"
|
|
"test_deepcopy"
|
|
"test_copy"
|
|
"test_lazy_import"
|
|
# AssertionError
|
|
"test_lazy_module"
|
|
|
|
# Require unpackaged aim
|
|
"test_experiment"
|
|
"test_add_config"
|
|
"test_add_image"
|
|
"test_add_scalar"
|
|
"test_add_scalars"
|
|
"test_close"
|
|
];
|
|
|
|
meta = with lib; {
|
|
description = "Library for training deep learning models based on PyTorch";
|
|
homepage = "https://github.com/open-mmlab/mmengine";
|
|
changelog = "https://github.com/open-mmlab/mmengine/releases/tag/v${version}";
|
|
license = with licenses; [ asl20 ];
|
|
maintainers = with maintainers; [ rxiao ];
|
|
};
|
|
}
|