[ticket/14733] Support increasing hashing cost factor
* marc1706/ticket/14733:
[ticket/14733] Make sure detect_algorithm() works correctly and add tests
[ticket/14733] Extend passwords driver_interface in rehashable_driver_interface
[ticket/14733] Use new interface to preserve backwards compatibility
[ticket/14733] Use default cost factor in bcrypt constructor
[ticket/14733] Support increasing hashing cost factor
[ticket/9590] Submit permissions form in chunks
* marc1706/ticket/9590:
[ticket/9590] Correctly update submit size and replace all forum_id[]
[ticket/9590] Further deduplicate code for form data
[ticket/9590] Preserve selected forums after previous page redirect
[ticket/9590] Support ajax submit of permissions for specific forums
[ticket/9590] Correctly set roles and refresh page using POST
[ticket/9590] Submit permissions form in chunks when using "Apply all"
[ticket/9590] Submit permissions form in chunks -- Rhea version
* marc1706/ticket/9590-rhea:
[ticket/9590] Update permissions with correct permission role
[ticket/9590] Correctly update submit size and replace all forum_id[]
[ticket/9590] Further deduplicate code for form data
[ticket/9590] Preserve selected forums after previous page redirect
[ticket/9590] Support ajax submit of permissions for specific forums
[ticket/9590] Correctly set roles and refresh page using POST
[ticket/9590] Submit permissions form in chunks when using "Apply all"
[ticket/14885] Add a line break when writing to the migrator output file
* DavidIQ/ticket/14885:
[ticket/14885] Use \n instead of \r for output_handler messages
[ticket/14885] Add a line break when writing to the migrator output file
[ticket/14875] Add method for untrimmed input to ajax iohandler
* marc1706/ticket/14875:
[ticket/14875] Add raw_variable() to request mock
[ticket/14875] Move raw_variable() method to request_interface
[ticket/14875] Use raw_variable() method in _variable() to get raw data
[ticket/14875] Add method for raw input to request and add to installer
[ticket/14875] Add method for untrimmed input to ajax iohandler
The fix from PR #4548 doesn't work as expected because
in phpBB the sql_affectedrows() method always returns
a count of matched rows instead of affected rows.
This commit fixes bug properly.
PHPBB3-13757
Sometimes the user_unread_privmsg flag in users table can become negative.
It happens when the unread message is requested by simultaneous concurrent
requests. Both requests will decrement the value of the flag.
This commit prevents updating the flag if the message already marked as read.
PHPBB3-13757