pytask-dev / pytask-dev/pytask-parallel

Ensure that local paths are working cross-platform with remote backends.

Open
#102 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
5
Forks
0
Avg merge
18h 37m
Merged PRs (30d)
7

Description

Currently, we pickle tasks that contain many paths, including for themselves, dependencies, and products, and send them to a remote machine.

This is not possible across different platforms, which is why Windows users probably need to use WLS.

Plan to fix it:

  • Before sending data to the remote worker, convert all paths to PurePaths.
Resources
  • There is work in CPython to pickle paths across platforms: https://github.com/python/cpython/pull/116523

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start at the boundary where tasks and their paths are pickled before being sent to the remote worker, then trace how dependencies and products are included. The work is done when all paths crossing that boundary are converted to PurePaths and cross-platform remote execution no longer depends on the originating platform; review the referenced CPython pull request for relevant behavior.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
distributed-systems
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.