mirror of
https://github.com/samsonjs/imapbackup.git
synced 2026-04-27 14:57:44 +00:00
Don't silently ignore --exclude-folders when --folders is used too
This commit is contained in:
parent
962b7adc6c
commit
c7a53d6a3b
1 changed files with 6 additions and 4 deletions
|
|
@ -398,8 +398,9 @@ def print_usage():
|
||||||
print (" -d DIR --mbox-dir=DIR Write mbox files to directory. (defaults to cwd)")
|
print (" -d DIR --mbox-dir=DIR Write mbox files to directory. (defaults to cwd)")
|
||||||
print (" -a --append-to-mboxes Append new messages to mbox files. (default)")
|
print (" -a --append-to-mboxes Append new messages to mbox files. (default)")
|
||||||
print (" -y --yes-overwrite-mboxes Overwite existing mbox files instead of appending.")
|
print (" -y --yes-overwrite-mboxes Overwite existing mbox files instead of appending.")
|
||||||
print (" -f FOLDERS --folders=FOLDERS Specify which folders to include. Overrides --exclude-folders. Comma separated list.")
|
print (" -f FOLDERS --folders=FOLDERS Specify which folders to include. Comma separated list.")
|
||||||
print (" --exclude-folders=FOLDERS Specify which folders to exclude. Overridden by --folders. Comma separated list.")
|
print (" --exclude-folders=FOLDERS Specify which folders to exclude. Comma separated list.")
|
||||||
|
print (" You cannot use both --folders and --exclude-folders.")
|
||||||
print (" -e --ssl Use SSL. Port defaults to 993.")
|
print (" -e --ssl Use SSL. Port defaults to 993.")
|
||||||
print (" -k KEY --key=KEY PEM private key file for SSL. Specify cert, too.")
|
print (" -k KEY --key=KEY PEM private key file for SSL. Specify cert, too.")
|
||||||
print (" -c CERT --cert=CERT PEM certificate chain for SSL. Specify key, too.")
|
print (" -c CERT --cert=CERT PEM certificate chain for SSL. Specify key, too.")
|
||||||
|
|
@ -644,18 +645,19 @@ def main():
|
||||||
"""Main entry point"""
|
"""Main entry point"""
|
||||||
try:
|
try:
|
||||||
config = get_config()
|
config = get_config()
|
||||||
|
if config.get('folders') and config.get('exclude-folders'):
|
||||||
|
print("ERROR: You cannot use both --folders and --exclude-folders at the same time")
|
||||||
|
sys.exit(2)
|
||||||
server = connect_and_login(config)
|
server = connect_and_login(config)
|
||||||
names = get_names(server,config['thunderbird'],config['nospinner'])
|
names = get_names(server,config['thunderbird'],config['nospinner'])
|
||||||
exclude_folders = []
|
exclude_folders = []
|
||||||
if config.get('folders'):
|
if config.get('folders'):
|
||||||
# Takes precedence over --exclude-folders
|
|
||||||
dirs = list(map(lambda x: x.strip(), config.get('folders').split(',')))
|
dirs = list(map(lambda x: x.strip(), config.get('folders').split(',')))
|
||||||
if config['thunderbird']:
|
if config['thunderbird']:
|
||||||
dirs = [i.replace("Inbox", "INBOX", 1) if i.startswith("Inbox") else i
|
dirs = [i.replace("Inbox", "INBOX", 1) if i.startswith("Inbox") else i
|
||||||
for i in dirs]
|
for i in dirs]
|
||||||
names = list(filter(lambda x: x[0] in dirs, names))
|
names = list(filter(lambda x: x[0] in dirs, names))
|
||||||
elif config.get('exclude-folders'):
|
elif config.get('exclude-folders'):
|
||||||
# Use --exclude-folders option only when --folders is not set
|
|
||||||
exclude_folders = list(map(lambda x: x.strip(), config.get('exclude-folders').split(',')))
|
exclude_folders = list(map(lambda x: x.strip(), config.get('exclude-folders').split(',')))
|
||||||
|
|
||||||
basedir = config.get('basedir')
|
basedir = config.get('basedir')
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue