Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Build Windows wheels on GHA. #84

Merged
merged 5 commits into from
Apr 16, 2024
Merged

Conversation

icemac
Copy link
Member

@icemac icemac commented Apr 9, 2024

@icemac icemac requested a review from dataflake April 9, 2024 15:26
@icemac icemac self-assigned this Apr 9, 2024
@icemac
Copy link
Member Author

icemac commented Apr 10, 2024

@tseaver I just added windows support for Python 3.13 and ran into src/zodbpickle/_pickle_33.c(38): error C2491: '_PyLong_AsByteArray_compat': definition of dllimport function not allowed Does it ring a bell for you?

Details see https://github.com/zopefoundation/zodbpickle/actions/runs/8618399230/job/23620660472?pr=84

Because we are emulating the Python stdlib function only for internal
purposes, we do not want (nor are we allowed) to export it as a
publically-linkable endpoing.
@tseaver
Copy link
Member

tseaver commented Apr 10, 2024

@icemac 4128ad8 should fix the windows build: in the previous PR, I thoughtlessly copied in the stdlib function without stripping its declaration macro.

@icemac
Copy link
Member Author

icemac commented Apr 12, 2024

@tseaver Thank you for fixing this issue. I am on the problem in zope.interface we are now seeing in the tests.

@tseaver
Copy link
Member

tseaver commented Apr 12, 2024

@icemac I just tried reproducing that error locally, including making a separate venv and installing the same way the GH workflow does (as much as I could):

$ python3.13 -m venv /tmp/waaaaa 
$ /tmp/waaaaa/bin/pip install --upgrade setuptools wheel
Collecting setuptools
...
Successfully installed setuptools-69.2.0 wheel-0.43.0
$ /tmp/waaaaa/bin/pip install -U --no-binary :all: coverage
Collecting coverage
  Using cached coverage-7.4.4-cp313-cp313-linux_x86_64.whl
Installing collected packages: coverage
Successfully installed coverage-7.4.4
$ /tmp/waaaaa/bin/pip install --pre -e .[test]
Obtaining file:///home/tseaver/projects/Zope/ZODB/zodbpickle
  Preparing metadata (setup.py) ... done
Requirement already satisfied: setuptools in /tmp/waaaaa/lib/python3.13/site-packages (from zodbpickle==3.3.dev0) (69.2.0)
Collecting zope.testrunner (from zodbpickle==3.3.dev0)
  Using cached zope.testrunner-6.4-py3-none-any.whl.metadata (22 kB)
Collecting zope.exceptions (from zope.testrunner->zodbpickle==3.3.dev0)
  Using cached zope.exceptions-5.0.1-py3-none-any.whl.metadata (8.4 kB)
Collecting zope.interface (from zope.testrunner->zodbpickle==3.3.dev0)
  Using cached zope.interface-6.2-cp313-cp313-linux_x86_64.whl
Using cached zope.testrunner-6.4-py3-none-any.whl (231 kB)
Using cached zope.exceptions-5.0.1-py3-none-any.whl (19 kB)
Installing collected packages: zope.interface, zodbpickle, zope.exceptions, zope.testrunner
  Running setup.py develop for zodbpickle
Successfully installed zodbpickle-3.3.dev0 zope.exceptions-5.0.1 zope.interface-6.2 zope.testrunner-6.4
$ /tmp/waaaaa/bin/python -m coverage run -p -m zope.testrunner --test-path=src 
Running zope.testrunner.layer.UnitTests tests:
  Set up zope.testrunner.layer.UnitTests in 0.000 seconds.
  Ran 427 tests with 0 failures, 0 errors and 20 skipped in 3.739 seconds.
Tearing down left over layers:
  Tear down zope.testrunner.layer.UnitTests in 0.000 seconds.

Is there maybe a broken zope.interface in the cache?

@dataflake
Copy link
Member

I get the same issues Michael saw on my local machine.

@tseaver
Copy link
Member

tseaver commented Apr 12, 2024

@dataflake ah, I looked at zopefoundation/zope.interface#289 -- I'm still running Python 3.130a5.

@dataflake
Copy link
Member

I merged the changes for zope.interface, created a new release and re-ran the failing tests. They're all green now.

@icemac
Copy link
Member Author

icemac commented Apr 16, 2024

Thank you for reviewing this PR. 😃

@icemac icemac merged commit 340e4ad into master Apr 16, 2024
58 checks passed
@icemac icemac deleted the config-with-c-code-template-8daa034c branch April 16, 2024 06:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants