OSDN Git Service

feat(warder): add warder backbone (#181)
[bytom/vapor.git] / vendor / github.com / gin-gonic / gin / CHANGELOG.md
1 # CHANGELOG
2
3 ### Gin 1.3.0
4
5 - [NEW] Add [`func (*Context) QueryMap`](https://godoc.org/github.com/gin-gonic/gin#Context.QueryMap), [`func (*Context) GetQueryMap`](https://godoc.org/github.com/gin-gonic/gin#Context.GetQueryMap), [`func (*Context) PostFormMap`](https://godoc.org/github.com/gin-gonic/gin#Context.PostFormMap) and [`func (*Context) GetPostFormMap`](https://godoc.org/github.com/gin-gonic/gin#Context.GetPostFormMap) to support `type map[string]string` as query string or form parameters, see [#1383](https://github.com/gin-gonic/gin/pull/1383)
6 - [NEW] Add [`func (*Context) AsciiJSON`](https://godoc.org/github.com/gin-gonic/gin#Context.AsciiJSON), see [#1358](https://github.com/gin-gonic/gin/pull/1358)
7 - [NEW] Add `Pusher()` in [`type ResponseWriter`](https://godoc.org/github.com/gin-gonic/gin#ResponseWriter) for supporting http2 push, see [#1273](https://github.com/gin-gonic/gin/pull/1273)
8 - [NEW] Add [`func (*Context) DataFromReader`](https://godoc.org/github.com/gin-gonic/gin#Context.DataFromReader) for serving dynamic data, see [#1304](https://github.com/gin-gonic/gin/pull/1304)
9 - [NEW] Add [`func (*Context) ShouldBindBodyWith`](https://godoc.org/github.com/gin-gonic/gin#Context.ShouldBindBodyWith) allowing to call binding multiple times, see [#1341](https://github.com/gin-gonic/gin/pull/1341)
10 - [NEW] Support pointers in form binding, see [#1336](https://github.com/gin-gonic/gin/pull/1336)
11 - [NEW] Add [`func (*Context) JSONP`](https://godoc.org/github.com/gin-gonic/gin#Context.JSONP), see [#1333](https://github.com/gin-gonic/gin/pull/1333)
12 - [NEW] Support default value in form binding, see [#1138](https://github.com/gin-gonic/gin/pull/1138)
13 - [NEW] Expose validator engine in [`type StructValidator`](https://godoc.org/github.com/gin-gonic/gin/binding#StructValidator), see [#1277](https://github.com/gin-gonic/gin/pull/1277)
14 - [NEW] Add [`func (*Context) ShouldBind`](https://godoc.org/github.com/gin-gonic/gin#Context.ShouldBind), [`func (*Context) ShouldBindQuery`](https://godoc.org/github.com/gin-gonic/gin#Context.ShouldBindQuery) and [`func (*Context) ShouldBindJSON`](https://godoc.org/github.com/gin-gonic/gin#Context.ShouldBindJSON), see [#1047](https://github.com/gin-gonic/gin/pull/1047)
15 - [NEW] Add support for `time.Time` location in form binding, see [#1117](https://github.com/gin-gonic/gin/pull/1117)
16 - [NEW] Add [`func (*Context) BindQuery`](https://godoc.org/github.com/gin-gonic/gin#Context.BindQuery), see [#1029](https://github.com/gin-gonic/gin/pull/1029)
17 - [NEW] Make [jsonite](https://github.com/json-iterator/go) optional with build tags, see [#1026](https://github.com/gin-gonic/gin/pull/1026)
18 - [NEW] Show query string in logger, see [#999](https://github.com/gin-gonic/gin/pull/999)
19 - [NEW] Add [`func (*Context) SecureJSON`](https://godoc.org/github.com/gin-gonic/gin#Context.SecureJSON), see [#987](https://github.com/gin-gonic/gin/pull/987) and [#993](https://github.com/gin-gonic/gin/pull/993)
20 - [DEPRECATE] `func (*Context) GetCookie` for [`func (*Context) Cookie`](https://godoc.org/github.com/gin-gonic/gin#Context.Cookie)
21 - [FIX] Don't display color tags if [`func DisableConsoleColor`](https://godoc.org/github.com/gin-gonic/gin#DisableConsoleColor) called, see [#1072](https://github.com/gin-gonic/gin/pull/1072)
22 - [FIX] Gin Mode `""` when calling [`func Mode`](https://godoc.org/github.com/gin-gonic/gin#Mode) now returns `const DebugMode`, see [#1250](https://github.com/gin-gonic/gin/pull/1250)
23 - [FIX] `Flush()` now doesn't overwrite `responseWriter` status code, see [#1460](https://github.com/gin-gonic/gin/pull/1460)
24
25 ### Gin 1.2.0
26
27 - [NEW] Switch from godeps to govendor
28 - [NEW] Add support for Let's Encrypt via gin-gonic/autotls
29 - [NEW] Improve README examples and add extra at examples folder
30 - [NEW] Improved support with App Engine
31 - [NEW] Add custom template delimiters, see #860
32 - [NEW] Add Template Func Maps, see #962
33 - [NEW] Add \*context.Handler(), see #928
34 - [NEW] Add \*context.GetRawData()
35 - [NEW] Add \*context.GetHeader() (request)
36 - [NEW] Add \*context.AbortWithStatusJSON() (JSON content type)
37 - [NEW] Add \*context.Keys type cast helpers
38 - [NEW] Add \*context.ShouldBindWith()
39 - [NEW] Add \*context.MustBindWith()
40 - [NEW] Add \*engine.SetFuncMap()
41 - [DEPRECATE] On next release: \*context.BindWith(), see #855
42 - [FIX] Refactor render
43 - [FIX] Reworked tests
44 - [FIX] logger now supports cygwin
45 - [FIX] Use X-Forwarded-For before X-Real-Ip
46 - [FIX] time.Time binding (#904)
47
48 ### Gin 1.1.4
49
50 - [NEW] Support google appengine for IsTerminal func
51
52 ### Gin 1.1.3
53
54 - [FIX] Reverted Logger: skip ANSI color commands
55
56 ### Gin 1.1
57
58 - [NEW] Implement QueryArray and PostArray methods 
59 - [NEW] Refactor GetQuery and GetPostForm 
60 - [NEW] Add contribution guide 
61 - [FIX] Corrected typos in README
62 - [FIX] Removed additional Iota  
63 - [FIX] Changed imports to gopkg instead of github in README (#733) 
64 - [FIX] Logger: skip ANSI color commands if output is not a tty
65
66 ### Gin 1.0rc2 (...)
67
68 - [PERFORMANCE] Fast path for writing Content-Type.
69 - [PERFORMANCE] Much faster 404 routing
70 - [PERFORMANCE] Allocation optimizations
71 - [PERFORMANCE] Faster root tree lookup
72 - [PERFORMANCE] Zero overhead, String() and JSON() rendering.
73 - [PERFORMANCE] Faster ClientIP parsing
74 - [PERFORMANCE] Much faster SSE implementation
75 - [NEW] Benchmarks suite
76 - [NEW] Bind validation can be disabled and replaced with custom validators.
77 - [NEW] More flexible HTML render
78 - [NEW] Multipart and PostForm bindings
79 - [NEW] Adds method to return all the registered routes
80 - [NEW] Context.HandlerName() returns the main handler's name
81 - [NEW] Adds Error.IsType() helper
82 - [FIX] Binding multipart form
83 - [FIX] Integration tests
84 - [FIX] Crash when binding non struct object in Context.
85 - [FIX] RunTLS() implementation
86 - [FIX] Logger() unit tests
87 - [FIX] Adds SetHTMLTemplate() warning
88 - [FIX] Context.IsAborted()
89 - [FIX] More unit tests
90 - [FIX] JSON, XML, HTML renders accept custom content-types
91 - [FIX] gin.AbortIndex is unexported
92 - [FIX] Better approach to avoid directory listing in StaticFS()
93 - [FIX] Context.ClientIP() always returns the IP with trimmed spaces.
94 - [FIX] Better warning when running in debug mode.
95 - [FIX] Google App Engine integration. debugPrint does not use os.Stdout
96 - [FIX] Fixes integer overflow in error type
97 - [FIX] Error implements the json.Marshaller interface
98 - [FIX] MIT license in every file
99
100
101 ### Gin 1.0rc1 (May 22, 2015)
102
103 - [PERFORMANCE] Zero allocation router
104 - [PERFORMANCE] Faster JSON, XML and text rendering
105 - [PERFORMANCE] Custom hand optimized HttpRouter for Gin
106 - [PERFORMANCE] Misc code optimizations. Inlining, tail call optimizations
107 - [NEW] Built-in support for golang.org/x/net/context
108 - [NEW] Any(path, handler). Create a route that matches any path
109 - [NEW] Refactored rendering pipeline (faster and static typeded)
110 - [NEW] Refactored errors API
111 - [NEW] IndentedJSON() prints pretty JSON
112 - [NEW] Added gin.DefaultWriter
113 - [NEW] UNIX socket support
114 - [NEW] RouterGroup.BasePath is exposed
115 - [NEW] JSON validation using go-validate-yourself (very powerful options)
116 - [NEW] Completed suite of unit tests
117 - [NEW] HTTP streaming with c.Stream()
118 - [NEW] StaticFile() creates a router for serving just one file.
119 - [NEW] StaticFS() has an option to disable directory listing.
120 - [NEW] StaticFS() for serving static files through virtual filesystems
121 - [NEW] Server-Sent Events native support
122 - [NEW] WrapF() and WrapH() helpers for wrapping http.HandlerFunc and http.Handler
123 - [NEW] Added LoggerWithWriter() middleware
124 - [NEW] Added RecoveryWithWriter() middleware
125 - [NEW] Added DefaultPostFormValue()
126 - [NEW] Added DefaultFormValue()
127 - [NEW] Added DefaultParamValue()
128 - [FIX] BasicAuth() when using custom realm
129 - [FIX] Bug when serving static files in nested routing group
130 - [FIX] Redirect using built-in http.Redirect()
131 - [FIX] Logger when printing the requested path
132 - [FIX] Documentation typos
133 - [FIX] Context.Engine renamed to Context.engine
134 - [FIX] Better debugging messages
135 - [FIX] ErrorLogger
136 - [FIX] Debug HTTP render
137 - [FIX] Refactored binding and render modules
138 - [FIX] Refactored Context initialization
139 - [FIX] Refactored BasicAuth()
140 - [FIX] NoMethod/NoRoute handlers
141 - [FIX] Hijacking http
142 - [FIX] Better support for Google App Engine (using log instead of fmt)
143
144
145 ### Gin 0.6 (Mar 9, 2015)
146
147 - [NEW] Support multipart/form-data
148 - [NEW] NoMethod handler
149 - [NEW] Validate sub structures
150 - [NEW] Support for HTTP Realm Auth
151 - [FIX] Unsigned integers in binding
152 - [FIX] Improve color logger
153
154
155 ### Gin 0.5 (Feb 7, 2015)
156
157 - [NEW] Content Negotiation
158 - [FIX] Solved security bug that allow a client to spoof ip
159 - [FIX] Fix unexported/ignored fields in binding
160
161
162 ### Gin 0.4 (Aug 21, 2014)
163
164 - [NEW] Development mode
165 - [NEW] Unit tests
166 - [NEW] Add Content.Redirect()
167 - [FIX] Deferring WriteHeader()
168 - [FIX] Improved documentation for model binding
169
170
171 ### Gin 0.3 (Jul 18, 2014)
172
173 - [PERFORMANCE] Normal log and error log are printed in the same call.
174 - [PERFORMANCE] Improve performance of NoRouter()
175 - [PERFORMANCE] Improve context's memory locality, reduce CPU cache faults.
176 - [NEW] Flexible rendering API
177 - [NEW] Add Context.File()
178 - [NEW] Add shorcut RunTLS() for http.ListenAndServeTLS
179 - [FIX] Rename NotFound404() to NoRoute()
180 - [FIX] Errors in context are purged
181 - [FIX] Adds HEAD method in Static file serving
182 - [FIX] Refactors Static() file serving
183 - [FIX] Using keyed initialization to fix app-engine integration
184 - [FIX] Can't unmarshal JSON array, #63
185 - [FIX] Renaming Context.Req to Context.Request
186 - [FIX] Check application/x-www-form-urlencoded when parsing form
187
188
189 ### Gin 0.2b (Jul 08, 2014)
190 - [PERFORMANCE] Using sync.Pool to allocatio/gc overhead
191 - [NEW] Travis CI integration
192 - [NEW] Completely new logger
193 - [NEW] New API for serving static files. gin.Static()
194 - [NEW] gin.H() can be serialized into XML
195 - [NEW] Typed errors. Errors can be typed. Internet/external/custom.
196 - [NEW] Support for Godeps
197 - [NEW] Travis/Godocs badges in README
198 - [NEW] New Bind() and BindWith() methods for parsing request body.
199 - [NEW] Add Content.Copy()
200 - [NEW] Add context.LastError()
201 - [NEW] Add shorcut for OPTIONS HTTP method
202 - [FIX] Tons of README fixes
203 - [FIX] Header is written before body
204 - [FIX] BasicAuth() and changes API a little bit
205 - [FIX] Recovery() middleware only prints panics
206 - [FIX] Context.Get() does not panic anymore. Use MustGet() instead.
207 - [FIX] Multiple http.WriteHeader() in NotFound handlers
208 - [FIX] Engine.Run() panics if http server can't be setted up
209 - [FIX] Crash when route path doesn't start with '/'
210 - [FIX] Do not update header when status code is negative
211 - [FIX] Setting response headers before calling WriteHeader in context.String()
212 - [FIX] Add MIT license
213 - [FIX] Changes behaviour of ErrorLogger() and Logger()