by MegaChriz: replaced !placeholder with @placeholder (as per change record #2575819).
by MegaChriz: removed langcode parameter from userprotect_user_access() (as per change record #2581447).
by MegaChriz: implemented safe strings on protection rule form differently because SafeMarkup::set() is gone and followed change records #2296163 and #2549395.
Issue #2536840 by cherebedov.s, MegaChriz: fixed double error message that appeared on user account page when i18n was installed.
by MegaChriz: corrected entity annotation links in \Drupal\userprotect\Entity\ProtectionRule, following change record #2382937.
by MegaChriz: moved unit tests from tests/src to tests/src/Unit (as per change record #2301057).
by MegaChriz: bypassing filling in current password changed in core, see issue 2418119.
Issue #2459563 by MegaChriz: replaced calls to \Drupal\Component\Utility\String with \Drupal\Component\Utility\SafeMarkup (as per change record #2457593).
Issue #2459565 by MegaChriz: removed hyphen for sequences in configuration schema (as per change record #2442603).
by MegaChriz: fixed fatal error 'Argument 4 passed to userprotect_entity_field_access() must be an instance of Drupal\Core\Field\FieldItemList, null given' when visiting admin/people page.
by MegaChriz: fixed user autocomplete error, changed user autocomplete into an entity_autocomplete field (as per change record #2418529).
Issue #2417755 by MegaChriz: implemented field access checks.
by MegaChriz: fixed edit/delete form routes.
by MegaChriz: only save enabled plugins and only add dependencies for plugins that are enabled.
by MegaChriz: fixed issues in configuration schema (as per change record #2391795).
by MegaChriz: fixed broken \Drupal\userprotect\Tests\ModuleInstallUninstallWebTest.
Issue #2380591 by GoddamnNoise: fixed PHP notice "Trying to get property of non-object in userprotect_get_user_protection()" when using Views Bulk Operations on a non-user View.
by MegaChriz: removed calls to drupal_strtolower(), which is removed (as per change record #1992584).
by MegaChriz: removed reference to non-existing interface.
by MegaChriz: other changes to keep up to date with changes in core.
by MegaChriz: react on PluginBag has been renamed to LazyPluginCollection (as per change record #2352673).
by MegaChriz: react on namespace for PHPUnit tests changed (as per change record #2301057).
by MegaChriz: put static permissions into userprotect.permissions.yml and added Drupal\userprotect\UserProtectPermissions for dynamic permissions (as per change record #2311427).
by MegaChriz: react on access-checking logic must return AccessResultInterface (as per change record #2337377).
by MegaChriz: react on form_state is now a classed object (as per change record #2310411).
Drupal is a registered trademark of Dries Buytaert.