Commit graph

13954 commits

Author SHA1 Message Date
peaklabs-dev
be522ddaed
chore(deps): bump dependencies 2026-02-24 16:12:40 +01:00
🏔️ Peak
f056cb7b99
chore(core): add coolify config options (#8578)
Some checks are pending
Tests / Validate composer.json (push) Waiting to run
Tests / Composer Audit (push) Blocked by required conditions
Tests / Bun Audit (push) Blocked by required conditions
Tests / Tests (push) Blocked by required conditions
2026-02-23 23:24:57 +01:00
peaklabs-dev
2d6df9b502
docs: improve refactored changelog section wording 2026-02-23 23:17:14 +01:00
peaklabs-dev
870ca94def
docs: add v5.x-chore/add-coolify-configs changes to changelog 2026-02-23 23:15:09 +01:00
peaklabs-dev
daa8764a71
refactor(core): streamline boolean environment variable naming 2026-02-23 23:06:06 +01:00
peaklabs-dev
107aef141a
chore(core): add coolify config file 2026-02-23 21:00:02 +01:00
peaklabs-dev
9e7b1d9a4e
chore(core): add back coolify options to the app config file 2026-02-23 21:00:02 +01:00
🏔️ Peak
35e9eb0f44
chore: add new pr templates (#8573) 2026-02-23 20:56:56 +01:00
peaklabs-dev
9e81f00b47
docs: add pr templates changes to changelog 2026-02-23 19:36:15 +01:00
peaklabs-dev
131e5efb0d
chore(repo): improve contributor pr template
- all contributors (none team members) must use this PR template to open PRs and it is also the default template selected in the GitHub UI
2026-02-23 19:34:51 +01:00
peaklabs-dev
8031ac6f1a
chore(repo): add default pr template
- the default (changes) PR template should be used for all PRs that are not new version release PRs
2026-02-23 19:34:51 +01:00
peaklabs-dev
b8fa116e0f
chore(repo): add version pr template
- the version PR template is the template used for new version releases, which are primarily PRs from next to v5.x
2026-02-23 19:34:51 +01:00
🏔️ Peak
cd24a7870d
docs: improve and streamline changelog wording (#8567) 2026-02-23 19:34:18 +01:00
🏔️ Peak
c240955f4e
chore: add queue system (#7576) 2025-12-16 17:22:01 +01:00
peaklabs-dev
694c87dc9e
docs: improve and update changelog
- add new v5.x-chore/add-queue-system changes to changelog
- improve wording for a few points
2025-12-16 17:08:59 +01:00
peaklabs-dev
98e37a5b3c
build: add empty compose.worker.yaml 2025-12-16 17:08:59 +01:00
peaklabs-dev
7740dc738f
chore(jobs): disable queue interruption polling to improve performance 2025-12-16 17:08:59 +01:00
peaklabs-dev
c52b927e93
chore(deps): bump laravel version to get withoutInterruptionPolling option 2025-12-16 17:08:59 +01:00
peaklabs-dev
2ce8184e68
feat(config): configure horizon and add worker server base
- normal jobs (backups, emails, etc.) and deployment jobs now use separate supervisor configurations and defaults
- use different queues and supervisors depending on if the server is a worker server
- horizon workers are now restarted after 500 (job workers) or 300 (deployment workers) jobs or after 1 hour to clean up stale memory and CPU usage
- reduced default queue timeouts from 10h to 60s for jobs and 300s for deployments to prevent stale jobs
- increased balanceCooldown from 1s to 2s for jobs to reduce CPU spikes
- prepare LongWaitDetected waits for all queues
- use the "jobs" redis connection for horizon
- remove unused config option
2025-12-16 17:08:59 +01:00
peaklabs-dev
e5c54f94f4
chore(tooling): ignore NewlineBetweenClassLikeStmtsRector rector rule
- this rule adds newlines between enum cases which is incorrect and pint already formats all other cases covered by this rule via its class_attributes_separation rule
2025-12-16 17:08:59 +01:00
peaklabs-dev
461df4458f
test: remove toImplementNothing() from enum ArchTest
- PHP enums always implement one or more internal interfaces so this assertion will never pass
2025-12-16 17:08:59 +01:00
peaklabs-dev
907be7d562
feat(jobs): add ProcessingQueue enum 2025-12-16 17:08:59 +01:00
peaklabs-dev
124957fe94
chore(deps): install laravel horizon and all horizon assets 2025-12-16 17:08:59 +01:00
peaklabs-dev
e67624afa8
feat(jobs): create job_batches table 2025-12-16 17:08:59 +01:00
peaklabs-dev
d2cae69d99
chore(config): configure laravel queues
- use redis as the default queue connection
- use the redis "jobs" connection for all queued jobs
- set after_commit=true to ensure jobs wait for all DB transactions to finish before being dispatched
- use pgsql database for job batches
- remove logging of failed jobs into a DB table as we use horizon for that
2025-12-16 17:08:59 +01:00
peaklabs-dev
e800bc97bc
chore(config): remove unused queue connections 2025-12-16 17:08:59 +01:00
🏔️ Peak
eadf63477e
chore(config): remove unused file cache store (#7646) 2025-12-16 14:59:38 +01:00
🏔️ Peak
da96c7885c
chore: configure auth (#7571) 2025-12-11 17:51:50 +01:00
peaklabs-dev
dd5219f474
docs: add v5.x-chore/configure-auth changes to changelog 2025-12-11 17:44:43 +01:00
peaklabs-dev
95b2809e84
docs: replace "from" with "previously" in changelog 2025-12-11 17:39:34 +01:00
peaklabs-dev
f8a02e1605
test: improve ArchTest for models
- remove toOnlyUse() from model ArchTest as it is too strict in some cases
- ignore scopes as they do not have to extend Model::class
2025-12-11 17:39:25 +01:00
peaklabs-dev
285c6dd10a
chore(config): expire password reset tokens after 10min 2025-12-11 17:38:26 +01:00
peaklabs-dev
5e4eae13ae
test(auth): add UserFactory for testing 2025-12-11 17:38:15 +01:00
peaklabs-dev
60388a832c
feat(auth): add user model 2025-12-11 17:38:05 +01:00
peaklabs-dev
b77d404673
feat(auth): create users and password_reset_tokens table 2025-12-11 17:37:53 +01:00
peaklabs-dev
0c92d19eb7
chore(config): remove unused bcrypt hashing options 2025-12-10 17:40:36 +01:00
🏔️ Peak
d666cdcbc3
chore(config): configure redis (#7499) 2025-12-09 18:11:37 +01:00
peaklabs-dev
6b31e3cf57
docs: add redis configuration changes to the changelog 2025-12-09 18:01:33 +01:00
peaklabs-dev
0305eab706
chore: add redis envs to .env.local.example 2025-12-09 17:51:02 +01:00
peaklabs-dev
feb2200db4
chore(config): expire idle sessions after 1 day 2025-12-09 17:51:02 +01:00
peaklabs-dev
3a2dd35c41
chore(config): remove unused session options 2025-12-09 17:51:02 +01:00
peaklabs-dev
cf081bba5b
chore(config): use redis for sessions
- switch from database stored sessions to redis for improved performance and session TTL
- this allows us to remove the session DB table cleanup job needed on v4
2025-12-09 17:51:02 +01:00
peaklabs-dev
53c2046a9f
chore(config): remove unused caching options 2025-12-09 17:51:01 +01:00
peaklabs-dev
e10096bffe
chore(config): use redis for caching 2025-12-09 17:51:01 +01:00
peaklabs-dev
70b9b33e64
chore(config): configure redis connections
- configure separate redis connections for cache, jobs and sessions which use separate redis databases for easier debugging and separation
2025-12-09 17:51:01 +01:00
🏔️ Peak
b405bf54bf
docs: update changelog (#7548) 2025-12-09 17:46:53 +01:00
🏔️ Peak
adf3598d26
[v5.x] chore(config): configure logging (#7490) 2025-12-04 14:58:05 +01:00
peaklabs-dev
f4f9b2b97f
chore: improve .env.local.example
- reorder the .env file, improve comment and remove some variables
- use LOG_STACK=single for local development
- additionally log deprecations for local development
2025-12-04 14:49:27 +01:00
peaklabs-dev
0114ffac3e
chore(config): setup production logging
- use stderr in addition to the daily logging channel so the laravel logs are passed to the container logs (docker logs)
- use the daily channel with local laravel.log to persist logs to disk for 10 days, ensuring a persistent copy even if the coolify container is removed/ updated
- rotate the logs in production every 10 days and only log warnings, to prevent an excessively large laravel.log file
- keep LOG_LEVEL=debug for the single channel as it will be used in development
2025-12-04 14:47:22 +01:00
peaklabs-dev
9a6d315292
chore(config): remove unused logging options 2025-12-04 14:40:25 +01:00