Skip to content

Commit 50c8033

Browse files
Laravel 8.x Shift (librenms#12235)
* Shift HTTP kernel and middleware * Shift service providers * Shift console routes * Shift to class based factories * Namespace seeders * Shift PSR-4 autoloading * Default config files In an effort to make upgrading the constantly changing config files easier, Shift defaulted them. This allows you to review the commit diff for once for customizations when you are done Shifting. Moving forward, consider using ENV variables or create a separate config file to allow the core config files to remain as default as possible. * Shift Laravel dependencies * Shift return type of base TestCase methods From the [PHPUnit 8 release notes][1], the `TestCase` methods below now declare a `void` return type: - `setUpBeforeClass()` - `setUp()` - `assertPreConditions()` - `assertPostConditions()` - `tearDown()` - `tearDownAfterClass()` - `onNotSuccessfulTest()` [1]: https://phpunit.de/announcements/phpunit-8.html * Shift cleanup * console routes * composer update * factories * phpunit * bootstrap pagination * model factory * wip * Apply fixes from StyleCI (librenms#12236) * wip * Apply fixes from StyleCI (librenms#12238) * wip * wip * wip * wip * Apply fixes from StyleCI (librenms#12240) * wip * Apply fixes from StyleCI (librenms#12242) * composer update * Bump to PHP 7.3 minimum Co-authored-by: Laravel Shift <[email protected]>
1 parent bc02ab3 commit 50c8033

File tree

97 files changed

+2342
-1450
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

97 files changed

+2342
-1450
lines changed

.travis.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ jobs:
1616
- php: 7.3
1717
dist: bionic
1818
env: SKIP_UNIT_CHECK=1
19-
- php: 7.2
19+
- php: 7.3
2020
dist: bionic
2121
env: SKIP_STYLE_CHECK=1 SKIP_WEB_CHECK=1 EXECUTE_BUILD_DOCS=true
2222

app/Checks.php

+2-2
Original file line numberDiff line numberDiff line change
@@ -37,9 +37,9 @@ class Checks
3737
public static function preAutoload()
3838
{
3939
// Check PHP version otherwise it will just say server error
40-
if (version_compare('7.2.5', PHP_VERSION, '>=')) {
40+
if (version_compare(PHP_VERSION, '7.3', '<')) {
4141
self::printMessage(
42-
'PHP version 7.2.5 or newer is required to run LibreNMS',
42+
'PHP version 7.3 or newer is required to run LibreNMS',
4343
null,
4444
true
4545
);

app/Http/Kernel.php

+1-2
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ class Kernel extends HttpKernel
1818
// \App\Http\Middleware\TrustHosts::class,
1919
\App\Http\Middleware\TrustProxies::class,
2020
\App\Http\Middleware\HandleCors::class,
21-
\App\Http\Middleware\CheckForMaintenanceMode::class,
21+
\App\Http\Middleware\PreventRequestsDuringMaintenance::class,
2222
\Illuminate\Foundation\Http\Middleware\ValidatePostSize::class,
2323
\App\Http\Middleware\TrimStrings::class,
2424
\Illuminate\Foundation\Http\Middleware\ConvertEmptyStringsToNull::class,
@@ -69,7 +69,6 @@ class Kernel extends HttpKernel
6969
protected $routeMiddleware = [
7070
'authenticate' => \App\Http\Middleware\Authenticate::class,
7171
'auth.basic' => \Illuminate\Auth\Middleware\AuthenticateWithBasicAuth::class,
72-
'bindings' => \Illuminate\Routing\Middleware\SubstituteBindings::class,
7372
'cache.headers' => \Illuminate\Http\Middleware\SetCacheHeaders::class,
7473
'can' => \Illuminate\Auth\Middleware\Authorize::class,
7574
'deny-demo' => \App\Http\Middleware\DenyDemoUser::class,

app/Http/Middleware/CheckForMaintenanceMode.php app/Http/Middleware/PreventRequestsDuringMaintenance.php

+2-2
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@
22

33
namespace App\Http\Middleware;
44

5-
use Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode as Middleware;
5+
use Illuminate\Foundation\Http\Middleware\PreventRequestsDuringMaintenance as Middleware;
66

7-
class CheckForMaintenanceMode extends Middleware
7+
class PreventRequestsDuringMaintenance extends Middleware
88
{
99
/**
1010
* The URIs that should be reachable while maintenance mode is enabled.

app/Http/Middleware/RedirectIfAuthenticated.php

+9-4
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44

55
use App\Providers\RouteServiceProvider;
66
use Closure;
7+
use Illuminate\Http\Request;
78
use Illuminate\Support\Facades\Auth;
89

910
class RedirectIfAuthenticated
@@ -13,13 +14,17 @@ class RedirectIfAuthenticated
1314
*
1415
* @param \Illuminate\Http\Request $request
1516
* @param \Closure $next
16-
* @param string|null $guard
17+
* @param string|null ...$guards
1718
* @return mixed
1819
*/
19-
public function handle($request, Closure $next, $guard = null)
20+
public function handle(Request $request, Closure $next, ...$guards)
2021
{
21-
if (Auth::guard($guard)->check()) {
22-
return redirect(RouteServiceProvider::HOME);
22+
$guards = empty($guards) ? [null] : $guards;
23+
24+
foreach ($guards as $guard) {
25+
if (Auth::guard($guard)->check()) {
26+
return redirect(RouteServiceProvider::HOME);
27+
}
2328
}
2429

2530
return $next($request);

app/Models/AlertSchedule.php

+3
Original file line numberDiff line numberDiff line change
@@ -28,12 +28,15 @@
2828
use Carbon\CarbonImmutable;
2929
use Date;
3030
use DB;
31+
use Illuminate\Database\Eloquent\Factories\HasFactory;
3132
use Illuminate\Database\Eloquent\Model;
3233
use Illuminate\Support\Str;
3334
use LibreNMS\Enum\AlertScheduleStatus;
3435

3536
class AlertSchedule extends Model
3637
{
38+
use HasFactory;
39+
3740
public $timestamps = false;
3841
protected $table = 'alert_schedule';
3942
protected $primaryKey = 'schedule_id';

app/Models/BgpPeer.php

+3
Original file line numberDiff line numberDiff line change
@@ -25,9 +25,12 @@
2525
namespace App\Models;
2626

2727
use Illuminate\Database\Eloquent\Builder;
28+
use Illuminate\Database\Eloquent\Factories\HasFactory;
2829

2930
class BgpPeer extends DeviceRelatedModel
3031
{
32+
use HasFactory;
33+
3134
public $timestamps = false;
3235
protected $table = 'bgpPeers';
3336
protected $primaryKey = 'bgpPeer_id';

app/Models/Bill.php

+3
Original file line numberDiff line numberDiff line change
@@ -24,10 +24,13 @@
2424

2525
namespace App\Models;
2626

27+
use Illuminate\Database\Eloquent\Factories\HasFactory;
2728
use Illuminate\Database\Eloquent\Model;
2829

2930
class Bill extends Model
3031
{
32+
use HasFactory;
33+
3134
public $timestamps = false;
3235
protected $primaryKey = 'bill_id';
3336

app/Models/Component.php

+4
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,12 @@
2424

2525
namespace App\Models;
2626

27+
use Illuminate\Database\Eloquent\Factories\HasFactory;
28+
2729
class Component extends DeviceRelatedModel
2830
{
31+
use HasFactory;
32+
2933
public $timestamps = false;
3034
protected $table = 'component';
3135
protected $fillable = ['device_id', 'type', 'label', 'status', 'disabled', 'ignore', 'error'];

app/Models/Device.php

+2-1
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44

55
use Fico7489\Laravel\Pivot\Traits\PivotEventTrait;
66
use Illuminate\Database\Eloquent\Builder;
7+
use Illuminate\Database\Eloquent\Factories\HasFactory;
78
use Illuminate\Database\Eloquent\ModelNotFoundException;
89
use Illuminate\Database\Query\JoinClause;
910
use Illuminate\Support\Str;
@@ -18,7 +19,7 @@
1819

1920
class Device extends BaseModel
2021
{
21-
use PivotEventTrait;
22+
use PivotEventTrait, HasFactory;
2223

2324
public $timestamps = false;
2425
protected $primaryKey = 'device_id';

app/Models/Ipv4Address.php

+4
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,12 @@
2424

2525
namespace App\Models;
2626

27+
use Illuminate\Database\Eloquent\Factories\HasFactory;
28+
2729
class Ipv4Address extends PortRelatedModel
2830
{
31+
use HasFactory;
32+
2933
public $timestamps = false;
3034
protected $primaryKey = 'ipv4_address_id';
3135
}

app/Models/Ipv4Network.php

+3
Original file line numberDiff line numberDiff line change
@@ -24,10 +24,13 @@
2424

2525
namespace App\Models;
2626

27+
use Illuminate\Database\Eloquent\Factories\HasFactory;
2728
use Illuminate\Database\Eloquent\Model;
2829

2930
class Ipv4Network extends Model
3031
{
32+
use HasFactory;
33+
3134
public $timestamps = false;
3235
protected $primaryKey = 'ipv4_network_id';
3336

app/Models/OspfNbr.php

+4
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,12 @@
2424

2525
namespace App\Models;
2626

27+
use Illuminate\Database\Eloquent\Factories\HasFactory;
28+
2729
class OspfNbr extends DeviceRelatedModel
2830
{
31+
use HasFactory;
32+
2933
public $timestamps = false;
3034
protected $fillable = [
3135
'device_id',

app/Models/OspfPort.php

+4
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,12 @@
2424

2525
namespace App\Models;
2626

27+
use Illuminate\Database\Eloquent\Factories\HasFactory;
28+
2729
class OspfPort extends PortRelatedModel
2830
{
31+
use HasFactory;
32+
2933
public $timestamps = false;
3034
protected $fillable = [
3135
'device_id',

app/Models/Port.php

+3
Original file line numberDiff line numberDiff line change
@@ -4,12 +4,15 @@
44

55
use DB;
66
use Illuminate\Database\Eloquent\Builder;
7+
use Illuminate\Database\Eloquent\Factories\HasFactory;
78
use Illuminate\Support\Str;
89
use LibreNMS\Util\Rewrite;
910
use Permissions;
1011

1112
class Port extends DeviceRelatedModel
1213
{
14+
use HasFactory;
15+
1316
public $timestamps = false;
1417
protected $primaryKey = 'port_id';
1518

app/Models/Sensor.php

+4
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,12 @@
22

33
namespace App\Models;
44

5+
use Illuminate\Database\Eloquent\Factories\HasFactory;
6+
57
class Sensor extends DeviceRelatedModel
68
{
9+
use HasFactory;
10+
711
public $timestamps = false;
812
protected $primaryKey = 'sensor_id';
913
protected static $icons = [

app/Models/Syslog.php

+4
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,12 @@
2424

2525
namespace App\Models;
2626

27+
use Illuminate\Database\Eloquent\Factories\HasFactory;
28+
2729
class Syslog extends DeviceRelatedModel
2830
{
31+
use HasFactory;
32+
2933
protected $table = 'syslog';
3034
protected $primaryKey = 'seq';
3135
public $timestamps = false;

app/Models/User.php

+2-1
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44

55
use App\Events\UserCreated;
66
use Illuminate\Database\Eloquent\Builder;
7+
use Illuminate\Database\Eloquent\Factories\HasFactory;
78
use Illuminate\Foundation\Auth\User as Authenticatable;
89
use Illuminate\Notifications\Notifiable;
910
use Illuminate\Support\Facades\Hash;
@@ -12,7 +13,7 @@
1213

1314
class User extends Authenticatable
1415
{
15-
use Notifiable;
16+
use Notifiable, HasFactory;
1617

1718
protected $primaryKey = 'user_id';
1819
protected $fillable = ['realname', 'username', 'email', 'level', 'descr', 'can_modify_passwd', 'auth_type', 'auth_id', 'enabled'];

app/Models/UserPref.php

+1-3
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,6 @@
2424

2525
namespace App\Models;
2626

27-
use Illuminate\Database\Eloquent\Builder;
28-
2927
class UserPref extends BaseModel
3028
{
3129
public $timestamps = false;
@@ -91,7 +89,7 @@ public function user()
9189
* @param \Illuminate\Database\Eloquent\Builder $query
9290
* @return \Illuminate\Database\Eloquent\Builder
9391
*/
94-
protected function setKeysForSaveQuery(Builder $query)
92+
protected function setKeysForSaveQuery($query)
9593
{
9694
$keys = $this->getKeyName();
9795
if (! is_array($keys)) {

app/Models/Vminfo.php

+4
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,12 @@
22

33
namespace App\Models;
44

5+
use Illuminate\Database\Eloquent\Factories\HasFactory;
6+
57
class Vminfo extends DeviceRelatedModel
68
{
9+
use HasFactory;
10+
711
protected $table = 'vminfo';
812
public $timestamps = false;
913
}

app/Providers/AppServiceProvider.php

+2
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,8 @@ public function register()
4040
*/
4141
public function boot()
4242
{
43+
\Illuminate\Pagination\Paginator::useBootstrap();
44+
4345
$this->app->booted('\LibreNMS\DB\Eloquent::initLegacyListeners');
4446
$this->app->booted('\LibreNMS\Config::load');
4547

app/Providers/EventServiceProvider.php

-1
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,6 @@ class EventServiceProvider extends ServiceProvider
2525
*/
2626
public function boot()
2727
{
28-
parent::boot();
2928

3029
//
3130
}

0 commit comments

Comments
 (0)