Commit graph

14244 commits

Author SHA1 Message Date
Andras Bacsai
ab472bf5ed feat: enhance environment variable handling to support mixed formats and add comprehensive tests 2025-12-27 15:24:09 +01:00
Andras Bacsai
201c9fada3 feat: limit comment field to 256 characters for environment variables 2025-12-27 15:24:09 +01:00
Andras Bacsai
e33558488e feat: add comment field to environment variables
- Add comment field to EnvironmentVariable model and database
- Update parseEnvFormatToArray to extract inline comments from env files
- Update Livewire components to handle comment field
- Add UI for displaying and editing comments
- Add tests for comment parsing functionality
2025-12-27 15:24:09 +01:00
Andras Bacsai
083d745d70
fix(restart): reset restart count when resource is manually stopped (#7784) 2025-12-27 15:22:26 +01:00
Andras Bacsai
75d8ebe803 fix(restart): reset restart count when resource is manually stopped
When a database or application was in a restart loop, the restart count
persisted even after the user manually stopped the resource. This caused
the UI to continue showing "(Xx restarts)" after user intervention.

Now resets restart_count, last_restart_at, and last_restart_type when:
- User stops a database (StopDatabase action)
- User stops an application (StopApplication action)

The existing reset in GetContainersStatus is still needed for containers
that exit on their own (crash without recovery, Docker giving up).

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2025-12-27 15:21:19 +01:00
Andras Bacsai
4f77228f4c
fix(proxy): defer UI refresh until Traefik version check completes (#7783) 2025-12-27 15:18:44 +01:00
Andras Bacsai
367d7eeabc fix(proxy): defer UI refresh until Traefik version check completes
Fixes #7732 - The proxy status change listener was dispatching ProxyStatusChangedUI
before the Traefik version check job had a chance to run. This caused users to see
stale version information when they refreshed the page immediately after restarting
the proxy.

The fix defers the UI refresh when a Traefik version check is being dispatched. The
version check job already dispatches its own ProxyStatusChangedUI event when
complete, ensuring the UI refreshes with updated version data.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2025-12-27 15:16:58 +01:00
Andras Bacsai
b9ea89d528
fix(ui): make build pack UI reactivity work properly (#7780)
Co-authored-by: Claude Haiku 4.5 <noreply@anthropic.com>
2025-12-27 14:38:12 +01:00
Andras Bacsai
ef1abe17b8 refactor(redirect): replace redirect calls with redirectRoute helper for consistency 2025-12-26 13:29:59 +01:00
Andras Bacsai
5d98847e49 feat(redirect): add redirectRoute helper for SPA navigation support 2025-12-26 13:29:59 +01:00
Andras Bacsai
a33dbb8a90
fix(ui): improve upgrade modal loading indicators visibility in light mode (#7770) 2025-12-26 13:20:31 +01:00
Andras Bacsai
41b3c71d02 fix(terminal): add sudo for non-root users to access Docker socket in terminal command 2025-12-26 11:49:02 +01:00
Claude
707bfacbcd
fix(ui): improve upgrade modal loading indicators visibility in light mode
Change yellow loading indicators to black in light mode for better
visibility while keeping warning (yellow) color for dark mode.
2025-12-25 18:18:26 +00:00
Andras Bacsai
9a1020d5be fix(database): replace temporary file handling with base64 encoding for Keydb and Redis configuration 2025-12-25 18:17:42 +01:00
Andras Bacsai
c3ff32b287
fix(ui): broken hyperlink to sentinel page on server and application metrics page (#7752) 2025-12-23 20:37:40 +01:00
ShadowArcanist
1d1290c076 fix(ui): broken hyperlink to sentinel page on application metrics page 2025-12-23 18:46:07 +01:00
ShadowArcanist
d309ae12e6 fix(ui): broken hyperlink to sentinel page on server metrics page 2025-12-23 18:44:01 +01:00
Andras Bacsai
b7e0f5577d
v4.0.0-beta.459 (#7750) 2025-12-23 15:40:27 +01:00
Andras Bacsai
85629c57d1
fix(sentinel): Add missing instantSave method and prevent duplicate notifications (#7749) 2025-12-23 15:36:30 +01:00
Andras Bacsai
8694ca2212
fix(template): superset version and postgres volume mount (#7662) 2025-12-23 15:35:31 +01:00
Andras Bacsai
6a326aa511
fix: add persistent storage for Dolibarr documents and custom modules (#7684) 2025-12-23 15:35:19 +01:00
Andras Bacsai
bb1ac3ad5c
Fix/supabase studio update (#7711) 2025-12-23 15:35:04 +01:00
Andras Bacsai
f995426fb3 fix(sentinel): Add missing instantSave method and prevent duplicate notifications
- Add public instantSave() method to handle instant saves from checkbox clicks
- Remove redundant updatedIsMetricsEnabled() and updatedIsSentinelDebugEnabled() hooks
- These hooks were causing duplicate notifications when checkboxes were toggled

The instantSave attribute on checkboxes triggers wire:click='instantSave', which was failing
because the method didn't exist. Now it saves settings and restarts Sentinel in one action,
preventing the duplicate updates from both wire:click and wire:model events.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2025-12-23 15:34:09 +01:00
Andras Bacsai
c98f947a0c fix: Update version numbers to 4.0.0-beta.459 and 4.0.0-beta.460 2025-12-23 15:22:39 +01:00
Tam Nguyen
ddcb22e468
deps: bump superset to 6.0.0 2025-12-21 12:02:19 +11:00
360Creators
eb7a37e933 Fix: CVE-2025-55182 React2shell infected supabase/studio:2025.06.02-sha-8f2993d 2025-12-19 16:51:39 +01:00
Andras Bacsai
f77a2674fc
feat: Add manual Stripe subscription sync command (#7706) 2025-12-19 09:35:52 +01:00
Andras Bacsai
e6ed3130b5 feat(stripe): Add manual subscription sync command with dry-run support
Add cloud:sync-stripe-subscriptions command to manually check all
subscriptions against Stripe. By default it only reports discrepancies
without making changes. Use --fix flag to actually apply corrections.

This addresses race conditions where subscriptions can be cancelled in
Stripe but remain marked as active in Coolify's database.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2025-12-19 09:34:39 +01:00
Andras Bacsai
41c979ae88
fix(deployment): Skip docker rm -f for builder containers with --rm flag (#7698) 2025-12-19 09:08:27 +01:00
Andras Bacsai
c6c9d5a591 fix(deployment): Skip docker rm -f for builder containers with --rm flag
Builder containers are started with the --rm flag, which automatically removes them when stopped. The explicit docker rm -f is redundant and adds unnecessary steps to deployment logs.

This change adds a skipRemove parameter to graceful_shutdown_container() and sets it to true for builder container shutdowns (uuid-based) while keeping the default behavior for application containers.

Fixes #7566

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2025-12-18 19:36:54 +01:00
Andras Bacsai
d6864ce378
v4.0.0-beta.458 (#7692) 2025-12-18 13:23:06 +01:00
Andras Bacsai
d901306e86 Bump version to 4.0.0-beta.458 and update nightly version to 4.0.0-beta.459 2025-12-18 13:22:08 +01:00
Andras Bacsai
2d262193c0
Revert "fix(deployment): Remove redundant docker rm when using --rm flag (#7691) 2025-12-18 13:21:38 +01:00
Andras Bacsai
21ce75e4d4
Revert "fix(deployment): Remove redundant docker rm when using --rm flag" 2025-12-18 13:20:59 +01:00
Andras Bacsai
4f1a210bd9
v4.0.0-beta.457 (#7690) 2025-12-18 13:05:00 +01:00
Andras Bacsai
922c0a9e7c
Fix deployment logs flickering and HTML entity encoding (#7689) 2025-12-18 12:53:02 +01:00
Andras Bacsai
9fdb799663 Shorten timestamp display format in runtime logs
Changed from '2025-Dec-18 11:39:13.685710' to '2025-Dec-18 11:39:13'.
Microseconds are still used in wire:key for uniqueness.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-18 12:50:30 +01:00
Andras Bacsai
deb79cf050 Add loading overlay to runtime logs to prevent flicker during refresh
Shows a subtle loading indicator over the logs container during refresh
or when enabling streaming. This masks any brief visual glitches from
Livewire's DOM morphing when log content changes significantly.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-18 12:46:52 +01:00
Andras Bacsai
334fd2500f Fix color highlighting not applying on initial runtime logs load
Added morph.added hook to apply color highlighting when logs are first
loaded. The morph.updated hook only fires on subsequent updates, not
on initial DOM insertion.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-18 12:43:42 +01:00
Andras Bacsai
8a4303cc02 Add decodeHtml helper to runtime logs for consistent HTML entity handling
Applies the same fix from deployment logs to runtime logs (GetLogs component).
Prevents HTML entities like &quot; from appearing when search highlighting
is applied to logs containing special characters.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-18 12:42:42 +01:00
Andras Bacsai
7bb14d1d9c Remove morph.updating hook that blocked log updates during text selection
The hook was preventing new logs from appearing when text was selected.
The hasActiveLogSelection() check in highlightText() is sufficient.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2025-12-18 12:40:14 +01:00
Andras Bacsai
d28e7f7f8a
fix(deployment): Remove redundant docker rm when using --rm flag (#7688) 2025-12-18 12:31:21 +01:00
Andras Bacsai
6379123f93 fix(deployment): Remove redundant docker rm when using --rm flag
Helper containers are started with --rm flag which automatically removes the container when it stops. Removed redundant docker rm commands from graceful_shutdown_container in ApplicationDeploymentJob and replaced docker rm with docker stop in DatabaseBackupJob.

🤖 Generated with Claude Code

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2025-12-18 12:30:34 +01:00
Andras Bacsai
9493398b58 Fix deployment logs flickering and HTML entity encoding
- Remove per-line x-effect directives that re-evaluated for every log line during polling
- Replace with efficient applySearch() function that updates logs once after Livewire morph
- Remove unnecessary caching mechanisms (renderTrigger, decodeCache, matchCountCache)
- Remove double HTML encoding of log lines (e() + Blade escaping)
- Add decodeHtml() helper to properly decode HTML entities from data attributes
- Use morph.updated hook instead of commit hook for efficient DOM updates

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2025-12-18 12:30:26 +01:00
Andras Bacsai
9a2522ed84
refactor: move Swarm and Sentinel to dedicated sidebar menu items (#7687) 2025-12-18 12:20:47 +01:00
Andras Bacsai
2b5fcb3f53
Simplify cloud provider token button labels (#7686) 2025-12-18 12:19:33 +01:00
Andras Bacsai
9675d74360 refactor: move Swarm and Sentinel to dedicated sidebar menu items
- Create new Server/Swarm.php Livewire component and view for Swarm configuration
- Create new Server/Sentinel.php Livewire component and view for Sentinel settings
- Add server.swarm and server.sentinel routes
- Move Swarm and Sentinel sections from General page to sidebar menu items
- Improve organization by separating concerns into dedicated pages

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2025-12-18 12:18:22 +01:00
Andras Bacsai
9f315d124d Simplify cloud provider token button labels
Change "Validate Token" to "Validate" and "Delete Token" to "Delete" for cleaner UI.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2025-12-18 12:18:18 +01:00
nikube
c640c98cfb fix: add persistent storage for Dolibarr documents and custom modules 2025-12-18 10:27:24 +01:00
Andras Bacsai
f53027a0a3 chore: update version numbers to 4.0.0-beta.457 and 4.0.0-beta.458 2025-12-18 10:26:27 +01:00