mirror of https://github.com/gin-gonic/gin.git
add go version prerequisite and debug warning (#1394)
* add go version prerequisite and debug warning * merge duplicate content * remove duplicate content
This commit is contained in:
parent
6c6d97ba2e
commit
c00f21ff23
113
README.md
113
README.md
|
@ -15,10 +15,11 @@ Gin is a web framework written in Go (Golang). It features a martini-like API wi
|
||||||
|
|
||||||
## Contents
|
## Contents
|
||||||
|
|
||||||
|
- [Installation](#installation)
|
||||||
|
- [Prerequisite](#prerequisite)
|
||||||
- [Quick start](#quick-start)
|
- [Quick start](#quick-start)
|
||||||
- [Benchmarks](#benchmarks)
|
- [Benchmarks](#benchmarks)
|
||||||
- [Gin v1.stable](#gin-v1-stable)
|
- [Gin v1.stable](#gin-v1-stable)
|
||||||
- [Start using it](#start-using-it)
|
|
||||||
- [Build with jsoniter](#build-with-jsoniter)
|
- [Build with jsoniter](#build-with-jsoniter)
|
||||||
- [API Examples](#api-examples)
|
- [API Examples](#api-examples)
|
||||||
- [Using GET,POST,PUT,PATCH,DELETE and OPTIONS](#using-get-post-put-patch-delete-and-options)
|
- [Using GET,POST,PUT,PATCH,DELETE and OPTIONS](#using-get-post-put-patch-delete-and-options)
|
||||||
|
@ -58,6 +59,64 @@ Gin is a web framework written in Go (Golang). It features a martini-like API wi
|
||||||
- [Testing](#testing)
|
- [Testing](#testing)
|
||||||
- [Users](#users--)
|
- [Users](#users--)
|
||||||
|
|
||||||
|
## Installation
|
||||||
|
|
||||||
|
To install Gin package, you need to install Go and set your Go workspace first.
|
||||||
|
|
||||||
|
1. Download and install it:
|
||||||
|
|
||||||
|
```sh
|
||||||
|
$ go get -u github.com/gin-gonic/gin
|
||||||
|
```
|
||||||
|
|
||||||
|
2. Import it in your code:
|
||||||
|
|
||||||
|
```go
|
||||||
|
import "github.com/gin-gonic/gin"
|
||||||
|
```
|
||||||
|
|
||||||
|
3. (Optional) Import `net/http`. This is required for example if using constants such as `http.StatusOK`.
|
||||||
|
|
||||||
|
```go
|
||||||
|
import "net/http"
|
||||||
|
```
|
||||||
|
|
||||||
|
### Use a vendor tool like [Govendor](https://github.com/kardianos/govendor)
|
||||||
|
|
||||||
|
1. `go get` govendor
|
||||||
|
|
||||||
|
```sh
|
||||||
|
$ go get github.com/kardianos/govendor
|
||||||
|
```
|
||||||
|
2. Create your project folder and `cd` inside
|
||||||
|
|
||||||
|
```sh
|
||||||
|
$ mkdir -p $GOPATH/src/github.com/myusername/project && cd "$_"
|
||||||
|
```
|
||||||
|
|
||||||
|
3. Vendor init your project and add gin
|
||||||
|
|
||||||
|
```sh
|
||||||
|
$ govendor init
|
||||||
|
$ govendor fetch github.com/gin-gonic/gin@v1.2
|
||||||
|
```
|
||||||
|
|
||||||
|
4. Copy a starting template inside your project
|
||||||
|
|
||||||
|
```sh
|
||||||
|
$ curl https://raw.githubusercontent.com/gin-gonic/gin/master/examples/basic/main.go > main.go
|
||||||
|
```
|
||||||
|
|
||||||
|
5. Run your project
|
||||||
|
|
||||||
|
```sh
|
||||||
|
$ go run main.go
|
||||||
|
```
|
||||||
|
|
||||||
|
## Prerequisite
|
||||||
|
|
||||||
|
Now Gin requires Go 1.6 or later and Go 1.7 will be required soon.
|
||||||
|
|
||||||
## Quick start
|
## Quick start
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
|
@ -135,58 +194,6 @@ BenchmarkVulcan_GithubAll | 5000 | 394253 | 19894
|
||||||
- [x] Battle tested
|
- [x] Battle tested
|
||||||
- [x] API frozen, new releases will not break your code.
|
- [x] API frozen, new releases will not break your code.
|
||||||
|
|
||||||
## Start using it
|
|
||||||
|
|
||||||
1. Download and install it:
|
|
||||||
|
|
||||||
```sh
|
|
||||||
$ go get github.com/gin-gonic/gin
|
|
||||||
```
|
|
||||||
|
|
||||||
2. Import it in your code:
|
|
||||||
|
|
||||||
```go
|
|
||||||
import "github.com/gin-gonic/gin"
|
|
||||||
```
|
|
||||||
|
|
||||||
3. (Optional) Import `net/http`. This is required for example if using constants such as `http.StatusOK`.
|
|
||||||
|
|
||||||
```go
|
|
||||||
import "net/http"
|
|
||||||
```
|
|
||||||
|
|
||||||
### Use a vendor tool like [Govendor](https://github.com/kardianos/govendor)
|
|
||||||
|
|
||||||
1. `go get` govendor
|
|
||||||
|
|
||||||
```sh
|
|
||||||
$ go get github.com/kardianos/govendor
|
|
||||||
```
|
|
||||||
2. Create your project folder and `cd` inside
|
|
||||||
|
|
||||||
```sh
|
|
||||||
$ mkdir -p $GOPATH/src/github.com/myusername/project && cd "$_"
|
|
||||||
```
|
|
||||||
|
|
||||||
3. Vendor init your project and add gin
|
|
||||||
|
|
||||||
```sh
|
|
||||||
$ govendor init
|
|
||||||
$ govendor fetch github.com/gin-gonic/gin@v1.2
|
|
||||||
```
|
|
||||||
|
|
||||||
4. Copy a starting template inside your project
|
|
||||||
|
|
||||||
```sh
|
|
||||||
$ curl https://raw.githubusercontent.com/gin-gonic/gin/master/examples/basic/main.go > main.go
|
|
||||||
```
|
|
||||||
|
|
||||||
5. Run your project
|
|
||||||
|
|
||||||
```sh
|
|
||||||
$ go run main.go
|
|
||||||
```
|
|
||||||
|
|
||||||
## Build with [jsoniter](https://github.com/json-iterator/go)
|
## Build with [jsoniter](https://github.com/json-iterator/go)
|
||||||
|
|
||||||
Gin use `encoding/json` as default json package but you can change to [jsoniter](https://github.com/json-iterator/go) by build from other tags.
|
Gin use `encoding/json` as default json package but you can change to [jsoniter](https://github.com/json-iterator/go) by build from other tags.
|
||||||
|
|
3
debug.go
3
debug.go
|
@ -47,6 +47,9 @@ func debugPrint(format string, values ...interface{}) {
|
||||||
}
|
}
|
||||||
|
|
||||||
func debugPrintWARNINGDefault() {
|
func debugPrintWARNINGDefault() {
|
||||||
|
debugPrint(`[WARNING] Now Gin requires Go 1.6 or later and Go 1.7 will be required soon.
|
||||||
|
|
||||||
|
`)
|
||||||
debugPrint(`[WARNING] Creating an Engine instance with the Logger and Recovery middleware already attached.
|
debugPrint(`[WARNING] Creating an Engine instance with the Logger and Recovery middleware already attached.
|
||||||
|
|
||||||
`)
|
`)
|
||||||
|
|
|
@ -92,7 +92,7 @@ func TestDebugPrintWARNINGDefault(t *testing.T) {
|
||||||
defer teardown()
|
defer teardown()
|
||||||
|
|
||||||
debugPrintWARNINGDefault()
|
debugPrintWARNINGDefault()
|
||||||
assert.Equal(t, "[GIN-debug] [WARNING] Creating an Engine instance with the Logger and Recovery middleware already attached.\n\n", w.String())
|
assert.Equal(t, "[GIN-debug] [WARNING] Now Gin requires Go 1.6 or later and Go 1.7 will be required soon.\n\n[GIN-debug] [WARNING] Creating an Engine instance with the Logger and Recovery middleware already attached.\n\n", w.String())
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestDebugPrintWARNINGNew(t *testing.T) {
|
func TestDebugPrintWARNINGNew(t *testing.T) {
|
||||||
|
|
Loading…
Reference in New Issue