Commit Graph

231 Commits

Author SHA1 Message Date
error10
2b8ed80da0 RedirectTrailingSlash has no effect unless RedirectFixedPath is set
Which is not likely the desired behavior.

RedirectTrailingSlash setting is meant to cause a redirect, but the code is never called because the setting wasn't being checked. Instead RedirectFixedPath was being checked.
2015-07-04 00:05:53 -04:00
Javier Provecho Fernandez
7c0c427b2d Fix #252 typo (middlewares -> middleware) 2015-07-03 20:12:01 +02:00
Manu Mtz-Almeida
8f3047814e Comments + IRoutes + IRouter + unexported AbortIndex 2015-07-02 20:24:54 +02:00
Manu Mtz-Almeida
a20984c2bc Adds comments 2015-07-02 18:42:33 +02:00
Manu Mtz-Almeida
4cc2de6207 Refactors warning messages 2015-06-26 16:08:55 +02:00
Manu Mtz-Almeida
9268afb15d Cosmetic changes 2015-06-26 16:05:09 +02:00
Manu Mtz-Almeida
9e44079756 RoutesInterface includes Group() 2015-06-26 16:01:35 +02:00
Steeve Chailloux
4238c5b83d make routesInterface exported 2015-06-23 15:57:21 -05:00
Manu Mtz-Almeida
1a7ab6e4d5 Fixes gin.Routes() tests 2015-06-18 17:17:22 +02:00
Manu Mtz-Almeida
451f3b988b Merge branch 'routes-list' 2015-06-18 17:08:05 +02:00
Manu Mtz-Almeida
00b279c66b Adds SetHTMLTemplate() warning 2015-06-12 18:09:44 +02:00
Manu Mtz-Almeida
4998bc2b2e Fixes pipeline API 2015-06-11 01:02:38 +02:00
Manu Mtz-Almeida
58b5e15870 Adds ForwardedByClientIP option 2015-06-07 13:51:13 +02:00
Manu Mtz-Almeida
74fe36fa48 Routes() returns the function name of the main handler 2015-06-07 13:49:36 +02:00
Manu Mtz-Almeida
c7d2d82d01 gofmt 2015-06-07 04:26:30 +02:00
Manu Mtz-Almeida
45dd777693 List of routes 2015-06-07 04:20:39 +02:00
Manu Mtz-Almeida
0b043d0886 Fixes performance regression 2015-06-04 01:54:36 +02:00
Manu Mtz-Almeida
86824a640c Updates CHANGELOG 2015-05-31 04:33:47 +02:00
Manu Mtz-Almeida
b7a15d3554 Router optimizations
benchmark            old ns/op     new ns/op     delta
Benchmark404         249           237           -4.82%
Benchmark404Many     454           390           -14.10%
2015-05-30 15:55:19 +02:00
Manu Mtz-Almeida
835f66fdc9 404 not found performance improvements
benchmark            old ns/op     new ns/op     delta
Benchmark404         737           249           -66.21%
Benchmark404Many     2330          454           -80.52%

benchmark            old allocs     new allocs     delta
Benchmark404         3              0              -100.00%
Benchmark404Many     10             0              -100.00%

benchmark            old bytes     new bytes     delta
Benchmark404         115           68            -40.87%
Benchmark404Many     235           57            -75.74%
2015-05-30 14:45:13 +02:00
Manu Mtz-Almeida
48633f7001 Better documentation 2015-05-29 21:03:41 +02:00
Manu Mtz-Almeida
66e9feb622 Optimizes tree lookup 2015-05-29 21:03:28 +02:00
Manu Mtz-Almeida
e899d8a99e Code cleanup + documentation 2015-05-28 03:22:34 +02:00
Manu Mtz-Almeida
b96f68ce7b Fixes RunTLS() implementation
- thanks @Dal-Papa
2015-05-28 03:02:53 +02:00
Manu Mtz-Almeida
66fa43f9ae Preparing release Gin v1.0rc1 2015-05-22 16:55:16 +02:00
Manu Mtz-Almeida
5f76ba2022 Context.Engine renamed to Context.engine 2015-05-22 02:24:13 +02:00
Manu Mtz-Almeida
c2abae6840 debugPrintRoute() is called in the lowest layer of abstraction 2015-05-20 11:32:39 +02:00
Manu Mtz-Almeida
022304e7d9 Better API for RouteGroup.Handle() 2015-05-19 23:22:35 +02:00
Manu Mtz-Almeida
eb568d1a0c Removes debug variables 2015-05-19 00:48:19 +02:00
Manu Mtz-Almeida
cd6e95f0e4 Unix sockets support 2015-05-19 00:45:08 +02:00
Manu Mtz-Almeida
9ecb76ef6e Cosmetic changes 2015-05-18 20:50:46 +02:00
Manu Mtz-Almeida
947b53d4a2 New Render API 2015-05-18 15:45:24 +02:00
Manu Mtz-Almeida
3066c35754 Renames RouterGroup.absolutePath to .BasePath 2015-05-16 18:08:19 +02:00
Manu Mtz-Almeida
b690611c38 Better debug logging + unit tests 2015-05-09 03:34:43 +02:00
Manu Mtz-Almeida
eb3e9293ed Renames []HandleFunc to HandlersChain 2015-05-07 11:30:01 +02:00
Manu Mtz-Almeida
f212ae7728 Updates tree.go + fixes + unit tests 2015-05-05 16:37:33 +02:00
Manu Mtz-Almeida
f414648384 - More unit tests
- Improves HTML debug render
- InputHolder removed
- More debug logs
2015-05-05 15:06:38 +02:00
Manu Mtz-Almeida
0a192fb0fa Tons of unit tests 2015-04-09 12:15:02 +02:00
Manu Mtz-Almeida
4d315f474b More unit tests 2015-04-08 14:24:49 +02:00
Manu Mtz-Almeida
a4eadceb45 Merge branch 'develop' into performance
Conflicts:
	binding/form_mapping.go
	context_test.go
2015-04-07 19:59:43 +02:00
Manu Mtz-Almeida
ea962038e1 Cosmetic changes 2015-04-07 12:27:23 +02:00
Manu Mtz-Almeida
1f6304ca25 Cleaning up performance branch 2015-04-07 12:22:38 +02:00
Manu Mtz-Almeida
3faa81a464 Removes unit test in performance branch temporarily. 2015-03-31 21:53:38 +02:00
Manu Mtz-Almeida
2915fa0ffe Zero allocation router, first commit 2015-03-31 21:39:06 +02:00
Manu Mtz-Almeida
d4413b6e91 Refactors binding module 2015-03-31 17:51:10 +02:00
Manu Mtz-Almeida
4a37b0808b Refactors Context initialization 2015-03-31 17:39:30 +02:00
Manu Mtz-Almeida
df3ed787e1 Fixes debug HTML rendering:
- Stateless algorithm
2015-03-31 17:36:13 +02:00
Manu Mtz-Almeida
1e417c7a50 Refactors Context allocation 2015-03-25 19:33:17 +01:00
Manu Mtz-Almeida
aa9fad5ad8 Fixes NoMethod / NoRoute handlers 2015-03-25 16:53:58 +01:00
Manu Mtz-Almeida
615c62d736 Some cosmetic changes 2015-03-23 04:41:29 +01:00
Adonis
5feda9fa7a added missing MIMEMultipartPOSTFORM and changed http.Router Godep.json SHA 2015-03-08 20:25:51 -04:00
Adonis
a04d9e271c Include NoMethod Method to Gin to allow middlewares to handle 405 No Method Errors in the gin router 2015-03-08 19:37:27 -04:00
Aleksandr Didenko
0fb7bed1c0 Added support multipart/form-data #109 2015-03-08 15:43:37 +01:00
Klemen Sever
44f024a413 Fixd newline problem with debugPrint in Run* functions 2015-02-05 15:24:22 +01:00
Javier Provecho Fernandez
7aa51dc393 Solve #164 2015-01-04 02:23:49 +01:00
Manu Mtz-Almeida
aa7b00a083 General refactoring. Part 2. 2014-10-09 01:40:42 +02:00
Manu Mtz-Almeida
07a3961941 General refactoring 2014-10-08 21:37:26 +02:00
Ludwig Valda Vasquez
97ae4a6b65 Fix for #119. gin.LoadHTML* incorrectly works in debug mode. 2014-09-17 07:33:13 +04:00
Manu Mtz-Almeida
8e5397bfa0 Adds in-code license 2014-08-29 19:49:50 +02:00
Manu Mtz-Almeida
46225ea53a Fixes html debug mode 2014-08-21 01:04:35 +02:00
Manu Mtz-Almeida
378610b3b2 HTML template debug mode.
- theHTML templates are reloaded each time
2014-08-20 18:14:10 +02:00
Manu Mtz-Almeida
809eee8a72 Adds debug mode (part 1)
- Adds API to switch the gin's mode
- Log listening port
- Log routes
2014-08-19 03:40:52 +02:00
Manu Mtz-Almeida
dcafad3ced Deferring WriteHeader. Part 1 2014-08-18 05:24:48 +02:00
Manu Mtz-Almeida
cc94aa2dd9 Fixes pathFor() 2014-07-18 01:34:29 +02:00
Manu Mtz-Almeida
d0fb4a6bf0 Fixes new NoRoute() logic 2014-07-18 00:29:44 +02:00
Manu Mtz-Almeida
48f4914165 Performance improvement
- Reduces number of allocations per context
- Improves CPU cache usage
2014-07-18 00:10:28 +02:00
Manu Mtz-Almeida
184a02ee2d Improves performance of NoRouter() handler 2014-07-17 23:43:41 +02:00
Manu Mtz-Almeida
4731e82bb7 Renames NotFound() to NoRoute() 2014-07-17 23:42:23 +02:00
Manu Mtz-Almeida
d91cfbade4 Renames NotFound404 to NotFound 2014-07-17 20:18:50 +02:00
Manu Mtz-Almeida
15c27c712d Adds HEAD method in Static file serving 2014-07-17 02:07:18 +02:00
Manu Mtz-Almeida
dda70bf382 Refactors Static() file serving 2014-07-17 02:02:09 +02:00
Manu Mtz.-Almeida
0ca4d36b76 Merge pull request #70 from fmd/develop-templates
Renames SetHTTPTemplate to SetHTMLTemplate
2014-07-17 00:27:39 +02:00
Manu Mtz-Almeida
dc43372610 Splitting source code in different files 2014-07-16 20:14:03 +02:00
Fareed Dudhia
176edde1fb SetHTTPTemplate -> SetHTMLTemplate 2014-07-16 12:53:57 +00:00
mopemoepe
08875b30d6 Fix variadic parameter 2014-07-16 14:18:45 +09:00
Manu Mtz-Almeida
3ef5e4fead Merge branch 'master' of https://github.com/lucas-clemente/gin into lucas-clemente-master 2014-07-15 17:55:28 +02:00
Manu Mtz-Almeida
5ea7a92267 Adds flexible render system 2014-07-15 17:41:56 +02:00
Manu Mtz-Almeida
94bc35bb2d Using keyed initialization to fix app-engine integration 2014-07-13 16:56:26 +02:00
Manu Mtz-Almeida
f63a354b40 Normal log and error log are printed in the same call. 2014-07-13 00:18:33 +02:00
Lucas Clemente
6c31570472 work around path.Join removing trailing slashes from routes 2014-07-09 14:27:47 +02:00
Manu Mtz-Almeida
2078ecd8e1 Renaming Context.Req to Context.Request 2014-07-08 16:57:04 +02:00
Manu Mtz-Almeida
6b6ec5be77 Merge branch 'master' of https://github.com/mdigger/gin into mdigger-master 2014-07-08 14:39:02 +02:00
Dmitry Sedykh
a235e0fb32 Add HTML POST Form support in Bind 2014-07-08 16:10:27 +04:00
kyledinh
f6971041b0 RunTLS() for http.ListenAndServeTLS
run the engine for https

Fixes PR #52
2014-07-08 14:09:04 +02:00
Manu Mtz-Almeida
25e7330e65 Merge branch 'sync_pool' into develop
Conflicts:
	logger.go
2014-07-08 01:13:52 +02:00
Manu Mtz-Almeida
058201713b New static file serving 2014-07-08 01:09:48 +02:00
Manu Mtz-Almeida
3295c6e9c4 Improves error management 2014-07-08 00:16:41 +02:00
Manu Mtz-Almeida
3e4033673e Using sync.Pool instead of a channel 2014-07-06 21:09:23 +02:00
Manu Mtz-Almeida
f8d85c1b4d Fixes MarshalXML() and renames initial "H" tag to "map". 2014-07-06 18:25:17 +02:00
Manu Mtz-Almeida
c9809ab10d Merge branch 'master' of https://github.com/chad-russell/gin into chad-russell-master 2014-07-05 19:40:20 +02:00
Manu Mtz-Almeida
f19cca070e Using c.Data() to write 404 error 2014-07-05 19:23:40 +02:00
Manu Mtz-Almeida
ee1406bc4f ServeFiles should not be part of Gin core.
We have to create a middleware to handle static files
2014-07-05 16:14:43 +02:00
Chad Russell
c978efa42f added error handling 2014-07-04 23:18:05 -04:00
Manu Mtz-Almeida
aadd33af2c Context.Data() takes content-type 2014-07-05 02:53:51 +02:00
Manu Mtz-Almeida
f387bdda9e Fixes context.String() 2014-07-05 02:51:52 +02:00
Chad Russell
3c2da97919 Fix XML Marshal to work with gin.H 2014-07-04 20:51:25 -04:00
Manu Mtz-Almeida
cde876395f Using constant values for Content-Type 2014-07-05 02:51:14 +02:00
Manu Mtz-Almeida
07fe0d9944 Merge branch 'bindings' into develop 2014-07-05 02:49:25 +02:00
Manu Mtz-Almeida
9634a38704 New bindings for JSON, XML and form parsing and validation 2014-07-04 23:28:50 +02:00
Manu Mtz-Almeida
8f3f3597f3 Merge branch 'master' of https://github.com/ngerakines/gin into ngerakines-master
It adds MustGet() method in context.

Conflicts:
	examples/example_basic.go
2014-07-04 17:05:56 +02:00
Manu Mtz-Almeida
b5db76b87a Adds default config variable 2014-07-04 16:59:57 +02:00
Manu Mtz-Almeida
91df54a5c2 Better print formatting for Errors 2014-07-04 04:31:11 +02:00
Manu Mtz-Almeida
6da7374af5 Do not update status code in Abort() if code is a negative number 2014-07-04 00:37:54 +02:00
Nick Gerakines
abe076b8f8 Adding MustGet method. Updating README. 2014-07-03 18:16:41 -04:00
Manu Mtz-Almeida
e1781e2db1 Fixes "http: multiple response.WriteHeader calls" in 404 [Issue #29] 2014-07-04 00:12:35 +02:00
Manu Mtz-Almeida
00413032bb Merge branch 'master' into develop 2014-07-04 00:05:31 +02:00
Manu Mtz-Almeida
edc3872dd0 Merge branch 'master' of github.com:gin-gonic/gin 2014-07-04 00:05:18 +02:00
Manu Mtz-Almeida
d42aa6d868 Fixes wrap around http.ResponseWriter 2014-07-04 00:01:28 +02:00
Nick Gerakines
108bfb4470 Setting Get metadata method to return both an interface as well as an error to remove panic. 2014-07-03 15:17:24 -04:00
jasonrhansen
fd30d289a9 Fix spelling and grammar errors in comments 2014-07-03 12:30:01 -06:00
Manu Mtz-Almeida
1aa3216303 Some work around bindings. it may do not compile 2014-07-03 19:19:06 +02:00
Manu Mtz-Almeida
b8053b284d Adds HEAD 2014-07-03 16:57:45 +02:00
Manu Mtz-Almeida
df9ba52186 Merge branch 'options' of https://github.com/alexandernyquist/gin into alexandernyquist-options 2014-07-03 16:55:55 +02:00
Manu Mtz-Almeida
bd33a76426 Merge branch 'contextCaching' into develop 2014-07-03 16:35:41 +02:00
Manu Mtz-Almeida
12fa9fe499 Improves Copy() in gin.Context 2014-07-03 16:35:20 +02:00
Manu Mtz-Almeida
d7a3fdcd8f Testing Copy() instead of Keep() and Release() 2014-07-03 16:31:27 +02:00
Alexander Nyquist
5e0d560dd6 Added support for OPTIONS verb 2014-07-03 16:14:33 +02:00
Manu Mtz-Almeida
d9573b45c7 Adds Keep() and Release() to gin.Context 2014-07-03 15:59:39 +02:00
Manu Mtz-Almeida
30ea9c06fc Adds NewWithConfig() and CacheStress() 2014-07-03 14:11:42 +02:00
Manu Mtz-Almeida
615f19961e Run() crashes if server can't be setup 2014-07-02 23:10:30 +02:00
Manu Mtz-Almeida
10979dd862 Adds new context caching system
- Reduces allocation overhead
- Reduces Garbage Collection stress
- Reduces memory fragmentation
2014-07-02 20:17:57 +02:00
Manu Mtz-Almeida
503b1fadae Merge branch 'master' into develop 2014-07-02 20:12:55 +02:00
Manu Mtz-Almeida
2b6cf3889e Fixes crash when route path doesn't start with '/' 2014-07-02 11:09:04 +02:00
Manu Mtz-Almeida
f99a2ac7cc Merge branch 'develop' 2014-07-02 11:06:22 +02:00
Manu Mtz-Almeida
b8798ec5f7 Adds context.LastError() 2014-07-02 02:32:44 +02:00
Manu Mtz-Almeida
f72fcdf5ba Improves error log formatting 2014-07-02 02:31:11 +02:00
Manu Mtz-Almeida
4b62957d85 Do not update header when status code is less than 1 2014-07-02 01:50:33 +02:00
Manu Mtz-Almeida
2abbc4ad1d Setting response headers before calling WriteHeader in context.String() 2014-07-02 01:47:32 +02:00
Alexander Nyquist
00bb3e2478 Setting response headers before calling WriteHeader. 2014-07-01 09:22:39 +02:00
Manu Mtz-Almeida
1565111274 Fixes routing bug 2014-06-30 03:59:00 +02:00
Manu Mtz-Almeida
15216a0883 Initial commit 2014-06-18 01:42:34 +02:00