pytask-dev / pytask-dev/pytask-parallel
Ensure that local paths are working cross-platform with remote backends.
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
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- 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