yusing
82f02ea2bf
fix(rules): nil panic when only having default rule
2025-10-12 22:21:01 +08:00
yusing
eef994082c
fix(panic): nil panic in IterRoutes
2025-10-12 16:51:52 +08:00
yusing
80dd142861
refactor(rules): rename Static and Returning commands into Terminating and NonTerminating commands
2025-10-12 09:38:06 +08:00
yusing
3dedd66ad1
test(rules): add tests for glob and regex, remove old path glob test
2025-10-10 21:39:21 +08:00
yusing
98f047d88a
fix(rules): correct dollar sign handling
2025-10-10 21:37:54 +08:00
yusing
973a58e982
fix(import): remove unused import in rules/validate.go
2025-10-10 20:49:12 +08:00
yusing
c2c9f42fb3
feat(rules): glob and regex support, env var substitution
...
- optimized `remote` rule for ip matching
- updated descriptions
2025-10-10 14:43:48 +08:00
yusing
c2dcabe144
refactor(rules): remove 'caller' parameter in BuildHandler
2025-10-10 09:53:44 +08:00
yusing
becb49e864
fix(uptime): set to 0 instead of returning error on overflow check
2025-10-09 22:53:38 +08:00
yusing
3aed41e078
refactor: move version.go to goutils
2025-10-09 01:14:43 +08:00
yusing
c3fa7c66a7
feat(entrypoint): added CatchAll and NotFound rules and handler
2025-10-09 01:03:16 +08:00
yusing
d08be872a0
refactor(errors): simplify gperr.Builder usage
2025-10-09 00:28:22 +08:00
yusing
a150f1a628
refactor(config): reduce references to config.GetInstance()
2025-10-07 21:49:00 +08:00
yusing
6051f75145
refactor(favicon): improve cache and error handling
2025-10-05 20:37:27 +08:00
yusing
ae57edfcb0
refactor(routes): remove unnecessary indirection
2025-10-03 23:28:03 +08:00
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
22bcf1201b
refactor: move some io, http and string utils to separate repo
2025-09-27 12:46:41 +08:00
yusing
d406b940d9
style: fix some golangci-lint warnings
2025-09-26 23:45:59 +08:00
yusing
f7149453d6
refactor(env): move env parsing to separate repo
2025-09-26 20:41:10 +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
6b3bf84148
fix(stream): nil panic when logging error
2025-09-22 10:27:09 +08:00
yusing
74a215b894
feat(agentproxy): simplify configuration handling and related header management
2025-09-21 11:52:42 +08:00
yusing
de1f4da126
feat(ReverseProxy): add SSL/TLS configuration options and build TLS config method
2025-09-21 10:47:37 +08:00
yusing
b763c92645
refactor(stream): update TCP and UDP stream listeners to support proxy protocol and ACL wrapping
2025-09-19 10:23:47 +08:00
yusing
b72f3bde53
refactor(routes): remove old HomepageCategories method
2025-09-14 00:11:32 +08:00
yusing
d1476edf91
test(middleware): update bypass and rule tests
2025-09-14 00:05:05 +08:00
yusing
4ed6c7c74d
fix(rules): add swaggertype annotations for Rule fields
2025-09-14 00:04:14 +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
e0d25e475c
feat(docker): implement container ID to Docker host mapping
2025-09-14 00:01:00 +08:00
yusing
1e9303b1ef
refactor(docker): update ListContainers function to accept context and improve timeout handling
2025-09-13 23:55:47 +08:00
yusing
1c080e067d
refactor(routes): centralize route existence checking
...
- Removed All routes pool
2025-09-13 23:49:45 +08:00
yusing
11d18091fd
feat(route): add ExcludedReason field
2025-09-13 22:22:50 +08:00
yusing
23d392d88b
fix(route): improve error handling in route.Start method
2025-09-08 09:02:19 +08:00
yusing
d588664bfa
fix: prevent panicking on misconfigurations
2025-09-08 09:02:19 +08:00
yusing
b051987a1c
refactor: apply renamed NewBytesPool with GetBytesPool
2025-09-02 22:50:57 +08:00
yusing
5e15fd4bbe
fix(fileserver): correct middleware handler to avoid self recursion
2025-08-19 22:26:38 +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
e52c86e0b7
fix(api): missing health field for route in docs and generated api code
2025-08-17 14:33:53 +08:00
yusing
55018c8ab6
fix(route): update HealthJSON field to exclude from JSON serialization
2025-08-17 00:40:57 +08:00
yusing
7a9b8b3fb9
fix(api): corrected json marshaling for HealthInfo
2025-08-16 23:05:29 +08:00
yusing
52324fbef2
fix(tests): updated docker types in tests
2025-08-16 13:09:08 +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
e3b53a548d
refactor(misc): small code refactor
2025-07-13 14:33:58 +08:00
yusing
9d712b91ff
fix(rules): routes without default rule panics
2025-06-16 21:36:20 +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
4825f768f3
feat(docker): allow specifying docker network, handle error when no network available
2025-06-14 17:08:07 +08:00