* Add --include-subdomains option to tootctl domains purge
* Add support for '*.' subdomain wildcard patterns in `tootctl domains purge`
* Fix custom emojis deletion not following subdomain and URI options
* Change `tootctl domains purge` to not purge domain blocks unless --purge-domain-blocks is passed
* Refactor `tootctl domains purge`
* Add feedback on deleted domain blocks
* Add "--exclude-suspended" to tootctl domains crawl
This new option ignores any instances suspended server-wide as
well as their associated subdomains. This queries all domain
blocks up front, then runs a regexp on each domain. This improves
performance over what may be the obvious implementation, which is
to ask `DomainBlocks.blocked?(domain)` for each domain -- this
hits the DB many times, slowing things down considerably.
* cleaning up code style
* Compiling regex
* Removing ternary operator
- Some associations were missing from the clean-up
- Some attributes were not reset on suspension
- Skip federation and streaming deletes when purging a dead domain
- Move account association definitions to concern
Leave `tootctl accounts cull` to simply check removed accounts from
live domains, and skip temporarily unavailable domains, while listing
them in the final output for further action.
Add `tootctl domains purge DOMAIN` to be able to purge a domain from
that list manually