about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/python-modules/moviepy
diff options
context:
space:
mode:
authorAlyssa Ross <hi@alyssa.is>2024-05-21 11:19:54 +0200
committerAlyssa Ross <hi@alyssa.is>2024-05-21 11:19:54 +0200
commit1f7ea1acad1207378e325dd0d6527a983d7192b5 (patch)
tree38c0985697418e959e9c872b1afde54f9e6880f2 /nixpkgs/pkgs/development/python-modules/moviepy
parenta4ffc889571c7100467c7aa1ccae5a4d8373089f (diff)
parent6c0b7a92c30122196a761b440ac0d46d3d9954f1 (diff)
downloadnixlib-1f7ea1acad1207378e325dd0d6527a983d7192b5.tar
nixlib-1f7ea1acad1207378e325dd0d6527a983d7192b5.tar.gz
nixlib-1f7ea1acad1207378e325dd0d6527a983d7192b5.tar.bz2
nixlib-1f7ea1acad1207378e325dd0d6527a983d7192b5.tar.lz
nixlib-1f7ea1acad1207378e325dd0d6527a983d7192b5.tar.xz
nixlib-1f7ea1acad1207378e325dd0d6527a983d7192b5.tar.zst
nixlib-1f7ea1acad1207378e325dd0d6527a983d7192b5.zip
Merge remote-tracking branch 'nixpkgs/nixos-unstable'
Diffstat (limited to 'nixpkgs/pkgs/development/python-modules/moviepy')
-rw-r--r--nixpkgs/pkgs/development/python-modules/moviepy/default.nix106
1 files changed, 70 insertions, 36 deletions
diff --git a/nixpkgs/pkgs/development/python-modules/moviepy/default.nix b/nixpkgs/pkgs/development/python-modules/moviepy/default.nix
index 65f35e85a0f1..01b6a7086ab8 100644
--- a/nixpkgs/pkgs/development/python-modules/moviepy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/moviepy/default.nix
@@ -1,62 +1,96 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, pythonOlder
-, numpy
-, decorator
-, imageio
-, imageio-ffmpeg
-, proglog
-, requests
-, tqdm
-  # Advanced image processing (triples size of output)
-, advancedProcessing ? false
-, scikit-image
-, scikit-learn
-, scipy
-, matplotlib
-, youtube-dl
+{
+  lib,
+  buildPythonPackage,
+  decorator,
+  fetchFromGitHub,
+  imageio,
+  imageio-ffmpeg,
+  matplotlib,
+  numpy,
+  proglog,
+  pytestCheckHook,
+  pythonOlder,
+  requests,
+  scikit-image,
+  scikit-learn,
+  scipy,
+  setuptools,
+  tqdm,
+  youtube-dl,
 }:
 
 buildPythonPackage rec {
   pname = "moviepy";
   version = "1.0.3";
-  format = "setuptools";
+  pyproject = true;
 
-  disabled = pythonOlder "3.5";
+  disabled = pythonOlder "3.7";
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "2884e35d1788077db3ff89e763c5ba7bfddbd7ae9108c9bc809e7ba58fa433f5";
+  src = fetchFromGitHub {
+    owner = "Zulko";
+    repo = "moviepy";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-l7AwzAKSaEV+pPbltKgwllK6X54oruU2w0AvoCsrESE=";
   };
 
   postPatch = ''
     substituteInPlace setup.py \
-      --replace "decorator>=4.0.2,<5.0" "decorator>=4.0.2,<6.0"
+      --replace-fail "decorator>=4.0.2,<5.0" "decorator>=4.0.2,<6.0"
   '';
 
-  # No tests, require network connection
-  doCheck = false;
+  build-system = [ setuptools ];
 
-  propagatedBuildInputs = [
-    numpy
+  dependencies = [
     decorator
     imageio
     imageio-ffmpeg
-    tqdm
-    requests
+    numpy
     proglog
-  ] ++ lib.optionals advancedProcessing [
-    scikit-image
-    scikit-learn
-    scipy
-    matplotlib
-    youtube-dl
+    requests
+    tqdm
+  ];
+
+  passthru.optional-dependencies = {
+    optionals = [
+      matplotlib
+      scikit-image
+      scikit-learn
+      scipy
+      youtube-dl
+    ];
+  };
+
+  nativeCheckInputs = [
+    pytestCheckHook
+  ] ++ lib.flatten (builtins.attrValues passthru.optional-dependencies);
+
+  pythonImportsCheck = [ "moviepy" ];
+
+  disabledTests = [
+    "test_cuts1"
+    "test_issue"
+    "test_PR"
+    "test_setup"
+    "test_subtitles"
+    "test_sys_write_flush"
+  ];
+
+  disabledTestPaths = [
+    "tests/test_compositing.py"
+    "tests/test_fx.py"
+    "tests/test_ImageSequenceClip.py"
+    "tests/test_resourcerelease.py"
+    "tests/test_resourcereleasedemo.py"
+    "tests/test_TextClip.py"
+    "tests/test_VideoClip.py"
+    "tests/test_Videos.py"
+    "tests/test_videotools.py"
   ];
 
   meta = with lib; {
     description = "Video editing with Python";
     homepage = "https://zulko.github.io/moviepy/";
+    changelog = "https://github.com/Zulko/moviepy/blob/v${version}/CHANGELOG.md";
     license = licenses.mit;
     maintainers = with maintainers; [ ];
   };