Skip to content

Windows: pywin32 doesn't work with the hermetic Python toolchain #1356

Open
@meteorcloudy

Description

@meteorcloudy

🐞 bug report

Affected Rule

rules_python

Is this a regression?

Probably not.

Description

I'm trying to do import win32api on Windows, but got

ModuleNotFoundError: No module named 'win32api'

even if I specify pywin32==303 in the requirements.txt file.

🔬 Minimal Reproduction

Fetch the reproducible case at https://github.com/meteorcloudy/my_tests/tree/master/pywin32_test

then run

bazel run //:bin

🔥 Exception or Error




$ bazel run //:bin
INFO: Invocation ID: 3c7000e6-65e3-4816-a2b5-551faa933a03
INFO: Reading 'startup' options from c:\users\pcloudy\.bazelrc: --output_user_root=C:/src/tmp
INFO: Options provided by the client:
  Inherited 'common' options: --isatty=1 --terminal_columns=375
INFO: Options provided by the client:
  Inherited 'build' options: --python_path=C:/python3/python.exe
INFO: Reading rc options for 'run' from c:\users\pcloudy\.bazelrc:
  Inherited 'build' options: --curses=yes --color=yes --verbose_failures --announce_rc --disk_cache=C:/src/tmp/bazel_disk_cache
INFO: Analyzed target //:bin (40 packages loaded, 3463 targets configured).
INFO: Found 1 target...
Target //:bin up-to-date:
  bazel-bin/bin.exe
  bazel-bin/bin.zip
INFO: Elapsed time: 15.868s, Critical Path: 7.96s
INFO: 6 processes: 5 internal, 1 local.
INFO: Build completed successfully, 6 total actions
INFO: Running command line: bazel-bin/bin.exe
Traceback (most recent call last):
  File "C:\temp\2\Bazel.runfiles_s_pq9z9_\runfiles\__main__\bin.py", line 1, in 
    import win32api
ModuleNotFoundError: No module named 'win32api'

🌍 Your Environment

Operating System:

  
Windows
  

Output of bazel version:

  
6.3.1
  

Rules_python version:

  
0.24.0
  

Anything else relevant?
If I do import win32.win32api, I get

ImportError: DLL load failed while importing win32api: The specified module could not be found.

Metadata

Metadata

Assignees

No one assigned

    Labels

    need: upstream supportAn issue that needs changes in upstream codetype: toolchainRelated to the toolchains provided by rules_python

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions