opencve/opencve-docker

error in jsmin setup command: use_2to3 is invalid

soziopath opened this issue · 2 comments

Expected Behavior

building the image works without any problems

Actual Behavior

building the image throws the following error:

#0 31.48 Collecting jsmin==2.2.2 (from opencve==1.3.0)
#0 31.49   Downloading jsmin-2.2.2.tar.gz (12 kB)
#0 31.51   Installing build dependencies: started
#0 33.44   Installing build dependencies: finished with status 'done'
#0 33.44   Getting requirements to build wheel: started
#0 33.64   Getting requirements to build wheel: finished with status 'error'
#0 33.65   error: subprocess-exited-with-error
#0 33.65
#0 33.65   × Getting requirements to build wheel did not run successfully.
#0 33.65   │ exit code: 1
#0 33.65   ╰─> [1 lines of output]
#0 33.65       error in jsmin setup command: use_2to3 is invalid.
#0 33.65       [end of output]
#0 33.65
#0 33.65   note: This error originates from a subprocess, and is likely not a problem with pip.
#0 33.66 error: subprocess-exited-with-error
#0 33.66
#0 33.66 × Getting requirements to build wheel did not run successfully.
#0 33.66 │ exit code: 1
#0 33.66 ╰─> See above for output.
#0 33.66
#0 33.66 note: This error originates from a subprocess, and is likely not a problem with pip.

Steps to Reproduce the Problem

  • docker-compose build

Specifications

  • OpenCVE version: 1.4.0
  • Platform: ubuntu 20.04 LTS
  • Docker version: 23.0.4
  • Docker-compose version: 1.29.2

Screenshots (optional)

TexGG commented

The "requirements.txt" should be updated with "jsmin==3.0.1" instead of "jsmin==2.2.2" . It is an update of the library that remove the dependency problem.
But since the docker getting the content of the repository, it always get the "wrong requirements.txt". Si there is 2 possibilities in that case :

  • clone the repository, modify the "requirements.txt" and change the "OPENCVE_REPOSITORY" in the ".env" to your repository
  • add this ligne right before "RUN python3 -m pip install /opencve/" :
    • RUN sed -i s/jsmin==2\.2\.2/jsmin==3.0.1/g /opencve/requirements.txt

Personnaly, I did the second solution and it works great ATM.

The "requirements.txt" should be updated with "jsmin==3.0.1" instead of "jsmin==2.2.2" . It is an update of the library that remove the dependency problem. But since the docker getting the content of the repository, it always get the "wrong requirements.txt". Si there is 2 possibilities in that case :

* clone the repository, modify the "requirements.txt" and change the "OPENCVE_REPOSITORY" in the ".env" to your repository

* add this ligne right before "RUN python3 -m pip install /opencve/" :
  
  * RUN sed -i s/jsmin==2\.2\.2/jsmin==3.0.1/g /opencve/requirements.txt

Personnaly, I did the second solution and it works great ATM.

Thanks. Working like a charm.
I also did the second solution.