11{
22 lib ,
3+ stdenv ,
34 buildPythonPackage ,
45 fetchFromGitHub ,
56
67 # build-system
78 setuptools ,
89
910 # dependencies
10- scipy ,
1111 matplotlib ,
1212 opencv-python ,
13+ pandas ,
1314 pillow ,
15+ psutil ,
16+ py-cpuinfo ,
1417 pyyaml ,
1518 requests ,
19+ scipy ,
20+ seaborn ,
1621 torch ,
1722 torchvision ,
1823 tqdm ,
19- psutil ,
20- py-cpuinfo ,
21- pandas ,
22- seaborn ,
2324 ultralytics-thop ,
2425
2526 # tests
3031
3132buildPythonPackage rec {
3233 pname = "ultralytics" ;
33- version = "8.3.86 " ;
34+ version = "8.3.92 " ;
3435 pyproject = true ;
3536
3637 src = fetchFromGitHub {
3738 owner = "ultralytics" ;
3839 repo = "ultralytics" ;
3940 tag = "v${ version } " ;
40- hash = "sha256-9z6f/48jQVCR744ojNH+T22+JDg31+WEKWi48k5/GoY =" ;
41+ hash = "sha256-+SwhQVEl7tLrhwuCruVLAtVS3U/RJb0ysIKG3bmuZk4 =" ;
4142 } ;
4243
43- postPatch = ''
44- substituteInPlace pyproject.toml \
45- --replace-fail "numpy>=1.23.0,<=2.1.1" "numpy"
46- '' ;
47-
4844 build-system = [ setuptools ] ;
4945
46+ pythonRelaxDeps = [
47+ "numpy"
48+ ] ;
49+
5050 dependencies = [
51- scipy
5251 matplotlib
5352 opencv-python
53+ pandas
5454 pillow
55+ psutil
56+ py-cpuinfo
5557 pyyaml
5658 requests
5759 scipy
60+ scipy
61+ seaborn
5862 torch
5963 torchvision
6064 tqdm
61- psutil
62- py-cpuinfo
63- pandas
64- seaborn
6565 ultralytics-thop
6666 ] ;
6767
@@ -73,34 +73,50 @@ buildPythonPackage rec {
7373 onnxruntime
7474 ] ;
7575
76- # rest of the tests require internet access
77- pytestFlagsArray = [ "tests/test_python.py" ] ;
78-
79- disabledTests = [
80- # also remove the individual tests that require internet
81- "test_model_methods"
82- "test_predict_txt"
83- "test_predict_img"
84- "test_predict_visualize"
85- "test_predict_grey_and_4ch"
86- "test_val"
87- "test_train_scratch"
88- "test_train_pretrained"
89- "test_all_model_yamls"
90- "test_workflow"
91- "test_predict_callback_and_setup"
92- "test_results"
93- "test_labels_and_crops"
94- "test_data_annotator"
95- "test_model_embeddings"
96- "test_yolov10"
97- "test_utils_torchutils"
98- "test_yolo_world"
76+ pytestFlagsArray = [
77+ # rest of the tests require internet access
78+ "tests/test_python.py"
9979 ] ;
10080
81+ disabledTests =
82+ [
83+ # also remove the individual tests that require internet
84+ "test_all_model_yamls"
85+ "test_data_annotator"
86+ "test_labels_and_crops"
87+ "test_model_embeddings"
88+ "test_model_methods"
89+ "test_predict_callback_and_setup"
90+ "test_predict_grey_and_4ch"
91+ "test_predict_img"
92+ "test_predict_txt"
93+ "test_predict_visualize"
94+ "test_results"
95+ "test_train_pretrained"
96+ "test_train_scratch"
97+ "test_utils_torchutils"
98+ "test_val"
99+ "test_workflow"
100+ "test_yolo_world"
101+ "test_yolov10"
102+ ]
103+ ++ lib . optionals ( stdenv . hostPlatform . isLinux && stdenv . hostPlatform . isAarch64 ) [
104+ # Fatal Python error: Aborted
105+ # onnxruntime/capi/_pybind_state.py", line 32 in <module>
106+ "test_utils_benchmarks"
107+ ]
108+ ++ lib . optionals stdenv . hostPlatform . isDarwin [
109+ # Fatal Python error: Aborted
110+ # ultralytics/utils/checks.py", line 598 in check_imshow
111+ "test_utils_checks"
112+
113+ # RuntimeError: required keyword attribute 'value' has the wrong type
114+ "test_utils_benchmarks"
115+ ] ;
116+
101117 meta = {
102118 homepage = "https://github.com/ultralytics/ultralytics" ;
103- changelog = "https://github.com/ultralytics/ultralytics/releases/tag/${ src . tag } " ;
119+ changelog = "https://github.com/ultralytics/ultralytics/releases/tag/v ${ version } " ;
104120 description = "Train YOLO models for computer vision tasks" ;
105121 mainProgram = "yolo" ;
106122 license = lib . licenses . agpl3Only ;
0 commit comments