diff --git a/app/Http/Controllers/Auth/ForgotPasswordController.php b/app/Http/Controllers/Auth/ForgotPasswordController.php index 999d063360..60abcfb5f0 100644 --- a/app/Http/Controllers/Auth/ForgotPasswordController.php +++ b/app/Http/Controllers/Auth/ForgotPasswordController.php @@ -23,7 +23,6 @@ declare(strict_types=1); namespace FireflyIII\Http\Controllers\Auth; -use function Safe\parse_url; use FireflyIII\Exceptions\FireflyException; use FireflyIII\Http\Controllers\Controller; use FireflyIII\Repositories\User\UserRepositoryInterface; @@ -35,6 +34,8 @@ use Illuminate\Http\Request; use Illuminate\Support\Facades\Log; use Illuminate\View\View; +use function Safe\parse_url; + /** * Class ForgotPasswordController */ diff --git a/app/Http/Controllers/Chart/AccountController.php b/app/Http/Controllers/Chart/AccountController.php index 281521d606..085ef0bb91 100644 --- a/app/Http/Controllers/Chart/AccountController.php +++ b/app/Http/Controllers/Chart/AccountController.php @@ -23,7 +23,6 @@ declare(strict_types=1); namespace FireflyIII\Http\Controllers\Chart; -use function Safe\json_encode; use Carbon\Carbon; use FireflyIII\Enums\AccountTypeEnum; use FireflyIII\Enums\TransactionTypeEnum; @@ -44,6 +43,8 @@ use Illuminate\Http\JsonResponse; use Illuminate\Support\Collection; use Illuminate\Support\Facades\Log; +use function Safe\json_encode; + /** * Class AccountController. */ diff --git a/app/Http/Controllers/DebugController.php b/app/Http/Controllers/DebugController.php index 7021f44350..761070bd46 100644 --- a/app/Http/Controllers/DebugController.php +++ b/app/Http/Controllers/DebugController.php @@ -24,8 +24,6 @@ declare(strict_types=1); namespace FireflyIII\Http\Controllers; -use function Safe\file_get_contents; -use function Safe\ini_get; use Carbon\Carbon; use Exception; use FireflyIII\Enums\AccountTypeEnum; @@ -52,6 +50,9 @@ use Illuminate\View\View; use Monolog\Handler\RotatingFileHandler; use Symfony\Component\HttpKernel\Exception\NotFoundHttpException; +use function Safe\file_get_contents; +use function Safe\ini_get; + /** * Class DebugController */ @@ -110,7 +111,7 @@ class DebugController extends Controller try { Artisan::call('twig:clean'); - } catch (Exception $e) { // intentional generic exception + } catch (\Exception $e) { // intentional generic exception throw new FireflyException($e->getMessage(), 0, $e); } @@ -202,7 +203,7 @@ class DebugController extends Controller $return['build'] = trim((string) file_get_contents('/var/www/counter-main.txt')); app('log')->debug(sprintf('build is now "%s"', $return['build'])); } - } catch (Exception $e) { + } catch (\Exception $e) { app('log')->debug('Could not check build counter, but thats ok.'); app('log')->warning($e->getMessage()); } @@ -211,7 +212,7 @@ class DebugController extends Controller if (file_exists('/var/www/build-date-main.txt')) { $return['build_date'] = trim((string) file_get_contents('/var/www/build-date-main.txt')); } - } catch (Exception $e) { + } catch (\Exception $e) { app('log')->debug('Could not check build date, but thats ok.'); app('log')->warning($e->getMessage()); } diff --git a/app/Http/Controllers/HomeController.php b/app/Http/Controllers/HomeController.php index b829724308..4f300d8924 100644 --- a/app/Http/Controllers/HomeController.php +++ b/app/Http/Controllers/HomeController.php @@ -23,7 +23,6 @@ declare(strict_types=1); namespace FireflyIII\Http\Controllers; -use Exception; use Carbon\Carbon; use Carbon\Exceptions\InvalidFormatException; use FireflyIII\Enums\AccountTypeEnum; @@ -58,7 +57,7 @@ class HomeController extends Controller /** * Change index date range. * - * @throws Exception + * @throws \Exception */ public function dateRange(Request $request): JsonResponse { diff --git a/app/Http/Controllers/Json/FrontpageController.php b/app/Http/Controllers/Json/FrontpageController.php index f508c66763..08ed98cd53 100644 --- a/app/Http/Controllers/Json/FrontpageController.php +++ b/app/Http/Controllers/Json/FrontpageController.php @@ -23,7 +23,6 @@ declare(strict_types=1); namespace FireflyIII\Http\Controllers\Json; -use Throwable; use FireflyIII\Exceptions\FireflyException; use FireflyIII\Http\Controllers\Controller; use FireflyIII\Models\PiggyBank; @@ -90,7 +89,7 @@ class FrontpageController extends Controller if (0 !== count($info)) { try { $html = view('json.piggy-banks', compact('info', 'convertToNative', 'native'))->render(); - } catch (Throwable $e) { + } catch (\Throwable $e) { app('log')->error(sprintf('Cannot render json.piggy-banks: %s', $e->getMessage())); app('log')->error($e->getTraceAsString()); $html = 'Could not render view.'; diff --git a/app/Http/Controllers/Json/ReconcileController.php b/app/Http/Controllers/Json/ReconcileController.php index db7642cfe8..f2122dc310 100644 --- a/app/Http/Controllers/Json/ReconcileController.php +++ b/app/Http/Controllers/Json/ReconcileController.php @@ -24,7 +24,6 @@ declare(strict_types=1); namespace FireflyIII\Http\Controllers\Json; -use Throwable; use Carbon\Carbon; use FireflyIII\Enums\TransactionTypeEnum; use FireflyIII\Exceptions\FireflyException; @@ -131,7 +130,7 @@ class ReconcileController extends Controller try { $view = view('accounts.reconcile.overview', compact('account', 'start', 'diffCompare', 'difference', 'end', 'clearedAmount', 'startBalance', 'endBalance', 'amount', 'route', 'countCleared', 'reconSum', 'selectedIds'))->render(); - } catch (Throwable $e) { + } catch (\Throwable $e) { app('log')->debug(sprintf('View error: %s', $e->getMessage())); app('log')->error($e->getTraceAsString()); $view = sprintf('Could not render accounts.reconcile.overview: %s', $e->getMessage()); @@ -229,7 +228,7 @@ class ReconcileController extends Controller 'accounts.reconcile.transactions', compact('account', 'journals', 'currency', 'start', 'end', 'selectionStart', 'selectionEnd') )->render(); - } catch (Throwable $e) { + } catch (\Throwable $e) { app('log')->debug(sprintf('Could not render: %s', $e->getMessage())); app('log')->error($e->getTraceAsString()); $html = sprintf('Could not render accounts.reconcile.transactions: %s', $e->getMessage()); diff --git a/app/Http/Controllers/Json/RuleController.php b/app/Http/Controllers/Json/RuleController.php index a555015150..c91fb1c1e3 100644 --- a/app/Http/Controllers/Json/RuleController.php +++ b/app/Http/Controllers/Json/RuleController.php @@ -24,7 +24,6 @@ declare(strict_types=1); namespace FireflyIII\Http\Controllers\Json; -use Throwable; use FireflyIII\Exceptions\FireflyException; use FireflyIII\Http\Controllers\Controller; use Illuminate\Http\JsonResponse; @@ -51,7 +50,7 @@ class RuleController extends Controller try { $view = view('rules.partials.action', compact('actions', 'count'))->render(); - } catch (Throwable $e) { + } catch (\Throwable $e) { app('log')->error(sprintf('Cannot render rules.partials.action: %s', $e->getMessage())); app('log')->error($e->getTraceAsString()); $view = 'Could not render view.'; @@ -81,7 +80,7 @@ class RuleController extends Controller try { $view = view('rules.partials.trigger', compact('triggers', 'count'))->render(); - } catch (Throwable $e) { + } catch (\Throwable $e) { app('log')->error(sprintf('Cannot render rules.partials.trigger: %s', $e->getMessage())); app('log')->error($e->getTraceAsString()); $view = 'Could not render view.'; diff --git a/app/Http/Controllers/PreferencesController.php b/app/Http/Controllers/PreferencesController.php index 91cd10cf06..4f2526083c 100644 --- a/app/Http/Controllers/PreferencesController.php +++ b/app/Http/Controllers/PreferencesController.php @@ -24,10 +24,6 @@ declare(strict_types=1); namespace FireflyIII\Http\Controllers; use Carbon\Carbon; -use JsonException; -use function Safe\json_decode; -use function Safe\file_get_contents; -use function Safe\strtotime; use FireflyIII\Enums\AccountTypeEnum; use FireflyIII\Events\Preferences\UserGroupChangedDefaultCurrency; use FireflyIII\Events\Test\UserTestNotificationChannel; @@ -45,6 +41,10 @@ use Illuminate\Routing\Redirector; use Illuminate\Support\Facades\Log; use Illuminate\View\View; +use function Safe\json_decode; +use function Safe\file_get_contents; +use function Safe\strtotime; + /** * Class PreferencesController. */ @@ -155,7 +155,7 @@ class PreferencesController extends Controller try { $locales = json_decode((string) file_get_contents(resource_path(sprintf('locales/%s/locales.json', $language))), true, 512, JSON_THROW_ON_ERROR); - } catch (JsonException $e) { + } catch (\JsonException $e) { app('log')->error($e->getMessage()); $locales = []; } diff --git a/app/Http/Controllers/Profile/MfaController.php b/app/Http/Controllers/Profile/MfaController.php index 9123c8fe4e..675b95d6f3 100644 --- a/app/Http/Controllers/Profile/MfaController.php +++ b/app/Http/Controllers/Profile/MfaController.php @@ -25,8 +25,6 @@ declare(strict_types=1); namespace FireflyIII\Http\Controllers\Profile; use Carbon\Carbon; -use Cookie; -use Google2FA; use FireflyIII\Events\Security\DisabledMFA; use FireflyIII\Events\Security\EnabledMFA; use FireflyIII\Events\Security\MFANewBackupCodes; @@ -184,7 +182,7 @@ class MfaController extends Controller // also logout current 2FA tokens. $cookieName = config('google2fa.cookie_name', 'google2fa_token'); - Cookie::forget($cookieName); + \Cookie::forget($cookieName); // send user notification. Log::channel('audit')->info(sprintf('User "%s" has disabled MFA', $user->email)); @@ -217,8 +215,8 @@ class MfaController extends Controller } $domain = $this->getDomain(); - $secret = Google2FA::generateSecretKey(); - $image = Google2FA::getQRCodeInline($domain, auth()->user()->email, $secret); + $secret = \Google2FA::generateSecretKey(); + $image = \Google2FA::getQRCodeInline($domain, auth()->user()->email, $secret); app('preferences')->set('temp-mfa-secret', $secret); @@ -274,7 +272,7 @@ class MfaController extends Controller // make sure MFA is logged out. if ('testing' !== config('app.env')) { - Google2FA::logout(); + \Google2FA::logout(); } // drop all info from session: diff --git a/app/Http/Controllers/ProfileController.php b/app/Http/Controllers/ProfileController.php index 1437138037..74b9dad6f3 100644 --- a/app/Http/Controllers/ProfileController.php +++ b/app/Http/Controllers/ProfileController.php @@ -23,9 +23,6 @@ declare(strict_types=1); namespace FireflyIII\Http\Controllers; -use Auth; -use Hash; -use Exception; use FireflyIII\Events\UserChangedEmail; use FireflyIII\Exceptions\FireflyException; use FireflyIII\Exceptions\ValidationException; @@ -206,7 +203,7 @@ class ProfileController extends Controller $existing = $repository->findByEmail($newEmail); if ($existing instanceof User) { // force user logout. - Auth::guard()->logout(); // @phpstan-ignore-line (does not recognize function) + \Auth::guard()->logout(); // @phpstan-ignore-line (does not recognize function) $request->session()->invalidate(); session()->flash('success', (string) trans('firefly.email_changed')); @@ -220,7 +217,7 @@ class ProfileController extends Controller event(new UserChangedEmail($user, $newEmail, $oldEmail)); // force user logout. - Auth::guard()->logout(); // @phpstan-ignore-line (does not recognize function) + \Auth::guard()->logout(); // @phpstan-ignore-line (does not recognize function) $request->session()->invalidate(); session()->flash('success', (string) trans('firefly.email_changed')); @@ -313,7 +310,7 @@ class ProfileController extends Controller return redirect(route('profile.index')); } - if (!Hash::check($request->get('password'), auth()->user()->password)) { + if (!\Hash::check($request->get('password'), auth()->user()->password)) { session()->flash('error', (string) trans('firefly.invalid_password')); return redirect(route('profile.delete-account')); @@ -346,8 +343,8 @@ class ProfileController extends Controller 'email' => auth()->user()->email, 'password' => $request->get('password'), ]; - if (Auth::once($creds)) { - Auth::logoutOtherDevices($request->get('password')); + if (\Auth::once($creds)) { + \Auth::logoutOtherDevices($request->get('password')); session()->flash('info', (string) trans('firefly.other_sessions_logged_out')); return redirect(route('profile.index')); @@ -362,7 +359,7 @@ class ProfileController extends Controller * * @return Redirector|RedirectResponse * - * @throws Exception + * @throws \Exception */ public function regenerate(Request $request) { diff --git a/app/Http/Controllers/Report/AccountController.php b/app/Http/Controllers/Report/AccountController.php index dcd9464ce3..d99ec61237 100644 --- a/app/Http/Controllers/Report/AccountController.php +++ b/app/Http/Controllers/Report/AccountController.php @@ -23,7 +23,6 @@ declare(strict_types=1); namespace FireflyIII\Http\Controllers\Report; -use Throwable; use Carbon\Carbon; use FireflyIII\Exceptions\FireflyException; use FireflyIII\Http\Controllers\Controller; @@ -59,7 +58,7 @@ class AccountController extends Controller try { $result = view('reports.partials.accounts', compact('accountReport'))->render(); - } catch (Throwable $e) { + } catch (\Throwable $e) { app('log')->error(sprintf('Could not render reports.partials.accounts: %s', $e->getMessage())); app('log')->error($e->getTraceAsString()); $result = 'Could not render view.'; diff --git a/app/Http/Controllers/Report/BalanceController.php b/app/Http/Controllers/Report/BalanceController.php index 41b3010a4a..914f12061c 100644 --- a/app/Http/Controllers/Report/BalanceController.php +++ b/app/Http/Controllers/Report/BalanceController.php @@ -23,7 +23,6 @@ declare(strict_types=1); namespace FireflyIII\Http\Controllers\Report; -use Throwable; use Carbon\Carbon; use FireflyIII\Enums\TransactionTypeEnum; use FireflyIII\Exceptions\FireflyException; @@ -141,7 +140,7 @@ class BalanceController extends Controller try { $result = view('reports.partials.balance', compact('report'))->render(); - } catch (Throwable $e) { + } catch (\Throwable $e) { app('log')->error(sprintf('Could not render reports.partials.balance: %s', $e->getMessage())); app('log')->error($e->getTraceAsString()); $result = 'Could not render view.'; diff --git a/app/Http/Controllers/Report/BillController.php b/app/Http/Controllers/Report/BillController.php index 1fd70e3c48..afbb68362c 100644 --- a/app/Http/Controllers/Report/BillController.php +++ b/app/Http/Controllers/Report/BillController.php @@ -24,7 +24,6 @@ declare(strict_types=1); namespace FireflyIII\Http\Controllers\Report; -use Throwable; use Carbon\Carbon; use FireflyIII\Exceptions\FireflyException; use FireflyIII\Helpers\Report\ReportHelperInterface; @@ -59,7 +58,7 @@ class BillController extends Controller try { $result = view('reports.partials.bills', compact('report'))->render(); - } catch (Throwable $e) { + } catch (\Throwable $e) { app('log')->error(sprintf('Could not render reports.partials.budgets: %s', $e->getMessage())); app('log')->error($e->getTraceAsString()); $result = 'Could not render view.'; diff --git a/app/Http/Controllers/Report/BudgetController.php b/app/Http/Controllers/Report/BudgetController.php index f24dd2b551..67c316891d 100644 --- a/app/Http/Controllers/Report/BudgetController.php +++ b/app/Http/Controllers/Report/BudgetController.php @@ -23,7 +23,6 @@ declare(strict_types=1); namespace FireflyIII\Http\Controllers\Report; -use Throwable; use Carbon\Carbon; use FireflyIII\Exceptions\FireflyException; use FireflyIII\Http\Controllers\Controller; @@ -177,7 +176,7 @@ class BudgetController extends Controller try { $result = view('reports.budget.partials.avg-expenses', compact('result'))->render(); - } catch (Throwable $e) { + } catch (\Throwable $e) { app('log')->error(sprintf('Could not render reports.partials.budget-period: %s', $e->getMessage())); $result = sprintf('Could not render view: %s', $e->getMessage()); app('log')->error($e->getTraceAsString()); @@ -327,7 +326,7 @@ class BudgetController extends Controller try { $result = view('reports.partials.budget-period', compact('report', 'periods'))->render(); - } catch (Throwable $e) { + } catch (\Throwable $e) { app('log')->error(sprintf('Could not render reports.partials.budget-period: %s', $e->getMessage())); app('log')->error($e->getTraceAsString()); $result = 'Could not render view.'; @@ -378,7 +377,7 @@ class BudgetController extends Controller try { $result = view('reports.budget.partials.top-expenses', compact('result'))->render(); - } catch (Throwable $e) { + } catch (\Throwable $e) { app('log')->error(sprintf('Could not render reports.partials.budget-period: %s', $e->getMessage())); $result = sprintf('Could not render view: %s', $e->getMessage()); diff --git a/app/Http/Controllers/Report/CategoryController.php b/app/Http/Controllers/Report/CategoryController.php index fc8d17421a..0168fdd75e 100644 --- a/app/Http/Controllers/Report/CategoryController.php +++ b/app/Http/Controllers/Report/CategoryController.php @@ -23,7 +23,6 @@ declare(strict_types=1); namespace FireflyIII\Http\Controllers\Report; -use Throwable; use Carbon\Carbon; use FireflyIII\Exceptions\FireflyException; use FireflyIII\Http\Controllers\Controller; @@ -296,7 +295,7 @@ class CategoryController extends Controller try { $result = view('reports.category.partials.avg-expenses', compact('result'))->render(); - } catch (Throwable $e) { + } catch (\Throwable $e) { app('log')->error(sprintf('Could not render reports.partials.budget-period: %s', $e->getMessage())); $result = sprintf('Could not render view: %s', $e->getMessage()); @@ -346,7 +345,7 @@ class CategoryController extends Controller try { $result = view('reports.category.partials.avg-income', compact('result'))->render(); - } catch (Throwable $e) { + } catch (\Throwable $e) { app('log')->error(sprintf('Could not render reports.partials.budget-period: %s', $e->getMessage())); $result = sprintf('Could not render view: %s', $e->getMessage()); @@ -528,7 +527,7 @@ class CategoryController extends Controller try { $result = view('reports.partials.category-period', compact('report', 'periods'))->render(); - } catch (Throwable $e) { + } catch (\Throwable $e) { app('log')->error(sprintf('Could not render category::expenses: %s', $e->getMessage())); $result = sprintf('An error prevented Firefly III from rendering: %s. Apologies.', $e->getMessage()); @@ -600,7 +599,7 @@ class CategoryController extends Controller try { $result = view('reports.partials.category-period', compact('report', 'periods'))->render(); - } catch (Throwable $e) { + } catch (\Throwable $e) { app('log')->error(sprintf('Could not render category::expenses: %s', $e->getMessage())); $result = sprintf('An error prevented Firefly III from rendering: %s. Apologies.', $e->getMessage()); @@ -640,7 +639,7 @@ class CategoryController extends Controller try { $result = view('reports.partials.categories', compact('report'))->render(); $cache->store($result); - } catch (Throwable $e) { + } catch (\Throwable $e) { app('log')->error(sprintf('Could not render category::expenses: %s', $e->getMessage())); $result = sprintf('An error prevented Firefly III from rendering: %s. Apologies.', $e->getMessage()); @@ -688,7 +687,7 @@ class CategoryController extends Controller try { $result = view('reports.category.partials.top-expenses', compact('result'))->render(); - } catch (Throwable $e) { + } catch (\Throwable $e) { app('log')->debug(sprintf('Could not render reports.partials.budget-period: %s', $e->getMessage())); $result = sprintf('Could not render view: %s', $e->getMessage()); @@ -736,7 +735,7 @@ class CategoryController extends Controller try { $result = view('reports.category.partials.top-income', compact('result'))->render(); - } catch (Throwable $e) { + } catch (\Throwable $e) { app('log')->debug(sprintf('Could not render reports.partials.budget-period: %s', $e->getMessage())); $result = sprintf('Could not render view: %s', $e->getMessage()); diff --git a/app/Http/Controllers/Report/DoubleController.php b/app/Http/Controllers/Report/DoubleController.php index 32a1736844..79d9d5fc1e 100644 --- a/app/Http/Controllers/Report/DoubleController.php +++ b/app/Http/Controllers/Report/DoubleController.php @@ -23,7 +23,6 @@ declare(strict_types=1); namespace FireflyIII\Http\Controllers\Report; -use Throwable; use Carbon\Carbon; use FireflyIII\Exceptions\FireflyException; use FireflyIII\Http\Controllers\Controller; @@ -103,7 +102,7 @@ class DoubleController extends Controller try { $result = view('reports.double.partials.avg-expenses', compact('result'))->render(); - } catch (Throwable $e) { + } catch (\Throwable $e) { app('log')->error(sprintf('Could not render reports.partials.budget-period: %s', $e->getMessage())); $result = sprintf('Could not render view: %s', $e->getMessage()); @@ -153,7 +152,7 @@ class DoubleController extends Controller try { $result = view('reports.double.partials.avg-income', compact('result'))->render(); - } catch (Throwable $e) { + } catch (\Throwable $e) { app('log')->error(sprintf('Could not render reports.partials.budget-period: %s', $e->getMessage())); $result = sprintf('Could not render view: %s', $e->getMessage()); @@ -430,7 +429,7 @@ class DoubleController extends Controller try { $result = view('reports.double.partials.top-expenses', compact('result'))->render(); - } catch (Throwable $e) { + } catch (\Throwable $e) { app('log')->error(sprintf('Could not render reports.partials.budget-period: %s', $e->getMessage())); $result = sprintf('Could not render view: %s', $e->getMessage()); @@ -478,7 +477,7 @@ class DoubleController extends Controller try { $result = view('reports.double.partials.top-income', compact('result'))->render(); - } catch (Throwable $e) { + } catch (\Throwable $e) { app('log')->error(sprintf('Could not render reports.partials.budget-period: %s', $e->getMessage())); $result = sprintf('Could not render view: %s', $e->getMessage()); diff --git a/app/Http/Controllers/Report/OperationsController.php b/app/Http/Controllers/Report/OperationsController.php index d2aaeaa3dd..de27b13d04 100644 --- a/app/Http/Controllers/Report/OperationsController.php +++ b/app/Http/Controllers/Report/OperationsController.php @@ -23,7 +23,6 @@ declare(strict_types=1); namespace FireflyIII\Http\Controllers\Report; -use Throwable; use Carbon\Carbon; use FireflyIII\Exceptions\FireflyException; use FireflyIII\Http\Controllers\Controller; @@ -79,7 +78,7 @@ class OperationsController extends Controller try { $result = view('reports.partials.income-expenses', compact('report', 'type'))->render(); - } catch (Throwable $e) { + } catch (\Throwable $e) { app('log')->error(sprintf('Could not render reports.partials.income-expense: %s', $e->getMessage())); app('log')->error($e->getTraceAsString()); $result = 'Could not render view.'; @@ -113,7 +112,7 @@ class OperationsController extends Controller try { $result = view('reports.partials.income-expenses', compact('report', 'type'))->render(); - } catch (Throwable $e) { + } catch (\Throwable $e) { app('log')->error(sprintf('Could not render reports.partials.income-expenses: %s', $e->getMessage())); app('log')->error($e->getTraceAsString()); $result = 'Could not render view.'; @@ -168,7 +167,7 @@ class OperationsController extends Controller try { $result = view('reports.partials.operations', compact('sums'))->render(); - } catch (Throwable $e) { + } catch (\Throwable $e) { app('log')->error(sprintf('Could not render reports.partials.operations: %s', $e->getMessage())); app('log')->error($e->getTraceAsString()); $result = 'Could not render view.'; diff --git a/app/Http/Controllers/Report/TagController.php b/app/Http/Controllers/Report/TagController.php index 22bca3fd99..0b8f8cde7b 100644 --- a/app/Http/Controllers/Report/TagController.php +++ b/app/Http/Controllers/Report/TagController.php @@ -24,7 +24,6 @@ declare(strict_types=1); namespace FireflyIII\Http\Controllers\Report; -use Throwable; use Carbon\Carbon; use FireflyIII\Exceptions\FireflyException; use FireflyIII\Http\Controllers\Controller; @@ -293,7 +292,7 @@ class TagController extends Controller try { $result = view('reports.tag.partials.avg-expenses', compact('result'))->render(); - } catch (Throwable $e) { + } catch (\Throwable $e) { app('log')->debug(sprintf('Could not render reports.partials.budget-period: %s', $e->getMessage())); $result = sprintf('Could not render view: %s', $e->getMessage()); @@ -343,7 +342,7 @@ class TagController extends Controller try { $result = view('reports.tag.partials.avg-income', compact('result'))->render(); - } catch (Throwable $e) { + } catch (\Throwable $e) { app('log')->debug(sprintf('Could not render reports.partials.budget-period: %s', $e->getMessage())); $result = sprintf('Could not render view: %s', $e->getMessage()); @@ -491,7 +490,7 @@ class TagController extends Controller try { $result = view('reports.tag.partials.top-expenses', compact('result'))->render(); - } catch (Throwable $e) { + } catch (\Throwable $e) { app('log')->debug(sprintf('Could not render reports.partials.budget-period: %s', $e->getMessage())); $result = sprintf('Could not render view: %s', $e->getMessage()); @@ -539,7 +538,7 @@ class TagController extends Controller try { $result = view('reports.tag.partials.top-income', compact('result'))->render(); - } catch (Throwable $e) { + } catch (\Throwable $e) { app('log')->debug(sprintf('Could not render reports.partials.budget-period: %s', $e->getMessage())); $result = sprintf('Could not render view: %s', $e->getMessage()); diff --git a/app/Http/Controllers/Rule/EditController.php b/app/Http/Controllers/Rule/EditController.php index 848fa259a3..c6f50d48ec 100644 --- a/app/Http/Controllers/Rule/EditController.php +++ b/app/Http/Controllers/Rule/EditController.php @@ -24,7 +24,6 @@ declare(strict_types=1); namespace FireflyIII\Http\Controllers\Rule; -use Throwable; use FireflyIII\Exceptions\FireflyException; use FireflyIII\Http\Controllers\Controller; use FireflyIII\Http\Requests\RuleFormRequest; @@ -178,7 +177,7 @@ class EditController extends Controller 'triggers' => $triggers, ] )->render(); - } catch (Throwable $e) { + } catch (\Throwable $e) { $message = sprintf('Throwable was thrown in getPreviousTriggers(): %s', $e->getMessage()); app('log')->debug($message); app('log')->error($e->getTraceAsString()); diff --git a/app/Http/Controllers/Rule/SelectController.php b/app/Http/Controllers/Rule/SelectController.php index 24c7dc0860..d6dae9d5fa 100644 --- a/app/Http/Controllers/Rule/SelectController.php +++ b/app/Http/Controllers/Rule/SelectController.php @@ -24,7 +24,6 @@ declare(strict_types=1); namespace FireflyIII\Http\Controllers\Rule; -use Throwable; use Carbon\Carbon; use FireflyIII\Exceptions\FireflyException; use FireflyIII\Http\Controllers\Controller; @@ -175,7 +174,7 @@ class SelectController extends Controller try { $view = view('list.journals-array-tiny', ['groups' => $collection])->render(); - } catch (Throwable $exception) { + } catch (\Throwable $exception) { app('log')->error(sprintf('Could not render view in testTriggers(): %s', $exception->getMessage())); app('log')->error($exception->getTraceAsString()); $view = sprintf('Could not render list.journals-tiny: %s', $exception->getMessage()); @@ -217,7 +216,7 @@ class SelectController extends Controller try { $view = view('list.journals-array-tiny', ['groups' => $collection])->render(); - } catch (Throwable $exception) { + } catch (\Throwable $exception) { $message = sprintf('Could not render view in testTriggersByRule(): %s', $exception->getMessage()); app('log')->error($message); app('log')->error($exception->getTraceAsString()); diff --git a/app/Http/Controllers/RuleGroup/ExecutionController.php b/app/Http/Controllers/RuleGroup/ExecutionController.php index 40419e9656..542d38d0a7 100644 --- a/app/Http/Controllers/RuleGroup/ExecutionController.php +++ b/app/Http/Controllers/RuleGroup/ExecutionController.php @@ -24,7 +24,6 @@ declare(strict_types=1); namespace FireflyIII\Http\Controllers\RuleGroup; -use Exception; use Carbon\Carbon; use FireflyIII\Http\Controllers\Controller; use FireflyIII\Http\Requests\SelectTransactionsRequest; @@ -65,7 +64,7 @@ class ExecutionController extends Controller /** * Execute the given rulegroup on a set of existing transactions. * - * @throws Exception + * @throws \Exception */ public function execute(SelectTransactionsRequest $request, RuleGroup $ruleGroup): RedirectResponse { diff --git a/app/Http/Controllers/SearchController.php b/app/Http/Controllers/SearchController.php index b30d1eefad..ceab9169c5 100644 --- a/app/Http/Controllers/SearchController.php +++ b/app/Http/Controllers/SearchController.php @@ -23,7 +23,6 @@ declare(strict_types=1); namespace FireflyIII\Http\Controllers; -use Throwable; use FireflyIII\Exceptions\FireflyException; use FireflyIII\Repositories\Rule\RuleRepositoryInterface; use FireflyIII\Support\Search\SearchInterface; @@ -119,7 +118,7 @@ class SearchController extends Controller try { $html = view('search.search', compact('groups', 'hasPages', 'searchTime'))->render(); - } catch (Throwable $e) { + } catch (\Throwable $e) { app('log')->error(sprintf('Cannot render search.search: %s', $e->getMessage())); app('log')->error($e->getTraceAsString()); $html = 'Could not render view.'; diff --git a/app/Http/Controllers/System/InstallController.php b/app/Http/Controllers/System/InstallController.php index fc92065205..55a0054632 100644 --- a/app/Http/Controllers/System/InstallController.php +++ b/app/Http/Controllers/System/InstallController.php @@ -24,8 +24,6 @@ declare(strict_types=1); namespace FireflyIII\Http\Controllers\System; -use Artisan; -use function Safe\file_put_contents; use Cache; use Exception; use FireflyIII\Exceptions\FireflyException; @@ -38,6 +36,8 @@ use Illuminate\View\View; use Laravel\Passport\Passport; use phpseclib3\Crypt\RSA; +use function Safe\file_put_contents; + /** * Class InstallController */ @@ -142,14 +142,14 @@ class InstallController extends Controller $this->keys(); } if ('generate-keys' !== $command) { - Artisan::call($command, $args); - app('log')->debug(Artisan::output()); + \Artisan::call($command, $args); + app('log')->debug(\Artisan::output()); } - } catch (Exception $e) { // intentional generic exception + } catch (\Exception $e) { // intentional generic exception throw new FireflyException($e->getMessage(), 0, $e); } // clear cache as well. - Cache::clear(); + \Cache::clear(); app('preferences')->mark(); return true; diff --git a/app/Http/Controllers/Transaction/ConvertController.php b/app/Http/Controllers/Transaction/ConvertController.php index d3b00a5738..929d46ede7 100644 --- a/app/Http/Controllers/Transaction/ConvertController.php +++ b/app/Http/Controllers/Transaction/ConvertController.php @@ -82,7 +82,7 @@ class ConvertController extends Controller * * @return Factory|Redirector|RedirectResponse|View * - * @throws Exception + * @throws \Exception */ public function index(TransactionType $destinationType, TransactionGroup $group) { @@ -214,7 +214,7 @@ class ConvertController extends Controller } /** - * @throws Exception + * @throws \Exception */ private function getLiabilities(): array { @@ -238,7 +238,7 @@ class ConvertController extends Controller } /** - * @throws Exception + * @throws \Exception */ private function getAssetAccounts(): array { diff --git a/app/Http/Controllers/Transaction/CreateController.php b/app/Http/Controllers/Transaction/CreateController.php index f23108fe17..8fdaf2e2a4 100644 --- a/app/Http/Controllers/Transaction/CreateController.php +++ b/app/Http/Controllers/Transaction/CreateController.php @@ -25,7 +25,6 @@ declare(strict_types=1); namespace FireflyIII\Http\Controllers\Transaction; use FireflyIII\Models\TransactionGroup; -use function Safe\parse_url; use FireflyIII\Events\StoredTransactionGroup; use FireflyIII\Exceptions\FireflyException; use FireflyIII\Http\Controllers\Controller; @@ -37,6 +36,8 @@ use Illuminate\Contracts\View\View; use Illuminate\Http\JsonResponse; use Illuminate\Http\Request; +use function Safe\parse_url; + /** * Class CreateController */ diff --git a/app/Http/Controllers/Transaction/EditController.php b/app/Http/Controllers/Transaction/EditController.php index 0fa71e87c8..ee8a9897a4 100644 --- a/app/Http/Controllers/Transaction/EditController.php +++ b/app/Http/Controllers/Transaction/EditController.php @@ -24,7 +24,6 @@ declare(strict_types=1); namespace FireflyIII\Http\Controllers\Transaction; -use function Safe\parse_url; use FireflyIII\Http\Controllers\Controller; use FireflyIII\Models\TransactionGroup; use FireflyIII\Models\TransactionJournal; @@ -36,6 +35,8 @@ use Illuminate\Http\RedirectResponse; use Illuminate\Routing\Redirector; use Illuminate\View\View; +use function Safe\parse_url; + /** * Class EditController */ diff --git a/app/Http/Controllers/Transaction/MassController.php b/app/Http/Controllers/Transaction/MassController.php index bac580dc76..aa44005821 100644 --- a/app/Http/Controllers/Transaction/MassController.php +++ b/app/Http/Controllers/Transaction/MassController.php @@ -23,7 +23,6 @@ declare(strict_types=1); namespace FireflyIII\Http\Controllers\Transaction; -use InvalidArgumentException; use Carbon\Carbon; use FireflyIII\Enums\AccountTypeEnum; use FireflyIII\Enums\TransactionTypeEnum; @@ -232,7 +231,7 @@ class MassController extends Controller try { $carbon = Carbon::parse($value[$journalId]); - } catch (InvalidArgumentException $e) { + } catch (\InvalidArgumentException $e) { Log::warning(sprintf('Could not parse "%s" but dont mind', $value[$journalId])); Log::warning($e->getMessage()); diff --git a/app/Http/Middleware/AcceptHeaders.php b/app/Http/Middleware/AcceptHeaders.php index 66e3c74f63..0f797dea01 100644 --- a/app/Http/Middleware/AcceptHeaders.php +++ b/app/Http/Middleware/AcceptHeaders.php @@ -24,12 +24,13 @@ declare(strict_types=1); namespace FireflyIII\Http\Middleware; -use function Safe\preg_match; use FireflyIII\Exceptions\BadHttpHeaderException; use Illuminate\Http\Request; use Illuminate\Http\Response; use Symfony\Component\HttpKernel\Exception\BadRequestHttpException; +use function Safe\preg_match; + class AcceptHeaders { /** diff --git a/app/Http/Middleware/Authenticate.php b/app/Http/Middleware/Authenticate.php index 7f11d50cba..a4de77717e 100644 --- a/app/Http/Middleware/Authenticate.php +++ b/app/Http/Middleware/Authenticate.php @@ -24,7 +24,6 @@ declare(strict_types=1); namespace FireflyIII\Http\Middleware; -use Closure; use FireflyIII\Exceptions\FireflyException; use FireflyIII\User; use Illuminate\Auth\AuthenticationException; @@ -57,7 +56,7 @@ class Authenticate * @throws FireflyException * @throws AuthenticationException */ - public function handle($request, Closure $next, ...$guards) + public function handle($request, \Closure $next, ...$guards) { $this->authenticate($request, $guards); diff --git a/app/Http/Middleware/Binder.php b/app/Http/Middleware/Binder.php index 7b03830ba5..9f4413a06d 100644 --- a/app/Http/Middleware/Binder.php +++ b/app/Http/Middleware/Binder.php @@ -23,7 +23,6 @@ declare(strict_types=1); namespace FireflyIII\Http\Middleware; -use Closure; use FireflyIII\Support\Domain; use Illuminate\Contracts\Auth\Factory as Auth; use Illuminate\Http\Request; @@ -64,7 +63,7 @@ class Binder * * @return mixed */ - public function handle($request, Closure $next) + public function handle($request, \Closure $next) { foreach ($request->route()->parameters() as $key => $value) { if (array_key_exists($key, $this->binders)) { diff --git a/app/Http/Middleware/InstallationId.php b/app/Http/Middleware/InstallationId.php index 6c8aff7dab..79ac8daedc 100644 --- a/app/Http/Middleware/InstallationId.php +++ b/app/Http/Middleware/InstallationId.php @@ -24,7 +24,6 @@ declare(strict_types=1); namespace FireflyIII\Http\Middleware; -use Closure; use FireflyIII\Support\System\GeneratesInstallationId; use Illuminate\Http\Request; @@ -42,7 +41,7 @@ class InstallationId * * @return mixed */ - public function handle($request, Closure $next) + public function handle($request, \Closure $next) { $this->generateInstallationId(); diff --git a/app/Http/Middleware/Installer.php b/app/Http/Middleware/Installer.php index f7d38232ca..1954f226bd 100644 --- a/app/Http/Middleware/Installer.php +++ b/app/Http/Middleware/Installer.php @@ -24,7 +24,6 @@ declare(strict_types=1); namespace FireflyIII\Http\Middleware; -use Closure; use FireflyIII\Exceptions\FireflyException; use FireflyIII\Support\System\OAuthKeys; use Illuminate\Database\QueryException; @@ -46,7 +45,7 @@ class Installer * * @throws FireflyException */ - public function handle($request, Closure $next) + public function handle($request, \Closure $next) { // Log::debug(sprintf('Installer middleware for URL %s', $request->url())); // ignore installer in test environment. diff --git a/app/Http/Middleware/InterestingMessage.php b/app/Http/Middleware/InterestingMessage.php index 30c9b65e68..49e013d5ed 100644 --- a/app/Http/Middleware/InterestingMessage.php +++ b/app/Http/Middleware/InterestingMessage.php @@ -24,7 +24,6 @@ declare(strict_types=1); namespace FireflyIII\Http\Middleware; -use Closure; use FireflyIII\Models\Account; use FireflyIII\Models\Bill; use FireflyIII\Models\GroupMembership; @@ -46,7 +45,7 @@ class InterestingMessage * * @return mixed */ - public function handle(Request $request, Closure $next) + public function handle(Request $request, \Closure $next) { if ($this->testing()) { return $next($request); diff --git a/app/Http/Middleware/IsAdmin.php b/app/Http/Middleware/IsAdmin.php index 2412e607b7..c992713911 100644 --- a/app/Http/Middleware/IsAdmin.php +++ b/app/Http/Middleware/IsAdmin.php @@ -23,7 +23,6 @@ declare(strict_types=1); namespace FireflyIII\Http\Middleware; -use Closure; use FireflyIII\Repositories\User\UserRepositoryInterface; use FireflyIII\User; use Illuminate\Http\Request; @@ -41,7 +40,7 @@ class IsAdmin * * @return mixed */ - public function handle(Request $request, Closure $next, $guard = null) + public function handle(Request $request, \Closure $next, $guard = null) { if (Auth::guard($guard)->guest()) { if ($request->ajax()) { diff --git a/app/Http/Middleware/IsDemoUser.php b/app/Http/Middleware/IsDemoUser.php index e792003b9a..c984e947a5 100644 --- a/app/Http/Middleware/IsDemoUser.php +++ b/app/Http/Middleware/IsDemoUser.php @@ -23,7 +23,6 @@ declare(strict_types=1); namespace FireflyIII\Http\Middleware; -use Closure; use FireflyIII\Repositories\User\UserRepositoryInterface; use FireflyIII\User; use Illuminate\Http\Request; @@ -38,7 +37,7 @@ class IsDemoUser * * @return mixed */ - public function handle(Request $request, Closure $next) + public function handle(Request $request, \Closure $next) { /** @var null|User $user */ $user = $request->user(); diff --git a/app/Http/Middleware/Range.php b/app/Http/Middleware/Range.php index 28f261e807..7db74aa139 100644 --- a/app/Http/Middleware/Range.php +++ b/app/Http/Middleware/Range.php @@ -23,8 +23,6 @@ declare(strict_types=1); namespace FireflyIII\Http\Middleware; -use Closure; -use App; use Carbon\Carbon; use FireflyIII\Repositories\Journal\JournalRepositoryInterface; use FireflyIII\Support\Facades\Amount; @@ -44,7 +42,7 @@ class Range * * @return mixed */ - public function handle(Request $request, Closure $next) + public function handle(Request $request, \Closure $next) { if (null !== $request->user()) { // set start, end and finish: @@ -103,7 +101,7 @@ class Range // get locale preference: $language = app('steam')->getLanguage(); $locale = app('steam')->getLocale(); - App::setLocale($language); + \App::setLocale($language); Carbon::setLocale(substr((string) $locale, 0, 2)); $localeArray = app('steam')->getLocaleArray($locale); diff --git a/app/Http/Middleware/RedirectIfAuthenticated.php b/app/Http/Middleware/RedirectIfAuthenticated.php index 01cda1a816..5bffbb7146 100644 --- a/app/Http/Middleware/RedirectIfAuthenticated.php +++ b/app/Http/Middleware/RedirectIfAuthenticated.php @@ -23,7 +23,6 @@ declare(strict_types=1); namespace FireflyIII\Http\Middleware; -use Closure; use Illuminate\Http\Request; use Illuminate\Support\Facades\Auth; @@ -40,7 +39,7 @@ class RedirectIfAuthenticated * * @return mixed */ - public function handle($request, Closure $next, $guard = null) + public function handle($request, \Closure $next, $guard = null) { if (Auth::guard($guard)->check()) { return response()->redirectTo(route('index')); diff --git a/app/Http/Middleware/SecureHeaders.php b/app/Http/Middleware/SecureHeaders.php index 5f8b104992..4ae071b11f 100644 --- a/app/Http/Middleware/SecureHeaders.php +++ b/app/Http/Middleware/SecureHeaders.php @@ -24,8 +24,6 @@ declare(strict_types=1); namespace FireflyIII\Http\Middleware; -use Closure; -use Exception; use Barryvdh\Debugbar\Facades\Debugbar; use Illuminate\Http\Request; use Illuminate\Support\Facades\Vite; @@ -40,9 +38,9 @@ class SecureHeaders * * @return mixed * - * @throws Exception + * @throws \Exception */ - public function handle(Request $request, Closure $next) + public function handle(Request $request, \Closure $next) { // generate and share nonce. $nonce = base64_encode(random_bytes(16)); diff --git a/app/Http/Middleware/StartFireflySession.php b/app/Http/Middleware/StartFireflySession.php index 922bc3ad8c..03359f735a 100644 --- a/app/Http/Middleware/StartFireflySession.php +++ b/app/Http/Middleware/StartFireflySession.php @@ -23,7 +23,6 @@ declare(strict_types=1); namespace FireflyIII\Http\Middleware; -use Override; use Illuminate\Contracts\Session\Session; use Illuminate\Http\Request; use Illuminate\Session\Middleware\StartSession; @@ -38,7 +37,7 @@ class StartFireflySession extends StartSession * * @param Session $session */ - #[Override] + #[\Override] protected function storeCurrentUrl(Request $request, $session): void { $url = $request->fullUrl(); diff --git a/app/Http/Middleware/TrustHosts.php b/app/Http/Middleware/TrustHosts.php index 4446201045..9dcd6a249a 100644 --- a/app/Http/Middleware/TrustHosts.php +++ b/app/Http/Middleware/TrustHosts.php @@ -24,7 +24,6 @@ declare(strict_types=1); namespace FireflyIII\Http\Middleware; -use Override; use Illuminate\Http\Middleware\TrustHosts as Middleware; class TrustHosts extends Middleware @@ -34,7 +33,7 @@ class TrustHosts extends Middleware * * @return array */ - #[Override] + #[\Override] public function hosts(): array { return [ diff --git a/app/Http/Requests/ReportFormRequest.php b/app/Http/Requests/ReportFormRequest.php index e0d3c3c836..bf7e4417bb 100644 --- a/app/Http/Requests/ReportFormRequest.php +++ b/app/Http/Requests/ReportFormRequest.php @@ -23,7 +23,6 @@ declare(strict_types=1); namespace FireflyIII\Http\Requests; -use function Safe\preg_match; use Carbon\Carbon; use Exception; use FireflyIII\Exceptions\FireflyException; @@ -37,6 +36,8 @@ use Illuminate\Support\Collection; use Illuminate\Support\Facades\Log; use Illuminate\Validation\Validator; +use function Safe\preg_match; + /** * Class CategoryFormRequest. */ @@ -148,7 +149,7 @@ class ReportFormRequest extends FormRequest if (false !== $result && 0 !== $result) { try { $date = new Carbon($parts[1]); - } catch (Exception $e) { // intentional generic exception + } catch (\Exception $e) { // intentional generic exception $error = sprintf('"%s" is not a valid date range: %s', $range, $e->getMessage()); app('log')->error($error); app('log')->error($e->getTraceAsString()); @@ -186,7 +187,7 @@ class ReportFormRequest extends FormRequest if (false !== $result && 0 !== $result) { try { $date = new Carbon($parts[0]); - } catch (Exception $e) { // intentional generic exception + } catch (\Exception $e) { // intentional generic exception $error = sprintf('"%s" is not a valid date range: %s', $range, $e->getMessage()); app('log')->error($error); app('log')->error($e->getTraceAsString()); diff --git a/app/TransactionRules/Actions/SetDestinationAccount.php b/app/TransactionRules/Actions/SetDestinationAccount.php index cee2cd52b9..8140d1f9a8 100644 --- a/app/TransactionRules/Actions/SetDestinationAccount.php +++ b/app/TransactionRules/Actions/SetDestinationAccount.php @@ -48,10 +48,10 @@ class SetDestinationAccount implements ActionInterface public function actOnArray(array $journal): bool { - $accountName = $this->action->getValue($journal); + $accountName = $this->action->getValue($journal); /** @var User $user */ - $user = User::find($journal['user_id']); + $user = User::find($journal['user_id']); /** @var null|TransactionJournal $object */ $object = $user->transactionJournals()->find((int) $journal['transaction_journal_id']); @@ -63,11 +63,11 @@ class SetDestinationAccount implements ActionInterface return false; } - $type = $object->transactionType->type; + $type = $object->transactionType->type; $this->repository->setUser($user); // if this is a transfer or a deposit, the new destination account must be an asset account or a default account, and it MUST exist: - $newAccount = $this->findAssetAccount($type, $accountName); + $newAccount = $this->findAssetAccount($type, $accountName); if ((TransactionTypeEnum::DEPOSIT->value === $type || TransactionTypeEnum::TRANSFER->value === $type) && null === $newAccount) { app('log')->error( sprintf( @@ -83,7 +83,7 @@ class SetDestinationAccount implements ActionInterface // new destination account must be different from the current source account: /** @var null|Transaction $source */ - $source = $object->transactions()->where('amount', '<', 0)->first(); + $source = $object->transactions()->where('amount', '<', 0)->first(); if (null === $source) { app('log')->error('Could not find source transaction.'); event(new RuleActionFailedOnArray($this->action, $journal, trans('rules.cannot_find_source_transaction'))); @@ -135,9 +135,10 @@ class SetDestinationAccount implements ActionInterface // update destination transaction with new destination account: DB::table('transactions') - ->where('transaction_journal_id', '=', $object->id) - ->where('amount', '>', 0) - ->update(['account_id' => $newAccount->id]); + ->where('transaction_journal_id', '=', $object->id) + ->where('amount', '>', 0) + ->update(['account_id' => $newAccount->id]) + ; app('log')->debug(sprintf('Updated journal #%d (group #%d) and gave it new destination account ID.', $object->id, $object->transaction_group_id)); diff --git a/changelog.md b/changelog.md index 8c0c958cf9..d045b0d2cc 100644 --- a/changelog.md +++ b/changelog.md @@ -7,17 +7,17 @@ This project adheres to [Semantic Versioning](http://semver.org/). ### Fixed -- #10114 -- #10180 -- #10197 -- #10203 -- #10265 -- #10290 -- #10302 -- #10305 -- #10308 -- #10320 -- #10336 +- [Issue 10114](https://github.com/firefly-iii/firefly-iii/issues/10114) (Budget for foreign currency not getting updated when a transaction refers to it) reported by @srikakulamts +- [Issue 10180](https://github.com/firefly-iii/firefly-iii/issues/10180) (missing SPENT info) reported by @frank-bg +- [Issue 10197](https://github.com/firefly-iii/firefly-iii/issues/10197) (Add rule number) reported by @gogoizzy +- [PR 10203](https://github.com/firefly-iii/firefly-iii/pull/10203) (Fix Ukrainian language names) reported by @den-is +- [Issue 10265](https://github.com/firefly-iii/firefly-iii/issues/10265) (Liabilities, foreign currencies have some issues (payment/exchange with native currency)) reported by @jgmm81 +- [Issue 10290](https://github.com/firefly-iii/firefly-iii/issues/10290) (edit multiple transactions individually ignores reconciled state) reported by @goebeler +- [Issue 10302](https://github.com/firefly-iii/firefly-iii/issues/10302) (Attempt to read property "id" on null Error) reported by @XBadPlayerX +- [Issue 10305](https://github.com/firefly-iii/firefly-iii/issues/10305) (The info icon used to display transactions is not clickable in the default financial reports "budgets by accounts"-section's sum column) reported by @goebeler +- [Issue 10308](https://github.com/firefly-iii/firefly-iii/issues/10308) (Liabilities, with some details (payment/exchange with native currency)) reported by @jgmm81 +- [Issue 10320](https://github.com/firefly-iii/firefly-iii/issues/10320) (Button to update transaction keeps being disabled after correcting form errors) reported by @Astro1247 +- [Issue 10336](https://github.com/firefly-iii/firefly-iii/issues/10336) (New install recovering backup from 5.7.18 fails to run. ($param) must be of type int, string given in orrectsUnevenAmount.php) reported by @perezalvarezhi ## 6.2.12 - 2025-04-21 diff --git a/composer.lock b/composer.lock index 6abb6d2535..a8bea46c45 100644 --- a/composer.lock +++ b/composer.lock @@ -1879,16 +1879,16 @@ }, { "name": "laravel/framework", - "version": "v12.14.1", + "version": "v12.15.0", "source": { "type": "git", "url": "https://github.com/laravel/framework.git", - "reference": "84b142958d1638a7e89de94ce75c2821c601d3d7" + "reference": "2ef7fb183f18e547af4eb9f5a55b2ac1011f0b77" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/framework/zipball/84b142958d1638a7e89de94ce75c2821c601d3d7", - "reference": "84b142958d1638a7e89de94ce75c2821c601d3d7", + "url": "https://api.github.com/repos/laravel/framework/zipball/2ef7fb183f18e547af4eb9f5a55b2ac1011f0b77", + "reference": "2ef7fb183f18e547af4eb9f5a55b2ac1011f0b77", "shasum": "" }, "require": { @@ -2090,7 +2090,7 @@ "issues": "https://github.com/laravel/framework/issues", "source": "https://github.com/laravel/framework" }, - "time": "2025-05-13T17:50:51+00:00" + "time": "2025-05-20T15:10:44+00:00" }, { "name": "laravel/passport", @@ -11163,16 +11163,16 @@ }, { "name": "phpstan/phpstan", - "version": "2.1.16", + "version": "2.1.17", "source": { "type": "git", "url": "https://github.com/phpstan/phpstan.git", - "reference": "b8c1cf533cba0c305d91c6ccd23f3dd0566ba5f9" + "reference": "89b5ef665716fa2a52ecd2633f21007a6a349053" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpstan/phpstan/zipball/b8c1cf533cba0c305d91c6ccd23f3dd0566ba5f9", - "reference": "b8c1cf533cba0c305d91c6ccd23f3dd0566ba5f9", + "url": "https://api.github.com/repos/phpstan/phpstan/zipball/89b5ef665716fa2a52ecd2633f21007a6a349053", + "reference": "89b5ef665716fa2a52ecd2633f21007a6a349053", "shasum": "" }, "require": { @@ -11217,7 +11217,7 @@ "type": "github" } ], - "time": "2025-05-16T09:40:10+00:00" + "time": "2025-05-21T20:55:28+00:00" }, { "name": "phpstan/phpstan-deprecation-rules", @@ -11316,16 +11316,16 @@ }, { "name": "phpunit/php-code-coverage", - "version": "12.2.1", + "version": "12.3.0", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-code-coverage.git", - "reference": "448f2c504d86dbff3949dcd02c95aa85db2c7617" + "reference": "9075a8efc66e11bc55c319062e147bdb06777267" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/448f2c504d86dbff3949dcd02c95aa85db2c7617", - "reference": "448f2c504d86dbff3949dcd02c95aa85db2c7617", + "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/9075a8efc66e11bc55c319062e147bdb06777267", + "reference": "9075a8efc66e11bc55c319062e147bdb06777267", "shasum": "" }, "require": { @@ -11352,7 +11352,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "12.2.x-dev" + "dev-main": "12.3.x-dev" } }, "autoload": { @@ -11381,7 +11381,7 @@ "support": { "issues": "https://github.com/sebastianbergmann/php-code-coverage/issues", "security": "https://github.com/sebastianbergmann/php-code-coverage/security/policy", - "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/12.2.1" + "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/12.3.0" }, "funding": [ { @@ -11401,7 +11401,7 @@ "type": "tidelift" } ], - "time": "2025-05-04T05:25:05+00:00" + "time": "2025-05-23T15:49:03+00:00" }, { "name": "phpunit/php-file-iterator", @@ -11650,16 +11650,16 @@ }, { "name": "phpunit/phpunit", - "version": "12.1.5", + "version": "12.1.6", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "f93ef2198df8d54b3195bcee381a33be51d8705e" + "reference": "2fdf0056c673c8f0f1eed00030be5f8243c1e6e0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/f93ef2198df8d54b3195bcee381a33be51d8705e", - "reference": "f93ef2198df8d54b3195bcee381a33be51d8705e", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/2fdf0056c673c8f0f1eed00030be5f8243c1e6e0", + "reference": "2fdf0056c673c8f0f1eed00030be5f8243c1e6e0", "shasum": "" }, "require": { @@ -11681,7 +11681,7 @@ "sebastian/cli-parser": "^4.0.0", "sebastian/comparator": "^7.0.1", "sebastian/diff": "^7.0.0", - "sebastian/environment": "^8.0.0", + "sebastian/environment": "^8.0.1", "sebastian/exporter": "^7.0.0", "sebastian/global-state": "^8.0.0", "sebastian/object-enumerator": "^7.0.0", @@ -11727,7 +11727,7 @@ "support": { "issues": "https://github.com/sebastianbergmann/phpunit/issues", "security": "https://github.com/sebastianbergmann/phpunit/security/policy", - "source": "https://github.com/sebastianbergmann/phpunit/tree/12.1.5" + "source": "https://github.com/sebastianbergmann/phpunit/tree/12.1.6" }, "funding": [ { @@ -11751,7 +11751,7 @@ "type": "tidelift" } ], - "time": "2025-05-11T06:44:52+00:00" + "time": "2025-05-21T12:36:31+00:00" }, { "name": "rector/rector", @@ -12076,16 +12076,16 @@ }, { "name": "sebastian/environment", - "version": "8.0.0", + "version": "8.0.2", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/environment.git", - "reference": "8afe311eca49171bf95405cc0078be9a3821f9f2" + "reference": "d364b9e5d0d3b18a2573351a1786fbf96b7e0792" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/8afe311eca49171bf95405cc0078be9a3821f9f2", - "reference": "8afe311eca49171bf95405cc0078be9a3821f9f2", + "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/d364b9e5d0d3b18a2573351a1786fbf96b7e0792", + "reference": "d364b9e5d0d3b18a2573351a1786fbf96b7e0792", "shasum": "" }, "require": { @@ -12128,15 +12128,27 @@ "support": { "issues": "https://github.com/sebastianbergmann/environment/issues", "security": "https://github.com/sebastianbergmann/environment/security/policy", - "source": "https://github.com/sebastianbergmann/environment/tree/8.0.0" + "source": "https://github.com/sebastianbergmann/environment/tree/8.0.2" }, "funding": [ { "url": "https://github.com/sebastianbergmann", "type": "github" + }, + { + "url": "https://liberapay.com/sebastianbergmann", + "type": "liberapay" + }, + { + "url": "https://thanks.dev/u/gh/sebastianbergmann", + "type": "thanks_dev" + }, + { + "url": "https://tidelift.com/funding/github/packagist/sebastian/environment", + "type": "tidelift" } ], - "time": "2025-02-07T04:56:08+00:00" + "time": "2025-05-21T15:05:44+00:00" }, { "name": "sebastian/exporter", @@ -12679,22 +12691,22 @@ }, { "name": "thecodingmachine/phpstan-safe-rule", - "version": "v1.4.0", + "version": "v1.4.1", "source": { "type": "git", "url": "https://github.com/thecodingmachine/phpstan-safe-rule.git", - "reference": "33dcbc3228c55ea4c364ecf74a3661cf7b7f168d" + "reference": "5f9795eae8891dffa475965463a4281633651768" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thecodingmachine/phpstan-safe-rule/zipball/33dcbc3228c55ea4c364ecf74a3661cf7b7f168d", - "reference": "33dcbc3228c55ea4c364ecf74a3661cf7b7f168d", + "url": "https://api.github.com/repos/thecodingmachine/phpstan-safe-rule/zipball/5f9795eae8891dffa475965463a4281633651768", + "reference": "5f9795eae8891dffa475965463a4281633651768", "shasum": "" }, "require": { "nikic/php-parser": "^5", "php": "^8.1", - "phpstan/phpstan": "^2.0", + "phpstan/phpstan": "^2.1.11", "thecodingmachine/safe": "^1.2 || ^2.0 || ^3.0" }, "require-dev": { @@ -12731,9 +12743,9 @@ "description": "A PHPStan rule to detect safety issues. Must be used in conjunction with thecodingmachine/safe", "support": { "issues": "https://github.com/thecodingmachine/phpstan-safe-rule/issues", - "source": "https://github.com/thecodingmachine/phpstan-safe-rule/tree/v1.4.0" + "source": "https://github.com/thecodingmachine/phpstan-safe-rule/tree/v1.4.1" }, - "time": "2025-02-11T12:41:29+00:00" + "time": "2025-04-09T20:30:35+00:00" }, { "name": "theseer/tokenizer", diff --git a/config/firefly.php b/config/firefly.php index be71a98562..5db827b373 100644 --- a/config/firefly.php +++ b/config/firefly.php @@ -78,7 +78,7 @@ return [ 'running_balance_column' => env('USE_RUNNING_BALANCE', false), // see cer.php for exchange rates feature flag. ], - 'version' => 'develop/2025-05-19', + 'version' => 'develop/2025-05-24', 'api_version' => '2.1.0', // field is no longer used. 'db_version' => 25, diff --git a/package-lock.json b/package-lock.json index 68edc5e5fc..977088f92a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -3108,9 +3108,9 @@ "license": "MIT" }, "node_modules/@types/node": { - "version": "22.15.19", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.15.19.tgz", - "integrity": "sha512-3vMNr4TzNQyjHcRZadojpRaD9Ofr6LsonZAoQ+HMUa/9ORTPoxVIw0e0mpqWpdjj8xybyCM+oKOUH2vwFu/oEw==", + "version": "22.15.21", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.15.21.tgz", + "integrity": "sha512-EV/37Td6c+MgKAbkcLG6vqZ2zEYHD7bvSrzqqs2RIhbA6w3x+Dqz8MZM3sP6kGTeLrdoOgKZe+Xja7tUB2DNkQ==", "dev": true, "license": "MIT", "dependencies": { @@ -4133,9 +4133,9 @@ "license": "MIT" }, "node_modules/bootstrap5-tags": { - "version": "1.7.14", - "resolved": "https://registry.npmjs.org/bootstrap5-tags/-/bootstrap5-tags-1.7.14.tgz", - "integrity": "sha512-xN00X4eekFIVHDt8jo1y6jQwhWlTuVC9TOzOXi9FEFal/VzEtt78mToEgM+nPx6OV1xVNwgl5AX2s90ZHFsnYA==", + "version": "1.7.15", + "resolved": "https://registry.npmjs.org/bootstrap5-tags/-/bootstrap5-tags-1.7.15.tgz", + "integrity": "sha512-UnHmJC9p0ei5rZG1/5qOFBoKFJ+ZyXiVTi1+fJnN/+6d/htZZ9M4cALxsjxQR53K2PrOSApMBOR2QZDbIkdK+g==", "license": "MIT" }, "node_modules/brace-expansion": { @@ -5632,9 +5632,9 @@ "license": "MIT" }, "node_modules/electron-to-chromium": { - "version": "1.5.155", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.155.tgz", - "integrity": "sha512-ps5KcGGmwL8VaeJlvlDlu4fORQpv3+GIcF5I3f9tUKUlJ/wsysh6HU8P5L1XWRYeXfA0oJd4PyM8ds8zTFf6Ng==", + "version": "1.5.157", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.157.tgz", + "integrity": "sha512-/0ybgsQd1muo8QlnuTpKwtl0oX5YMlUGbm8xyqgDU00motRkKFFbUJySAQBWcY79rVqNLWIWa87BGVGClwAB2w==", "dev": true, "license": "ISC" }, @@ -10848,9 +10848,9 @@ } }, "node_modules/tapable": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", - "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.2.tgz", + "integrity": "sha512-Re10+NauLTMCudc7T5WLFLAwDhQ0JWdrMK+9B2M8zR5hRExKmsRDCBA7/aV/pNJFltmBFO5BAMlQFi/vq3nKOg==", "dev": true, "license": "MIT", "engines": { @@ -11620,9 +11620,9 @@ } }, "node_modules/watchpack": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.2.tgz", - "integrity": "sha512-TnbFSbcOCcDgjZ4piURLCbJ3nJhznVh9kw6F6iokjiFPl8ONxe9A6nMDVXDiNbrSfLILs6vB07F7wLBrwPYzJw==", + "version": "2.4.4", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.4.tgz", + "integrity": "sha512-c5EGNOiyxxV5qmTtAB7rbiXxi1ooX1pQKMLX/MIabJjRA0SJBQOjKF+KSVfHkr9U1cADPon0mRiVe/riyaiDUA==", "dev": true, "license": "MIT", "dependencies": { @@ -11650,9 +11650,9 @@ "license": "BSD-2-Clause" }, "node_modules/webpack": { - "version": "5.99.8", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.99.8.tgz", - "integrity": "sha512-lQ3CPiSTpfOnrEGeXDwoq5hIGzSjmwD72GdfVzF7CQAI7t47rJG9eDWvcEkEn3CUQymAElVvDg3YNTlCYj+qUQ==", + "version": "5.99.9", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.99.9.tgz", + "integrity": "sha512-brOPwM3JnmOa+7kd3NsmOUOwbDAj8FT9xDsG3IW0MgbN9yZV7Oi/s/+MNQ/EcSMqw7qfoRyXPoeEWT8zLVdVGg==", "dev": true, "license": "MIT", "dependencies": { @@ -12081,9 +12081,9 @@ } }, "node_modules/webpack/node_modules/webpack-sources": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", - "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.3.0.tgz", + "integrity": "sha512-77R0RDmJfj9dyv5p3bM5pOHa+X8/ZkO9c7kpDstigkC4nIDobadsfSGCwB4bKhMVxqAok8tajaoR8rirM7+VFQ==", "dev": true, "license": "MIT", "engines": { diff --git a/resources/assets/v1/mix-manifest.json b/resources/assets/v1/mix-manifest.json index 145eaf58f2..ff2938f703 100644 --- a/resources/assets/v1/mix-manifest.json +++ b/resources/assets/v1/mix-manifest.json @@ -20,12 +20,8 @@ "/public/v1/js/app.js.LICENSE.txt": "/public/v1/js/app.js.LICENSE.txt", "/public/v1/js/app_vue.js": "/public/v1/js/app_vue.js", "/public/v1/js/app_vue.js.LICENSE.txt": "/public/v1/js/app_vue.js.LICENSE.txt", - "/public/v1/js/create.js": "/public/v1/js/create.js", - "/public/v1/js/create.js.LICENSE.txt": "/public/v1/js/create.js.LICENSE.txt", "/public/v1/js/create_transaction.js": "/public/v1/js/create_transaction.js", "/public/v1/js/create_transaction.js.LICENSE.txt": "/public/v1/js/create_transaction.js.LICENSE.txt", - "/public/v1/js/edit.js": "/public/v1/js/edit.js", - "/public/v1/js/edit.js.LICENSE.txt": "/public/v1/js/edit.js.LICENSE.txt", "/public/v1/js/edit_transaction.js": "/public/v1/js/edit_transaction.js", "/public/v1/js/edit_transaction.js.LICENSE.txt": "/public/v1/js/edit_transaction.js.LICENSE.txt", "/public/v1/js/exchange-rates/index.js": "/public/v1/js/exchange-rates/index.js", @@ -100,8 +96,6 @@ "/public/v1/js/ff/transactions/mass/edit-bulk.js": "/public/v1/js/ff/transactions/mass/edit-bulk.js", "/public/v1/js/ff/transactions/mass/edit.js": "/public/v1/js/ff/transactions/mass/edit.js", "/public/v1/js/ff/transactions/show.js": "/public/v1/js/ff/transactions/show.js", - "/public/v1/js/index.js": "/public/v1/js/index.js", - "/public/v1/js/index.js.LICENSE.txt": "/public/v1/js/index.js.LICENSE.txt", "/public/v1/js/lib/Chart.bundle.min.js": "/public/v1/js/lib/Chart.bundle.min.js", "/public/v1/js/lib/accounting.min.js": "/public/v1/js/lib/accounting.min.js", "/public/v1/js/lib/bootstrap-multiselect.js": "/public/v1/js/lib/bootstrap-multiselect.js", @@ -126,7 +120,6 @@ "/public/v1/js/lib/moment/en_US.js": "/public/v1/js/lib/moment/en_US.js", "/public/v1/js/lib/moment/es_ES.js": "/public/v1/js/lib/moment/es_ES.js", "/public/v1/js/lib/moment/es_MX.js": "/public/v1/js/lib/moment/es_MX.js", - "/public/v1/js/lib/moment/fa_IR.js": "/public/v1/js/lib/moment/fa_IR.js", "/public/v1/js/lib/moment/fi_FI.js": "/public/v1/js/lib/moment/fi_FI.js", "/public/v1/js/lib/moment/fr_FR.js": "/public/v1/js/lib/moment/fr_FR.js", "/public/v1/js/lib/moment/hu_HU.js": "/public/v1/js/lib/moment/hu_HU.js", @@ -150,7 +143,6 @@ "/public/v1/js/lib/moment/vi_VN.js": "/public/v1/js/lib/moment/vi_VN.js", "/public/v1/js/lib/moment/zh_CN.js": "/public/v1/js/lib/moment/zh_CN.js", "/public/v1/js/lib/moment/zh_TW.js": "/public/v1/js/lib/moment/zh_TW.js", - "/public/v1/js/lib/moment-tz.js": "/public/v1/js/lib/moment-tz.js", "/public/v1/js/lib/moment.min.js": "/public/v1/js/lib/moment.min.js", "/public/v1/js/lib/respond.min.js": "/public/v1/js/lib/respond.min.js", "/public/v1/js/lib/typeahead/bloodhound.js": "/public/v1/js/lib/typeahead/bloodhound.js", @@ -162,8 +154,6 @@ "/public/v1/js/lib/vue.js": "/public/v1/js/lib/vue.js", "/public/v1/js/profile.js": "/public/v1/js/profile.js", "/public/v1/js/profile.js.LICENSE.txt": "/public/v1/js/profile.js.LICENSE.txt", - "/public/v1/js/show.js": "/public/v1/js/show.js", - "/public/v1/js/show.js.LICENSE.txt": "/public/v1/js/show.js.LICENSE.txt", "/public/v1/js/webhooks/create.js": "/public/v1/js/webhooks/create.js", "/public/v1/js/webhooks/create.js.LICENSE.txt": "/public/v1/js/webhooks/create.js.LICENSE.txt", "/public/v1/js/webhooks/edit.js": "/public/v1/js/webhooks/edit.js", diff --git a/resources/assets/v1/src/locales/es.json b/resources/assets/v1/src/locales/es.json index 2cf2af2535..f95567a221 100644 --- a/resources/assets/v1/src/locales/es.json +++ b/resources/assets/v1/src/locales/es.json @@ -31,7 +31,7 @@ "apply_rules_checkbox": "Aplicar reglas", "fire_webhooks_checkbox": "Disparar webhooks", "no_budget_pointer": "Parece que a\u00fan no tienes presupuestos. Debes crear algunos en la p\u00e1gina presupuestos<\/a>. Los presupuestos pueden ayudarle a realizar un seguimiento de los gastos.", - "no_bill_pointer": "You seem to have no subscription yet. You should create some on the subscription<\/a>-page. Subscriptions can help you keep track of expenses.", + "no_bill_pointer": "Parece que a\u00fan no tienes suscripci\u00f3n. Deber\u00edas crear algunas en la p\u00e1gina suscripci\u00f3n<\/a>. Las suscripciones pueden ayudarte a llevar un seguimiento de los gastos.", "source_account": "Cuenta origen", "hidden_fields_preferences": "Puede habilitar m\u00e1s opciones de transacci\u00f3n en sus ajustes <\/a>.", "destination_account": "Cuenta destino", @@ -169,7 +169,7 @@ "webhook_delivery": "Entrega", "from_currency_to_currency": "{from} → {to}", "to_currency_from_currency": "{to} → {from}", - "rate": "Rate" + "rate": "Denos su evaluaci\u00f3n" }, "list": { "title": "T\u00edtulo", diff --git a/resources/assets/v1/src/locales/zh-tw.json b/resources/assets/v1/src/locales/zh-tw.json index 08d5ff0ed8..9968c2467a 100644 --- a/resources/assets/v1/src/locales/zh-tw.json +++ b/resources/assets/v1/src/locales/zh-tw.json @@ -183,6 +183,6 @@ }, "config": { "html_language": "zh-tw", - "date_time_fns": "YYYY\u5e74 M\u6708 D\u65e5 dddd \u65bc HH:mm:ss" + "date_time_fns": "yyyy\u5e74 M\u6708 D\u65e5 dddd \u65bc HH:mm:ss" } } \ No newline at end of file diff --git a/resources/lang/en_US/rules.php b/resources/lang/en_US/rules.php index f40c830470..9cd328a98f 100644 --- a/resources/lang/en_US/rules.php +++ b/resources/lang/en_US/rules.php @@ -38,7 +38,7 @@ return [ 'is_already_withdrawal' => 'This transaction is already a withdrawal', 'is_already_deposit' => 'This transaction is already a deposit', 'is_already_transfer' => 'This transaction is already a transfer', - 'no_destination' => 'Could not find or create destination account ":name"', + 'no_destination' => 'Could not find or create destination account ":name"', 'is_not_transfer' => 'This transaction is not a transfer', 'complex_error' => 'Something complicated went wrong. Sorry about that. Please inspect the logs of Firefly III', 'no_valid_opposing' => 'Conversion failed because there is no valid account named ":account"', diff --git a/tests/integration/Support/Models/BillDateCalculatorTest.php b/tests/integration/Support/Models/BillDateCalculatorTest.php index 3305bdff49..c5dba4eed9 100644 --- a/tests/integration/Support/Models/BillDateCalculatorTest.php +++ b/tests/integration/Support/Models/BillDateCalculatorTest.php @@ -38,10 +38,9 @@ use Tests\integration\TestCase; */ final class BillDateCalculatorTest extends TestCase { - private BillDateCalculator $calculator; + private BillDateCalculator $calculator; - - public function setUp(): void + protected function setUp(): void { parent::setUp(); $this->calculator = new BillDateCalculator(); @@ -49,8 +48,6 @@ final class BillDateCalculatorTest extends TestCase /** * Stupid long method names I'm not going to do that. - * - * */ #[DataProvider('provideDates')] public function testGivenSomeDataItWorks(Carbon $earliest, Carbon $latest, Carbon $billStart, string $period, int $skip, ?Carbon $lastPaid, array $expected): void diff --git a/tests/integration/Support/NavigationCustomEndOfPeriodTest.php b/tests/integration/Support/NavigationCustomEndOfPeriodTest.php index 352eb6bc3d..18a4166646 100644 --- a/tests/integration/Support/NavigationCustomEndOfPeriodTest.php +++ b/tests/integration/Support/NavigationCustomEndOfPeriodTest.php @@ -35,7 +35,6 @@ use Tests\integration\TestCase; */ final class NavigationCustomEndOfPeriodTest extends TestCase { - /** * @preserveGlobalState disabled */ diff --git a/tests/unit/Support/Calendar/CalculatorTest.php b/tests/unit/Support/Calendar/CalculatorTest.php index abcb94ef63..ec2be998c9 100644 --- a/tests/unit/Support/Calendar/CalculatorTest.php +++ b/tests/unit/Support/Calendar/CalculatorTest.php @@ -66,8 +66,6 @@ final class CalculatorTest extends TestCase } /** - * - * * @throws IntervalException */ #[DataProvider('provideAllPeriodicity')] @@ -97,8 +95,6 @@ final class CalculatorTest extends TestCase } /** - * - * * @throws IntervalException */ #[DataProvider('provideSkippedIntervals')] diff --git a/tests/unit/Support/Calendar/Periodicity/IntervalTestCase.php b/tests/unit/Support/Calendar/Periodicity/IntervalTestCase.php index 411191ffc4..7a67095366 100644 --- a/tests/unit/Support/Calendar/Periodicity/IntervalTestCase.php +++ b/tests/unit/Support/Calendar/Periodicity/IntervalTestCase.php @@ -32,9 +32,6 @@ abstract class IntervalTestCase extends TestCase { abstract public static function provideIntervals(): array; - /** - * - */ #[DataProvider('provider')] public function testGivenAnEpochWhenCallTheNextDateThenReturnsTheExpectedDateSuccessful(IntervalProvider $provider): void { diff --git a/tests/unit/Support/NavigationAddPeriodTest.php b/tests/unit/Support/NavigationAddPeriodTest.php index 0820f8c880..1920c16a6a 100644 --- a/tests/unit/Support/NavigationAddPeriodTest.php +++ b/tests/unit/Support/NavigationAddPeriodTest.php @@ -41,17 +41,14 @@ use Tests\integration\TestCase; */ final class NavigationAddPeriodTest extends TestCase { - private Navigation $navigation; + private Navigation $navigation; - public function setUp(): void + protected function setUp(): void { parent::setUp(); $this->navigation = new Navigation(); } - /** - * - */ #[DataProvider('providePeriodsWithSkippingParam')] public function testGivenAFrequencyAndSkipIntervalWhenCalculateTheDateThenReturnsTheSkippedDateSuccessful(int $skip, string $frequency, Carbon $from, Carbon $expected): void { @@ -104,9 +101,6 @@ final class NavigationAddPeriodTest extends TestCase } } - /** - * - */ #[DataProvider('providePeriods')] public function testGivenAFrequencyWhenCalculateTheDateThenReturnsTheExpectedDateSuccessful(string $frequency, Carbon $from, Carbon $expected): void { @@ -140,9 +134,6 @@ final class NavigationAddPeriodTest extends TestCase ]; } - /** - * - */ #[DataProvider('provideFrequencies')] public function testGivenAIntervalWhenCallTheNextDateByIntervalMethodThenReturnsTheExpectedDateSuccessful(Periodicity $periodicity, Carbon $from, Carbon $expected): void { @@ -178,9 +169,6 @@ final class NavigationAddPeriodTest extends TestCase ]; } - /** - * - */ #[DataProvider('provideMonthPeriods')] public function testGivenAMonthFrequencyWhenCalculateTheDateThenReturnsTheLastDayOfMonthSuccessful(string $frequency, Carbon $from, Carbon $expected): void { diff --git a/tests/unit/Support/NavigationEndOfPeriodTest.php b/tests/unit/Support/NavigationEndOfPeriodTest.php index ee7e4c562f..4a8e6a03bc 100644 --- a/tests/unit/Support/NavigationEndOfPeriodTest.php +++ b/tests/unit/Support/NavigationEndOfPeriodTest.php @@ -42,15 +42,12 @@ final class NavigationEndOfPeriodTest extends TestCase { private Navigation $navigation; - public function setUp(): void + protected function setUp(): void { parent::setUp(); $this->navigation = new Navigation(); } - /** - * - */ #[DataProvider('provideDates')] public function testGivenADateAndFrequencyWhenCalculateTheDateThenReturnsTheExpectedDateSuccessful(string $frequency, Carbon $from, Carbon $expected): void { @@ -89,9 +86,6 @@ final class NavigationEndOfPeriodTest extends TestCase ]; } - /** - * - */ #[DataProvider('provideUnknownFrequencies')] public function testGivenADateAndUnknownFrequencyWhenCalculateTheDateThenReturnsTheSameDateSuccessful(string $frequency, Carbon $from, Carbon $expected): void { diff --git a/tests/unit/Support/NavigationPreferredCarbonFormatByPeriodTest.php b/tests/unit/Support/NavigationPreferredCarbonFormatByPeriodTest.php index 7534d38a80..166a68b37b 100644 --- a/tests/unit/Support/NavigationPreferredCarbonFormatByPeriodTest.php +++ b/tests/unit/Support/NavigationPreferredCarbonFormatByPeriodTest.php @@ -41,15 +41,12 @@ final class NavigationPreferredCarbonFormatByPeriodTest extends TestCase { private Navigation $navigation; - public function setUp(): void + protected function setUp(): void { parent::setUp(); $this->navigation = new Navigation(); } - /** - * - */ #[DataProvider('providePeriods')] public function testGivenAPeriodWhenCallPreferredCarbonFormatByPeriodThenReturnsExpectedFormat(string $period, string $expected): void { diff --git a/tests/unit/Support/NavigationPreferredCarbonFormatTest.php b/tests/unit/Support/NavigationPreferredCarbonFormatTest.php index a99e4952e0..b0a08cec13 100644 --- a/tests/unit/Support/NavigationPreferredCarbonFormatTest.php +++ b/tests/unit/Support/NavigationPreferredCarbonFormatTest.php @@ -42,15 +42,12 @@ final class NavigationPreferredCarbonFormatTest extends TestCase { private Navigation $navigation; - public function setUp(): void + protected function setUp(): void { parent::setUp(); $this->navigation = new Navigation(); } - /** - * - */ #[DataProvider('providePeriods')] public function testGivenStartAndEndDatesWhenCallPreferredCarbonFormatThenReturnsTheExpectedFormatSuccessful(Carbon $start, Carbon $end, string $expected): void { diff --git a/tests/unit/Support/NavigationPreferredEndOfPeriodTest.php b/tests/unit/Support/NavigationPreferredEndOfPeriodTest.php index 2edea8324a..74b4b091c8 100644 --- a/tests/unit/Support/NavigationPreferredEndOfPeriodTest.php +++ b/tests/unit/Support/NavigationPreferredEndOfPeriodTest.php @@ -42,15 +42,12 @@ final class NavigationPreferredEndOfPeriodTest extends TestCase { private Navigation $navigation; - public function setUp(): void + protected function setUp(): void { parent::setUp(); $this->navigation = new Navigation(); } - /** - * - */ #[DataProvider('providePeriods')] public function testGivenStartAndEndDatesWhenCallPreferredEndOfPeriodThenReturnsTheExpectedFormatSuccessful(Carbon $start, Carbon $end, string $expected): void { diff --git a/tests/unit/Support/NavigationPreferredRangeFormatTest.php b/tests/unit/Support/NavigationPreferredRangeFormatTest.php index 5ace068d0b..daae6b3731 100644 --- a/tests/unit/Support/NavigationPreferredRangeFormatTest.php +++ b/tests/unit/Support/NavigationPreferredRangeFormatTest.php @@ -42,14 +42,12 @@ final class NavigationPreferredRangeFormatTest extends TestCase { private Navigation $navigation; - public function setUp(): void + protected function setUp(): void { parent::setUp(); $this->navigation = new Navigation(); } - /** - * - */ + #[DataProvider('providePeriods')] public function testGivenStartAndEndDatesWhenCallPreferredRangeFormatThenReturnsTheExpectedFormatSuccessful(Carbon $start, Carbon $end, string $expected): void { diff --git a/tests/unit/Support/NavigationPreferredSqlFormatTest.php b/tests/unit/Support/NavigationPreferredSqlFormatTest.php index 27a6a2ab12..4bf135cf2a 100644 --- a/tests/unit/Support/NavigationPreferredSqlFormatTest.php +++ b/tests/unit/Support/NavigationPreferredSqlFormatTest.php @@ -40,17 +40,14 @@ use Tests\integration\TestCase; */ final class NavigationPreferredSqlFormatTest extends TestCase { - private Navigation $navigation; - public function setUp(): void + protected function setUp(): void { parent::setUp(); $this->navigation = new Navigation(); } - /** - * - */ + #[DataProvider('provideDates')] public function testGivenStartAndEndDatesWhenCallPreferredSqlFormatThenReturnsTheExpectedFormatSuccessful(Carbon $start, Carbon $end, string $expected): void { diff --git a/tests/unit/Support/NavigationStartOfPeriodTest.php b/tests/unit/Support/NavigationStartOfPeriodTest.php index 4958003cf0..c037fa3f10 100644 --- a/tests/unit/Support/NavigationStartOfPeriodTest.php +++ b/tests/unit/Support/NavigationStartOfPeriodTest.php @@ -43,14 +43,12 @@ final class NavigationStartOfPeriodTest extends TestCase { private Navigation $navigation; - public function setUp(): void + protected function setUp(): void { parent::setUp(); $this->navigation = new Navigation(); } - /** - * - */ + #[DataProvider('provideDates')] public function testGivenADateAndFrequencyWhenCalculateTheDateThenReturnsTheExpectedDateSuccessful(string $frequency, Carbon $from, Carbon $expected): void { @@ -88,9 +86,6 @@ final class NavigationStartOfPeriodTest extends TestCase ]; } - /** - * - */ #[DataProvider('provideUnknownFrequencies')] public function testGivenADateAndUnknownFrequencyWhenCalculateTheDateThenReturnsTheSameDateSuccessful(string $frequency, Carbon $from, Carbon $expected): void { diff --git a/tests/unit/Support/Search/QueryParser/AbstractQueryParserInterfaceParseQueryTester.php b/tests/unit/Support/Search/QueryParser/AbstractQueryParserInterfaceParseQueryTester.php index c45eca06f2..780f00d113 100644 --- a/tests/unit/Support/Search/QueryParser/AbstractQueryParserInterfaceParseQueryTester.php +++ b/tests/unit/Support/Search/QueryParser/AbstractQueryParserInterfaceParseQueryTester.php @@ -17,8 +17,6 @@ abstract class AbstractQueryParserInterfaceParseQueryTester extends TestCase abstract protected function createParser(): QueryParserInterface; /** - * - * * @param string $query The query string to parse * @param Node $expected The expected parse result */