Skip to content

Commit fecc915

Browse files
committed
Merge branch 'main' into test-class-style-fallthrough
2 parents 2664e73 + 16655b4 commit fecc915

30 files changed

+83
-34
lines changed

CHANGELOG.md

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,26 @@
22

33
All notable changes to this project will be documented in this file.
44

5-
## [2.13.0](https://github.com/tempestphp/tempest-framework/compare/v2.12.0..2.13.0) — 2025-12-04
5+
## [2.14.0](https://github.com/tempestphp/tempest-framework/compare/v2.13.0..2.14.0) — 2025-12-12
6+
7+
### 🚨 Breaking changes
8+
9+
- **console**: [**breaking**] allow `--force` to bypass `CautionMiddleware` (#1804) ([bccf92f](https://github.com/tempestphp/tempest-framework/commit/bccf92fb3e88c8ba35b1f89a8f893031a072df96))
10+
11+
### 🚀 Features
12+
13+
- **session**: add redis session manager (#1790) ([eb7150b](https://github.com/tempestphp/tempest-framework/commit/eb7150b8c4226397feee5311b0033c5f05fd9be1))
14+
15+
### 🐛 Bug fixes
16+
17+
- **core**: fix class guards not using the autoloader (#1808) ([450b2e7](https://github.com/tempestphp/tempest-framework/commit/450b2e7058852044d6257dc98c92b3366cb7e2fc))
18+
- **database**: support route binding through `IsDatabaseModel` (#1794) ([3556acb](https://github.com/tempestphp/tempest-framework/commit/3556acb1538a26cb21b33fb0e0d15180b64527c9))
19+
- **database**: support pagination with joins and relations (#1801) ([0b52ffd](https://github.com/tempestphp/tempest-framework/commit/0b52ffd2cd18db89bb27fa3ace5b409e90f20f7e))
20+
- **router**: add null checks and fix route parameter handling (#1778) ([c89c345](https://github.com/tempestphp/tempest-framework/commit/c89c345da59a97612c4ac5807cafee0b5e1b1da9))
21+
- **view**: throw exception when parsing xml views with `short_open_tag` enabled (#1795) ([30b2a6f](https://github.com/tempestphp/tempest-framework/commit/30b2a6ff8f8d4d108b334109748c96fe56ad8bde))
22+
23+
24+
## [2.13.0](https://github.com/tempestphp/tempest-framework/compare/v2.12.0..v2.13.0) — 2025-12-04
625

726
### 🚀 Features
827

packages/auth/src/Installer/AuthenticationInstaller.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
use function Tempest\src_path;
1616
use function Tempest\Support\Namespace\to_fqcn;
1717

18-
if (class_exists(\Tempest\Console\ConsoleCommand::class, false)) {
18+
if (class_exists(\Tempest\Console\ConsoleCommand::class)) {
1919
final class AuthenticationInstaller implements Installer
2020
{
2121
use PublishesFiles;

packages/cache/src/Commands/CacheClearCommand.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
use function Tempest\Support\arr;
2323
use function Tempest\Support\str;
2424

25-
if (class_exists(\Tempest\Console\ConsoleCommand::class, false)) {
25+
if (class_exists(\Tempest\Console\ConsoleCommand::class)) {
2626
final readonly class CacheClearCommand
2727
{
2828
use HasConsole;

packages/cache/src/Commands/CacheStatusCommand.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222

2323
use function Tempest\Support\arr;
2424

25-
if (class_exists(\Tempest\Console\ConsoleCommand::class, false)) {
25+
if (class_exists(\Tempest\Console\ConsoleCommand::class)) {
2626
final readonly class CacheStatusCommand
2727
{
2828
use HasConsole;

packages/command-bus/src/HandleAsyncCommand.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414

1515
use function Tempest\Support\arr;
1616

17-
if (class_exists(\Tempest\Console\ConsoleCommand::class, false)) {
17+
if (class_exists(\Tempest\Console\ConsoleCommand::class)) {
1818
final readonly class HandleAsyncCommand
1919
{
2020
use HasConsole;

packages/command-bus/src/MonitorAsyncCommands.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313

1414
use function Tempest\Support\arr;
1515

16-
if (class_exists(\Tempest\Console\ConsoleCommand::class, false)) {
16+
if (class_exists(\Tempest\Console\ConsoleCommand::class)) {
1717
final readonly class MonitorAsyncCommands
1818
{
1919
use HasConsole;

packages/console/src/Console.php

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -157,4 +157,11 @@ public function supportsPrompting(): bool;
157157
* Forces the console to not be interactive.
158158
*/
159159
public function disablePrompting(): self;
160+
161+
/**
162+
* Whether the console is in forced mode (skipping confirmations).
163+
*/
164+
public bool $isForced {
165+
get;
166+
}
160167
}

packages/console/src/GenericConsole.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ final class GenericConsole implements Console
3939

4040
private ?string $label = null;
4141

42-
private bool $isForced = false;
42+
private(set) bool $isForced = false;
4343

4444
private bool $supportsPrompting = true;
4545

packages/console/src/Middleware/CautionMiddleware.php

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,10 @@ public function __invoke(Invocation $invocation, ConsoleMiddlewareCallable $next
2525
$environment = $this->appConfig->environment;
2626

2727
if ($environment->isProduction() || $environment->isStaging()) {
28+
if ($this->console->isForced) {
29+
return $next($invocation);
30+
}
31+
2832
$continue = $this->console->confirm('This command might be destructive. Do you wish to continue?');
2933

3034
if (! $continue) {

packages/container/src/Commands/ContainerShowCommand.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
use function Tempest\Support\Str\before_last;
1919
use function Tempest\Support\Str\contains;
2020

21-
if (class_exists(\Tempest\Console\ConsoleCommand::class, false)) {
21+
if (class_exists(\Tempest\Console\ConsoleCommand::class)) {
2222
final readonly class ContainerShowCommand
2323
{
2424
public function __construct(

0 commit comments

Comments
 (0)