Commit Graph
14772 Commits
Author SHA1 Message Date
Andras BacsaiandGitHub 6bcae50e49 fix(database): close confirmation modal after database import/restore (#8697) 2026-03-10 10:38:22 +01:00
Andras Bacsai db55c8160a Merge remote-tracking branch 'origin/next' into fix/database-import-modal-not-closing-v2 2026-03-10 10:38:10 +01:00
Andras BacsaiandGitHub 60dfadf036 feat: add configurable proxy timeout for public database TCP proxy (#8673) 2026-03-10 10:08:35 +01:00
Andras Bacsai 27e2680d70 Merge remote-tracking branch 'origin/next' into fix/configurable-proxy-timeout 2026-03-10 10:01:46 +01:00
Andras BacsaiandGitHub 65d61a4af3 fix(proxy): mounting error for nginx.conf in dev (#8662) 2026-03-10 10:01:33 +01:00
Andras Bacsai b5151815c1 Merge remote-tracking branch 'origin/next' into fix/dev-dbproxy 2026-03-10 10:01:14 +01:00
Andras Bacsai 184fbb98f3 fix(proxy): add validation and normalization for database proxy timeout
- Extract proxy timeout configuration logic into dedicated method
- Add min:1 validation rule for publicPortTimeout
- Normalize invalid timeout values (null, 0, negative) to default 3600s
- Add tests for timeout configuration normalization and validation
2026-03-10 09:59:19 +01:00
Andras BacsaiandGitHub a5367408d0 fix(docker-compose): respect preserveRepository setting when executing start command (#8848) 2026-03-10 09:45:43 +01:00
Andras BacsaiandGitHub 574f849778 fix: enable preview deployment page for deploy key applications (#8579) 2026-03-10 09:45:24 +01:00
Andras Bacsai 19d1662fac Merge remote-tracking branch 'origin/next' into fix/preview-deployments-invisible 2026-03-10 09:44:31 +01:00
Andras Bacsai e3daba0b1d chore: prepare for PR 2026-03-10 09:43:29 +01:00
Andras Bacsai 5b701ebb07 refactor(application-source): use Laravel helpers for null checks
Replace is_null() and !is_null() with blank() and filled() helper functions
for better readability and Laravel idiomatic style.
2026-03-09 17:23:34 +01:00
Andras Bacsai 01aa534556 fix(application-source): support localhost key with id=0
Previously, the view checked $privateKeyId with ! operator, which
incorrectly treats 0 (localhost key) as falsy. Changed to explicit
is_null() checks to distinguish between null (no key) and 0 (localhost).
Added test coverage for both cases.
2026-03-09 17:20:33 +01:00
Andras Bacsai 7bee8a5668 Merge remote-tracking branch 'origin/next' into fix/database-import-modal-not-closing-v2 2026-03-06 08:04:07 +01:00
Andras Bacsai 4615cfd007 Merge remote-tracking branch 'origin/next' into fix/configurable-proxy-timeout 2026-03-06 08:04:07 +01:00
Andras Bacsai 31caef990d Merge remote-tracking branch 'origin/next' into fix/dev-dbproxy 2026-03-06 08:04:06 +01:00
Andras Bacsai 380a34c7d6 Merge remote-tracking branch 'origin/next' into fix/preview-deployments-invisible 2026-03-06 08:03:45 +01:00
Andras BacsaiandGitHub 11007771f0 Fix/wrong destinations api (#8646) 2026-03-05 16:32:09 +01:00
Andras BacsaiandGitHub db52a20ed8 chore(templates): update n8n templates to 2.10.2 (#8679) 2026-03-05 16:23:47 +01:00
Andras BacsaiandGitHub 8dfb393de0 chore(ui): add container labels header (#8752) 2026-03-05 14:19:00 +01:00
Andras Bacsai 4015e03153 fix(proxy): remove ipv6 cidr network remediation
stop explicitly re-creating networks while ensuring them since the previous IPv6 CIDR gateway workaround is no longer needed and was duplicating effort.
2026-03-04 11:36:52 +01:00
Andras Bacsai d0929a5883 docs(readme): move MVPS to Huge Sponsors section
Promote MVPS from the Big Sponsors list to Huge Sponsors to reflect its updated sponsorship tier.
2026-03-04 09:02:22 +01:00
Andras Bacsai 86cbd82991 docs(readme): add VPSDime to Big Sponsors list
Include VPSDime with its referral link and hosting description in README.
2026-03-03 22:07:36 +01:00
Cinzya 80be2628d0 chore(ui): add labels header 2026-03-03 20:57:03 +01:00
Andras BacsaiandGitHub b8d57bfd3c fix(ip-allowlist): add IPv6 CIDR support for API access restrictions (#8750) 2026-03-03 17:05:51 +01:00
Andras Bacsai 0ca5596b1f fix(server-limit): re-enable force-disabled servers at limit
Handle non-positive disable counts with `<= 0` so teams at or under the
server limit correctly re-enable force-disabled servers. Add a feature test
suite for ServerLimitCheckJob covering under-limit, at-limit, over-limit,
and no-op behavior.
2026-03-03 17:03:59 +01:00
Andras Bacsai 91f538e171 fix(server): handle limit edge case and IPv6 allowlist dedupe
Update server limit enforcement to re-enable force-disabled servers when the
team is at or under its limit (`<= 0` condition).

Improve allowlist validation and matching by:
- supporting IPv6 CIDR mask ranges up to `/128`
- adding IPv6-aware CIDR matching in `checkIPAgainstAllowlist`
- normalizing/deduplicating redundant allowlist entries before saving

Add feature tests for `ServerLimitCheckJob` covering under-limit, at-limit,
over-limit, and no-op scenarios.
2026-03-03 17:03:46 +01:00
Andras Bacsai 4f39cf6dc8 chore: prepare for PR 2026-03-03 16:43:29 +01:00
Andras BacsaiandGitHub fb186841f4 fix(auth): resolve 419 session errors with domain-based access and Cloudflare Tunnels (#8749) 2026-03-03 12:37:47 +01:00
Andras BacsaiandGitHub 7aa495baa3 feat(subscription): add refunds and cancellation management (#8637) 2026-03-03 12:37:36 +01:00
Andras Bacsai 0320d6a5b6 chore: prepare for PR 2026-03-03 12:37:06 +01:00
Andras Bacsai d3b8d70f08 fix(subscription): harden quantity updates and proxy trust behavior
Centralize min/max server limits in Stripe quantity updates and wire them into
Livewire subscription actions with price preview/update handling.

Also improve host/proxy middleware behavior by trusting loopback hosts when FQDN
is set and auto-enabling secure session cookies for HTTPS requests behind
proxies when session.secure is unset.

Includes feature tests for loopback trust and secure cookie auto-detection.
2026-03-03 12:28:16 +01:00
Andras Bacsai 76ae720c36 feat(subscription): add Stripe server limit quantity adjustment flow
Introduce a new `UpdateSubscriptionQuantity` Stripe action to:
- preview prorated due-now and next-cycle recurring costs
- update subscription item quantity with proration invoicing
- revert quantity and void invoice when payment is not completed

Wire the flow into the Livewire subscription actions UI with a new adjust-limit modal,
price preview loading, and confirmation-based updates. Also refactor the subscription
management section layout and fix modal confirmation behavior for temporary 2FA bypass.

Add `Subscription::billingInterval()` helper and comprehensive Pest coverage for
quantity updates, preview calculations, failure/revert paths, and billing interval logic.
2026-03-03 12:24:13 +01:00
Andras Bacsai d569433a77 Merge remote-tracking branch 'origin/next' into subscription-refunds-cancellation 2026-03-03 12:24:10 +01:00
Andras BacsaiandGitHub 1f1f2936e5 fix(service): ente photos join link doesn't work (#8727) 2026-03-03 11:56:15 +01:00
Andras BacsaiandGitHub 66efcaf352 fix(service): cloudreve doesn't persist data across restarts (#8740) 2026-03-03 11:55:37 +01:00
Andras Bacsai 09b169a222 Merge remote-tracking branch 'origin/next' into subscription-refunds-cancellation 2026-03-03 11:52:58 +01:00
Andras BacsaiandGitHub fad1b95578 fix(ssh): prevent RCE via SSH command injection (#8748) 2026-03-03 11:52:50 +01:00
Andras Bacsai 839635e9e8 chore: prepare for PR 2026-03-03 11:51:38 +01:00
Andras Bacsai db6229f815 Merge remote-tracking branch 'origin/next' into subscription-refunds-cancellation 2026-03-03 10:40:30 +01:00
Andras BacsaiandGitHub 8a5ccd6323 fix(proxy): handle IPv6 CIDR notation in Docker network gateways (#8703) 2026-03-03 10:22:40 +01:00
Andras Bacsai 2ad7df2dea Merge remote-tracking branch 'origin/next' into 8649-parseaddr-bug 2026-03-03 10:21:59 +01:00
Andras BacsaiandGitHub 338fa1b45b Fix: application rollback uses correct commit sha (#8576) 2026-03-03 09:51:32 +01:00
Andras Bacsai 7ae76ebc79 test(factories): add missing model factories for app test suite
Enable `HasFactory` on `Environment`, `Project`, `ScheduledTask`, and
`StandaloneDocker`, and add dedicated factories for related models to
stabilize feature/unit tests.

Also bump `visus/cuid2` to `^6.0` and refresh `composer.lock` with the
resulting dependency updates.
2026-03-03 09:50:05 +01:00
Andras Bacsai e1a7c64f37 Merge remote-tracking branch 'origin/next' into fix/rollback-uses-correct-commit 2026-03-03 09:22:43 +01:00
Andras Bacsai 02858c0892 test(rollback): verify shell metacharacter escaping in git commit parameter 2026-03-03 09:05:01 +01:00
Andras Bacsai d2744e0cff fix(database): handle PDO constant name change for PGSQL_ATTR_DISABLE_PREPARES
Support both the older PDO::PGSQL_ATTR_DISABLE_PREPARES and newer
Pdo\Pgsql::ATTR_DISABLE_PREPARES constant names to ensure compatibility
across different PHP versions.
2026-03-03 09:04:45 +01:00
Andras Bacsai e4fae68f0e docs(application): add comments explaining commit selection logic for rollback support
Add clarifying comments to the setGitImportSettings method explaining how the
commit selection works, including the fallback to git_commit_sha and that invalid
refs will cause failures on the remote server. This documents the behavior
introduced for proper rollback commit handling.

Also remove an extra blank line for minor code cleanup.
2026-03-03 08:54:58 +01:00
Andras Bacsai a71c16b17d Merge remote-tracking branch 'origin/next' into fix/rollback-uses-correct-commit 2026-03-03 08:51:22 +01:00
ShadowArcanistandGitHub 9597bfb802 fix(service): cloudreve doesn't persist data across restarts 2026-03-03 11:20:40 +05:30