Commit Graph

247 Commits

Author SHA1 Message Date
Manu Mtz.-Almeida
2fc2a3e782 Rendering error throws a panic() 2016-01-26 18:35:04 +01:00
Manu Mtz.-Almeida
9abb909731 Merge branch 'master' into develop 2016-01-26 15:55:44 +01:00
Manu Mtz.-Almeida
7b4e9a81a5 Cosmetic changes 2016-01-26 15:55:30 +01:00
Manu Mtz.-Almeida
d0cd8b9fd9 Adds Status() method to Context 2016-01-26 14:55:45 +01:00
Brian Wigginton
353fa14750 additional clarification 2015-10-27 12:26:05 -05:00
Brian Wigginton
1541a141ee update docs for context.Abort
The docs were a little unclear as to how to use Abort, and how it will affect the current handler.
2015-10-27 12:22:18 -05:00
Javier Provecho Fernandez
4892650ef8 Merge branch 'se77en-master' into develop 2015-10-02 12:38:32 +02:00
Javier Provecho Fernandez
8e37eb8498 Fix tests for GetCookie() and SetCookie() 2015-10-02 12:37:51 +02:00
Javier Provecho Fernandez
45b72951af Merge branch 'master' of https://github.com/se77en/gin into se77en-master 2015-10-02 11:25:25 +02:00
Javier Provecho Fernandez
558d6b582f Merge branch 'fix' of https://github.com/donnpebe/gin into donnpebe-fix 2015-10-02 09:54:06 +02:00
Damon Zhao
e1d27558b3 add parameters for set cookie 2015-09-08 15:37:20 +08:00
Damon Zhao
f5b1fb44bb Add SetCookie and GetCookie method for Context 2015-08-27 16:04:50 +08:00
Manu Mtz-Almeida
e8bc8f48e9 Merge branch 'master' into develop
Conflicts:
	README.md
	gin.go
	routergroup.go
2015-08-16 18:38:13 +02:00
Manu Mtz-Almeida
5f2f8d9cb4 Better documentation 2015-07-05 03:26:30 +02: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
16b08c41c9 Merge branch 'fix_is_aborted_method' of https://github.com/adwinsky/gin 2015-07-02 18:42:41 +02:00
Manu Mtz-Almeida
a20984c2bc Adds comments 2015-07-02 18:42:33 +02:00
Adam Dratwinski
74f5051cb5 Fix IsAborted() method 2015-07-02 13:37:11 +02:00
Donn Pebe
c1719f7e20 Use only the ip part of request RemoteAddr 2015-07-02 01:48:21 +07:00
Manu Mtz-Almeida
95c08d5f84 Adds HandlerName() 2015-06-25 19:44:52 +02:00
Manu Mtz-Almeida
58b5e15870 Adds ForwardedByClientIP option 2015-06-07 13:51:13 +02:00
Manu Mtz-Almeida
70325deb98 c.ClientIP() performance improvement
benchmark                 old ns/op     new ns/op     delta
BenchmarkManyHandlers     4956          4463          -9.95%

benchmark                 old allocs     new allocs     delta
BenchmarkManyHandlers     16             13             -18.75%

benchmark                 old bytes     new bytes     delta
BenchmarkManyHandlers     256           216           -15.62%
2015-06-04 13:15:22 +02:00
Manu Mtz-Almeida
822b995687 c.JSON performance improvement
benchmark                 old ns/op     new ns/op     delta
BenchmarkOneRouteJSON     1143          1053          -7.87%

benchmark                 old allocs     new allocs     delta
BenchmarkOneRouteJSON     4              3              -25.00%

benchmark                 old bytes     new bytes     delta
BenchmarkOneRouteJSON     72            56            -22.22%
2015-06-04 13:08:29 +02:00
Manu Mtz-Almeida
56683d33b1 c.String() performance improvements
```
benchmark                   old ns/op     new ns/op     delta
BenchmarkOneRouteString     448           310           -30.80%

benchmark                   old allocs     new allocs     delta
BenchmarkOneRouteString     1              0              -100.00%

benchmark                   old bytes     new bytes     delta
BenchmarkOneRouteString     48            0             -100.00%
```
2015-06-04 12:53:42 +02:00
Manu Mtz-Almeida
1f56e50083 Using Render() instead of Write() 2015-06-04 05:25:21 +02:00
Manu Mtz-Almeida
1228b03914 Fixing some unit tests 2015-05-31 18:35:28 +02:00
Manu Mtz-Almeida
e60087f223 Fixed documentation error 2015-05-31 17:31:26 +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
e899d8a99e Code cleanup + documentation 2015-05-28 03:22:34 +02:00
Manu Mtz-Almeida
af8e099dfd Fixes multipart integration 2015-05-26 16:31:05 +02:00
Manu Mtz-Almeida
500d745123 PostForm() handles multipart post 2015-05-26 16:16:57 +02:00
Manu Mtz-Almeida
195ea88a28 Cosmetic changes 2015-05-26 12:35:05 +02:00
Manu Mtz-Almeida
d209329891 Updates documentation 2015-05-26 12:13:51 +02:00
Manu Mtz-Almeida
865ea804c9 Renames new API for query/postform and params. 2015-05-26 12:08:33 +02:00
Manu Mtz-Almeida
0a9030f9d7 ClientIP() must trim the white spaces 2015-05-24 15:35:08 +02:00
Manu Mtz-Almeida
9163ee543d Merge branch 'develop' 2015-05-22 17:00:07 +02:00
Manu Mtz-Almeida
37b6f6c179 Fixing new errors API 2015-05-22 16:39:15 +02:00
Manu Mtz-Almeida
b7205a6ec2 Fixes new errors API. 2015-05-22 03:43:39 +02:00
Manu Mtz-Almeida
e94247f9ad New errors API!! 2015-05-22 03:25:21 +02:00
Manu Mtz-Almeida
5f76ba2022 Context.Engine renamed to Context.engine 2015-05-22 02:24:13 +02:00
Manu Mtz-Almeida
66251d1741 Simplifies c.File() 2015-05-21 15:49:10 +02:00
Manu Mtz-Almeida
f9952b0545 Experimenting with golang.org/x/net/context 2015-05-18 21:26:29 +02:00
Manu Mtz-Almeida
c467186d20 Renames Negotiate.HTMLPath to Negotiate.HTMLName 2015-05-18 20:52:26 +02:00
Manu Mtz-Almeida
6313545df7 Drops c.Return() API 2015-05-18 20:51:52 +02:00
Manu Mtz-Almeida
21b5154fd7 New rendering pipeline 2015-05-18 16:09:15 +02:00
Manu Mtz-Almeida
947b53d4a2 New Render API 2015-05-18 15:45:24 +02:00
Manu Mtz-Almeida
470b7e1010 Adds support for Server-Sent Events 2015-05-12 18:33:41 +02:00
Manu Mtz-Almeida
99694bb716 Fixes errors 2015-05-12 15:22:13 +02:00
Manu Mtz-Almeida
421793bfba Experiments: HTTP streaming render 2015-05-12 15:17:46 +02:00
Manu Mtz-Almeida
3df5dfdb7f Faster IndentedJSON + unit tests 2015-05-11 01:04:08 +02:00
Manu Mtz-Almeida
d6771dc4a5 Cosmetic changes 2015-05-09 03:35:31 +02:00
Manu Mtz-Almeida
2d8f0a4801 Performance improvements when rendering
- Fast path for JSON, XML and plain text rendering
2015-05-07 12:44:52 +02:00
Manu Mtz-Almeida
eb3e9293ed Renames []HandleFunc to HandlersChain 2015-05-07 11:30:01 +02:00
Manu Mtz-Almeida
79131ac84d Tail call optimization 2015-05-07 11:28:25 +02:00
Manu Mtz-Almeida
495e6e116e Adds IndentedJSON 2015-05-06 22:31:01 +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
Sridhar Ratnakumar
ffd35c365e Fix typo/grammar in function comment 2015-04-25 21:27:04 -07: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
8b26264574 Merge branch 'develop' into performance
Conflicts:
	context.go
	context_test.go
	gin_test.go
	recovery_test.go
	utils.go
2015-04-08 13:37:25 +02:00
Manu Mtz-Almeida
ac0ad2fed8 Improves unit tests 2015-04-08 02:58:35 +02:00
Manu Mtz-Almeida
1532be7c10 Context Accepted is an exported variable 2015-04-07 23:28:36 +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
3abeba82fc Context redirect uses the built-in redirect facility 2015-04-07 12:27:02 +02:00
Manu Mtz-Almeida
1f6304ca25 Cleaning up performance branch 2015-04-07 12:22: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
18880f9215 ForwardedFor() is deprecated 2015-03-31 17:44:45 +02:00
Manu Mtz-Almeida
4a37b0808b Refactors Context initialization 2015-03-31 17:39:30 +02:00
Manu Mtz-Almeida
59d949d350 Moves errorMsg to errors.go 2015-03-26 14:10:46 +01:00
Manu Mtz-Almeida
9d59fc51bc math package is missing 2015-03-26 14:07:01 +01:00
Manu Mtz-Almeida
31323f694b AbortIndex is missing 2015-03-26 04:27:34 +01:00
Manu Mtz-Almeida
1e417c7a50 Refactors Context allocation 2015-03-25 19:33:17 +01:00
Manu Mtz-Almeida
48fec0650d Cosmetic changes 2015-03-23 06:03:12 +01:00
Manu Mtz-Almeida
3e3ced70d4 Using log.Panic instead 2015-03-23 05:50:10 +01:00
Manu Mtz-Almeida
3285007fbb Refactores context.go 2015-03-23 04:39:53 +01:00
Matt Williams
e8fc0c74b4 gin/context.go: Minor change in Abort comment 2015-03-17 18:51:03 +00:00
Javier Provecho Fernandez
cf8150ed2b Add HTML no template string output support #197 2015-03-08 17:50:58 +01:00
Aleksandr Didenko
0fb7bed1c0 Added support multipart/form-data #109 2015-03-08 15:43:37 +01:00
techjanitor
a900e7888c Update context.go
Add localhost to proxies
2015-02-07 22:44:53 -06:00
Remco
e4f6e053d0 Fixed issue allowing to spoof ClientIP()
The X-Forwared-For can be used to spoof the real client ip. The middleware
introduced in this patch (which should only be used when having servers
in front of this servers) will filter all defined proxies (or local ip
addresses by default) and replace the RemoteAddr with the real client
ip.
2014-12-21 13:42:48 +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
Manu Mtz-Almeida
012c935a46 Better errors in Context.Negotiation 2014-08-31 18:41:11 +02:00
Manu Mtz-Almeida
275bdc194e Fixes Content.Negotiate API 2014-08-31 18:28:18 +02:00
Manu Mtz-Almeida
ffea7e88a2 Working on content type negotiation API 2014-08-30 22:22:57 +02:00
Manu Mtz-Almeida
8e5397bfa0 Adds in-code license 2014-08-29 19:49:50 +02:00
Alexander Nyquist
64fb835e6f Only accepting 3xx status codes when redirecting. Swapped location and code arguments for Redirect signature 2014-08-02 17:06:09 +02:00
Alexander Nyquist
e350ae7c7e Removed redundancy when redirecting 2014-07-29 00:53:56 +02:00
Alexander Nyquist
2c4460d7cc Fixed status code when redirecting 2014-07-29 00:51:34 +02:00
Alexander Nyquist
593de4e913 Added support for redirects 2014-07-29 00:48:02 +02:00
Manu Mtz-Almeida
c7fdc2e03a Errors in context are removed 2014-07-18 00:29:20 +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
8ed55606c3 Adds context.File(path) 2014-07-17 02:01:42 +02:00
Manu Mtz-Almeida
dc43372610 Splitting source code in different files 2014-07-16 20:14:03 +02:00