. */ declare(strict_types=1); namespace FireflyIII\Helpers\Update; use Carbon\Carbon; use FireflyIII\Services\FireflyIIIOrg\Update\UpdateRequestInterface; use FireflyIII\Services\FireflyIIIOrg\Update\UpdateResponse; use FireflyIII\Support\Facades\FireflyConfig; use Illuminate\Support\Facades\Log; /** * Trait UpdateTrait */ trait UpdateTrait { /** * Returns an array with info on the next release, if any. * 'message' => 'A new version is available. * 'level' => 'info' / 'success' / 'error' */ public function getLatestRelease(): UpdateResponse { Log::debug('Now in getLatestRelease()'); /** @var UpdateRequestInterface $checker */ $checker = app(UpdateRequestInterface::class); $channelConfig = FireflyConfig::get('update_channel', 'stable'); $channel = (string) $channelConfig->data; $build = Carbon::createFromTimestamp(config('firefly.build_time'), config('app.timezone')); $version = config('firefly.version'); return $checker->getUpdateInformation($version, $build, $channel); } }