davidfstr / Crystal-Web-Archiver

Downloads websites for long-term archival.
http://dafoster.net/projects/crystal-web-archiver
60 stars 5 forks source link

CI: Install dependencies with Poetry: Sometimes this step fails #203

Closed davidfstr closed 3 months ago

davidfstr commented 4 months ago

The "Install dependencies with Poetry" step in CI sometimes fails, giving an error that looks like (on Windows):

  ChefBuildError

  Backend 'setuptools.build_meta:__legacy__' is not available.

  ...

Note: This error originates from the build backend, and is likely not a problem with poetry but with flameprof (0.4) not supporting PEP 517 builds. You can verify this by running 'pip wheel --use-pep517 "flameprof (==0.4)"'.

Or (on macOS):

  JSONDecodeError

  Expecting value: line 1 column 1 (char 0)

  at /usr/local/Cellar/python@3.12/3.12.3/Frameworks/Python.framework/Versions/3.12/lib/python3.12/json/decoder.py:355 in raw_decode
      351│         """
      352│         try:
      353│             obj, end = self.scan_once(s, idx)
      354│         except StopIteration as err:
    → 355│             raise JSONDecodeError("Expecting value", s, err.value) from None
      356│         return obj, end
      357│ 

Error: Process completed with exit code 1.

Rerunning the failed jobs in the workflow usually fixes the issue. However it's not possible to rerun jobs until the first set of jobs is complete, doubling the wall-clock time to run the entire workflow.

davidfstr commented 3 months ago

Unfortunately this issue does not appear to actually be fixed by the above commit, since this CI run, with the commit applied, still failed: https://github.com/davidfstr/Crystal-Web-Archiver/actions/runs/9924702264/job/27416300534