* 🔥 chore: removed mount from router
* ✨ feat: new mounting system
* ✨ feat: mount for group
* ✅ test: updated and improve for new mount system
* ♻️ refactor: better variable name
* ♻️ refactor: better function naming
* 🐛 fix: not mounted check
* ✅ test: update onmount test if sub app is not mounted to parent
* 🎨 perf: fix allocs problem
* ✅ test: add benchmark for MountPath
* ✨ feat: access to app's mountpath
* ✅ test: remove parent app's mountpath test
* remove some parts
* add comment
* fix
Co-authored-by: Muhammed Efe Çetin <efectn@protonmail.com>
Co-authored-by: RW <rene@gofiber.io>
* 🐛 bug: fix mounting doesn't work if when to declare it before routes
* 🐛 bug: fix mounting doesn't work if when to declare it before routes
* 🐛 bug: fix mounting doesn't work if when to declare it before routes
* 🐛 bug: fix mounting doesn't work if when to declare it before routes
* 🐛 bug: fix mounting doesn't work if when to declare it before routes
* add onMount hooks, mountPath like express.js, better behavior for onName, onRoute, onGroup, onGroupName hooks on mounted apps
* add comment
* use once
* fix views when both app and sub-app have view engine, better behavior for mount path
* fix tests
* fix tests
* make some tasks
* make some tasks
* fix unhandled errors
* fix unhandled error in cache package test
* omit variable type
* omit variable type
* rename variable because collide with the imported package name
* handle file error on closing
* fix unhandled in common_linux.go
* fix unhandled errors in helpers_test.go
* fix unhandled errors in listen_test.go
* remove unused parameter in emptyHandler method
* refactor path.go
* unhandled error in hooks test
* fix unhandled errors in app_test.go
* fix unhandled errors in ctx_test.go
* ✨ fix unhandled errors in helpers_test.go
* revert app_test.go
* remove redundant parentheses and update comments
* update code comment for helping ide
* update code comment for helping ide
* 🐛 bug: ClientHelloInfo support for app.Listener
* 🐛 bug: ClientHelloInfo support for app.Listener
* fix
* make tlshandler public
* update
* 🐛 bug: make tlsHandler public to use it with Listener #2034
Co-authored-by: wernerr <rene@gofiber.io>
* fixes#2016 - make IP() and IPs() more reliable
* improve the performance of IP validation functionality
* refactor IP validation and make it a configuration option
* ✨ v3 (feature): initial support for binding
* ✨ v3 (feature): initial support for binding #1981
use pointer/references instead of copies
* ✨ v3 (feature): initial support for binding
embed bind into the ctx
* ✨ v3 (feature): initial support for binding
- add URI binder.
* ✨ v3 (feature): initial support for binding
- add response header binder.
* ✨ v3 (feature): initial support for binding
- add response header binder.
* ✨ v3 (feature): initial support for binding
- add cookie binder.
* ✨ v3 (feature): initial support for binding
- custom binder support for body binding.
- test case for custom binder.
* ✨ v3 (feature): initial support for binding
- add map[string][]string & map[string]string support for binders.
* ✨ v3 (feature): initial support for binding
- fix Test_Bind_Header_Map
* ✨ v3 (feature): initial support for binding
- Functional Should/Must
* ✨ v3 (feature): initial support for binding
- custom struct validator support.
* ✨ v3 (feature): initial support for binding
- README for binding.
- Docs for binding methods.
* ✨ v3 (feature): initial support for binding
- Bind() -> BindVars(), Binding() -> Bind()
* ✨ v3 (feature): initial support for binding
- fix doc problems
* ✨ v3 (feature): initial support for binding
- fix doc problems
Co-authored-by: wernerr <rene@gofiber.io>
* ✨ v3: use any as default Message type of Error struct.
* ✨ v3: use any as default Message type of Error struct.
* ✨ v3: use any as default Message type of Error struct.
* ✨ v3: use any as default Message type of Error struct.
* Add initial support for hooks.
* release ctx, mutex.
* Add unit tests.
* add comment lines.
* update
* update
* remove unnecessary code.
* fix race condition.
* fix gosec.
* skip error handling for onshutdown and onresponse.
* update
* separate hooks from app.go
* make hooks field private, hook struct public and Hooks() func.
* remove onreq and onres because of they can be done by middlewares.
* OnGroupName method.
* Update hooks.go
Co-authored-by: hi019 <65871571+hi019@users.noreply.github.com>
* handle errors for name and groupname
* fix tests.
* Update app.go
* use struct fields instead of map
* add multi-handler.
* add onGroup, make prefix field public on Group struct.
* Update hooks.go
* add newhooks method.
* ✨ feature: add initial support for hooks
* remove ctx from hooks.
Co-authored-by: hi019 <65871571+hi019@users.noreply.github.com>
Co-authored-by: wernerr <rene@gofiber.io>
* Add Global Layout for view render
* Add test case for Views Layout
* Update ctx_test.go
* Add App Name function to pass custom app name
* Remove json tag for function
* Change func to string
* Add test for AppName
* Add RedirectToRoute and RedirectBack with fallback if referer in header not found
* replace errors.New with fmt.Errorf
* simplified code
* Add tests for different formats
* Add method to get route location and add benchmarks
* Add ToString function
* Fix error
* rearrange case for fmt.Stringer
* Fix bug for error return
* Lock latest route for app.Name(namee string)
* decreasing timeout for client test with timeout
* remove println and adjust condition to > 0
Co-authored-by: RW <rene@gofiber.io>
* fiber change
* reference correct storage in SaveFile
* seperate logic to new function
* Change storage defination style, fix tests on go1.14
* Add unit test.
Co-authored-by: Alex Bakker <abakks@hotmail.com>
Co-authored-by: M. Efe Çetin <efectn@protonmail.com>
* ✨feature: Pass all locals to ctx.Render
* add test case for render using locals
* Added option PassLocalsToViews to enable pass locals to render
The option PassLocalsToViews is set to disabled by default
* Added a check to see if the ctx bind already contains the value
* Added a test for ctx render with locals and binds.
* Fix using IP ranges in config.TrustedProxies (#1607)
* Add tests
* Remove debugging var
* Remove tests
* Update test
Co-authored-by: RW <rene@gofiber.io>
* ✨feature: print all routes message when server starts
* ✨feature: print all routes message when server starts
* ✨feature: print all routes message when server starts
* 🐛fix: errors unhandled
* 🐛fix: ignore child process and add some "-" to the table head
* 🐛fix: add printRoutesMessage for listener and listenTLS