yusing
f411e17d80
feat(json): improve JSON performance with bytedance/sonic
2025-09-29 17:43:34 +08:00
yusing
2a05c6a630
refactor: move websocket package and some http utils to seperate repo
2025-09-27 14:16:42 +08:00
yusing
6776f20332
refactor: move task, error and testing utils to separte repo; apply gofumpt
2025-09-27 13:41:50 +08:00
yusing
5043ef778f
refactor: remove gphttp.ServerError method
2025-09-27 12:47:51 +08:00
yusing
22bcf1201b
refactor: move some io, http and string utils to separate repo
2025-09-27 12:46:41 +08:00
yusing
dc1175ad69
refactor(http): remove and replace error helpers with standard http.Error
2025-09-26 23:39:00 +08:00
yusing
f9affba9fc
refactor(modules): replace github.com/yusing/go-proxy with github.com/yusing/godoxy
2025-09-22 16:44:59 +08:00
yusing
a48ccb4423
refactor(server): improve proxy protocol handling
2025-09-19 11:59:34 +08:00
yusing
5fa1417add
fix(server): set default logger in server start options if not provided
2025-09-19 10:31:00 +08:00
yusing
83a69322fa
refactor(server): enhance server start options and support for proxy protocol
2025-09-18 17:34:02 +08:00
yusing
d1476edf91
test(middleware): update bypass and rule tests
2025-09-14 00:05:05 +08:00
yusing
f31b1b5ed3
refactor(misc): enhance performance on bytes pool, entrypoint, access log and route context handling
...
- Introduced benchmark tests for Entrypoint and ReverseProxy to evaluate performance.
- Updated Entrypoint's ServeHTTP method to improve route context management.
- Added new test file for entrypoint benchmarks and refined existing tests for route handling.
2025-09-14 00:03:27 +08:00
yusing
4509622dde
fix(reverseproxy): properly suppress http2.errStreamClosed
2025-09-13 23:26:10 +08:00
yusing
493c0afdfa
feat(websocket): implement Reader for reading binary data from the manager
...
- Removed Close method from Writer
2025-09-13 22:38:24 +08:00
yusing
99c1922342
feat(websocket): add deduplication support to PeriodicWrite function and introduce DeepEqual utility
2025-09-13 22:37:51 +08:00
yusing
a483e15a20
refactor(middlewares): remove xsync wrapper and replace strutils.SplitLine with bytes.Line
2025-09-13 22:33:21 +08:00
yusing
205928a741
refactor(real_ip): move header check before everything else
2025-09-13 22:23:00 +08:00
yusing
7770ce7025
fix(reverseproxy): improve error handling for HTTP proxy errors and add suppress some HTTP2 and HTTP/3 error codes
2025-09-10 23:20:23 +08:00
yusing
719682c99f
refactor(websocket): enhance connection management by ensuring resources are released on context cancellation
2025-09-09 22:25:02 +08:00
DeAndre Harris
41ce784a7f
feat: Add per-route OIDC client ID and secret support ( #145 )
2025-09-08 08:16:30 +08:00
yusing
8339c42470
refactor(middleware): simplify buffer allocation in themed middleware
2025-09-02 23:28:47 +08:00
yusing
aac5016b78
refactor(httpheaders): replace strutils.SplitComma with strings.SplitSeq
2025-09-02 22:58:46 +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
b051987a1c
refactor: apply renamed NewBytesPool with GetBytesPool
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
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
1c7e3e42f8
refactor(websocket): simplify NewManagerWithUpgrade function to use context for custom upgrader
2025-08-17 20:23:57 +08:00
yusing
8360aa59d1
fix(websocket): allow localhost origin in WebSocket manager
2025-08-17 17:36:07 +08:00
yusing
6ec1016f29
feat(websocket): implement CORS support in WebSocket manager for origin validation
2025-08-17 17:14:10 +08:00
yusing
e0a110cad3
fix(websocket): ensure proper connection closure and stop ping check ticker in Close method
2025-08-17 14:53:25 +08:00
yusing
b32750d545
fix(websocket): websocket concurrent write during ping pong
2025-08-17 00:17:14 +08:00
yusing
35a3e3fef6
refactor(api): restructured API for type safety, maintainability and docs generation
...
- These changes makes the API incombatible with previous versions
- Added new types for error handling, success responses, and health checks.
- Updated health check logic to utilize the new types for better clarity and structure.
- Refactored existing handlers to improve response consistency and error handling.
- Updated Makefile to include a new target for generating API types from Swagger.
- Updated "new agent" API to respond an encrypted cert pair
2025-08-16 13:04:05 +08:00
yusing
e02cacdf2a
feat(middleware): add themed middleware with customizable themes and styles
...
- Introduced a new themed middleware that allows for dynamic theme application.
- Added support for multiple themes: dark, dark-grey, solarized-dark, and custom CSS.
- Included CSS files for each theme and a font CSS template for font customization.
- Updated middleware registry to include the new themed middleware.
2025-07-20 12:59:25 +08:00
yusing
46c7ee4d84
feat(middleware): optimize HTML modification with byte pool
2025-07-20 12:47:32 +08:00
yusing
f39513483b
refactor(middleware): improve common options handling in apply method
2025-07-20 12:46:30 +08:00
yusing
b6bfd19cc2
fix(middleware): set Accept-Encoding to "" in modify_html middleware
2025-07-13 15:42:39 +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
b5328fe5e7
feat(idlesleep): support idlesleep for stream routes, rewritten and fixed stream implementation
2025-06-09 22:20:26 +08:00
yusing
421aaecba4
refactor: rename net/types to nettypes
2025-06-08 17:59:48 +08:00
yusing
4705989f4b
fix(websocket): 403 forbidden agent metrics
2025-06-01 00:31:56 +08:00
yusing
ecfd018b0b
fix(websocket): http: superfluous response.WriteHeader on websocket initiation failure
2025-05-31 22:29:02 +08:00
yusing
54bf84dcba
fix(websocket): fix local address checks
2025-05-31 13:55:29 +08:00
yusing
72923b8cfa
refactor: remove Tracer from middleware implementations and related debugging functionality
2025-05-29 20:27:25 +08:00
yusing
2628d9e8a8
fix(task): refactor task module and fix reload stuck/error, fix some logic
2025-05-28 22:07:13 +08:00