yusing
f39513483b
refactor(middleware): improve common options handling in apply method
2025-07-20 12:46:30 +08:00
yusing
731121595c
feat(autocert): enhance failure handling and cooldown logic
...
- Added last failure tracking to the Provider struct to manage certificate renewal failures.
- Implemented methods to get, update, and clear the last failure timestamp.
- Introduced cooldown durations to prevent immediate retries after failures.
- Updated ObtainCert and ScheduleRenewal methods to utilize the new failure handling logic.
2025-07-20 12:42:52 +08:00
yusing
8025af6067
feat(healthcheck): add retries before notifying (default: 3 times)
...
- Introduced NotifyFunc type for customizable notification handling in tests.
- Added Retries field to HealthCheckConfig for controlling notification thresholds.
- Implemented tests for notification behavior under various health check scenarios.
2025-07-20 12:03:45 +08:00
yusing
47910774dd
fix(homepage): missing homepage.url option
2025-07-13 15:47:26 +08:00
yusing
b6bfd19cc2
fix(middleware): set Accept-Encoding to "" in modify_html middleware
2025-07-13 15:42:39 +08:00
yusing
e3b53a548d
refactor(misc): small code refactor
Docker Image CI (socket-proxy) / build (push) Has been cancelled
2025-07-13 14:33:58 +08:00
yusing
a954ac8946
feat(middleware): introduct modify_html middleware
2025-07-13 14:01:36 +08:00
yusing
814ff33352
fix(tests): refactor and fix login in middleware test utils
2025-07-13 13:33:48 +08:00
yusing
b1d5c4b091
chore: upgrade go to 1.24.5
2025-07-13 13:10:19 +08:00
yusing
72dc783e23
fix(icons): update selfh.st icon json url
2025-07-01 02:14:27 +08:00
yusing
0c552c9cea
chore: upgrade dependenocies
2025-07-01 02:14:06 +08:00
yusing
5631b1540a
fix(notif): refactor and fix json payload validation and handling
2025-06-28 14:46:54 +08:00
yusing
24f949f053
fix(notif): stack overflow due to self recursion
2025-06-28 14:44:06 +08:00
yusing
9d712b91ff
fix(rules): routes without default rule panics
2025-06-16 21:36:20 +08:00
yusing
4189ffa1db
fix(docker): wildcard properties not working with FQDN aliases
2025-06-16 21:23:23 +08:00
yusing
e906b358fa
tweak(entrypoint): introducing ResponseRecorder specialized for access logger for better throughput
2025-06-15 17:42:38 +08:00
yusing
1d546624de
fix(serialization): call of reflect.Value.IsNil on string Value
2025-06-14 22:12:24 +08:00
yusing
ecc9d306d1
refactor(agent): move agent pool to agent package, rename route.Agent() to route.GetAgent() (cont. 7d17a01
)
2025-06-14 22:04:10 +08:00
yusing
5ce1c7865e
feat(agent): allow specifying agent for routes in route files
2025-06-14 20:05:11 +08:00
yusing
7d17a01de1
refactor(agent): move agent pool to agent package, rename route.Agent() to route.GetAgent()
2025-06-14 20:04:39 +08:00
yusing
cabb840a91
tweak(docker): add hint when specified network not found
2025-06-14 19:32:36 +08:00
yusing
4825f768f3
feat(docker): allow specifying docker network, handle error when no network available
2025-06-14 17:08:07 +08:00
yusing
5fdb023188
feat(docker): add network field to container info
2025-06-14 10:05:45 +08:00
yusing
4abf61a421
refactor(notif): enhance retry mechanism with exponential backoff and jitter; replace retry channel with a set for managing retry messages
2025-06-14 09:31:09 +08:00
yusing
96b7c3fcec
chore: upgrade dependenocies
Docker Image CI (socket-proxy) / build (push) Has been cancelled
2025-06-13 23:06:34 +08:00
yusing
f8c57d930f
fix(docker): wildcard labels not applying properly for YAML style values and alias without labels
2025-06-13 23:02:25 +08:00
yusing
cfa9201f82
fix(shutdown): change gracefulShutdown to call root.Finish directly instead of in a goroutine
2025-06-09 22:20:49 +08:00
yusing
b5328fe5e7
feat(idlesleep): support idlesleep for stream routes, rewritten and fixed stream implementation
2025-06-09 22:20:26 +08:00
yusing
25fbcc4ab9
fix(label): expand wildcard labels before unmarshaling and add corresponding test
2025-06-09 20:46:39 +08:00
yusing
421aaecba4
refactor: rename net/types to nettypes
2025-06-08 17:59:48 +08:00
yusing
2263d6063e
fix(favicon): add GetFavIconFromAlias function and update favicon handling in idlewatcher
2025-06-08 15:13:38 +08:00
yusing
cfe0f6bb70
fix(route): remove x-properties routes during loading
Docker Image CI (socket-proxy) / build (push) Has been cancelled
2025-06-07 22:28:44 +08:00
yusing
a90d2b90d1
fix(systeminfo): safer time interval calculations and fix divided by zero crash
2025-06-07 19:42:53 +08:00
yusing
af9629424e
fix(route): incorrect url for loadbalanced route
2025-06-07 19:13:31 +08:00
yusing
ee6cf29bc1
chore: upgrade dependenocies
2025-06-07 19:05:04 +08:00
yusing
c4a780e061
chore: updated to go1.24.4
2025-06-07 18:54:23 +08:00
yusing
09c244ef3c
fix(route): add mutex lock for load balancer updates to prevent race conditions
2025-06-05 18:53:11 +08:00
yusing
bd0fe36c53
fix(idlewatcher): should not print idle_timeout fields on dependencies
2025-06-05 18:49:11 +08:00
yusing
d240da4393
fix(route): incorrect health status for idlewatcher dependencies
2025-06-05 18:40:40 +08:00
yusing
9470a14fe8
refactor(route): unify common fields into routes.go
2025-06-05 18:25:15 +08:00
yusing
d3568d9c35
fix: conflict error on load-balanced and excluded routes
2025-06-05 01:16:53 +08:00
yusing
44ef351840
fix(panic): Route.ProviderName before provider is set
2025-06-05 00:13:29 +08:00
yusing
a39d527fc1
feat(idlesleep): support container dependencies, including custom and docker depends_on, code refactor
2025-06-04 23:26:38 +08:00
yusing
22ab043e06
refactor(route): improve route handling
2025-06-04 23:17:41 +08:00
yusing
b670cdbd49
refactor(provider): improve route handling
2025-06-04 23:15:56 +08:00
yusing
45e34d691a
tweak(healthcheck): allow custom base context
2025-06-04 23:14:46 +08:00
yusing
e82480a639
refactor: rename route/provider/types to provider
2025-06-04 23:13:42 +08:00
yusing
e39407886d
fix: improved docker image parsing
2025-06-04 23:00:53 +08:00
yusing
3135e377a9
tweak(route): start routes in parallel
2025-06-03 23:32:59 +08:00
yusing
bdb3343a7c
fix(healthcheck): handle cases for zero port
2025-06-03 22:56:00 +08:00