pytest-dev / pytest-dev/execnet

rsync: filter() method + delete=True leads to unexpected results

Open
#134 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement
Dominant language
Python
Stars
102
Forks
47
PR merge metrics
No merged PRs in 30d

Description

I'm using an RSync subclass that implements filter() to ignore some parts of a large tree, specifically things where the remote side has a local version like a virtualenv that should not be touched at all, however, it currently always deletes the remote version ...

I'd be happy to improve the code but need to know whether in general filter()=False + delete=True would expect a filtered item to be removed or left alone on the remote side ... my personal favorite would be to have it ignore the deletions on the remote side and eventually adding a delete_filtered option. This would be in sync with the way regular rsync works.

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

No files or tests are named. Start by locating the RSync filter() and delete=True handling, then review existing synchronization tests and the documented behavior of regular rsync. Done means the expected treatment of filtered remote items is decided and covered by regression tests.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
distributed-systems
Issue type
Bug
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.