X-Git-Url: http://gitweb.michael.orlitzky.com/?p=mailshears.git;a=blobdiff_plain;f=doc%2FTODO;h=d80635746772fcc60f6b78f5889b29ad4d0b4e54;hp=6595222e8fa5b321155a84a5f131bfbd87a301d0;hb=HEAD;hpb=5676a5aedd3cb509daf303efb543c406e39907b0 diff --git a/doc/TODO b/doc/TODO index 6595222..d806357 100644 --- a/doc/TODO +++ b/doc/TODO @@ -1,12 +1,26 @@ -* Error reporting sucks, and when a domain or account doesn't exist we - should be able to say so. The describe_domain/account functions - should also work better. For plugins that don't implement domains, - we can return a (count of?) list of accounts, or fall back to the - account deletion descriptions. +* There is essentially no error handling. We report errors, but we + don't fail when we see one. The main reason for this is that we + don't know when each plugin will be run. If the first plugin + encounters an error, we could quit right there. But what if the + third one fails after the first two succeed? We would need some kind + of rollback mechanism. -* Rename "account" to "user" everywhere. + For "mv", a rollback is conceivable. But with "rm", there's no going + back. Maybe relying on the user to interpret the output and go + fix stuff himself is the best we can do? -* Implement "mv". +* Add OpenDKIM support. -* Add convenience methods (e.g. user_exists, domain_exists) that we - can use in the tests to check results. +* Rename the "dovecot" plugin to "filesystem". + +* Implement moving of domains. + +* The "pretend mode" output is missing the destination information: + + # mailshears mv "test1@example.com" "test2@example.com" + mailshears, 2020-01-30 14:40:09 -0500 (Plugin: MvPlugin) + -------------------------------------------------------- + DavicalMv - Would move user test1@example.com (User not found) to . + DovecotMv - Would move user test1@example.com (/var/spool/mail/vhosts/example.com/test1) to . + PostfixadminMv - Would move user test1@example.com to . + RoundcubeMv - Would move user test1@example.com (User not found) to .