Is it possible to force running tests on both 32-bit and 64-bit Windows?

dgw's Avatar

dgw

17 May, 2018 08:55 PM

I'm configuring AppVeyor for a Python project with a known issue on Windows x64 (see https://github.com/sopel-irc/sopel/issues/1142 for the known issue and https://github.com/sopel-irc/sopel/pull/1331 for the in-progress AppVeyor configuration file), but either the project's jobs always end up running on 32-bit hosts or I'm completely off base with how I wrote the configuration.

When users try to pip install sopel on Windows x64, they get an error from pip that pyenchant won't install and the command fails. Because AppVeyor doesn't give any errors, I can only assume it's running on Windows x86. This is further reinforced by a test command I added to the in-progress configuration: python -c "import struct; print struct.calcsize('P') * 8" always seems to return 32, never 64, no matter the bitness of the selected PYTHON and PYTHON_ARCH.

Having already determined that the platform setting in appveyor.yml has nothing to do with selecting the host OS, I'm not sure where to go from here. The ideal build matrix, for now, would run tests under Python 2.7 and 3.4 running in 32-bit and 64-bit environments.

  1. 1 Posted by Ilya Finkelshte... on 18 May, 2018 12:50 AM

    Ilya Finkelshteyn's Avatar

    Right, AppVeyor build VMs are 64-bit ones. We have no plans to provide 32-bit Windows VMs, at least in near future. You can look at private build cloud feature. However it comes with Premium plan (trial us free).

  2. 2 Posted by dgw on 18 May, 2018 03:35 AM

    dgw's Avatar

    The VMs are 64-bit? Now I'm just straight-up confused. Every test I've tried returns results that indicate a 32-bit host system, and something that should not succeed on a 64-bit host (installing pyenchant from PyPI) works just fine.

    Is there a stash of libraries somewhere in the build VM image that might contain, say, libenchant already compiled for the 64-bit system? I'm trying to figure out why an install step that fails on every real-world 64-bit Windows system I've tested on, works in AppVeyor.

    Honestly, testing on 32-bit Windows is not important, since the vast majority of users will be running on x64 (whether Windows or not) and I'm happy to just say we don't officially support it any more.

  3. 3 Posted by Ilya Finkelshte... on 18 May, 2018 07:43 PM

    Ilya Finkelshteyn's Avatar

    Please check this simple test build, which runs wmic os get osarchitecture on each of major Windows images we provide.

    I have now knowledge about specific library which contains libenchant already compiled for the 64-bit system, but it can exist as part of some pre-installed software.

    I would recommend to RDP to build VM and investigate interactively.

  4. dgw closed this discussion on 19 May, 2018 09:07 PM.

Comments are currently closed for this discussion. You can start a new one.

Keyboard shortcuts

Generic

? Show this help
ESC Blurs the current field

Comment Form

r Focus the comment reply box
^ + ↩ Submit the comment

You can use Command ⌘ instead of Control ^ on Mac