Skip to content

WIP: Windows support#375

Closed
contsili wants to merge 5 commits intodevfrom
windows_support
Closed

WIP: Windows support#375
contsili wants to merge 5 commits intodevfrom
windows_support

Conversation

@contsili
Copy link
Collaborator

@contsili contsili commented Feb 17, 2026

With these changes I can run pcntoolkit on windows, we still need to discuss if we want to go forward with that and also test again if this branch works fine in Unix too.

Checks:

  • All the tests pass locally
  • The first 4 examples (example00 to example03) on the examples/ folder (same as the ones in the websire) run successfully.
  • Example04 runs fine but after fit predict finishes it gives the warning:
 c:\Users\kontsi\AppData\Local\anaconda3\envs\.ptk-dev\Lib\site-packages\dask\_task_spec.py:768: RuntimeWarning: invalid value encountered in sqrt
  return self.func(*new_argspec)
  • the rest of the examples i have not run yet

- Replace os.system calls with subprocess.run(check=True) to ensure safer, failing subprocess execution.
- Introduce filelock.FileLock-based locking in pcntoolkit/dataio/norm_data.py (replace fcntl) and add filelock dependency to pyproject.toml to provide cross-platform atomic file writes.
- normalize task_id timestamp separators to avoid colon characters.
- Update tests (test_error_handling.py) to import sys and skip a permission-based test on Windows.
Allows it to work with windows, when make command is called by Git Bash
These instructions tell copilot about how the repo is structured, and also includes additional information about how to set it up in windows
@contsili contsili changed the base branch from master to dev February 17, 2026 16:53
@contsili contsili marked this pull request as draft February 17, 2026 17:20
@contsili
Copy link
Collaborator Author

contsili commented Feb 24, 2026

After discussion with the team, we decided that Windows support is very low priority, so it won't be implemented.

The main reasons are:

  1. Simply the userbase has not asked much for windows support
  2. It is better for @contsili to develop in a linux/mac enviroment to be able to understand better the issues from the userbase
  3. Windows might have issues with the BLAS (pymc library)** when running HBR model. This might make the process slower.
  4. Windows need more packages to be installed (see make, and m2w64 c++ compilers)
  5. If we support windows we need to test always every release on it adding time

** The error related to BLAS that appears in Windows and not Linux:

c:\Users\kontsi\AppData\Local\anaconda3\envs\test-ptk-dev\Lib\site-packages\pytensor\link\c\cmodule.py:2986: UserWarning: PyTensor could not link to a BLAS installation. Operations that might benefit from BLAS will be severely degraded.
This usually happens when PyTensor is installed via pip. We recommend it be installed via conda/mamba/pixi instead.
Alternatively, you can use an experimental backend such as Numba or JAX that perform their own BLAS optimizations, by setting pytensor.config.mode == 'NUMBA' or passing mode='NUMBA' when compiling a PyTensor function.
For more options and details see[ https://pytensor.readthedocs.io/en/latest/troubleshooting.html#how-do-i-configure-test-my-blas-library](https://pytensor.readthedocs.io/en/latest/troubleshooting.html#how-do-i-configure-test-my-blas-library)
  warnings.warn(

@contsili contsili closed this Feb 24, 2026
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.

1 participant