Closed rjzak closed 1 year ago
A requirements.txt
with specific versions might be a way to prevent this, probably caused by changing versions between sklearn
, dl8.5
, and maybe something else. I tried having python3-sklearn
and python3-pandas
installed via apt-get
, but that didn't help.
Some progress. I added gfortran
to one of the apt-get install
commands, and set a version of 0.24.2
for sklearn installation with pip. That seems to have worked, as it got passed the install for dl8.5
.
But then came another issue at line 165 (about 15 lines from the end!):
> [framework 10/17] RUN find /tmp/analyzers -type f -executable -exec mv {} /home/user/.opt/bin/ ; && /home/user/.opt/tools/packing-box setup analyzer:
0.622 Traceback (most recent call last):
0.622 File "/home/user/.opt/tools/packing-box", line 4, in <module>
0.622 from pbox import *
0.622 File "/home/user/.local/lib/python3.11/site-packages/pbox/__init__.py", line 6, in <module>
0.622 from .common import *
0.622 File "/home/user/.local/lib/python3.11/site-packages/pbox/common/__init__.py", line 6, in <module>
0.622 from .alterations import *
0.622 File "/home/user/.local/lib/python3.11/site-packages/pbox/common/alterations/__init__.py", line 8, in <module>
0.622 from .pe import *
0.622 File "/home/user/.local/lib/python3.11/site-packages/pbox/common/alterations/pe.py", line 3, in <module>
0.622 from .parsers import parser_handler, parse_exe_info_default, SectionAbstract
0.622 ImportError: cannot import name 'parse_exe_info_default' from 'pbox.common.alterations.parsers' (/home/user/.local/lib/python3.11/site-packages/pbox/common/alterations/parsers.py)
------
Dockerfile:165
--------------------
164 | COPY --chown=$USER $FILES/analyzers/* /tmp/analyzers/
165 | >>> RUN find /tmp/analyzers -type f -executable -exec mv {} $UOPT/bin/ \; \
166 | >>> && $PBOX setup analyzer
167 | # install detectors (including wrapper scripts)
--------------------
ERROR: failed to solve: process "/bin/sh -c find /tmp/analyzers -type f -executable -exec mv {} $UOPT/bin/ \\; && $PBOX setup analyzer" did not complete successfully: exit code: 1
@rjzak Thank you for mentioning this.
dl8.5
comes from the fact that its latest version on PyPi is 0.1.5 and tries to import DistanceMetric
from sklearn.neighbors
while the latest version of sklearn
holds this class in sklearn.metrics
, which is fixed in version 0.1.8 of dl8.5
.parse_exe_info_default
comes from a bug I hadn't fixed yet by testing the latest enhancements I've executed these lat days.Both errors are solved with 9b95886a86abc15fefaba3ae4577255349a1b692.
This is with git hash b229a11f.