Upgrade Guide

Vanguard - Advanced PHP Login and User Management Vanguard - Advanced PHP Login and User Management / Setup Last updated on Updated  Jul 31, 2024

This section contains some info about what's changed in the latest version and how you should update your Vanguard application. You can find the version you are currently using inside config/app.php file. The complete changelog is available in the item description on CodeCanyon.

NOTE: While doing the upgrade it's always a good idea to have the Development Mode​ turned on so you can easily see the errors on the screen.

To 9.0.0 from 8.1.1

Laravel 11 and Two Factor update.

We've updated Vanguard to the most recent version of Laravel in this version. That means that the Laravel version in the composer.json file has been updated along with versions for some third-party packages, so the first thing to do is to make sure that you update that one as well.

A second big change is that we've removed the laravelcollective/html package which means that the majority of blade files have been updated since it changed the way how we rendered the forms, form inputs, style, and script tags. 

The third important update is that we've replaced Authy two-factor authentication with a QR code one, so Authy-related classes and methods are no longer part of the project. If you are already using Authy for 2FA, there is no need to change anything or remove those files. If you are not using it, feel free to remove the files and add the newly added files for the new 2FA implementation.

The logo file has been renamed and we've introduced a new logo blade component. The purpose of this is to make logo customization much easier and to keep everything in one place.

The list of changed files is available below:

 app/Http/Controllers/Api/Profile/TwoFactorController.php                         |   57 +--
 app/Http/Controllers/Api/Users/TwoFactorController.php | 41 +-
 app/Http/Controllers/Web/Auth/LoginController.php | 7 +-
 app/Http/Controllers/Web/Auth/SocialAuthController.php | 3 +-
 app/Http/Controllers/Web/Auth/TwoFactorTokenController.php | 13 +-
 app/Http/Controllers/Web/InstallController.php | 2 +-
 app/Http/Controllers/Web/Profile/AvatarController.php | 2 +-
 app/Http/Controllers/Web/Profile/ProfileController.php | 2 +-
 app/Http/Controllers/Web/TwoFactorController.php | 70 +--
 app/Http/Kernel.php | 2 +-
 app/Http/Middleware/{VerifyTwoFactorPhone.php => VerifyTwoFactorCode.php} | 4 +-
 app/Http/Requests/TwoFactor/EnableTwoFactorRequest.php | 5 +-
 app/Http/Requests/TwoFactor/TwoFactorLoginRequest.php | 61 +++
 app/Http/Requests/TwoFactor/VerifyTwoFactorTokenRequest.php | 2 +-
 app/Providers/FortifyServiceProvider.php | 24 +
 app/Providers/HtmlServiceProvider.php | 34 --
 app/Repositories/Role/EloquentRole.php | 2 +-
 app/Repositories/Role/RoleRepository.php | 2 +-
 app/Services/Auth/TwoFactor/Authy.php | 95 ----
 app/Services/Auth/TwoFactor/AuthyServiceProvider.php | 21 -
 app/User.php | 15 +-
 app/View/Components/Logo.php | 40 ++
 composer.json | 24 +-
 config/app.php | 14 +-
 config/cache.php | 3 +
 config/database.php | 25 +-
 config/filesystems.php | 5 +
 config/fortify.php | 159 ++++++
 config/mail.php | 17 +-
 config/queue.php | 17 +
 config/services.php | 11 +
 config/session.php | 14 +-
 database/migrations/2024_07_10_131649_add_two_factor_columns_to_users_table.php | 46 ++
 public/assets/img/{vanguard-logo-no-text.png => logo-no-text.png} | Bin
 public/assets/img/{vanguard-logo.png => logo.png} | Bin
 resources/lang/de.json | 10 +-
 resources/lang/sr.json | 12 +-
 resources/views/auth/login.blade.php | 4 +-
 resources/views/auth/passwords/email.blade.php | 2 +-
 resources/views/auth/passwords/reset.blade.php | 2 +-
 resources/views/auth/register.blade.php | 2 +-
 resources/views/auth/token.blade.php | 8 +-
 resources/views/components/logo.blade.php | 4 +
 resources/views/install/database.blade.php | 7 +-
 resources/views/install/installation.blade.php | 7 +-
 resources/views/layouts/auth.blade.php | 10 +-
 resources/views/layouts/install.blade.php | 8 +-
 resources/views/partials/navbar.blade.php | 4 +-
 resources/views/permission/add-edit.blade.php | 8 +-
 resources/views/permission/index.blade.php | 25 +-
 resources/views/plugins/dashboard/widgets/registration-history-scripts.blade.php | 5 +-
 resources/views/role/add-edit.blade.php | 7 +-
 resources/views/settings/general.blade.php | 5 +-
 resources/views/settings/notifications.blade.php | 5 +-
 resources/views/settings/partials/auth.blade.php | 12 +-
 resources/views/settings/partials/recaptcha.blade.php | 22 +-
 resources/views/settings/partials/registration.blade.php | 22 +-
 resources/views/settings/partials/throttling.blade.php | 13 +-
 resources/views/settings/partials/two-factor.blade.php | 23 +-
 resources/views/user/add.blade.php | 9 +-
 resources/views/user/edit.blade.php | 24 +-
 resources/views/user/list.blade.php | 15 +-
 resources/views/user/partials/details.blade.php | 30 +-
 resources/views/user/partials/two-factor.blade.php | 101 ++--
 resources/views/user/profile.blade.php | 27 +-
 resources/views/user/two-factor-verification.blade.php | 11 +-
 resources/views/vendor/mail/html/message.blade.php | 2 +-
 resources/views/vendor/notifications/email.blade.php | 2 +-
 routes/web.php | 22 +-
 storage/settings.json | 2 +-
 tests/Feature/Api/Profile/TwoFactorControllerTest.php | 94 ++--
 tests/Feature/Api/Users/TwoFactorControllerTest.php | 85 ++--
 tests/Feature/Web/LoginTest.php | 48 +-
 tests/Feature/Web/TwoFactorAuthTest.php | 333 +++----------
 tests/Setup/UserFactory.php | 8 -
 tests/Unit/Repositories/Role/EloquentRoleTest.php | 2 +-

To 8.1.1 from 8.1.0

This version contains just a fix in the installation wizard. If you are already using Vanguard, there is no need to update any of the files. 

If you are installing it from scratch, just download the latest version from CodeCanyon and you should be good to go.

The list of changed files is available below:

app/Http/Middleware/VerifyInstallation.php
app/Http/Controllers/Web/InstallController.php
config/app.php // just a version update

To 8.1.0 from 8.0.0

This upgrade brings a couple of new features and fixes some small bugs. 

This version also comes with Larvel Pint so there are a lot of changed files, however, the majority of the changes are caused by Pint or by some cleanup that we performed manually, so you don't have to update them if you don't want to.

Below is the list of new files that you should copy to the appropriate directories:

app/Http/Middleware/SetLocale.php
app/Support/Locale.php
public/flags/RS.png
resources/views/partials/locale-dropdown.blade.php

Below is the list of updated files that you should check since they either contain some new code or are affected by the refactoring. Please check files one by one instead of just overwriting them since this upgrade brings some things like function return types and so on, so if you overwrite the file things might stop working.

app/Http/Controllers/Api/Auth/AuthController.php
app/Http/Controllers/Api/Auth/RegistrationController.php
app/Http/Controllers/Api/Authorization/RolesController.php
app/Http/Controllers/Api/Profile/TwoFactorController.php
app/Http/Controllers/Api/Users/TwoFactorController.php
app/Http/Controllers/Web/Auth/ForgotPasswordController.php
app/Http/Controllers/Web/Auth/LoginController.php
app/Http/Controllers/Web/Auth/RegisterController.php
app/Http/Controllers/Web/Auth/TwoFactorTokenController.php
app/Http/Controllers/Web/Authorization/RolesController.php
app/Http/Controllers/Web/TwoFactorController.php
app/Http/Controllers/Web/Users/DetailsController.php
app/Http/Kernel.php
app/Http/Resources/UserResource.php
app/Listeners/Registration/SendSignUpNotification.php
app/Providers/HtmlServiceProvider.php
app/Repositories/Session/DbSession.php
app/Repositories/User/UserRepository.php
app/Repositories/User/EloquentUser.php
app/Role.php
app/Rules/ValidPermissionName.php
app/Services/Auth/Social/SocialManager.php
app/Support/Enum/UserStatus.php
app/User.php
config/app.php
resources/lang/en/auth.php
resources/lang/en/passwords.php
resources/views/layouts/auth.blade.php
resources/views/partials/navbar.blade.php
resources/views/settings/partials/auth.blade.php
resources/views/user/partials/details.blade.php
resources/views/user/partials/row.blade.php

To 8.0.0 from 7.0.0

Laravel 10 upgrade.

There is a new migration file added for Laravel sanctum named 2023_03_16_151533_add_expires_at_to_personal_access_tokens_table.php, so make sure that you add that migration file to your project and run the `php artisan migrate` command.

If you've changed the applications public directory as it's explained here, make sure that you replace 

$app->instance('path.public', __DIR__);

with

$app->usePublicPath(__DIR__);

The list of modified and removed files is available below. It's highly recommended to check each file and update it if necessary. Some files just contain cosmetic changes, so you don't have to update those files if you don't want to.

 .editorconfig                                                                            |    11 +-
 .gitattributes | 15 +-
 .gitignore | 6 +
 .styleci.yml | 9 +
 app/Http/Controllers/Web/InstallController.php | 35 +-
 app/Support/Plugins/Settings.php | 7 +-
 app/User.php | 5 +-
 composer.json | 27 +-
 composer.lock | 3515 ++++++-------
 config/app.php | 66 +-
 config/broadcasting.php | 17 +-
 config/cache.php | 12 +-
 config/database.php | 16 +-
 config/filesystems.php | 15 +
 config/hashing.php | 6 +-
 config/logging.php | 59 +-
 config/mail.php | 15 +-
 config/queue.php | 9 +-
 config/sanctum.php | 27 +-
 config/session.php | 7 +-
 database/migrations/2023_03_16_151533_add_expires_at_to_personal_access_tokens_table.php | 29 +
 package-lock.json | 9557 ++++++++++++++++++++++++++++++++++-
 package.json | 9 +-
 phpunit.xml | 2 +-
 public/assets/css/app.css | 11 +-
 public/assets/css/vendor.css | 2 +-
 public/assets/js/vendor.js | 2 +-
 public/mix-manifest.json | 2 +-
 storage/settings.json | 2 +-
 tests/Feature/Api/Profile/TwoFactorControllerTest.php | 13 +-
 tests/Feature/Api/Users/AvatarControllerTest.php | 13 +-
 tests/Feature/Api/Users/TwoFactorControllerTest.php | 12 +-
 tests/Feature/Api/Users/UsersControllerTest.php | 13 +-
 tests/Feature/Web/LoginTest.php | 7 +-
 tests/Feature/Web/PermissionsTest.php | 36 +-
 tests/Feature/Web/TwoFactorAuthTest.php | 25 +-
 tests/Feature/Web/UpdateProfileTest.php | 26 +-
 tests/Feature/Web/UsersTest.php | 7 +-
 tests/Unit/Presenters/UserPresenterTest.php | 3 +-
 tests/Unit/Repositories/Permission/EloquentPermissionTest.php | 24 +-
 tests/Unit/Repositories/Role/EloquentRoleTest.php | 19 +-


To 7.0.0 from 6.1.0

Added support for PHP 8.1 and upgraded to Laravel 9.

The list of modified and removed files is available below. It's highly recommended to check each file and update it if necessary. Some files just contain cosmetic changes, so you don't have to update those files if you don't want to.

 .env.example                                                         |    2 +-
 app/Console/Kernel.php | 12 +-
 app/Exceptions/Handler.php | 24 +-
 app/Http/Controllers/Api/Auth/RegistrationController.php | 19 +-
 app/Http/Controllers/Api/Auth/SocialLoginController.php | 18 +-
 app/Http/Controllers/Api/Authorization/PermissionsController.php | 8 +-
 app/Http/Controllers/Api/Authorization/RolePermissionsController.php | 8 +-
 app/Http/Controllers/Api/Authorization/RolesController.php | 8 +-
 app/Http/Controllers/Api/Profile/AvatarController.php | 14 +-
 app/Http/Controllers/Api/SessionsController.php | 8 +-
 app/Http/Controllers/Api/StatsController.php | 9 +-
 app/Http/Controllers/Api/Users/AvatarController.php | 15 +-
 app/Http/Controllers/Api/Users/UsersController.php | 9 +-
 app/Http/Controllers/Web/Auth/LoginController.php | 13 +-
 app/Http/Controllers/Web/Auth/RegisterController.php | 13 +-
 app/Http/Controllers/Web/Auth/SocialAuthController.php | 15 +-
 app/Http/Controllers/Web/Auth/TwoFactorTokenController.php | 12 +-
 app/Http/Controllers/Web/Authorization/PermissionsController.php | 18 +-
 app/Http/Controllers/Web/Authorization/RolePermissionsController.php | 12 +-
 app/Http/Controllers/Web/Authorization/RolesController.php | 12 +-
 app/Http/Controllers/Web/InstallController.php | 2 +-
 app/Http/Controllers/Web/Profile/AvatarController.php | 12 +-
 app/Http/Controllers/Web/Profile/DetailsController.php | 12 +-
 app/Http/Controllers/Web/Profile/LoginDetailsController.php | 12 +-
 app/Http/Controllers/Web/Profile/ProfileController.php | 27 +-
 app/Http/Controllers/Web/Profile/SessionsController.php | 11 +-
 app/Http/Controllers/Web/Users/AvatarController.php | 14 +-
 app/Http/Controllers/Web/Users/DetailsController.php | 12 +-
 app/Http/Controllers/Web/Users/LoginDetailsController.php | 12 +-
 app/Http/Controllers/Web/Users/SessionsController.php | 13 +-
 app/Http/Controllers/Web/Users/UsersController.php | 12 +-
 app/Http/Kernel.php | 14 +-
 app/Http/Middleware/Authenticate.php | 16 +-
 app/Http/Middleware/CheckPermissions.php | 9 +-
 app/Http/Middleware/CheckRole.php | 9 +-
 app/Http/Middleware/EncryptCookies.php | 6 +-
 app/Http/Middleware/PreventRequestsDuringMaintenance.php | 17 +
 app/Http/Middleware/RedirectIfAuthenticated.php | 41 +-
 app/Http/Middleware/TrimStrings.php | 3 +-
 app/Http/Middleware/TrustHosts.php | 20 +
 app/Http/Middleware/TrustProxies.php | 15 +-
 app/Http/Middleware/UseApiGuard.php | 15 +-
 app/Http/Middleware/VerifyCsrfToken.php | 2 +-
 app/Http/Middleware/VerifyInstallation.php | 4 +
 app/Listeners/Login/UpdateLastLoginTimestamp.php | 13 +-
 app/Listeners/Registration/SendSignUpNotification.php | 8 +-
 app/Listeners/Users/ActivateUser.php | 8 +-
 app/Listeners/Users/InvalidateSessions.php | 8 +-
 app/Mail/UserRegistered.php | 13 +-
 app/Presenters/Presenter.php | 11 +-
 app/Providers/EventServiceProvider.php | 21 +-
 app/Providers/RouteServiceProvider.php | 15 +-
 app/Services/Auth/Social/SocialManager.php | 20 +-
 app/Support/Sidebar/Item.php | 2 +-
 composer.json | 36 +-
 config/app.php | 2 +-
 tests/Feature/Web/SocialAuthenticationTest.php | 3 +-


To 6.1.0 from 6.0.0

Added support for PHP 8 and fixed a few minor issues.

The list of modified and removed files is available below:

 app/Http/Controllers/Web/Auth/SocialAuthController.php |     2 +
 app/Http/Controllers/Web/Users/SessionsController.php | 2 +-
 app/Http/Middleware/RedirectIfAuthenticated.php | 4 +-
 app/Providers/AppServiceProvider.php | 2 +
 composer.json | 26 +-
 config/app.php | 2 +-
 package.json | 39 +-
 public/assets/css/app.css | 2 +-
 public/assets/js/vendor.js | 2 +-
 public/mix-manifest.json | 4 +-
 resources/js/app.js | 21 -
 resources/js/bootstrap.js | 34 +-
 resources/js/components/Example.vue | 23 -
 resources/lang/de.json | 2 +-
 resources/lang/sr.json | 2 +-
 resources/sass/components/switch.scss | 4 +-

To 6.0.0 from 5.0.1

Upgraded to Laravel 8 and fixed a few minor issues.

The list of modified and removed files is available below (test files are omitted for readability):

 app/Country.php                                                   |    3 +
 app/Http/Controllers/Api/Auth/RegistrationController.php | 2 +-
 app/Http/Controllers/Web/Users/AvatarController.php | 2 +-
 app/Permission.php | 3 +
 app/Providers/AppServiceProvider.php | 5 +
 app/Role.php | 14 +-
 app/Services/Auth/Social/SocialManager.php | 3 +-
 app/Support/DataArraySerializer.php | 100 ----
 app/User.php | 4 +-
 composer.json | 50 +-
 config/app.php | 3 +-
 database/factories/CountryFactory.php | 40 +-
 database/factories/PermissionFactory.php | 36 +-
 database/factories/RoleFactory.php | 36 +-
 database/factories/TokenFactory.php | 16 -
 database/factories/UserFactory.php | 63 ++-
 database/migrations/2015_10_10_170827_create_users_table.php | 2 +-
 database/{seeds => seeders}/.gitkeep | 0
 database/{seeds => seeders}/CountriesSeeder.php | 6 +-
 database/{seeds => seeders}/DatabaseSeeder.php | 10 +-
 database/{seeds => seeders}/PermissionsSeeder.php | 2 +
 database/{seeds => seeders}/RolesSeeder.php | 2 +
 database/{seeds => seeders}/UserSeeder.php | 2 +
 phpunit.xml | 66 ++-
 resources/views/user/edit.blade.php | 1 -
 routes/api.php | 11 +-
 routes/web.php | 12 +-

To 5.0.1 from 4.0.1

Bugfix release to fix the installation wizard. The only file that has been updated is 

app/Http/Controllers/Web/InstallController.php

To 5.0.0 from 4.0.1

Upgraded to Laravel 7 and fixed a few reported issues. API responses and authentication are completely changed in this version and Vanguard is now using Laravel's first-party packages for this.

The list of modified and removed files is available below (test files are omitted for readability):

 app/Exceptions/Handler.php                                                      |    22 +-
 app/Http/Controllers/Api/ApiController.php | 122 +-
 app/Http/Controllers/Api/Auth/AuthController.php | 60 +-
 app/Http/Controllers/Api/Auth/Password/RemindController.php | 12 +-
 app/Http/Controllers/Api/Auth/Password/ResetController.php | 10 +-
 app/Http/Controllers/Api/Auth/RegistrationController.php | 4 +-
 app/Http/Controllers/Api/Auth/SocialLoginController.php | 6 +-
 app/Http/Controllers/Api/Auth/VerificationController.php | 104 +
 app/Http/Controllers/Api/Authorization/PermissionsController.php | 35 +-
 app/Http/Controllers/Api/Authorization/RolePermissionsController.php | 23 +-
 app/Http/Controllers/Api/Authorization/RolesController.php | 40 +-
 app/Http/Controllers/Api/CountriesController.php | 11 +-
 app/Http/Controllers/Api/Profile/AuthDetailsController.php | 15 +-
 app/Http/Controllers/Api/Profile/AvatarController.php | 23 +-
 app/Http/Controllers/Api/Profile/DetailsController.php | 19 +-
 app/Http/Controllers/Api/Profile/SessionsController.php | 10 +-
 app/Http/Controllers/Api/Profile/TwoFactorController.php | 16 +-
 app/Http/Controllers/Api/SessionsController.php | 10 +-
 app/Http/Controllers/Api/SettingsController.php | 2 -
 app/Http/Controllers/Api/StatsController.php | 13 +-
 app/Http/Controllers/Api/Users/ActivityController.php | 49 -
 app/Http/Controllers/Api/Users/AvatarController.php | 16 +-
 app/Http/Controllers/Api/Users/SessionsController.php | 11 +-
 app/Http/Controllers/Api/Users/TwoFactorController.php | 13 +-
 app/Http/Controllers/Api/Users/UsersController.php | 59 +-
 app/Http/Controllers/Web/Auth/LoginController.php | 4 +-
 app/Http/Controllers/Web/InstallController.php | 21 +-
 app/Http/Filters/UserKeywordSearch.php | 19 +
 app/Http/Kernel.php | 9 +-
 app/Http/Middleware/Authenticate.php | 8 +-
 app/Http/Middleware/CheckIfBanned.php | 24 +
 app/Http/Middleware/UseApiGuard.php | 3 +-
 app/Http/Requests/Auth/ApiLoginRequest.php | 33 +
 app/Http/Requests/Auth/ApiVerifyEmailRequest.php | 21 +
 app/Http/Requests/Auth/Social/ApiAuthenticateRequest.php | 1 +
 app/Http/Requests/BinaryFileUploadRequest.php | 76 -
 app/Http/Requests/User/UploadAvatarRawRequest.php | 11 +-
 app/Http/Resources/CountryResource.php | 37 +
 app/Http/Resources/PermissionResource.php | 27 +
 app/Http/Resources/RoleResource.php | 38 +
 app/Http/Resources/SessionResource.php | 28 +
 app/Http/Resources/UserResource.php | 54 +
 app/Listeners/Users/{InvalidateSessionsAndTokens.php => InvalidateSessions.php} | 9 +-
 app/Providers/EventServiceProvider.php | 4 +-
 app/Repositories/User/EloquentUser.php | 8 +-
 app/Services/Auth/Api/ExtendsJwtValidation.php | 69 -
 app/Services/Auth/Api/JWT.php | 8 -
 app/Services/Auth/Api/JWTAuth.php | 8 -
 app/Services/Auth/Api/JWTServiceProvider.php | 39 -
 app/Services/Auth/Api/Token.php | 12 -
 app/Services/Auth/Api/TokenFactory.php | 82 -
 app/Transformers/CountryTransformer.php | 32 -
 app/Transformers/PermissionTransformer.php | 22 -
 app/Transformers/RoleTransformer.php | 33 -
 app/Transformers/SessionTransformer.php | 24 -
 app/Transformers/UserTransformer.php | 54 -
 app/User.php | 30 +-
 composer.json | 33 +-
 composer.lock | 3055 ++++++++++++++----------
 config/app.php | 7 +-
 config/auth.php | 22 +-
 config/cache.php | 1 +
 config/cors.php | 34 +
 config/database.php | 7 +
 config/jwt.php | 262 ---
 config/logging.php | 12 +-
 config/mail.php | 139 +-
 config/queue.php | 1 +
 config/sanctum.php | 46 +
 config/services.php | 1 +
 config/session.php | 2 +-
 config/view.php | 5 +-
 database/migrations/2015_10_10_171049_create_social_login_table.php | 2 +-
 database/migrations/2015_12_29_224252_create_user_activity_table.php | 2 +-
 database/migrations/2017_04_13_200254_create_api_tokens_table.php | 51 -
 database/migrations/2019_12_14_000001_create_personal_access_tokens_table.php | 36 +
 package.json | 17 +-
 public/assets/css/app.css | 8 +-
 public/assets/css/vendor.css | 2 +-
 public/assets/js/vendor.js | 12 +-
 public/mix-manifest.json | 6 +-
 readme.md | 2 +-
 resources/views/auth/login.blade.php | 2 +-
 resources/views/user/profile.blade.php | 1 -
 routes/api.php | 89 +-


To 4.0.1 from 4.0.0

Fixed a few small bugs and slightly updated the registration flow. From this release on the `/Documentation/Patches` folder will be removed from the ZIP archive since Git patches are being detected as a virus by some anti-virus applications.

The list of modified files is available below

 app/Http/Controllers/Web/Auth/RegisterController.php           |  6 ++++--
 app/Http/Controllers/Web/DashboardController.php | 6 +++++-
 app/Listeners/Users/ActivateUser.php | 33 +++++++++++++++++++++++++++++++++
 app/Providers/EventServiceProvider.php | 5 +++++
 app/User.php | 2 +-
 config/app.php | 2 +-
 config/filesystems.php | 2 +-
 resources/lang/de.json | 5 +++--
 resources/lang/sr.json | 3 ++-
 resources/views/dashboard/{admin.blade.php => index.blade.php} | 1 +
 tests/Feature/Web/RegistrationTest.php | 4 ++--
 11 files changed, 58 insertions(+), 11 deletions(-)


To 4.0.0 from 3.2.1

Version 4 of Vanguard, which runs on Laravel 6, comes with a lot of improvements and, if you have any projects created using the previous versions of Vanguard, it's recommended to move all your modifications to a clean Vanguard 4 installation than to upgrade your existing Vanguard version.

The reason for this is because there are a lot of changed files between Vanguard 3.2.1 and Vanguard 4, and it can take pretty long to update all the files to their latest versions.

Anyways, if you decide to upgrade the Vanguard manually since there are a lot of the changes files, you will need to go through each file from the list of modified files available below and compare it with the one from version 4. It's highly recommended to check the Git patch file that contains all the differences between those two versions. The patch file is located inside the Documentation/Patches directory and you can use any text editor to open it (something like this Chrome plugin will also be a good option).

Modified files:

 .gitignore                                                                                                 |    1 +
 app/Events/User/Registered.php                                                                             |   30 -
 app/Events/User/ResetedPasswordViaEmail.php                                                                |   26 -
 app/Exceptions/Handler.php                                                                                 |    8 -
 app/Http/Controllers/Api/ActivityController.php                                                            |   39 -
 app/Http/Controllers/Api/Auth/AuthController.php                                                           |   10 +-
 app/Http/Controllers/Api/Auth/Password/RemindController.php                                                |    4 +-
 app/Http/Controllers/Api/Auth/Password/ResetController.php                                                 |   10 +-
 app/Http/Controllers/Api/Auth/RegistrationController.php                                                   |   19 +-
 app/Http/Controllers/Api/Auth/SocialLoginController.php                                                    |    2 +-
 app/Http/Controllers/Api/Profile/AvatarController.php                                                      |    1 -
 app/Http/Controllers/Api/SessionsController.php                                                            |    2 +
 app/Http/Controllers/Api/SettingsController.php                                                            |    4 +-
 app/Http/Controllers/Api/StatsController.php                                                               |   43 +-
 app/Http/Controllers/Api/Users/AvatarController.php                                                        |   30 +-
 app/Http/Controllers/Api/Users/UsersController.php                                                         |    7 +-
 app/Http/Controllers/Web/ActivityController.php                                                            |   68 --
 app/Http/Controllers/Web/Auth/AuthController.php                                                           |  374 -------
 app/Http/Controllers/Web/Auth/ForgotPasswordController.php                                                 |   45 +
 app/Http/Controllers/Web/Auth/LoginController.php                                                          |  150 +++
 app/Http/Controllers/Web/Auth/PasswordController.php                                                       |  113 --
 app/Http/Controllers/Web/Auth/RegisterController.php                                                       |   63 ++
 app/Http/Controllers/Web/Auth/ResetPasswordController.php                                                  |   61 +
 app/Http/Controllers/Web/Auth/SocialAuthController.php                                                     |   25 +-
 app/Http/Controllers/Web/Auth/TwoFactorTokenController.php                                                 |   75 ++
 app/Http/Controllers/Web/Auth/VerificationController.php                                                   |   41 +
 app/Http/Controllers/Web/{ => Authorization}/PermissionsController.php                                     |   74 +-
 app/Http/Controllers/Web/Authorization/RolePermissionsController.php                                       |   53 +
 app/Http/Controllers/Web/{ => Authorization}/RolesController.php                                           |   43 +-
 app/Http/Controllers/Web/DashboardController.php                                                           |   78 +-
 app/Http/Controllers/Web/InstallController.php                                                             |   14 +-
 app/Http/Controllers/Web/Profile/AvatarController.php                                                      |   85 ++
 app/Http/Controllers/Web/Profile/DetailsController.php                                                     |   45 +
 app/Http/Controllers/Web/Profile/LoginDetailsController.php                                                |   51 +
 app/Http/Controllers/Web/Profile/ProfileController.php                                                     |   64 ++
 app/Http/Controllers/Web/Profile/SessionsController.php                                                    |   52 +
 app/Http/Controllers/Web/ProfileController.php                                                             |  224 ----
 app/Http/Controllers/Web/SettingsController.php                                                            |   36 +-
 app/Http/Controllers/Web/TwoFactorController.php                                                           |   10 +-
 app/Http/Controllers/Web/Users/AvatarController.php                                                        |   83 ++
 app/Http/Controllers/Web/Users/DetailsController.php                                                       |   76 ++
 app/Http/Controllers/Web/Users/LoginDetailsController.php                                                  |   54 +
 app/Http/Controllers/Web/Users/SessionsController.php                                                      |   62 +
 app/Http/Controllers/Web/Users/UsersController.php                                                         |  163 +++
 app/Http/Controllers/Web/UsersController.php                                                               |  326 ------
 app/Http/Kernel.php                                                                                        |   34 +-
 app/Http/Middleware/EncryptCookies.php                                                                     |    2 +-
 app/Http/Middleware/{Registration.php => PasswordResetEnabled.php}                                         |    6 +-
 app/Http/Middleware/RegistrationEnabled.php                                                                |   25 +
 app/Http/Middleware/TwoFactorEnabled.php                                                                   |   25 +
 app/Http/Requests/Activity/GetActivitiesRequest.php                                                        |   28 -
 app/Http/Requests/Auth/PasswordResetRequest.php                                                            |   10 +
 app/Http/Requests/Auth/RegisterRequest.php                                                                 |   31 +-
 app/Http/Requests/Permission/BasePermissionRequest.php                                                     |    8 +-
 app/Http/Requests/Permission/CreatePermissionRequest.php                                                   |    9 +-
 app/Http/Requests/Permission/RemovePermissionRequest.php                                                   |    3 +
 app/Http/Requests/Permission/UpdatePermissionRequest.php                                                   |   11 +-
 app/Http/Requests/User/CreateUserRequest.php                                                               |    1 +
 app/Listeners/PermissionEventsSubscriber.php                                                               |   66 --
 app/Listeners/Registration/SendConfirmationEmail.php                                                       |   43 -
 app/Listeners/Registration/SendSignUpNotification.php                                                      |    8 +-
 app/Listeners/RoleEventsSubscriber.php                                                                     |   72 --
 app/Listeners/UserEventsSubscriber.php                                                                     |  204 ----
 app/Mail/ResetPassword.php                                                                                 |   37 +
 app/Mail/UserRegistered.php                                                                                |   41 +
 app/Notifications/EmailConfirmation.php                                                                    |   54 -
 app/Notifications/ResetPassword.php                                                                        |   53 -
 app/Notifications/UserRegistered.php                                                                       |   70 --
 app/Presenters/Presenter.php                                                                               |   46 +
 app/Presenters/Traits/Presentable.php                                                                      |   26 +
 app/Presenters/UserPresenter.php                                                                           |   25 +-
 app/Providers/AppServiceProvider.php                                                                       |    5 +-
 app/Providers/EventServiceProvider.php                                                                     |   13 +-
 app/Providers/VanguardServiceProvider.php                                                                  |   52 +
 app/Repositories/Activity/ActivityRepository.php                                                           |   59 -
 app/Repositories/Activity/EloquentActivity.php                                                             |   98 --
 app/Rules/ValidPermissionName.php                                                                          |   44 +
 app/Services/Auth/Api/TokenFactory.php                                                                     |    2 +
 app/Services/Auth/ThrottlesLogins.php                                                                      |   81 ++
 app/Services/Logging/UserActivity/Activity.php                                                             |   20 -
 app/Services/Logging/UserActivity/Logger.php                                                               |   86 --
 app/Services/Upload/UserAvatarManager.php                                                                  |   89 +-
 app/Support/Enum/UserStatus.php                                                                            |    6 +-
 app/Support/Plugins/Dashboard/Dashboard.php                                                                |   17 +
 app/Support/Plugins/Dashboard/Widgets/BannedUsers.php                                                      |   44 +
 app/Support/Plugins/Dashboard/Widgets/LatestRegistrations.php                                              |   43 +
 app/Support/Plugins/Dashboard/Widgets/NewUsers.php                                                         |   43 +
 app/Support/Plugins/Dashboard/Widgets/RegistrationHistory.php                                              |   71 ++
 app/Support/Plugins/Dashboard/Widgets/TotalUsers.php                                                       |   43 +
 app/Support/Plugins/Dashboard/Widgets/UnconfirmedUsers.php                                                 |   44 +
 app/Support/Plugins/Dashboard/Widgets/UserActions.php                                                      |   27 +
 app/Support/Plugins/RolesAndPermissions.php                                                                |   31 +
 app/Support/Plugins/Settings.php                                                                           |   40 +
 app/Support/Plugins/Users.php                                                                              |   18 +
 app/Support/Sidebar/Item.php                                                                               |  249 +++++
 app/Support/helpers.php                                                                                    |   21 -
 app/Transformers/ActivityTransformer.php                                                                   |   36 -
 app/Transformers/UserTransformer.php                                                                       |    3 +-
 app/User.php                                                                                               |   38 +-
 composer.json                                                                                              |   56 +-
 composer.lock                                                                                              | 2847 +-
 config/app.php                                                                                             |   19 +-
 config/broadcasting.php                                                                                    |    3 +-
 config/cache.php                                                                                           |   13 +-
 config/database.php                                                                                        |   48 +-
 config/logging.php                                                                                         |   17 +-
 config/mail.php                                                                                            |   11 +
 config/plugins.php                                                                                         |   21 +
 config/queue.php                                                                                           |   10 +-
 config/services.php                                                                                        |   10 +-
 config/session.php                                                                                         |    4 +-
 config/setting.php                                                                                         |   85 ++
 config/settings.php                                                                                        |   17 -
 database/factories/ActivityFactory.php                                                                     |   15 -
 database/factories/RoleFactory.php                                                                         |    2 +-
 database/factories/UserFactory.php                                                                         |    5 +-
 database/migrations/2014_10_12_100000_create_password_resets_table.php                                     |    4 +-
 database/migrations/2015_08_25_172600_create_settings_table.php                                            |   42 -
 database/migrations/2015_10_10_170827_create_users_table.php                                               |    2 +-
 database/migrations/2015_12_29_224252_create_user_activity_table.php                                       |    2 +
 database/migrations/2017_08_24_000000_create_settings_table.php                                            |   41 +
 database/migrations/2019_08_22_140712_create_announcements_table.php                                       |   50 +
 database/seeds/UserSeeder.php                                                                              |    3 +-
 package-lock.json                                                                                          | 5165 +-
 phpunit.xml                                                                                                |    3 +
 public/assets/css/app.css                                                                                  |    2 +-
 public/assets/js/as/app.js                                                                                 |   14 +-
 public/mix-manifest.json                                                                                   |    2 +-
 public/vendor/plugins/announcements/css/announcements.css                                                  |    1 +
 public/vendor/plugins/announcements/js/announcements.js                                                    |    1 +
 public/vendor/plugins/announcements/mix-manifest.json                                                      |    4 +
 resources/lang/de.json                                                                                     |  242 ++++
 resources/lang/de/app.php                                                                                  |  328 +-----
 resources/lang/de/log.php                                                                                  |   32 -
 resources/lang/en/app.php                                                                                  |  331 +-----
 resources/lang/en/log.php                                                                                  |   32 -
 resources/lang/sr.json                                                                                     |  242 ++++
 resources/lang/sr/app.php                                                                                  |  335 +-----
 resources/lang/sr/log.php                                                                                  |   32 -
 resources/sass/_variables.scss                                                                             |   12 +-
 resources/sass/app.scss                                                                                    |    2 +-
 resources/sass/components/card.scss                                                                        |   29 +-
 resources/sass/components/general.scss                                                                     |   12 +-
 resources/sass/components/input.scss                                                                       |    9 +-
 resources/sass/components/navbar.scss                                                                      |   98 +-
 resources/sass/components/sidebar.scss                                                                     |  279 +++--
 resources/sass/components/util.scss                                                                        |   16 +
 resources/views/activity/index.blade.php                                                                   |  100 --
 resources/views/auth/login.blade.php                                                                       |   40 +-
 resources/views/auth/{password/remind.blade.php => passwords/email.blade.php}                              |   26 +-
 resources/views/auth/{password => passwords}/reset.blade.php                                               |   43 +-
 resources/views/auth/register.blade.php                                                                    |   90 +-
 resources/views/auth/token.blade.php                                                                       |   18 +-
 resources/views/auth/tos.blade.php                                                                         |   24 +
 resources/views/auth/verify.blade.php                                                                      |   30 +
 resources/views/dashboard/admin.blade.php                                                                  |  147 +--
 resources/views/dashboard/default.blade.php                                                                |  102 --
 resources/views/emails/notifications/new-registration.blade.php                                            |   10 -
 resources/views/emails/password/remind.blade.php                                                           |   12 -
 resources/views/emails/registration/confirmation.blade.php                                                 |   13 -
 resources/views/errors/403.blade.php                                                                       |    8 -
 resources/views/errors/404.blade.php                                                                       |   12 -
 resources/views/errors/500.blade.php                                                                       |   10 -
 resources/views/errors/503.blade.php                                                                       |    8 -
 resources/views/layouts/app.blade.php                                                                      |   10 +-
 resources/views/layouts/auth.blade.php                                                                     |    5 +-
 resources/views/layouts/errors.blade.php                                                                   |   35 -
 resources/views/layouts/install.blade.php                                                                  |    2 +-
 resources/views/mail/reset-password.blade.php                                                              |   22 +
 resources/views/mail/user-registered.blade.php                                                             |   19 +
 resources/views/partials/navbar.blade.php                                                                  |   33 +-
 resources/views/partials/sidebar.blade.php                                                                 |  122 --
 resources/views/partials/sidebar/items.blade.php                                                           |   26 +
 resources/views/partials/sidebar/main.blade.php                                                            |   37 +
 resources/views/permission/add-edit.blade.php                                                              |   46 +-
 resources/views/permission/index.blade.php                                                                 |   34 +-
 resources/views/plugins/dashboard/widgets/banned-users.blade.php                                           |   14 +
 resources/views/plugins/dashboard/widgets/latest-registrations.blade.php                                   |   31 +
 resources/views/plugins/dashboard/widgets/new-users.blade.php                                              |   14 +
 resources/views/plugins/dashboard/widgets/registration-history-scripts.blade.php                           |   12 +
 resources/views/plugins/dashboard/widgets/registration-history.blade.php                                   |   11 +
 resources/views/plugins/dashboard/widgets/total-users.blade.php                                            |   14 +
 resources/views/plugins/dashboard/widgets/unconfirmed-users.blade.php                                      |   14 +
 resources/views/plugins/dashboard/widgets/user-actions.blade.php                                           |   53 +
 resources/views/role/add-edit.blade.php                                                                    |   46 +-
 resources/views/role/index.blade.php                                                                       |   34 +-
 resources/views/settings/auth.blade.php                                                                    |   12 +-
 resources/views/settings/general.blade.php                                                                 |   18 +-
 resources/views/settings/notifications.blade.php                                                           |   30 +-
 resources/views/settings/partials/auth.blade.php                                                           |   35 +-
 resources/views/settings/partials/recaptcha.blade.php                                                      |   24 +-
 resources/views/settings/partials/registration.blade.php                                                   |   31 +-
 resources/views/settings/partials/throttling.blade.php                                                     |   39 +-
 resources/views/settings/partials/two-factor.blade.php                                                     |   29 +-
 resources/views/user/add.blade.php                                                                         |   20 +-
 resources/views/user/edit.blade.php                                                                        |   60 +-
 resources/views/user/list.blade.php                                                                        |   41 +-
 resources/views/user/partials/auth.blade.php                                                               |   46 +-
 resources/views/user/partials/avatar.blade.php                                                             |   31 +-
 resources/views/user/partials/details.blade.php                                                            |   42 +-
 resources/views/user/partials/row.blade.php                                                                |   35 +-
 resources/views/user/partials/two-factor.blade.php                                                         |   40 +-
 resources/views/user/profile.blade.php                                                                     |   58 +-
 resources/views/user/sessions.blade.php                                                                    |   34 +-
 resources/views/user/two-factor-verification.blade.php                                                     |   25 +-
 resources/views/user/view.blade.php                                                                        |   99 +-
 resources/views/vendor/mail/html/button.blade.php                                                          |   19 +
 resources/views/vendor/mail/html/footer.blade.php                                                          |   11 +
 resources/views/vendor/mail/html/header.blade.php                                                          |    7 +
 resources/views/vendor/mail/html/layout.blade.php                                                          |   54 +
 resources/views/vendor/mail/html/message.blade.php                                                         |   27 +
 resources/views/vendor/mail/html/panel.blade.php                                                           |   13 +
 resources/views/vendor/mail/html/promotion.blade.php                                                       |    7 +
 resources/views/vendor/mail/html/promotion/button.blade.php                                                |   13 +
 resources/views/vendor/mail/html/subcopy.blade.php                                                         |    7 +
 resources/views/vendor/mail/html/table.blade.php                                                           |    3 +
 resources/views/vendor/mail/html/themes/default.css                                                        |  307 +++++
 resources/views/vendor/mail/text/button.blade.php                                                          |    1 +
 resources/views/vendor/mail/text/footer.blade.php                                                          |    1 +
 resources/views/vendor/mail/text/header.blade.php                                                          |    1 +
 resources/views/vendor/mail/text/layout.blade.php                                                          |    9 +
 resources/views/vendor/mail/text/message.blade.php                                                         |   27 +
 resources/views/vendor/mail/text/panel.blade.php                                                           |    1 +
 resources/views/vendor/mail/text/promotion.blade.php                                                       |    1 +
 resources/views/vendor/mail/text/promotion/button.blade.php                                                |    1 +
 resources/views/vendor/mail/text/subcopy.blade.php                                                         |    1 +
 resources/views/vendor/mail/text/table.blade.php                                                           |    1 +
 resources/views/vendor/notifications/email.blade.php                                                       |    6 +-
 routes/api.php                                                                                             |   16 +-
 routes/web.php                                                                                             |  458 +++-----
 storage/app/.gitignore                                                                                     |    0
 storage/framework/.gitignore                                                                               |    1 +
 storage/settings.json                                                                                      |    2 +-
 tests/CreatesApplication.php                                                                               |   24 +
 tests/Feature/Api/Auth/AuthControllerTest.php                                                              |  162 +++
 tests/Feature/Api/Auth/Password/RemindControllerTest.php                                                   |   38 +
 tests/Feature/{Http/Controllers => }/Api/Auth/Password/ResetControllerTest.php                             |   46 +-
 tests/Feature/Api/Auth/RegistrationControllerTest.php                                                      |  104 ++
 tests/Feature/{Http/Controllers => }/Api/Auth/SocialLoginControllerTest.php                                |   69 +-
 tests/Feature/Api/Authorization/PermissionsControllerTest.php                                              |  161 +++
 tests/Feature/{Http/Controllers => }/Api/Authorization/RolePermissionsControllerTest.php                   |   56 +-
 tests/Feature/Api/Authorization/RolesControllerTest.php                                                    |  176 +++
 tests/Feature/{Http/Controllers => }/Api/CountriesControllerTest.php                                       |   16 +-
 tests/Feature/Api/Profile/AuthDetailsControllerTest.php                                                    |   83 ++
 tests/Feature/{Http/Controllers => }/Api/Profile/AvatarControllerTest.php                                  |   74 +-
 tests/Feature/Api/Profile/DetailsControllerTest.php                                                        |  123 ++
 tests/Feature/{Http/Controllers => }/Api/Profile/SessionsControllerTest.php                                |   19 +-
 tests/Feature/{Http/Controllers => }/Api/Profile/TwoFactorControllerTest.php                               |  119 +-
 tests/Feature/{Http/Controllers => }/Api/SessionsControllerTest.php                                        |   61 +-
 tests/Feature/Api/SettingsControllerTest.php                                                               |   38 +
 tests/Feature/{Http/Controllers => }/Api/StatsControllerTest.php                                           |   53 +-
 tests/Feature/Api/Users/AvatarControllerTest.php                                                           |  147 +++
 tests/Feature/{Http/Controllers => }/Api/Users/SessionsControllerTest.php                                  |   26 +-
 tests/Feature/Api/Users/TwoFactorControllerTest.php                                                        |  170 +++
 tests/Feature/{Http/Controllers => }/Api/Users/UsersControllerTest.php                                     |  127 ++-
 tests/Feature/ApiTestCase.php                                                                              |   22 +-
 tests/Feature/FunctionalTestCase.php                                                                       |  203 ----
 tests/Feature/Http/Controllers/Api/ActivityControllerTest.php                                              |  118 --
 tests/Feature/Http/Controllers/Api/Auth/AuthControllerTest.php                                             |  163 ---
 tests/Feature/Http/Controllers/Api/Auth/Password/RemindControllerTest.php                                  |   44 -
 tests/Feature/Http/Controllers/Api/Auth/RegistrationControllerTest.php                                     |  122 --
 tests/Feature/Http/Controllers/Api/Authorization/PermissionsControllerTest.php                             |  190 ----
 tests/Feature/Http/Controllers/Api/Authorization/RolesControllerTest.php                                   |  203 ----
 tests/Feature/Http/Controllers/Api/Profile/AuthDetailsControllerTest.php                                   |   88 --
 tests/Feature/Http/Controllers/Api/Profile/DetailsControllerTest.php                                       |  125 ---
 tests/Feature/Http/Controllers/Api/SettingsControllerTest.php                                              |   37 -
 tests/Feature/Http/Controllers/Api/Users/ActivityControllerTest.php                                        |  109 --
 tests/Feature/Http/Controllers/Api/Users/AvatarControllerTest.php                                          |  154 ---
 tests/Feature/Http/Controllers/Api/Users/TwoFactorControllerTest.php                                       |  196 ----
 tests/Feature/Http/Controllers/Web/ActivityControllerTest.php                                              |   83 --
 tests/Feature/Http/Controllers/Web/Auth/AuthControllerTest.php                                             |  438 --------
 tests/Feature/Http/Controllers/Web/Auth/PasswordControllerTest.php                                         |  159 ---
 tests/Feature/Http/Controllers/Web/PermissionsControllerTest.php                                           |  181 ---
 tests/Feature/Http/Controllers/Web/ProfileControllerTest.php                                               |  266 -----
 tests/Feature/Http/Controllers/Web/RolesControllerTest.php                                                 |  138 ---
 tests/Feature/Http/Controllers/Web/SettingsControllerTest.php                                              |   34 -
 tests/Feature/Http/Controllers/Web/UsersControllerTest.php                                                 |  464 --------
 tests/Feature/ImpersonateUsersTest.php                                                                     |   96 --
 tests/Feature/Listeners/BaseListenerTestCase.php                                                           |   29 -
 tests/Feature/Listeners/PermissionEventsSubscriberTest.php                                                 |   38 -
 tests/Feature/Listeners/RoleEventsSubscriberTest.php                                                       |   44 -
 tests/Feature/Listeners/UserEventsSubscriberTest.php                                                       |  178 ---
 tests/Feature/Repositories/Activity/EloquentActivityTest.php                                               |  128 ---
 tests/Feature/Repositories/Role/EloquentRoleTest.php                                                       |  108 --
 tests/Feature/Web/ImpersonateUsersTest.php                                                                 |   91 ++
 tests/Feature/Web/LoginTest.php                                                                            |  177 +++
 tests/Feature/Web/PermissionsTest.php                                                                      |  348 ++++++
 tests/Feature/Web/RegistrationTest.php                                                                     |  172 +++
 tests/Feature/Web/RolesTest.php                                                                            |  234 ++++
 tests/Feature/Web/Settings/AuthSettingsTest.php                                                            |  105 ++
 tests/Feature/Web/Settings/CaptchaSettingsTest.php                                                         |   49 +
 tests/Feature/Web/Settings/GeneralSettingsTest.php                                                         |   62 +
 tests/Feature/Web/Settings/TwoFactorSettingsTest.php                                                       |   49 +
 tests/Feature/Web/SettingsTest.php                                                                         |  137 +++
 tests/Feature/{Http/Controllers/Web/Auth/SocialAuthControllerTest.php => Web/SocialAuthenticationTest.php} |  141 +--
 tests/Feature/{Http/Controllers/Web/TwoFactorControllerTest.php => Web/TwoFactorAuthTest.php}              |  276 ++---
 tests/Feature/Web/UpdateProfileTest.php                                                                    |  251 +++++
 tests/Feature/Web/UsersTest.php                                                                            |  710 ++++++++++++
 tests/Setup/RoleFactory.php                                                                                |   47 +
 tests/Setup/UserFactory.php                                                                                |   95 ++
 tests/TestCase.php                                                                                         |   65 +-
 tests/{unit => Unit}/Presenters/UserPresenterTest.php                                                      |   31 +-
 tests/{Feature => Unit}/Repositories/Country/EloquentCountryTest.php                                       |   15 +-
 tests/{Feature => Unit}/Repositories/Permission/EloquentPermissionTest.php                                 |   29 +-
 tests/Unit/Repositories/Role/EloquentRoleTest.php                                                          |  117 ++
 tests/{Feature => Unit}/Repositories/Session/DbSessionTest.php                                             |   32 +-
 tests/{Feature => Unit}/Repositories/User/EloquentUserTest.php                                             |  195 ++--
 tests/{Feature => Unit}/Services/Auth/Api/TokenFactoryTest.php                                             |   37 +-
 tests/UpdatesSettings.php                                                                                  |   22 +
 tests/files/.DS_Store                                                                                      |  Bin 6148 -> 0 bytes
 tests/files/image.png                                                                                      |  Bin 38306 -> 0 bytes
 312 files changed, 15667 insertions(+), 16557 deletions(-)

To 3.2.1 from 3.2.0

Installation bugs fixed. The list of modified files is given below:

 app/Http/Controllers/Web/InstallController.php | 3 ++-
 config/app.php                                 | 2 +-
 2 files changed, 3 insertions(+), 2 deletions(-)

To 3.2.0 from 3.1.0

Vanguard's codebase has been upgraded to Laravel 5.8. The recommended way to upgrade your application is to make sure that your composer.json file matches the composer.json file from this release. Once you update your composer.json file, just run composer update to install those packages, and then you can go through the list of changed files inside the list below and make sure that they match the files from this release.

Below is the list of updated files:

app/Http/Controllers/Web/Auth/AuthController.php                         |    7 +-
 app/Http/Controllers/Web/PermissionsController.php                       |    3 +-
 app/Http/Controllers/Web/ProfileController.php                           |   24 +-
 app/Http/Controllers/Web/UsersController.php                             |    5 +-
 app/Http/Requests/Auth/LoginRequest.php                                  |    2 +
 app/Http/Requests/Auth/PasswordResetRequest.php                          |    2 +-
 app/Http/Requests/Auth/RegisterRequest.php                               |    2 +-
 app/Http/Requests/BinaryFileUploadRequest.php                            |    5 +-
 app/Http/Requests/User/UpdateLoginDetailsRequest.php                     |    2 +-
 app/Listeners/Registration/SendConfirmationEmail.php                     |    3 +-
 app/Providers/HtmlServiceProvider.php                                    |    8 +-
 app/Repositories/Role/EloquentRole.php                                   |    2 -
 app/Services/Auth/Api/TokenFactory.php                                   |    3 +-
 app/Services/Auth/Social/SocialManager.php                               |    3 +-
 app/Services/Upload/UserAvatarManager.php                                |    5 +-
 app/Support/Authorization/AuthorizationRoleTrait.php                     |    3 +-
 composer.json                                                            |   14 +-
 composer.lock                                                            | 1216 ++++++++++++--------
 config/app.php                                                           |    2 +-
 config/cache.php                                                         |   10 +-
 database/factories/PermissionFactory.php                                 |    3 +-
 database/factories/RoleFactory.php                                       |    3 +-
 database/factories/TokenFactory.php                                      |    3 +-
 database/factories/UserFactory.php                                       |    3 +-
 phpunit.xml                                                              |    1 +
 resources/lang/de/passwords.php                                          |    2 +-
 resources/lang/en/passwords.php                                          |    2 +-
 resources/lang/sr/passwords.php                                          |    2 +-
 tests/Feature/ApiTestCase.php                                            |    7 -
 tests/Feature/FunctionalTestCase.php                                     |    2 +-
 tests/Feature/Http/Controllers/Api/Auth/Password/ResetControllerTest.php |    6 +-
 tests/Feature/Http/Controllers/Api/Auth/RegistrationControllerTest.php   |   12 +-
 tests/Feature/Http/Controllers/Api/Profile/AuthDetailsControllerTest.php |    6 +-
 tests/Feature/Http/Controllers/Api/Profile/SessionsControllerTest.php    |   13 +-
 tests/Feature/Http/Controllers/Api/SessionsControllerTest.php            |    7 +-
 tests/Feature/Http/Controllers/Api/Users/SessionsControllerTest.php      |    9 +-
 tests/Feature/Http/Controllers/Web/ActivityControllerTest.php            |    2 +-
 tests/Feature/Http/Controllers/Web/Auth/AuthControllerTest.php           |    7 +-
 tests/Feature/Http/Controllers/Web/Auth/PasswordControllerTest.php       |    6 +-
 tests/Feature/Http/Controllers/Web/PermissionsControllerTest.php         |    2 +-
 tests/Feature/Http/Controllers/Web/ProfileControllerTest.php             |   35 +-
 tests/Feature/Http/Controllers/Web/RolesControllerTest.php               |    2 +-
 tests/Feature/Http/Controllers/Web/UsersControllerTest.php               |   25 +-
 tests/Feature/Listeners/BaseListenerTestCase.php                         |    2 +-
 tests/Feature/Listeners/PermissionEventsSubscriberTest.php               |    2 +-
 tests/Feature/Listeners/RoleEventsSubscriberTest.php                     |    2 +-
 tests/Feature/Listeners/UserEventsSubscriberTest.php                     |    2 +-
 tests/Feature/Repositories/Activity/EloquentActivityTest.php             |    2 +-
 tests/Feature/Repositories/Country/EloquentCountryTest.php               |    2 +-
 tests/Feature/Repositories/Permission/EloquentPermissionTest.php         |   11 +-
 tests/Feature/Repositories/Role/EloquentRoleTest.php                     |    2 +-
 tests/Feature/Repositories/Session/DbSessionTest.php                     |    9 +-
 tests/Feature/Repositories/User/EloquentUserTest.php                     |    9 +-
 tests/unit/Presenters/UserPresenterTest.php                              |    2 +-
 55 files changed, 5408 insertions(+), 3309 deletions(-)

To 3.1.0 from 3.0.1

Vanguard's codebase has been upgraded to Laravel 5.7. The recommended way to upgrade your application is to make sure that your composer.json file matches the composer.json file from this release. Once you update your composer.json file, just run composer update to install those packages, and then you can go through the list of changed files inside the list below and make sure that they match the files from this release.

Two-Factor Authentication has been improved in this version and all users who want to activate 2FA will receive the phone confirmation SMS first. The reason for this update is to prevent users from locking their accounts and using the wrong phone number.

Below is the list of updated files:

 .editorconfig | 15 +
 .env.example | 26 +-
 .gitattributes | 1 +
 .gitignore | 14 +-
 app/Console/Kernel.php | 11 +-
 app/Exceptions/Handler.php | 29 +-
 app/Http/Controllers/Api/Profile/TwoFactorController.php | 32 +-
 app/Http/Controllers/Api/Users/TwoFactorController.php | 37 +-
 app/Http/Controllers/Web/ProfileController.php | 56 +--
 app/Http/Controllers/Web/TwoFactorController.php | 137 +++++++
 app/Http/Controllers/Web/UsersController.php | 55 +--
 app/Http/Kernel.php | 1 +
 app/Http/Middleware/VerifyTwoFactorPhone.php | 42 +++
 app/Http/Requests/TwoFactor/DisableTwoFactorRequest.php | 11 +
 app/Http/Requests/{User => TwoFactor}/EnableTwoFactorRequest.php | 7 +-
 app/Http/Requests/TwoFactor/ReSendTwoFactorTokenRequest.php | 7 +
 app/Http/Requests/TwoFactor/TwoFactorRequest.php | 48 +++
 app/Http/Requests/TwoFactor/VerifyTwoFactorTokenRequest.php | 18 +
 app/Jobs/Job.php | 21 --
 app/Listeners/UserEventsSubscriber.php | 28 ++
 app/Policies/.gitkeep | 0
 app/Services/Auth/TwoFactor/Authy.php | 20 +-
 app/Services/Auth/TwoFactor/Contracts/Provider.php | 7 +
 app/Support/CanImpersonateUsers.php | 28 ++
 app/Transformers/UserTransformer.php | 4 +-
 app/User.php | 4 +-
 composer.json | 26 +-
 composer.lock | 1686 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++---------------------------
 config/app.php | 5 +-
 config/database.php | 21 +-
 config/filesystems.php | 38 +-
 config/hashing.php | 34 +-
 config/logging.php | 13 +-
 config/mail.php | 8 +-
 config/queue.php | 23 +-
 config/services.php | 4 +
 config/session.php | 4 +-
 database/migrations/2015_12_29_224252_create_user_activity_table.php | 8 +-
 database/migrations/2015_12_30_171734_add_foreign_keys.php | 16 +-
 database/migrations/2017_04_13_200254_create_api_tokens_table.php | 8 +-
 phpunit.xml | 4 +-
 public/assets/css/app.css | 2 +-
 public/assets/js/as/two-factor.js | 36 ++
 public/mix-manifest.json | 2 +-
 public/svg/403.svg | 1 +
 public/svg/404.svg | 1 +
 public/svg/500.svg | 1 +
 public/svg/503.svg | 1 +
 readme.md | 4 +
 resources/{assets => }/js/app.js | 0
 resources/{assets => }/js/bootstrap.js | 0
 resources/{assets => }/js/components/Example.vue | 0
 resources/lang/de/app.php | 14 +-
 resources/lang/de/log.php | 5 +-
 resources/lang/en/app.php | 14 +-
 resources/lang/en/log.php | 5 +-
 resources/lang/sr/app.php | 14 +-
 resources/lang/sr/log.php | 5 +-
 resources/{assets => }/sass/_variables.scss | 0
 resources/{assets => }/sass/app.scss | 2 +-
 resources/{assets => }/sass/components/avatar.scss | 0
 resources/{assets => }/sass/components/button.scss | 0
 resources/{assets => }/sass/components/card.scss | 4 +
 resources/{assets => }/sass/components/datepicker.scss | 0
 resources/{assets => }/sass/components/general.scss | 0
 resources/{assets => }/sass/components/input.scss | 0
 resources/{assets => }/sass/components/list-group.scss | 0
 resources/{assets => }/sass/components/nav-tabs.scss | 0
 resources/{assets => }/sass/components/navbar.scss | 0
 resources/{assets => }/sass/components/sidebar.scss | 0
 resources/{assets => }/sass/components/sweet-alert.scss | 0
 resources/{assets => }/sass/components/switch.scss | 0
 resources/{assets => }/sass/components/table.scss | 0
 resources/{assets => }/sass/components/util.scss | 0
 resources/views/auth/token.blade.php | 4 +-
 resources/views/partials/navbar.blade.php | 15 +
 resources/views/settings/notifications.blade.php | 2 +
 resources/views/user/edit.blade.php | 5 +-
 resources/views/user/partials/row.blade.php | 7 +
 resources/views/user/profile.blade.php | 4 +-
 resources/views/user/two-factor-verification.blade.php | 69 ++++
 resources/views/user/view.blade.php | 8 +
 routes/api.php | 2 +
 routes/channels.php | 16 +
 routes/web.php | 51 ++-
 storage/framework/cache/.gitignore | 1 +
 storage/framework/cache/data/.gitignore | 2 +
 storage/settings.json | 2 +-
 tests/Feature/FunctionalTestCase.php | 16 +-
 tests/Feature/Http/Controllers/Api/Auth/AuthControllerTest.php | 4 -
 tests/Feature/Http/Controllers/Api/Auth/Password/RemindControllerTest.php | 41 +--
 tests/Feature/Http/Controllers/Api/Auth/Password/ResetControllerTest.php | 3 -
 tests/Feature/Http/Controllers/Api/Auth/RegistrationControllerTest.php | 45 ++-
 tests/Feature/Http/Controllers/Api/Profile/TwoFactorControllerTest.php | 63 +++-
 tests/Feature/Http/Controllers/Api/Users/TwoFactorControllerTest.php | 63 +++-
 tests/Feature/Http/Controllers/Api/Users/UsersControllerTest.php | 39 +-
 tests/Feature/Http/Controllers/Web/Auth/AuthControllerTest.php | 106 +++---
 tests/Feature/Http/Controllers/Web/Auth/PasswordControllerTest.php | 32 +-
 tests/Feature/Http/Controllers/Web/Auth/SocialAuthControllerTest.php | 1 -
 tests/Feature/Http/Controllers/Web/ProfileControllerTest.php | 65 ----
 tests/Feature/Http/Controllers/Web/TwoFactorControllerTest.php | 411 +++++++++++++++++++++
 tests/Feature/Http/Controllers/Web/UsersControllerTest.php | 48 ---
 tests/Feature/ImpersonateUsersTest.php | 96 +++++
 tests/Feature/Listeners/UserEventsSubscriberTest.php | 28 +-
 tests/MailTrap.php | 131 -------
 webpack.mix.js | 2 +-
 107 files changed, 4917 insertions(+), 1473 deletions(-)

To 3.0.1 from 3.0.0

Version 3.0.1 is a bug-fix release where some minor (mostly UI related) bugs that are reported by customers are fixed. The main bug fixed was the one where assets were not being loaded if you install the app in a sub-folder, which was caused by using the mix function without wrapping it with url function. Luckily, this is an easy fix applied in resources/views/layouts/app.blade.php layout file.

Below is the list of updated files, so make sure that you update them to the latest version.

 app/Http/Controllers/Web/Auth/SocialAuthController.php |  4 ++++
 app/Repositories/User/EloquentUser.php                 |  4 ++++
 config/app.php                                         |  2 +-
 resources/lang/de/app.php                              |  1 +
 resources/lang/en/app.php                              |  1 +
 resources/lang/sr/app.php                              |  1 +
 resources/views/layouts/app.blade.php                  |  6 +++---
 resources/views/user/partials/details.blade.php        |  2 +-
 resources/views/user/partials/row.blade.php            | 18 ++++++++++++------
 resources/views/user/view.blade.php                    |  6 +++---
 10 files changed, 31 insertions(+), 14 deletions(-)

To 3.0.0 from 2.2.0

This is the release which contains the complete rewrite of Vanguard frontend. The Bootstrap version is upgraded to 4.1 and the whole Vanguard frontend theme is updated to a different, more up-to-date, design.

Upgrading to this version is pretty hard and it means that you need to make sure that all your view files are up to date with new classes and staff.

To start, it's recommended to make sure that your composer.json and package.json files are updated to the latest version so you can install all the packages you need. Once you update them to the latest version, run composer update and npm install to install php and npm packages, including Bootstrap 4.

Copy new sass folder to resources/assets folder, update webpack.mix.js file and run npm run dev to compile assets. Also make sure that all the assets in public/assets directory are updated to the latest version. If you haven't changed them much, then you can just overwrite them all. However, if you have modified some of them, make sure that you update them manually.

Once you have updated all the assets, you should start updating your view files one by one. Starting from the layout files is recommended, but you can do it however you decide.

The list of updated files is available below, so make sure that you check each one of them carefully, or you can check the patch file from documentation/Patches directory to see how the files are updated.

 app/Http/Controllers/Api/Profile/AuthDetailsController.php                  |    39 +
 app/Http/Controllers/Web/Auth/PasswordController.php                        |     4 +-
 app/Http/Controllers/Web/Auth/SocialAuthController.php                      |    65 +-
 app/Http/Controllers/Web/DashboardController.php                            |     2 +-
 app/Http/Controllers/Web/InstallController.php                              |     4 +-
 app/Http/Requests/User/UpdateProfileLoginDetailsRequest.php                 |     3 -
 app/Presenters/UserPresenter.php                                            |     6 +-
 app/Repositories/User/EloquentUser.php                                      |     5 +-
 app/Services/Auth/Social/ManagesSocialAvatarSize.php                        |    32 +
 app/Services/Auth/Social/SocialManager.php                                  |     4 +-
 app/User.php                                                                |     2 +-
 composer.lock                                                               |   393 ++--
 config/app.php                                                              |     2 +-
 package-lock.json                                                           | 14043 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 package.json                                                                |     4 +-
 public/assets/css/app.css                                                   |  1160 +---------
 public/assets/css/bootstrap-datetimepicker.min.css                          |     5 -
 public/assets/css/bootstrap-social.css                                      |   101 -
 public/assets/css/bootstrap.min.css                                         |     5 -
 public/assets/css/font-awesome.min.css                                      |     4 -
 public/assets/css/fontawesome-all.min.css                                   |     5 +
 public/assets/css/install.css                                               |     4 +-
 public/assets/css/metisMenu.css                                             |    99 -
 public/assets/css/sweetalert.css                                            |   932 --------
 public/assets/css/vendor.css                                                |    10 +
 public/assets/fonts/FontAwesome.otf                                         |   Bin 93888 -> 0 bytes
 public/assets/fonts/fontawesome-webfont.eot                                 |   Bin 60767 -> 0 bytes
 public/assets/fonts/fontawesome-webfont.svg                                 |   565 -----
 public/assets/fonts/fontawesome-webfont.ttf                                 |   Bin 122092 -> 0 bytes
 public/assets/fonts/fontawesome-webfont.woff                                |   Bin 71508 -> 0 bytes
 public/assets/fonts/fontawesome-webfont.woff2                               |   Bin 56780 -> 0 bytes
 public/assets/fonts/glyphicons-halflings-regular.eot                        |   Bin 20127 -> 0 bytes
 public/assets/fonts/glyphicons-halflings-regular.svg                        |   288 ---
 public/assets/fonts/glyphicons-halflings-regular.ttf                        |   Bin 45404 -> 0 bytes
 public/assets/fonts/glyphicons-halflings-regular.woff                       |   Bin 23424 -> 0 bytes
 public/assets/fonts/glyphicons-halflings-regular.woff2                      |   Bin 18028 -> 0 bytes
 public/assets/js/as/app.js                                                  |    22 +-
 public/assets/js/as/btn.js                                                  |     4 +-
 public/assets/js/as/dashboard-admin.js                                      |    54 +-
 public/assets/js/as/dashboard-default.js                                    |    56 +-
 public/assets/js/as/login.js                                                |     2 +-
 public/assets/js/as/profile.js                                              |    11 +-
 public/assets/js/bootstrap-datetimepicker.min.js                            |     9 -
 public/assets/js/bootstrap.min.js                                           |    12 +-
 public/assets/js/bootstrap.min.js.map                                       |     1 +
 public/assets/js/chart.min.js                                               |     9 +-
 public/assets/js/delete.handler.js                                          |     8 +-
 public/assets/js/jquery-2.1.4.min.js                                        |     4 -
 public/assets/js/jquery-3.3.1.min.js                                        |     2 +
 public/assets/js/metisMenu.min.js                                           |    10 -
 public/assets/js/popper.min.js                                              |     5 +
 public/assets/js/sweetalert.min.js                                          |     2 +-
 public/assets/js/vendor.js                                                  |    11 +
 public/assets/plugins/bootstrap-datepicker/bootstrap-datepicker.min.css     |     9 +
 public/assets/plugins/bootstrap-datepicker/bootstrap-datepicker.min.css.map |     1 +
 public/assets/plugins/bootstrap-datepicker/bootstrap-datepicker.min.js      |     9 +
 public/assets/plugins/bootstrap-switch/bootstrap-switch.css                 |   195 --
 public/assets/plugins/bootstrap-switch/bootstrap-switch.min.js              |    22 -
 public/assets/webfonts/fa-brands-400.eot                                    |   Bin 0 -> 111620 bytes
 public/assets/webfonts/fa-brands-400.svg                                    |  1104 +++++++++
 public/assets/webfonts/fa-brands-400.ttf                                    |   Bin 0 -> 111384 bytes
 public/assets/webfonts/fa-brands-400.woff                                   |   Bin 0 -> 71560 bytes
 public/assets/webfonts/fa-brands-400.woff2                                  |   Bin 0 -> 61336 bytes
 public/assets/webfonts/fa-regular-400.eot                                   |   Bin 0 -> 31272 bytes
 public/assets/webfonts/fa-regular-400.svg                                   |   372 +++
 public/assets/webfonts/fa-regular-400.ttf                                   |   Bin 0 -> 31044 bytes
 public/assets/webfonts/fa-regular-400.woff                                  |   Bin 0 -> 14724 bytes
 public/assets/webfonts/fa-regular-400.woff2                                 |   Bin 0 -> 12188 bytes
 public/assets/webfonts/fa-solid-900.eot                                     |   Bin 0 -> 133140 bytes
 public/assets/webfonts/fa-solid-900.svg                                     |  1896 ++++++++++++++++
 public/assets/webfonts/fa-solid-900.ttf                                     |   Bin 0 -> 132920 bytes
 public/assets/webfonts/fa-solid-900.woff                                    |   Bin 0 -> 63836 bytes
 public/assets/webfonts/fa-solid-900.woff2                                   |   Bin 0 -> 50372 bytes
 public/mix-manifest.json                                                    |     5 +
 resources/assets/sass/_variables.scss                                       |    63 +-
 resources/assets/sass/app.scss                                              |    47 +-
 resources/assets/sass/components/avatar.scss                                |    16 +
 resources/assets/sass/components/button.scss                                |    78 +
 resources/assets/sass/components/card.scss                                  |    12 +
 resources/assets/sass/components/datepicker.scss                            |   160 ++
 resources/assets/sass/components/general.scss                               |    13 +
 resources/assets/sass/components/input.scss                                 |     8 +
 resources/assets/sass/components/list-group.scss                            |    17 +
 resources/assets/sass/components/nav-tabs.scss                              |    13 +
 resources/assets/sass/components/navbar.scss                                |    50 +
 resources/assets/sass/components/sidebar.scss                               |   122 +
 resources/assets/sass/components/sweet-alert.scss                           |     3 +
 resources/assets/sass/components/switch.scss                                |   158 ++
 resources/assets/sass/components/table.scss                                 |     8 +
 resources/assets/sass/components/util.scss                                  |    40 +
 resources/lang/de/app.php                                                   |    63 +-
 resources/lang/en/app.php                                                   |    58 +-
 resources/lang/sr/app.php                                                   |    64 +-
 resources/views/activity/index.blade.php                                    |   170 +-
 resources/views/auth/login.blade.php                                        |   103 +-
 resources/views/auth/password/remind.blade.php                              |    52 +-
 resources/views/auth/password/reset.blade.php                               |    82 +-
 resources/views/auth/register.blade.php                                     |   110 +-
 resources/views/auth/social/buttons.blade.php                               |    28 +-
 resources/views/auth/social/twitter-email.blade.php                         |    34 -
 resources/views/auth/token.blade.php                                        |    49 +-
 resources/views/dashboard/admin.blade.php                                   |   168 +-
 resources/views/dashboard/default.blade.php                                 |   106 +-
 resources/views/errors/403.blade.php                                        |    49 +-
 resources/views/errors/404.blade.php                                        |    63 +-
 resources/views/errors/500.blade.php                                        |    49 +-
 resources/views/errors/503.blade.php                                        |    44 +-
 resources/views/install/complete.blade.php                                  |     2 +-
 resources/views/install/database.blade.php                                  |     2 +-
 resources/views/install/error.blade.php                                     |     2 +-
 resources/views/install/permissions.blade.php                               |    12 +-
 resources/views/install/requirements.blade.php                              |     8 +-
 resources/views/install/start.blade.php                                     |     2 +-
 resources/views/layouts/app.blade.php                                       |    89 +-
 resources/views/layouts/auth.blade.php                                      |    24 +-
 resources/views/layouts/errors.blade.php                                    |    35 +
 resources/views/layouts/install.blade.php                                   |    37 +-
 resources/views/partials/messages.blade.php                                 |     4 +-
 resources/views/partials/navbar.blade.php                                   |    79 +
 resources/views/partials/sidebar.blade.php                                  |   167 +-
 resources/views/permission/add-edit.blade.php                               |    46 +-
 resources/views/permission/index.blade.php                                  |   159 +-
 resources/views/role/add-edit.blade.php                                     |    56 +-
 resources/views/role/index.blade.php                                        |   129 +-
 resources/views/settings/auth.blade.php                                     |    64 +-
 resources/views/settings/general.blade.php                                  |    41 +-
 resources/views/settings/notifications.blade.php                            |    78 +-
 resources/views/settings/partials/auth.blade.php                            |    70 +-
 resources/views/settings/partials/recaptcha.blade.php                       |    16 +-
 resources/views/settings/partials/registration.blade.php                    |    78 +-
 resources/views/settings/partials/throttling.blade.php                      |    45 +-
 resources/views/settings/partials/two-factor.blade.php                      |    15 +-
 resources/views/user/add.blade.php                                          |    71 +-
 resources/views/user/edit.blade.php                                         |   153 +-
 resources/views/user/list.blade.php                                         |   170 +-
 resources/views/user/partials/auth.blade.php                                |    57 +-
 resources/views/user/partials/avatar.blade.php                              |    69 +-
 resources/views/user/partials/details.blade.php                             |   118 +-
 resources/views/user/partials/row.blade.php                                 |    59 +
 resources/views/user/partials/two-factor.blade.php                          |    58 +-
 resources/views/user/profile.blade.php                                      |   143 +-
 resources/views/user/sessions.blade.php                                     |   123 +-
 resources/views/user/view.blade.php                                         |   172 +-
 resources/views/vendor/jsvalidation/bootstrap.php                           |    20 +-
 routes/api.php                                                              |     1 +
 storage/settings.json                                                       |     2 +-
 tests/Feature/Http/Controllers/Api/Auth/SocialLoginControllerTest.php       |     2 +
 tests/Feature/Http/Controllers/Api/Profile/AuthDetailsControllerTest.php    |    88 +
 tests/Feature/Http/Controllers/Api/Profile/TwoFactorControllerTest.php      |    28 +-
 tests/Feature/Http/Controllers/Api/Users/TwoFactorControllerTest.php        |    32 +-
 tests/Feature/Http/Controllers/Web/ActivityControllerTest.php               |     1 -
 tests/Feature/Http/Controllers/Web/Auth/AuthControllerTest.php              |     2 +-
 tests/Feature/Http/Controllers/Web/Auth/SocialAuthControllerTest.php        |    26 +-
 tests/Feature/Http/Controllers/Web/ProfileControllerTest.php                |    22 +-
 tests/Feature/Http/Controllers/Web/SettingsControllerTest.php               |     2 +-
 tests/Feature/Http/Controllers/Web/UsersControllerTest.php                  |    40 +-
 tests/Feature/Repositories/User/EloquentUserTest.php                        |    61 +-
 tests/unit/Presenters/UserPresenterTest.php                                 |     6 +-
 webpack.mix.js                                                              |    26 +-
 159 files changed, 20812 insertions(+), 5721 deletions(-)