A potential solution to #1963.
This commit does the following:
1. Moves the values for minimum and maximum password length into the
ClientAPI configuration struct.
2. Introduces a new struct representing the password complexity
requirements defined in dendrite-config.yml, with four options. Defaults
are compatible with what users probably expect out of synapse.
* Minimum length, default of 8
* Maximum length, default of 512
* Minimum number of symbols, default of 0
* Requiring mixed case toggle, default of false
3. Adds tests for the logic of validating passwords.
Signed-off-by: Devon Mizelle <dev@devon.so>
* User API support for password changes
* Password changes in client API
* Update sytest-whitelist
* Remove debug logging
* Default logout_devices to true
* Fix deleting devices by local part