manim: Pin networkx and watchdog

Fixes the build.
This commit is contained in:
Martin Weinelt 2023-05-29 13:18:07 +02:00
parent 760c080184
commit d27954a561
No known key found for this signature in database
GPG key ID: 87C1E9888F856759
2 changed files with 47 additions and 26 deletions

View file

@ -1,5 +1,6 @@
{ lib { lib
, fetchFromGitHub , fetchFromGitHub
, fetchPypi
, cairo , cairo
, ffmpeg , ffmpeg
@ -42,7 +43,30 @@ let
fundus-calligra microtype wasysym physics dvisvgm jknapltx wasy cm-super fundus-calligra microtype wasysym physics dvisvgm jknapltx wasy cm-super
babel-english gnu-freefont mathastext cbfonts-fd; babel-english gnu-freefont mathastext cbfonts-fd;
}; };
in python3.pkgs.buildPythonApplication rec {
python = python3.override {
packageOverrides = self: super: {
networkx = super.networkx.overridePythonAttrs (oldAttrs: rec {
pname = "networkx";
version = "2.8.8";
src = fetchPypi {
inherit pname version;
hash = "sha256-Iw04gRevhw/OVkejxSQB/PdT6Ucg5uprQZelNVZIiF4=";
};
});
watchdog = super.watchdog.overridePythonAttrs (oldAttrs: rec{
pname = "watchdog";
version = "2.3.1";
src = fetchPypi {
inherit pname version;
hash = "sha256-2fntJu0iqdMxggqEMsNoBwfqi1QSHdzJ3H2fLO6zaQY=";
};
});
};
};
in python.pkgs.buildPythonApplication rec {
pname = "manim"; pname = "manim";
format = "pyproject"; format = "pyproject";
version = "0.16.0.post0"; version = "0.16.0.post0";
@ -55,8 +79,8 @@ in python3.pkgs.buildPythonApplication rec {
sha256 = "sha256-iXiPnI6lTP51P1X3iLp75ArRP66o8WAANBLoStPrz4M="; sha256 = "sha256-iXiPnI6lTP51P1X3iLp75ArRP66o8WAANBLoStPrz4M=";
}; };
nativeBuildInputs = [ nativeBuildInputs = with python.pkgs; [
python3.pkgs.poetry-core poetry-core
]; ];
postPatch = '' postPatch = ''
@ -69,7 +93,7 @@ in python3.pkgs.buildPythonApplication rec {
buildInputs = [ cairo ]; buildInputs = [ cairo ];
propagatedBuildInputs = with python3.pkgs; [ propagatedBuildInputs = with python.pkgs; [
click click
click-default-group click-default-group
cloup cloup
@ -106,14 +130,13 @@ in python3.pkgs.buildPythonApplication rec {
]) ])
]; ];
nativeCheckInputs = [ nativeCheckInputs = [
python3.pkgs.pytest-xdist
python3.pkgs.pytestCheckHook
ffmpeg ffmpeg
(texlive.combine manim-tinytex) (texlive.combine manim-tinytex)
]; ] ++ (with python.pkgs; [
pytest-xdist
pytestCheckHook
]);
# about 55 of ~600 tests failing mostly due to demand for display # about 55 of ~600 tests failing mostly due to demand for display
disabledTests = import ./failing_tests.nix; disabledTests = import ./failing_tests.nix;

View file

@ -1,5 +1,5 @@
# reason for failure: tests try to open display
[ [
# reason for failure: tests try to open display
"test_background_color" "test_background_color"
"test_scene_add_remove" "test_scene_add_remove"
"test_Circle" "test_Circle"
@ -46,31 +46,29 @@
"test_force_window_opengl_render_with_format" "test_force_window_opengl_render_with_format"
"test_get_frame_with_preview_disabled" "test_get_frame_with_preview_disabled"
"test_get_frame_with_preview_enabled" "test_get_frame_with_preview_enabled"
] ++
# reason for failure: tests try to reach network # reason for failure: tests try to reach network
[
"test_logging_to_file" "test_logging_to_file"
"test_plugin_function_like" "test_plugin_function_like"
"test_plugin_no_all" "test_plugin_no_all"
"test_plugin_with_all" "test_plugin_with_all"
] ++
# failing with: # failing with:
# E AssertionError: # E AssertionError:
# E Not equal to tolerance rtol=1e-07, atol=1.01 # E Not equal to tolerance rtol=1e-07, atol=1.01
# E Frame no -1. You can use --show_diff to visually show the difference. # E Frame no -1. You can use --show_diff to visually show the difference.
# E Mismatched elements: 18525 / 1639680 (1.13%) # E Mismatched elements: 18525 / 1639680 (1.13%)
# E Max absolute difference: 255 # E Max absolute difference: 255
# E Max relative difference: 255. # E Max relative difference: 255.
[
"test_Text2Color" "test_Text2Color"
"test_PointCloudDot" "test_PointCloudDot"
"test_Torus" "test_Torus"
] ++
# failing with: # failing with:
# TypeError: __init__() got an unexpected keyword argument 'msg' - maybe you meant pytest.mark.skipif? # TypeError: __init__() got an unexpected keyword argument 'msg' - maybe you meant pytest.mark.skipif?
[
"test_force_window_opengl_render_with_movies" "test_force_window_opengl_render_with_movies"
# mismatching expecation on the new commandline
"test_manim_new_command"
] ]