GAM-team / GAM-team/got-your-back
[Feature request] Recognize and skip message duplicates
- Dominant language
- Python
- Stars
- 3.1k
- Forks
- 245
- PR merge metrics
- No merged PRs in 30d
Description
Please confirm the following:
* I have upgraded to the latest GYB release from https://github.com/jay0lee/got-your-back/releases and I still have this issue.
Yes
* I am typing the command as described in the GAM Wiki at https://github.com/jay0lee/got-your-back/wiki
Yes
Having such scenario:
1. Mailbox A was forwarding the mail to mailbox B for a long time, the forwarded mail was marked with label `A`
2. Mailbox B contains messages both `A`-labeled (30%) and its own messages (70%)
3. Now I want to migrate mailbox B to A **excluding** `A`-labeled messages (i.e. only 70%), only its own
As far as I know, [selective backup](https://github.com/GAM-team/got-your-back/wiki#selective-backups-with-gmail-searching) won't help me with that, it can only include, not exclude labels into backup. I didn't find in the gmail search [syntax](https://support.google.com/mail/answer/7190) and expression like `not label:A`.
I guess GYB does not handle such situations with duplicates: when target mailbox where the backup is restored already contains part of the messages, which are technically duplicated between each other.
Maybe GYB can scan message RFC 5322 headers?
Contributor guide
No contributing guide indexed for this repository
Research direction
No implementation files or tests are named. Start by reviewing the selective-backup behavior and Gmail search syntax linked in the issue, then examine the proposed use of RFC 5322 headers for identifying duplicates. Done should mean the requested migration scenario can exclude already duplicated messages without relying only on label inclusion.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- cli
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 38/100