hynek / build-and-inspect-python-package

Build and Inspect Python Packages in GitHub Actions
MIT License
181 stars 13 forks source link

Error when preparing the summary (?) when updating from 2.0.2 to 2.2.0 #113

Closed nicoddemus closed 8 months ago

nicoddemus commented 8 months ago

Hi!

Our dependabot update PR failed when updating to 2.0.2 to 2.2.0, I'm not sure the cause because it is not clear to me from the logs:

https://github.com/pytest-dev/pytest/actions/runs/8503586412/job/23289289382

The action at 2.0.2 is working fine for us in main, so I think the problem is with the 2.2.0 update.

hynek commented 8 months ago

Hmm line 2048 says:

[2024-04-01T03:57:02Z] py.py [error opening dir]

any idea what that is about?

I suspect it might be about the switch from wheel unpack to unzip but I wonder if that’s actually not a problem?

nicoddemus commented 8 months ago

That's this file: https://github.com/pytest-dev/pytest/blob/main/src/py.py

I'm opening the whl produced by that job locally, and it seems fine:

λ unzip -l E:\Downloads\pytest-8.2.0.dev66+g780b9bfba-py3-none-any.zip
Archive:  E:\Downloads\pytest-8.2.0.dev66+g780b9bfba-py3-none-any.zip
  Length      Date    Time    Name
---------  ---------- -----   ----
      293  2024-04-01 03:57   py.py
      354  2024-04-01 03:57   _pytest/__init__.py     
     <snip>
       18  2024-04-01 03:57   pytest-8.2.0.dev66+g780b9bfba.dist-info/top_level.txt
     6393  2024-04-01 03:57   pytest-8.2.0.dev66+g780b9bfba.dist-info/RECORD
---------                     -------
  1177668                     80 files

λ unzip E:\Downloads\pytest-8.2.0.dev66+g780b9bfba-py3-none-any.zip
Archive:  E:\Downloads\pytest-8.2.0.dev66+g780b9bfba-py3-none-any.zip
  inflating: py.py
  inflating: _pytest/__init__.py
     <snip>
  inflating: pytest-8.2.0.dev66+g780b9bfba.dist-info/top_level.txt
  inflating: pytest-8.2.0.dev66+g780b9bfba.dist-info/RECORD

λ cat py.py
# shim for pylib going away
# if pylib is installed this file will get skipped
# (`py/__init__.py` has higher precedence)
import sys

import _pytest._py.error as error
import _pytest._py.path as path

sys.modules["py.error"] = error
sys.modules["py.path"] = path

__all__ = ["error", "path"]

🤔

hynek commented 8 months ago

Hm that’s super weird — could it be just a temporary disk failure or something? I mean it’s literally just the tree command failing it looks like. 😳 I’m afk for today, so I can’t investigate but did you try just running it again?

nicoddemus commented 8 months ago

Ran again, same results: https://github.com/pytest-dev/pytest/actions/runs/8503586412/job/23316463866

Yeah that's really strange. Anyway thanks for taking the time, appreciate it!

hynek commented 8 months ago

Please try v2.2.1; thank you for your patience.

nicoddemus commented 7 months ago

Works with 2.2.1: https://github.com/pytest-dev/pytest/pull/12195.

Thanks a lot!