Gaetan Lepage
2026-01-29 23:13:55 +00:00
parent e07cd68a94
commit 476b8ef889
@@ -41,23 +41,34 @@
typing-extensions,
vispy,
wrapt,
# tests
hypothesis,
pretend,
pyautogui,
pytest-pretty,
pytest-qt,
pytestCheckHook,
writableTmpDirAsHomeHook,
xarray,
zarr,
}:
mkDerivationWith buildPythonPackage rec {
pname = "napari";
version = "0.6.4";
version = "0.6.6";
pyproject = true;
src = fetchFromGitHub {
owner = "napari";
repo = "napari";
tag = "v${version}";
hash = "sha256-SmFDIj170CWRuQ/rQX+Nc3cME4GCItNGkxIPPWIn7AA=";
hash = "sha256-F0l6GWyZ6n4HNZW7XyUk4ZBPQfrAW4DWixCaRHViDPI=";
};
postPatch = ''
substituteInPlace pyproject.toml \
--replace-fail "scikit-image[data]>=0.19.1" "scikit-image"
--replace-fail '"--maxfail=5", ' ""
'';
build-system = [
@@ -67,6 +78,11 @@ mkDerivationWith buildPythonPackage rec {
nativeBuildInputs = [ wrapQtAppsHook ];
pythonRelaxDeps = [
"app-model"
"psygnal"
"vispy"
];
dependencies = [
app-model
appdirs
@@ -104,6 +120,82 @@ mkDerivationWith buildPythonPackage rec {
wrapQtApp $out/bin/napari
'';
preCheck = ''
rm src/napari/__init__.py
'';
nativeCheckInputs = [
hypothesis
pretend
pyautogui
pytest-pretty
pytest-qt
pytestCheckHook
writableTmpDirAsHomeHook
xarray
zarr
];
disabledTestPaths = [
# Require DISPLAY access
"src/napari/_qt/"
# AttributeError: 'Selection' object has no attribute 'replace_selection'
"src/napari/layers/shapes/_tests/test_shapes.py"
"src/napari/layers/shapes/_tests/test_shapes_key_bindings.py"
"src/napari/layers/shapes/_tests/test_shapes_mouse_bindings.py"
# Fatal Python error: Aborted
"src/napari/_tests/test_adding_removing.py"
"src/napari/_tests/test_advanced.py"
"src/napari/_tests/test_cli.py"
"src/napari/_tests/test_conftest_fixtures.py"
"src/napari/_tests/test_function_widgets.py"
"src/napari/_tests/test_key_bindings.py"
"src/napari/_tests/test_layer_utils_with_qt.py"
"src/napari/_tests/test_mouse_bindings.py"
"src/napari/_tests/test_multiple_viewers.py"
"src/napari/_tests/test_notebook_display.py"
"src/napari/_tests/test_top_level_availability.py"
"src/napari/_tests/test_with_screenshot.py"
"src/napari/_vispy/"
];
enabledTestPaths = [
"src/napari/_tests/"
];
disabledTests = [
# Failed: DID NOT WARN. No warnings of type (<class 'FutureWarning'>,) were emitted.
"test_PublicOnlyProxy"
# NameError: name 'utils' is not defined
"test_create_func_deprecated"
"test_create_func_renamed"
"test_create_func"
# AttributeError: 'Selection' object has no attribute 'replace_selection'
"test_add_empty_shapes_layer"
"test_update_data_updates_layer_extent_cache"
# Fatal Python error: Aborted
"test_add_layer_data_to_viewer_optional"
"test_from_layer_data_tuple_accept_deprecating_dict"
"test_layers_populate_immediately"
"test_magicgui_add_data"
"test_magicgui_add_future_data"
"test_magicgui_add_layer"
"test_magicgui_add_layer_inheritance"
"test_magicgui_add_threadworker"
"test_magicgui_data_updated"
"test_magicgui_get_data"
"test_magicgui_get_viewer"
"test_make_napari_viewer"
"test_singlescreen_window_settings"
"test_sys_info"
"test_view"
];
meta = {
description = "Fast, interactive, multi-dimensional image viewer";
homepage = "https://github.com/napari/napari";