613 Commits

Author SHA1 Message Date
spynup
ecd836af75 Listen to CloseNotifier in stream handler.
Problem:

context.Stream() already listens to the closeNotifier, which gives the impression that context.Stream() will return as soon as a client disconnects.  Unfortunately, it doesn't!

This example code furthers the impression with the defer closeListener(roomid, listener) which one would expect to be called when a client navigates away, which is not the case.  In fact, it's only called on the next message that's sent to the room after said client exits. 

This is because c.SSEvent("message", <-listener) blocks indefinitely until a message comes in, so will not return and yield to c.Stream()'s select that catches the closeNotify.  This means that if a client navigates away, the server never notices and cleans up.

Fix: Also listen to CloseNotifier inside stream handler.  This causes the step() function to return immediately when the client goes away and allows the cleanup to run.  Updating this example should make it more clear, I think!
2015-07-22 12:20:47 -07:00
Manu Mtz-Almeida
fd5d4294a5 debugPrintRoutes() unit test 2015-07-12 16:35:15 +02:00
Manu Mtz-Almeida
6efa0628ea Testing logo position 2015-07-11 17:59:16 +02:00
Manu Mtz-Almeida
df866a26a3 Testing new positions of logo 2015-07-11 17:56:25 +02:00
Manu Mtz-Almeida
4a8a6213a7 Updates README 2015-07-11 17:53:54 +02:00
Manu Mtz.-Almeida
cecb1ba3eb Merge pull request #372 from javierprovecho/benchmark-table-markdown
Change old benchmark to Git Flavored Markdown Table
2015-07-11 13:00:35 +02:00
Javier Provecho Fernandez
b7bdf59e50 Change old benchmark to Git Flavored Markdown Table 2015-07-11 11:43:35 +02:00
Javier Provecho Fernandez
9bab006776 Add logo.jpg 2015-07-10 21:58:20 +02:00
Manu Mtz-Almeida
0494e1b66a Removes unused underscore 2015-07-10 13:06:01 +02:00
Manu Mtz-Almeida
fc5e355724 BasePath is not longer an exported field, but a method instead 2015-07-08 04:27:23 +02:00
Manu Mtz-Almeida
0873992f38 More unit tests for form binding 2015-07-08 04:26:37 +02:00
Manu Mtz-Almeida
5f2f8d9cb4 Better documentation 2015-07-05 03:26:30 +02:00
Manu Mtz-Almeida
c9272120b4 Adds unit tests for ErrorLogger() 2015-07-04 20:15:15 +02:00
Manu Mtz-Almeida
638377655d Add unit tests for LoadHTML in debug mode 2015-07-04 20:06:40 +02:00
Manu Mtz-Almeida
0e08a109f9 Adds unit tests for Bind() 2015-07-04 19:56:43 +02:00
Manu Mtz-Almeida
179e947425 Updates CHANGELOG 2015-07-04 18:10:03 +02:00
Manu Mtz-Almeida
d4dec77afa Adds unit tests for RedirectTrailingSlash & RedirectFixedPath 2015-07-04 14:13:25 +02:00
Manu Mtz.-Almeida
13b88673a2 Merge pull request #363 from error10/patch-1
RedirectTrailingSlash has no effect unless RedirectFixedPath is set
2015-07-04 13:37:42 +02:00
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
Manu Mtz-Almeida
0316b735c4 More unit tests 2015-07-03 04:20:18 +02:00
Manu Mtz-Almeida
4194adce4c Adds additional bindings for multipart and form 2015-07-03 04:20:00 +02:00
Manu Mtz-Almeida
8f3047814e Comments + IRoutes + IRouter + unexported AbortIndex 2015-07-02 20:24:54 +02:00
Manu Mtz-Almeida
13f57702d4 Adds more c.Next() just to be sure 2015-07-02 18:45:09 +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
050a55b006 Use c.Next() instead of c.index++ in UnitTest 2015-07-02 16:37:35 +02:00
Adam Dratwinski
74f5051cb5 Fix IsAborted() method 2015-07-02 13:37:11 +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
Manu Mtz.-Almeida
88a65eacff Merge pull request #348 from WnP/master
Exporting routesInterface
2015-06-26 15:27:51 +02:00
Manu Mtz-Almeida
95c08d5f84 Adds HandlerName() 2015-06-25 19:44:52 +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
d6425f1692 We do not longer have to call JSON() explicitly 2015-06-13 16:42:12 +02:00
Manu Mtz-Almeida
352868ef90 Add support for custom HTML and XML content-type 2015-06-13 04:43:23 +02:00
Manu Mtz-Almeida
a7c957af7d Adds supports for custom JSON Content-type 2015-06-13 04:29:10 +02:00
Manu Mtz-Almeida
22f118f3b6 Adds gin.Bind() usage panic! 2015-06-13 00:01:02 +02:00
Manu Mtz-Almeida
ab447bb188 Adds Bind() middleware 2015-06-12 23:42:54 +02:00
Manu Mtz-Almeida
7e7004a224 Improves errors.ByType() implementation 2015-06-12 21:34:06 +02:00
Manu Mtz-Almeida
c0383dff6b Adds IsType() helper 2015-06-12 21:33:16 +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
86c75ce95d Adds collection pipeline pattern 2015-06-10 17:10:34 +02:00
Manu Mtz-Almeida
9db3afebc6 Updates README 2015-06-09 22:51:59 +02:00
Manu Mtz-Almeida
dded099609 Cosmetic changes 2015-06-07 13:51:35 +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