Commit Graph
14752 Commits
Author SHA1 Message Date
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 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
🏔️ PeakandGitHub c328bd104f Merge branch 'next' into fix/ente-photos-join-album 2026-03-02 22:16:08 +01:00
🏔️ PeakandGitHub 0560e021fb Merge branch 'v4.x' into next 2026-03-02 22:14:59 +01:00
Andras BacsaiandGitHub 6f2be461f8 Merge branch 'next' into fix/ente-photos-join-album 2026-03-02 16:57:38 +01:00
Andras Bacsai 2dc0597562 test(rollback): use full-length git commit SHA values in test fixtures
Update test data to use complete 40-character git commit SHA hashes instead of abbreviated 12-character values.
2026-03-02 13:31:48 +01:00
Andras Bacsai 862ab607b7 Merge remote-tracking branch 'origin/next' into fix/rollback-uses-correct-commit 2026-03-02 12:53:14 +01:00
Andras BacsaiandGitHub e436eeef91 feat(service): disable minio community edition (#8686) 2026-03-02 12:52:14 +01:00
Andras BacsaiandGitHub 61366871ee Fix Grist service template (#8384) 2026-03-02 12:52:03 +01:00
Andras BacsaiandGitHub e7fb4155cf feat(service): add Pydio cells (#8323) 2026-03-02 12:51:50 +01:00
Andras BacsaiandGitHub b5d6e13b83 feat: add comment field to environment variables (#7269) 2026-03-02 12:37:14 +01:00
Andras Bacsai 1234463fca feat(models): add is_required to EnvironmentVariable fillable array
Add is_required field to the EnvironmentVariable model's fillable
array to allow mass assignment. Include comprehensive tests to verify
all fillable fields are properly configured for mass assignment.
2026-03-02 12:34:30 +01:00
Andras Bacsai 059164224c fix(bootstrap): add bounds check to extractBalancedBraceContent
Return null when startPos exceeds string length to prevent out-of-bounds
access. Add comprehensive test coverage for environment variable parsing
edge cases.
2026-03-02 12:24:40 +01:00
Felix MönckemeyerandGitHub ed9b9da249 fix: join link should be set correctly in the env variables 2026-03-02 12:00:19 +01:00
Andras Bacsai 236745ede1 chore: prepare for PR 2026-03-01 18:49:40 +01:00
Andras Bacsai 43412a1a2a Merge remote-tracking branch 'origin/next' into subscription-refunds-cancellation 2026-03-01 14:39:34 +01:00
Andras Bacsai 816c455c69 Merge remote-tracking branch 'origin/next' into fix/rollback-uses-correct-commit 2026-03-01 14:39:26 +01:00