yusing
54fb962ce8
fix(api): conditionally set Gin mode to release based on debug flag
2025-09-04 06:39:39 +08:00
yusing
1e090ffa0a
feat(metrics): enhance Entries structure with historical data validation and JSON serialization
...
- Added addWithTime method to allow adding entries with specific timestamps.
- Introduced validateInterval and fixInterval methods for interval validation and correction.
- Implemented GetJSON method for serializing entries to JSON format.
- Added unit tests for GetJSON functionality to ensure correct output for both full and partial entries.
- Updated Poller to validate and fix intervals after loading data from JSON.
2025-09-04 06:38:07 +08:00
yusing
1617a4d54f
refactor(metrics): update uptime metrics structure and calculations
...
- Changed Latency type from int64 to int32 in Status struct.
- Updated RouteStatuses and RouteAggregate to use slices of Status instead of pointers.
- Modified aggregateStatuses and calculateInfo functions to accommodate new types.
- Enhanced RouteAggregate with additional fields: IsDocker and CurrentStatus.
- Improved sorting logic for route statuses and added handling for excluded routes.
2025-09-04 06:37:24 +08:00
yusing
90fb9f0dcc
feat(websocket): enhance PeriodicWrite with deduplication support and add Context method
...
- Updated PeriodicWrite to accept a deduplication function for optimized data writing.
- Introduced Context method to retrieve the manager's context.
- Added logging for WebSocket connection closure with error details.
2025-09-04 06:37:06 +08:00
yusing
54ae580645
refactor(logging): replace byte pool with GetBytesPoolWithUniqueMemory for access logger and rotation
2025-09-04 06:36:51 +08:00
yusing
20105534c7
feat(api): add GetContainer endpoint and Docker host ID mapping
...
- Implemented GetContainer function to retrieve container details by ID.
- Introduced idDockerHostMap for mapping container IDs to Docker hosts.
- Updated Container struct to allow omitting the State field in JSON responses.
2025-09-04 06:36:02 +08:00
yusing
90738a6809
refactor(api): remove server param from docker logs api
...
- renamed `container` param to `id`
- implemented container id to docker host lookup
2025-09-04 06:35:15 +08:00
yusing
920aed7bee
fix(rules): add swaggertype annotations for On and Do fields in Rule struct
2025-09-04 06:34:31 +08:00
yusing
9ab00e3902
refactor(routes): unify route existence checks and remove 'All' route pool
2025-09-04 06:34:19 +08:00
yusing
0edad7377a
feat(homepage): implement SearchRoute method and enhance item configuration with sorting and visibility features, introduce All and Favorite categories
2025-09-04 06:31:44 +08:00
yusing
7753c90a7e
feat(homepage): implement SearchRoute method and enhance item configuration with sorting and visibility features, introduce All and Favorite categories
2025-09-04 06:30:37 +08:00
yusing
866b95f85b
feat(container): add State field to Container type
2025-09-04 06:28:55 +08:00
yusing
0814ca4451
feat(websocket): add deduplication support to PeriodicWrite function and introduce DeepEqual utility
2025-09-04 06:28:14 +08:00
yusing
2c6690b2d0
refactor(middleware): replace Cloudflare IP range fetching with bytes.Lines
2025-09-04 06:25:14 +08:00
yusing
cc00859963
refactor(metrics): optimize JSON marshaling in SystemInfo and Aggregated structures for improved performance and memory management
2025-09-04 06:25:07 +08:00
yusing
c2cdaacab5
fix(api): correct error formatting
2025-09-04 06:22:39 +08:00
yusing
a8beb2d92f
fix(metrics): non ws response being encoded twice; simplified response handling
2025-09-04 06:22:06 +08:00
yusing
0a5438b18b
refactor(auth): remove GET method from /auth/callback endpoint and update Swagger documentation
2025-09-04 06:21:42 +08:00
yusing
0aa2a480b5
refactor(websocket): enhance connection management by ensuring resources are released on context cancellation
2025-09-04 06:21:30 +08:00
yusing
755cbd7aec
refactor(metrics): remove pointers from type parameter T to avoid unnecessary indirection
2025-09-04 06:19:40 +08:00
yusing
199b8fad20
refactor(real_ip): move header check before everything else
2025-09-04 06:19:16 +08:00
yusing
c8292a1f38
fix(docker): treat containers from $DOCKER_HOST as local
2025-09-03 22:34:35 +08:00
yusing
89bb117397
feat(route): add ExcludedReason field
2025-09-03 22:34:29 +08:00
yusing
ceb1e45af5
fix(api): conditionally enable auth APIs based on auth configuration
2025-09-03 22:34:20 +08:00
yusing
a56de3de08
refactor(homepage): improve icon search functionality and add case-insensitive string matching
2025-09-03 22:34:10 +08:00
yusing
8339c42470
refactor(middleware): simplify buffer allocation in themed middleware
2025-09-02 23:28:47 +08:00
yusing
ed39942d65
feat(api): implement caching middleware and allow favicons to be cached
2025-09-02 23:00:22 +08:00
yusing
aac5016b78
refactor(httpheaders): replace strutils.SplitComma with strings.SplitSeq
2025-09-02 22:58:46 +08:00
yusing
d2b4d3e6e3
feat(auth): enhance cookieDomain function to support additional local domains
2025-09-02 22:58:24 +08:00
yusing
a2d4c468cd
refactor(forwardauth): finalize middleware implementation with better headers handling
2025-09-02 22:58:13 +08:00
yusing
c550255458
feat(middledware): middleware-specific logging methods
2025-09-02 22:56:30 +08:00
yusing
6a3e28dfd7
fix(config): handle missing config file and middleware directory gracefully and log a warning
2025-09-02 22:55:43 +08:00
yusing
4513c221d5
refactor(modifyhtml): improved memory manangement and response body handling
2025-09-02 22:55:24 +08:00
yusing
245dba034e
feat(io): introduce ReadAllBody and HookCloser for enhanced response handling and resource management
2025-09-02 22:53:54 +08:00
yusing
f39896fe30
refactor(handler): move version API out of auth and remove Swagger routes
2025-09-02 22:50:57 +08:00
yusing
b051987a1c
refactor: apply renamed NewBytesPool with GetBytesPool
2025-09-02 22:50:57 +08:00
yusing
c128557c81
chore: update dependencies
2025-09-02 22:50:57 +08:00
yusing
6405325e56
Refactor(websocket): remove unused code
2025-09-02 22:50:57 +08:00
yusing
c3d2a90501
fix(websocket): ensure resources are properly released by closing the manager in PeriodicWrite function
2025-09-02 22:50:57 +08:00
yusing
31d49453a7
feat(pool): introduce BytesPoolWithMemory for optimized memory management and add benchmark for memory usage
2025-09-02 22:50:57 +08:00
yusing
04657420b8
refactor(websocket): enable compression for WebSocket connections to improve performance, removed buffer size to use HTTP buffer
2025-09-02 22:50:57 +08:00
FrozenFrog
2f0b8b6c09
Add TinyAuth forward-auth middleware implementation ( #143 )
...
* feat: add tinyauth middleware
---------
Co-authored-by: yusing <yusing@6uo.me >
2025-09-02 17:43:34 +08:00
yusing
5e15fd4bbe
fix(fileserver): correct middleware handler to avoid self recursion
2025-08-19 22:26:38 +08:00
yusing
a5022e31a2
fix(auth,oidc): added GET method /auth/callback endpoint to fix OIDC 404 and update documentation accordingly
2025-08-19 22:26:30 +08:00
yusing
a057f0e956
fix(homepage): incorrect url
...
- fixed url being overridden
- fixed sub-subdomain being stripped
- fixed empty url for routes with FQDN aliases
2025-08-19 21:01:04 +08:00
yusing
dfe0014609
fix(route): handle subdomain removal in URL construction for homepage items
2025-08-18 20:46:59 +08:00
yusing
dfc2d5e35c
feat(handler): add SkipOriginCheckMiddleware and configuration option to bypass origin checks
2025-08-17 20:46:26 +08:00
yusing
d3bfb2488b
refactor(handler): simplifying code applying auth middleware
2025-08-17 20:41:46 +08:00
yusing
1c7e3e42f8
refactor(websocket): simplify NewManagerWithUpgrade function to use context for custom upgrader
2025-08-17 20:23:57 +08:00
yusing
e14d6baedb
fix(agent): change request binding from query to JSON and update hostport formatting
2025-08-17 19:45:08 +08:00