Hide not allowed Reactions (#9387)
* Hide not allowed Reactions * filter in query :D * use ` Co-Authored-By: Alexey 〒erentyev <axifnx@gmail.com> * update xorm v0.8.0 -> v0.8.1
This commit is contained in:
		
							parent
							
								
									3b4682e172
								
							
						
					
					
						commit
						6d811bcb14
					
				
					 10 changed files with 156 additions and 478 deletions
				
			
		
							
								
								
									
										2
									
								
								go.mod
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								go.mod
									
									
									
									
									
								
							|  | @ -111,5 +111,5 @@ require ( | ||||||
| 	strk.kbt.io/projects/go/libravatar v0.0.0-20191008002943-06d1c002b251 | 	strk.kbt.io/projects/go/libravatar v0.0.0-20191008002943-06d1c002b251 | ||||||
| 	xorm.io/builder v0.3.6 | 	xorm.io/builder v0.3.6 | ||||||
| 	xorm.io/core v0.7.2 | 	xorm.io/core v0.7.2 | ||||||
| 	xorm.io/xorm v0.8.0 | 	xorm.io/xorm v0.8.1 | ||||||
| ) | ) | ||||||
|  |  | ||||||
							
								
								
									
										2
									
								
								go.sum
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								go.sum
									
									
									
									
									
								
							|  | @ -791,3 +791,5 @@ xorm.io/core v0.7.2 h1:mEO22A2Z7a3fPaZMk6gKL/jMD80iiyNwRrX5HOv3XLw= | ||||||
| xorm.io/core v0.7.2/go.mod h1:jJfd0UAEzZ4t87nbQYtVjmqpIODugN6PD2D9E+dJvdM= | xorm.io/core v0.7.2/go.mod h1:jJfd0UAEzZ4t87nbQYtVjmqpIODugN6PD2D9E+dJvdM= | ||||||
| xorm.io/xorm v0.8.0 h1:iALxgJrX8O00f8Jk22GbZwPmxJNgssV5Mv4uc2HL9PM= | xorm.io/xorm v0.8.0 h1:iALxgJrX8O00f8Jk22GbZwPmxJNgssV5Mv4uc2HL9PM= | ||||||
| xorm.io/xorm v0.8.0/go.mod h1:ZkJLEYLoVyg7amJK/5r779bHyzs2AU8f8VMiP6BM7uY= | xorm.io/xorm v0.8.0/go.mod h1:ZkJLEYLoVyg7amJK/5r779bHyzs2AU8f8VMiP6BM7uY= | ||||||
|  | xorm.io/xorm v0.8.1 h1:4f2KXuQxVdaX3RdI3Fw81NzMiSpZeyCZt8m3sEVeIkQ= | ||||||
|  | xorm.io/xorm v0.8.1/go.mod h1:ZkJLEYLoVyg7amJK/5r779bHyzs2AU8f8VMiP6BM7uY= | ||||||
|  |  | ||||||
|  | @ -26,7 +26,6 @@ func TestAPIIssuesReactions(t *testing.T) { | ||||||
| 	session := loginUser(t, owner.Name) | 	session := loginUser(t, owner.Name) | ||||||
| 	token := getTokenForLoggedInUser(t, session) | 	token := getTokenForLoggedInUser(t, session) | ||||||
| 
 | 
 | ||||||
| 	user1 := models.AssertExistsAndLoadBean(t, &models.User{ID: 1}).(*models.User) |  | ||||||
| 	user2 := models.AssertExistsAndLoadBean(t, &models.User{ID: 2}).(*models.User) | 	user2 := models.AssertExistsAndLoadBean(t, &models.User{ID: 2}).(*models.User) | ||||||
| 	urlStr := fmt.Sprintf("/api/v1/repos/%s/%s/issues/%d/reactions?token=%s", | 	urlStr := fmt.Sprintf("/api/v1/repos/%s/%s/issues/%d/reactions?token=%s", | ||||||
| 		owner.Name, issue.Repo.Name, issue.Index, token) | 		owner.Name, issue.Repo.Name, issue.Index, token) | ||||||
|  | @ -61,17 +60,12 @@ func TestAPIIssuesReactions(t *testing.T) { | ||||||
| 	DecodeJSON(t, resp, &apiReactions) | 	DecodeJSON(t, resp, &apiReactions) | ||||||
| 	expectResponse := make(map[int]api.ReactionResponse) | 	expectResponse := make(map[int]api.ReactionResponse) | ||||||
| 	expectResponse[0] = api.ReactionResponse{ | 	expectResponse[0] = api.ReactionResponse{ | ||||||
| 		User:     user1.APIFormat(), |  | ||||||
| 		Reaction: "zzz", |  | ||||||
| 		Created:  time.Unix(1573248002, 0), |  | ||||||
| 	} |  | ||||||
| 	expectResponse[1] = api.ReactionResponse{ |  | ||||||
| 		User:     user2.APIFormat(), | 		User:     user2.APIFormat(), | ||||||
| 		Reaction: "eyes", | 		Reaction: "eyes", | ||||||
| 		Created:  time.Unix(1573248003, 0), | 		Created:  time.Unix(1573248003, 0), | ||||||
| 	} | 	} | ||||||
| 	expectResponse[2] = apiNewReaction | 	expectResponse[1] = apiNewReaction | ||||||
| 	assert.Len(t, apiReactions, 3) | 	assert.Len(t, apiReactions, 2) | ||||||
| 	for i, r := range apiReactions { | 	for i, r := range apiReactions { | ||||||
| 		assert.Equal(t, expectResponse[i].Reaction, r.Reaction) | 		assert.Equal(t, expectResponse[i].Reaction, r.Reaction) | ||||||
| 		assert.Equal(t, expectResponse[i].Created.Unix(), r.Created.Unix()) | 		assert.Equal(t, expectResponse[i].Created.Unix(), r.Created.Unix()) | ||||||
|  |  | ||||||
|  | @ -69,6 +69,7 @@ func findReactions(e Engine, opts FindReactionsOptions) ([]*Reaction, error) { | ||||||
| 	reactions := make([]*Reaction, 0, 10) | 	reactions := make([]*Reaction, 0, 10) | ||||||
| 	sess := e.Where(opts.toConds()) | 	sess := e.Where(opts.toConds()) | ||||||
| 	return reactions, sess. | 	return reactions, sess. | ||||||
|  | 		In("reaction.`type`", setting.UI.Reactions). | ||||||
| 		Asc("reaction.issue_id", "reaction.comment_id", "reaction.created_unix", "reaction.id"). | 		Asc("reaction.issue_id", "reaction.comment_id", "reaction.created_unix", "reaction.id"). | ||||||
| 		Find(&reactions) | 		Find(&reactions) | ||||||
| } | } | ||||||
|  |  | ||||||
							
								
								
									
										2
									
								
								vendor/modules.txt
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								vendor/modules.txt
									
									
									
									
										vendored
									
									
								
							|  | @ -609,5 +609,5 @@ strk.kbt.io/projects/go/libravatar | ||||||
| xorm.io/builder | xorm.io/builder | ||||||
| # xorm.io/core v0.7.2 | # xorm.io/core v0.7.2 | ||||||
| xorm.io/core | xorm.io/core | ||||||
| # xorm.io/xorm v0.8.0 | # xorm.io/xorm v0.8.1 | ||||||
| xorm.io/xorm | xorm.io/xorm | ||||||
|  |  | ||||||
							
								
								
									
										527
									
								
								vendor/xorm.io/xorm/.drone.yml
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										527
									
								
								vendor/xorm.io/xorm/.drone.yml
									
									
									
										generated
									
									
										vendored
									
									
								
							|  | @ -1,11 +1,6 @@ | ||||||
| --- | --- | ||||||
| kind: pipeline | kind: pipeline | ||||||
| name: matrix-1 | name: go1.10-test | ||||||
| 
 |  | ||||||
| platform: |  | ||||||
|   os: linux |  | ||||||
|   arch: amd64 |  | ||||||
| 
 |  | ||||||
| workspace: | workspace: | ||||||
|   base: /go |   base: /go | ||||||
|   path: src/gitea.com/xorm/xorm |   path: src/gitea.com/xorm/xorm | ||||||
|  | @ -15,9 +10,7 @@ steps: | ||||||
|   pull: default |   pull: default | ||||||
|   image: golang:1.10 |   image: golang:1.10 | ||||||
|   commands: |   commands: | ||||||
|   - go get -t -d -v ./... |   - go get -t -d -v | ||||||
|   - go get -u xorm.io/core |  | ||||||
|   - go get -u xorm.io/builder |  | ||||||
|   - go build -v |   - go build -v | ||||||
|   when: |   when: | ||||||
|     event: |     event: | ||||||
|  | @ -27,8 +20,9 @@ steps: | ||||||
| - name: test-sqlite | - name: test-sqlite | ||||||
|   pull: default |   pull: default | ||||||
|   image: golang:1.10 |   image: golang:1.10 | ||||||
|  |   depends_on: | ||||||
|  |     - build | ||||||
|   commands: |   commands: | ||||||
|   - go get -u github.com/wadey/gocovmerge |  | ||||||
|   - "go test -v -race -db=\"sqlite3\" -conn_str=\"./test.db\" -coverprofile=coverage1-1.txt -covermode=atomic" |   - "go test -v -race -db=\"sqlite3\" -conn_str=\"./test.db\" -coverprofile=coverage1-1.txt -covermode=atomic" | ||||||
|   - "go test -v -race -db=\"sqlite3\" -conn_str=\"./test.db\" -cache=true -coverprofile=coverage1-2.txt -covermode=atomic" |   - "go test -v -race -db=\"sqlite3\" -conn_str=\"./test.db\" -cache=true -coverprofile=coverage1-2.txt -covermode=atomic" | ||||||
|   when: |   when: | ||||||
|  | @ -39,6 +33,8 @@ steps: | ||||||
| - name: test-mysql | - name: test-mysql | ||||||
|   pull: default |   pull: default | ||||||
|   image: golang:1.10 |   image: golang:1.10 | ||||||
|  |   depends_on: | ||||||
|  |     - build | ||||||
|   commands: |   commands: | ||||||
|   - "go test -v -race -db=\"mysql\" -conn_str=\"root:@tcp(mysql)/xorm_test\" -coverprofile=coverage2-1.txt -covermode=atomic" |   - "go test -v -race -db=\"mysql\" -conn_str=\"root:@tcp(mysql)/xorm_test\" -coverprofile=coverage2-1.txt -covermode=atomic" | ||||||
|   - "go test -v -race -db=\"mysql\" -conn_str=\"root:@tcp(mysql)/xorm_test\" -cache=true -coverprofile=coverage2-2.txt -covermode=atomic" |   - "go test -v -race -db=\"mysql\" -conn_str=\"root:@tcp(mysql)/xorm_test\" -cache=true -coverprofile=coverage2-2.txt -covermode=atomic" | ||||||
|  | @ -50,6 +46,8 @@ steps: | ||||||
| - name: test-mysql-utf8mb4 | - name: test-mysql-utf8mb4 | ||||||
|   pull: default |   pull: default | ||||||
|   image: golang:1.10 |   image: golang:1.10 | ||||||
|  |   depends_on: | ||||||
|  |     - test-mysql | ||||||
|   commands: |   commands: | ||||||
|   - "go test -v -race -db=\"mysql\" -conn_str=\"root:@tcp(mysql)/xorm_test?charset=utf8mb4\" -coverprofile=coverage2.1-1.txt -covermode=atomic" |   - "go test -v -race -db=\"mysql\" -conn_str=\"root:@tcp(mysql)/xorm_test?charset=utf8mb4\" -coverprofile=coverage2.1-1.txt -covermode=atomic" | ||||||
|   - "go test -v -race -db=\"mysql\" -conn_str=\"root:@tcp(mysql)/xorm_test?charset=utf8mb4\" -cache=true -coverprofile=coverage2.1-2.txt -covermode=atomic" |   - "go test -v -race -db=\"mysql\" -conn_str=\"root:@tcp(mysql)/xorm_test?charset=utf8mb4\" -cache=true -coverprofile=coverage2.1-2.txt -covermode=atomic" | ||||||
|  | @ -61,6 +59,8 @@ steps: | ||||||
| - name: test-mymysql | - name: test-mymysql | ||||||
|   pull: default |   pull: default | ||||||
|   image: golang:1.10 |   image: golang:1.10 | ||||||
|  |   depends_on: | ||||||
|  |     - test-mysql-utf8mb4 | ||||||
|   commands: |   commands: | ||||||
|   - "go test -v -race -db=\"mymysql\" -conn_str=\"tcp:mysql:3306*xorm_test/root/\" -coverprofile=coverage3-1.txt -covermode=atomic" |   - "go test -v -race -db=\"mymysql\" -conn_str=\"tcp:mysql:3306*xorm_test/root/\" -coverprofile=coverage3-1.txt -covermode=atomic" | ||||||
|   - "go test -v -race -db=\"mymysql\" -conn_str=\"tcp:mysql:3306*xorm_test/root/\" -cache=true -coverprofile=coverage3-2.txt -covermode=atomic" |   - "go test -v -race -db=\"mymysql\" -conn_str=\"tcp:mysql:3306*xorm_test/root/\" -cache=true -coverprofile=coverage3-2.txt -covermode=atomic" | ||||||
|  | @ -72,6 +72,8 @@ steps: | ||||||
| - name: test-postgres | - name: test-postgres | ||||||
|   pull: default |   pull: default | ||||||
|   image: golang:1.10 |   image: golang:1.10 | ||||||
|  |   depends_on: | ||||||
|  |     - build | ||||||
|   commands: |   commands: | ||||||
|   - "go test -v -race -db=\"postgres\" -conn_str=\"postgres://postgres:@pgsql/xorm_test?sslmode=disable\" -coverprofile=coverage4-1.txt -covermode=atomic" |   - "go test -v -race -db=\"postgres\" -conn_str=\"postgres://postgres:@pgsql/xorm_test?sslmode=disable\" -coverprofile=coverage4-1.txt -covermode=atomic" | ||||||
|   - "go test -v -race -db=\"postgres\" -conn_str=\"postgres://postgres:@pgsql/xorm_test?sslmode=disable\" -cache=true -coverprofile=coverage4-2.txt -covermode=atomic" |   - "go test -v -race -db=\"postgres\" -conn_str=\"postgres://postgres:@pgsql/xorm_test?sslmode=disable\" -cache=true -coverprofile=coverage4-2.txt -covermode=atomic" | ||||||
|  | @ -83,6 +85,8 @@ steps: | ||||||
| - name: test-postgres-schema | - name: test-postgres-schema | ||||||
|   pull: default |   pull: default | ||||||
|   image: golang:1.10 |   image: golang:1.10 | ||||||
|  |   depends_on: | ||||||
|  |     - build | ||||||
|   commands: |   commands: | ||||||
|   - "go test -v -race -db=\"postgres\" -conn_str=\"postgres://postgres:@pgsql/xorm_test?sslmode=disable\" -schema=xorm -coverprofile=coverage5-1.txt -covermode=atomic" |   - "go test -v -race -db=\"postgres\" -conn_str=\"postgres://postgres:@pgsql/xorm_test?sslmode=disable\" -schema=xorm -coverprofile=coverage5-1.txt -covermode=atomic" | ||||||
|   - "go test -v -race -db=\"postgres\" -conn_str=\"postgres://postgres:@pgsql/xorm_test?sslmode=disable\" -schema=xorm -cache=true -coverprofile=coverage5-2.txt -covermode=atomic" |   - "go test -v -race -db=\"postgres\" -conn_str=\"postgres://postgres:@pgsql/xorm_test?sslmode=disable\" -schema=xorm -cache=true -coverprofile=coverage5-2.txt -covermode=atomic" | ||||||
|  | @ -94,6 +98,8 @@ steps: | ||||||
| - name: test-mssql | - name: test-mssql | ||||||
|   pull: default |   pull: default | ||||||
|   image: golang:1.10 |   image: golang:1.10 | ||||||
|  |   depends_on: | ||||||
|  |     - build | ||||||
|   commands: |   commands: | ||||||
|   - "go test -v -race -db=\"mssql\" -conn_str=\"server=mssql;user id=sa;password=yourStrong(!)Password;database=xorm_test\" -coverprofile=coverage6-1.txt -covermode=atomic" |   - "go test -v -race -db=\"mssql\" -conn_str=\"server=mssql;user id=sa;password=yourStrong(!)Password;database=xorm_test\" -coverprofile=coverage6-1.txt -covermode=atomic" | ||||||
|   - "go test -v -race -db=\"mssql\" -conn_str=\"server=mssql;user id=sa;password=yourStrong(!)Password;database=xorm_test\" -cache=true -coverprofile=coverage6-2.txt -covermode=atomic" |   - "go test -v -race -db=\"mssql\" -conn_str=\"server=mssql;user id=sa;password=yourStrong(!)Password;database=xorm_test\" -cache=true -coverprofile=coverage6-2.txt -covermode=atomic" | ||||||
|  | @ -105,10 +111,30 @@ steps: | ||||||
| - name: test-tidb | - name: test-tidb | ||||||
|   pull: default |   pull: default | ||||||
|   image: golang:1.10 |   image: golang:1.10 | ||||||
|  |   depends_on: | ||||||
|  |     - build | ||||||
|   commands: |   commands: | ||||||
|   - "go test -v -race -db=\"mysql\" -conn_str=\"root:@tcp(tidb:4000)/xorm_test\" -ignore_select_update=true -coverprofile=coverage7-1.txt -covermode=atomic" |   - "go test -v -race -db=\"mysql\" -conn_str=\"root:@tcp(tidb:4000)/xorm_test\" -ignore_select_update=true -coverprofile=coverage7-1.txt -covermode=atomic" | ||||||
|   - "go test -v -race -db=\"mysql\" -conn_str=\"root:@tcp(tidb:4000)/xorm_test\" -ignore_select_update=true -cache=true -coverprofile=coverage7-2.txt -covermode=atomic" |   - "go test -v -race -db=\"mysql\" -conn_str=\"root:@tcp(tidb:4000)/xorm_test\" -ignore_select_update=true -cache=true -coverprofile=coverage7-2.txt -covermode=atomic" | ||||||
|   - gocovmerge coverage1-1.txt coverage1-2.txt coverage2-1.txt coverage2-2.txt coverage2.1-1.txt coverage2.1-2.txt coverage3-1.txt coverage3-2.txt coverage4-1.txt coverage4-2.txt coverage5-1.txt coverage5-2.txt coverage6-1.txt coverage6-2.txt coverage7-1.txt coverage7-2.txt > coverage.txt |   when: | ||||||
|  |     event: | ||||||
|  |     - push | ||||||
|  |     - pull_request | ||||||
|  | 
 | ||||||
|  | - name: test-end | ||||||
|  |   pull: default | ||||||
|  |   image: golang:1.10 | ||||||
|  |   depends_on: | ||||||
|  |   - test-sqlite | ||||||
|  |   - test-mysql | ||||||
|  |   - test-mysql-utf8mb4 | ||||||
|  |   - test-mymysql | ||||||
|  |   - test-postgres | ||||||
|  |   - test-postgres-schema | ||||||
|  |   - test-mssql | ||||||
|  |   - test-tidb | ||||||
|  |   commands: | ||||||
|  |   - echo "go1.10 build end" | ||||||
|   when: |   when: | ||||||
|     event: |     event: | ||||||
|     - push |     - push | ||||||
|  | @ -127,15 +153,6 @@ services: | ||||||
|     - tag |     - tag | ||||||
|     - pull_request |     - pull_request | ||||||
| 
 | 
 | ||||||
| - name: tidb |  | ||||||
|   pull: default |  | ||||||
|   image: pingcap/tidb:v3.0.3 |  | ||||||
|   when: |  | ||||||
|     event: |  | ||||||
|     - push |  | ||||||
|     - tag |  | ||||||
|     - pull_request |  | ||||||
| 
 |  | ||||||
| - name: pgsql | - name: pgsql | ||||||
|   pull: default |   pull: default | ||||||
|   image: postgres:9.5 |   image: postgres:9.5 | ||||||
|  | @ -161,175 +178,6 @@ services: | ||||||
|     - tag |     - tag | ||||||
|     - pull_request |     - pull_request | ||||||
| 
 | 
 | ||||||
| --- |  | ||||||
| kind: pipeline |  | ||||||
| name: matrix-2 |  | ||||||
| 
 |  | ||||||
| platform: |  | ||||||
|   os: linux |  | ||||||
|   arch: amd64 |  | ||||||
| 
 |  | ||||||
| workspace: |  | ||||||
|   base: /go |  | ||||||
|   path: src/gitea.com/xorm/xorm |  | ||||||
| 
 |  | ||||||
| steps: |  | ||||||
| - name: build |  | ||||||
|   pull: default |  | ||||||
|   image: golang:1.11 |  | ||||||
|   environment: |  | ||||||
|     GO111MODULE: "off" |  | ||||||
|   commands: |  | ||||||
|     - go get -t -d -v ./...	 |  | ||||||
|     - go get -u xorm.io/core	 |  | ||||||
|     - go get -u xorm.io/builder |  | ||||||
|     - go build -v |  | ||||||
|   when: |  | ||||||
|     event: |  | ||||||
|     - push |  | ||||||
|     - pull_request |  | ||||||
| 
 |  | ||||||
| - name: build-gomod |  | ||||||
|   pull: default |  | ||||||
|   image: golang:1.11 |  | ||||||
|   environment: |  | ||||||
|     GO111MODULE: "on" |  | ||||||
|     GOPROXY: "https://goproxy.cn" |  | ||||||
|   commands: |  | ||||||
|     - go build -v |  | ||||||
|   when: |  | ||||||
|     event: |  | ||||||
|     - push |  | ||||||
|     - pull_request |  | ||||||
| 
 |  | ||||||
| - name: test-sqlite |  | ||||||
|   pull: default |  | ||||||
|   image: golang:1.11 |  | ||||||
|   environment: |  | ||||||
|     GO111MODULE: "on" |  | ||||||
|     GOPROXY: "https://goproxy.cn" |  | ||||||
|   commands: |  | ||||||
|   - "go test -v -race -db=\"sqlite3\" -conn_str=\"./test.db\" -coverprofile=coverage1-1.txt -covermode=atomic" |  | ||||||
|   - "go test -v -race -db=\"sqlite3\" -conn_str=\"./test.db\" -cache=true -coverprofile=coverage1-2.txt -covermode=atomic" |  | ||||||
|   when: |  | ||||||
|     event: |  | ||||||
|     - push |  | ||||||
|     - pull_request |  | ||||||
| 
 |  | ||||||
| - name: test-mysql |  | ||||||
|   pull: default |  | ||||||
|   image: golang:1.11 |  | ||||||
|   environment: |  | ||||||
|     GO111MODULE: "on" |  | ||||||
|     GOPROXY: "https://goproxy.cn" |  | ||||||
|   commands: |  | ||||||
|   - "go test -v -race -db=\"mysql\" -conn_str=\"root:@tcp(mysql)/xorm_test\" -coverprofile=coverage2-1.txt -covermode=atomic" |  | ||||||
|   - "go test -v -race -db=\"mysql\" -conn_str=\"root:@tcp(mysql)/xorm_test\" -cache=true -coverprofile=coverage2-2.txt -covermode=atomic" |  | ||||||
|   when: |  | ||||||
|     event: |  | ||||||
|     - push |  | ||||||
|     - pull_request |  | ||||||
| 
 |  | ||||||
| - name: test-mysql-utf8mb4 |  | ||||||
|   pull: default |  | ||||||
|   image: golang:1.11 |  | ||||||
|   environment: |  | ||||||
|     GO111MODULE: "on" |  | ||||||
|     GOPROXY: "https://goproxy.cn" |  | ||||||
|   commands: |  | ||||||
|   - "go test -v -race -db=\"mysql\" -conn_str=\"root:@tcp(mysql)/xorm_test?charset=utf8mb4\" -coverprofile=coverage2.1-1.txt -covermode=atomic" |  | ||||||
|   - "go test -v -race -db=\"mysql\" -conn_str=\"root:@tcp(mysql)/xorm_test?charset=utf8mb4\" -cache=true -coverprofile=coverage2.1-2.txt -covermode=atomic" |  | ||||||
|   when: |  | ||||||
|     event: |  | ||||||
|     - push |  | ||||||
|     - pull_request |  | ||||||
| 
 |  | ||||||
| - name: test-mymysql |  | ||||||
|   pull: default |  | ||||||
|   image: golang:1.11 |  | ||||||
|   environment: |  | ||||||
|     GO111MODULE: "on" |  | ||||||
|     GOPROXY: "https://goproxy.cn" |  | ||||||
|   commands: |  | ||||||
|   - "go test -v -race -db=\"mymysql\" -conn_str=\"tcp:mysql:3306*xorm_test/root/\" -coverprofile=coverage3-1.txt -covermode=atomic" |  | ||||||
|   - "go test -v -race -db=\"mymysql\" -conn_str=\"tcp:mysql:3306*xorm_test/root/\" -cache=true -coverprofile=coverage3-2.txt -covermode=atomic" |  | ||||||
|   when: |  | ||||||
|     event: |  | ||||||
|     - push |  | ||||||
|     - pull_request |  | ||||||
| 
 |  | ||||||
| - name: test-postgres |  | ||||||
|   pull: default |  | ||||||
|   image: golang:1.11 |  | ||||||
|   environment: |  | ||||||
|     GO111MODULE: "on" |  | ||||||
|     GOPROXY: "https://goproxy.cn" |  | ||||||
|   commands: |  | ||||||
|   - "go test -v -race -db=\"postgres\" -conn_str=\"postgres://postgres:@pgsql/xorm_test?sslmode=disable\" -coverprofile=coverage4-1.txt -covermode=atomic" |  | ||||||
|   - "go test -v -race -db=\"postgres\" -conn_str=\"postgres://postgres:@pgsql/xorm_test?sslmode=disable\" -cache=true -coverprofile=coverage4-2.txt -covermode=atomic" |  | ||||||
|   when: |  | ||||||
|     event: |  | ||||||
|     - push |  | ||||||
|     - pull_request |  | ||||||
| 
 |  | ||||||
| - name: test-postgres-schema |  | ||||||
|   pull: default |  | ||||||
|   image: golang:1.11 |  | ||||||
|   environment: |  | ||||||
|     GO111MODULE: "on" |  | ||||||
|     GOPROXY: "https://goproxy.cn" |  | ||||||
|   commands: |  | ||||||
|   - "go test -v -race -db=\"postgres\" -conn_str=\"postgres://postgres:@pgsql/xorm_test?sslmode=disable\" -schema=xorm -coverprofile=coverage5-1.txt -covermode=atomic" |  | ||||||
|   - "go test -v -race -db=\"postgres\" -conn_str=\"postgres://postgres:@pgsql/xorm_test?sslmode=disable\" -schema=xorm -cache=true -coverprofile=coverage5-2.txt -covermode=atomic" |  | ||||||
|   when: |  | ||||||
|     event: |  | ||||||
|     - push |  | ||||||
|     - pull_request |  | ||||||
| 
 |  | ||||||
| - name: test-mssql |  | ||||||
|   pull: default |  | ||||||
|   image: golang:1.11 |  | ||||||
|   environment: |  | ||||||
|     GO111MODULE: "on" |  | ||||||
|     GOPROXY: "https://goproxy.cn" |  | ||||||
|   commands: |  | ||||||
|   - "go test -v -race -db=\"mssql\" -conn_str=\"server=mssql;user id=sa;password=yourStrong(!)Password;database=xorm_test\" -coverprofile=coverage6-1.txt -covermode=atomic" |  | ||||||
|   - "go test -v -race -db=\"mssql\" -conn_str=\"server=mssql;user id=sa;password=yourStrong(!)Password;database=xorm_test\" -cache=true -coverprofile=coverage6-2.txt -covermode=atomic" |  | ||||||
| 
 |  | ||||||
|   when: |  | ||||||
|     event: |  | ||||||
|     - push |  | ||||||
|     - pull_request |  | ||||||
| 
 |  | ||||||
| - name: test-tidb |  | ||||||
|   pull: default |  | ||||||
|   image: golang:1.11 |  | ||||||
|   environment: |  | ||||||
|     GO111MODULE: "on" |  | ||||||
|     GOPROXY: "https://goproxy.cn" |  | ||||||
|   commands: |  | ||||||
|   - "go test -v -race -db=\"mysql\" -conn_str=\"root:@tcp(tidb:4000)/xorm_test\" -ignore_select_update=true -coverprofile=coverage7-1.txt -covermode=atomic" |  | ||||||
|   - "go test -v -race -db=\"mysql\" -conn_str=\"root:@tcp(tidb:4000)/xorm_test\" -ignore_select_update=true -cache=true -coverprofile=coverage7-2.txt -covermode=atomic" |  | ||||||
|   - go get github.com/wadey/gocovmerge |  | ||||||
|   - gocovmerge coverage1-1.txt coverage1-2.txt coverage2-1.txt coverage2-2.txt coverage2.1-1.txt coverage2.1-2.txt coverage3-1.txt coverage3-2.txt coverage4-1.txt coverage4-2.txt coverage5-1.txt coverage5-2.txt coverage6-1.txt coverage6-2.txt coverage7-1.txt coverage7-2.txt > coverage.txt |  | ||||||
|   when: |  | ||||||
|     event: |  | ||||||
|     - push |  | ||||||
|     - pull_request |  | ||||||
| 
 |  | ||||||
| services: |  | ||||||
| - name: mysql |  | ||||||
|   pull: default |  | ||||||
|   image: mysql:5.7 |  | ||||||
|   environment: |  | ||||||
|     MYSQL_ALLOW_EMPTY_PASSWORD: yes |  | ||||||
|     MYSQL_DATABASE: xorm_test |  | ||||||
|   when: |  | ||||||
|     event: |  | ||||||
|     - push |  | ||||||
|     - tag |  | ||||||
|     - pull_request |  | ||||||
| 
 |  | ||||||
| - name: tidb | - name: tidb | ||||||
|   pull: default |   pull: default | ||||||
|   image: pingcap/tidb:v3.0.3 |   image: pingcap/tidb:v3.0.3 | ||||||
|  | @ -339,264 +187,11 @@ services: | ||||||
|     - tag |     - tag | ||||||
|     - pull_request |     - pull_request | ||||||
| 
 | 
 | ||||||
| - name: pgsql |  | ||||||
|   pull: default |  | ||||||
|   image: postgres:9.5 |  | ||||||
|   environment: |  | ||||||
|     POSTGRES_DB: xorm_test |  | ||||||
|     POSTGRES_USER: postgres |  | ||||||
|   when: |  | ||||||
|     event: |  | ||||||
|     - push |  | ||||||
|     - tag |  | ||||||
|     - pull_request |  | ||||||
| 
 |  | ||||||
| - name: mssql |  | ||||||
|   pull: default |  | ||||||
|   image: microsoft/mssql-server-linux:latest |  | ||||||
|   environment: |  | ||||||
|     ACCEPT_EULA: Y |  | ||||||
|     SA_PASSWORD: yourStrong(!)Password |  | ||||||
|     MSSQL_PID: Developer |  | ||||||
|   when: |  | ||||||
|     event: |  | ||||||
|     - push |  | ||||||
|     - tag |  | ||||||
|     - pull_request |  | ||||||
| 
 |  | ||||||
| --- | --- | ||||||
| kind: pipeline | kind: pipeline | ||||||
| name: matrix-3 | name: go1.13-test | ||||||
| 
 |  | ||||||
| platform: |  | ||||||
|   os: linux |  | ||||||
|   arch: amd64 |  | ||||||
| 
 |  | ||||||
| workspace: |  | ||||||
|   base: /go |  | ||||||
|   path: src/gitea.com/xorm/xorm |  | ||||||
| 
 |  | ||||||
| steps: | steps: | ||||||
| 
 |  | ||||||
| - name: build | - name: build | ||||||
|   pull: default |  | ||||||
|   image: golang:1.12 |  | ||||||
|   environment: |  | ||||||
|     GO111MODULE: "off" |  | ||||||
|   commands: |  | ||||||
|     - go get -t -d -v ./...	 |  | ||||||
|     - go get -u xorm.io/core	 |  | ||||||
|     - go get -u xorm.io/builder |  | ||||||
|     - go build -v |  | ||||||
|   when: |  | ||||||
|     event: |  | ||||||
|     - push |  | ||||||
|     - pull_request |  | ||||||
| 
 |  | ||||||
| - name: build-gomod |  | ||||||
|   pull: default |  | ||||||
|   image: golang:1.12 |  | ||||||
|   environment: |  | ||||||
|     GO111MODULE: "on" |  | ||||||
|     GOPROXY: "https://goproxy.cn" |  | ||||||
|   commands: |  | ||||||
|     - go build -v |  | ||||||
|   when: |  | ||||||
|     event: |  | ||||||
|     - push |  | ||||||
|     - pull_request |  | ||||||
| 
 |  | ||||||
| - name: test-sqlite |  | ||||||
|   pull: default |  | ||||||
|   image: golang:1.12 |  | ||||||
|   environment: |  | ||||||
|     GO111MODULE: "on" |  | ||||||
|     GOPROXY: "https://goproxy.cn" |  | ||||||
|   commands: |  | ||||||
|   - "go test -v -race -db=\"sqlite3\" -conn_str=\"./test.db\" -coverprofile=coverage1-1.txt -covermode=atomic" |  | ||||||
|   - "go test -v -race -db=\"sqlite3\" -conn_str=\"./test.db\" -cache=true -coverprofile=coverage1-2.txt -covermode=atomic" |  | ||||||
|   when: |  | ||||||
|     event: |  | ||||||
|     - push |  | ||||||
|     - pull_request |  | ||||||
| 
 |  | ||||||
| - name: test-mysql |  | ||||||
|   pull: default |  | ||||||
|   image: golang:1.12 |  | ||||||
|   environment: |  | ||||||
|     GO111MODULE: "on" |  | ||||||
|     GOPROXY: "https://goproxy.cn" |  | ||||||
|   commands: |  | ||||||
|   - "go test -v -race -db=\"mysql\" -conn_str=\"root:@tcp(mysql)/xorm_test\" -coverprofile=coverage2-1.txt -covermode=atomic" |  | ||||||
|   - "go test -v -race -db=\"mysql\" -conn_str=\"root:@tcp(mysql)/xorm_test\" -cache=true -coverprofile=coverage2-2.txt -covermode=atomic" |  | ||||||
|   when: |  | ||||||
|     event: |  | ||||||
|     - push |  | ||||||
|     - pull_request |  | ||||||
| 
 |  | ||||||
| - name: test-mysql-utf8mb4 |  | ||||||
|   pull: default |  | ||||||
|   image: golang:1.12 |  | ||||||
|   environment: |  | ||||||
|     GO111MODULE: "on" |  | ||||||
|     GOPROXY: "https://goproxy.cn" |  | ||||||
|   commands: |  | ||||||
|   - "go test -v -race -db=\"mysql\" -conn_str=\"root:@tcp(mysql)/xorm_test?charset=utf8mb4\" -coverprofile=coverage2.1-1.txt -covermode=atomic" |  | ||||||
|   - "go test -v -race -db=\"mysql\" -conn_str=\"root:@tcp(mysql)/xorm_test?charset=utf8mb4\" -cache=true -coverprofile=coverage2.1-2.txt -covermode=atomic" |  | ||||||
|   when: |  | ||||||
|     event: |  | ||||||
|     - push |  | ||||||
|     - pull_request |  | ||||||
| 
 |  | ||||||
| - name: test-mymysql |  | ||||||
|   pull: default |  | ||||||
|   image: golang:1.12 |  | ||||||
|   environment: |  | ||||||
|     GO111MODULE: "on" |  | ||||||
|     GOPROXY: "https://goproxy.cn" |  | ||||||
|   commands: |  | ||||||
|   - "go test -v -race -db=\"mymysql\" -conn_str=\"tcp:mysql:3306*xorm_test/root/\" -coverprofile=coverage3-1.txt -covermode=atomic" |  | ||||||
|   - "go test -v -race -db=\"mymysql\" -conn_str=\"tcp:mysql:3306*xorm_test/root/\" -cache=true -coverprofile=coverage3-2.txt -covermode=atomic" |  | ||||||
|   when: |  | ||||||
|     event: |  | ||||||
|     - push |  | ||||||
|     - pull_request |  | ||||||
| 
 |  | ||||||
| - name: test-postgres |  | ||||||
|   pull: default |  | ||||||
|   image: golang:1.12 |  | ||||||
|   environment: |  | ||||||
|     GO111MODULE: "on" |  | ||||||
|     GOPROXY: "https://goproxy.cn" |  | ||||||
|   commands: |  | ||||||
|   - "go test -v -race -db=\"postgres\" -conn_str=\"postgres://postgres:@pgsql/xorm_test?sslmode=disable\" -coverprofile=coverage4-1.txt -covermode=atomic" |  | ||||||
|   - "go test -v -race -db=\"postgres\" -conn_str=\"postgres://postgres:@pgsql/xorm_test?sslmode=disable\" -cache=true -coverprofile=coverage4-2.txt -covermode=atomic" |  | ||||||
|   when: |  | ||||||
|     event: |  | ||||||
|     - push |  | ||||||
|     - pull_request |  | ||||||
| 
 |  | ||||||
| - name: test-postgres-schema |  | ||||||
|   pull: default |  | ||||||
|   image: golang:1.12 |  | ||||||
|   environment: |  | ||||||
|     GO111MODULE: "on" |  | ||||||
|     GOPROXY: "https://goproxy.cn" |  | ||||||
|   commands: |  | ||||||
|   - "go test -v -race -db=\"postgres\" -conn_str=\"postgres://postgres:@pgsql/xorm_test?sslmode=disable\" -schema=xorm -coverprofile=coverage5-1.txt -covermode=atomic" |  | ||||||
|   - "go test -v -race -db=\"postgres\" -conn_str=\"postgres://postgres:@pgsql/xorm_test?sslmode=disable\" -schema=xorm -cache=true -coverprofile=coverage5-2.txt -covermode=atomic" |  | ||||||
|   when: |  | ||||||
|     event: |  | ||||||
|     - push |  | ||||||
|     - pull_request |  | ||||||
| 
 |  | ||||||
| - name: test-mssql |  | ||||||
|   pull: default |  | ||||||
|   image: golang:1.12 |  | ||||||
|   environment: |  | ||||||
|     GO111MODULE: "on" |  | ||||||
|     GOPROXY: "https://goproxy.cn" |  | ||||||
|   commands: |  | ||||||
|   - "go test -v -race -db=\"mssql\" -conn_str=\"server=mssql;user id=sa;password=yourStrong(!)Password;database=xorm_test\" -coverprofile=coverage6-1.txt -covermode=atomic" |  | ||||||
|   - "go test -v -race -db=\"mssql\" -conn_str=\"server=mssql;user id=sa;password=yourStrong(!)Password;database=xorm_test\" -cache=true -coverprofile=coverage6-2.txt -covermode=atomic" |  | ||||||
|   when: |  | ||||||
|     event: |  | ||||||
|     - push |  | ||||||
|     - pull_request |  | ||||||
| 
 |  | ||||||
| - name: test-tidb |  | ||||||
|   pull: default |  | ||||||
|   image: golang:1.12 |  | ||||||
|   environment: |  | ||||||
|     GO111MODULE: "on" |  | ||||||
|     GOPROXY: "https://goproxy.cn" |  | ||||||
|   commands: |  | ||||||
|   - "go test -v -race -db=\"mysql\" -conn_str=\"root:@tcp(tidb:4000)/xorm_test\" -ignore_select_update=true -coverprofile=coverage7-1.txt -covermode=atomic" |  | ||||||
|   - "go test -v -race -db=\"mysql\" -conn_str=\"root:@tcp(tidb:4000)/xorm_test\" -ignore_select_update=true -cache=true -coverprofile=coverage7-2.txt -covermode=atomic" |  | ||||||
|   - go get github.com/wadey/gocovmerge |  | ||||||
|   - gocovmerge coverage1-1.txt coverage1-2.txt coverage2-1.txt coverage2-2.txt coverage2.1-1.txt coverage2.1-2.txt coverage3-1.txt coverage3-2.txt coverage4-1.txt coverage4-2.txt coverage5-1.txt coverage5-2.txt coverage6-1.txt coverage6-2.txt coverage7-1.txt coverage7-2.txt > coverage.txt |  | ||||||
|   when: |  | ||||||
|     event: |  | ||||||
|     - push |  | ||||||
|     - pull_request |  | ||||||
| 
 |  | ||||||
| services: |  | ||||||
| - name: mysql |  | ||||||
|   pull: default |  | ||||||
|   image: mysql:5.7 |  | ||||||
|   environment: |  | ||||||
|     MYSQL_ALLOW_EMPTY_PASSWORD: yes |  | ||||||
|     MYSQL_DATABASE: xorm_test |  | ||||||
|   when: |  | ||||||
|     event: |  | ||||||
|     - push |  | ||||||
|     - tag |  | ||||||
|     - pull_request |  | ||||||
| 
 |  | ||||||
| - name: tidb |  | ||||||
|   pull: default |  | ||||||
|   image: pingcap/tidb:v3.0.3 |  | ||||||
|   when: |  | ||||||
|     event: |  | ||||||
|     - push |  | ||||||
|     - tag |  | ||||||
|     - pull_request |  | ||||||
| 
 |  | ||||||
| - name: pgsql |  | ||||||
|   pull: default |  | ||||||
|   image: postgres:9.5 |  | ||||||
|   environment: |  | ||||||
|     POSTGRES_DB: xorm_test |  | ||||||
|     POSTGRES_USER: postgres |  | ||||||
|   when: |  | ||||||
|     event: |  | ||||||
|     - push |  | ||||||
|     - tag |  | ||||||
|     - pull_request |  | ||||||
| 
 |  | ||||||
| - name: mssql |  | ||||||
|   pull: default |  | ||||||
|   image: microsoft/mssql-server-linux:latest |  | ||||||
|   environment: |  | ||||||
|     ACCEPT_EULA: Y |  | ||||||
|     SA_PASSWORD: yourStrong(!)Password |  | ||||||
|     MSSQL_PID: Developer |  | ||||||
|   when: |  | ||||||
|     event: |  | ||||||
|     - push |  | ||||||
|     - tag |  | ||||||
|     - pull_request |  | ||||||
| 
 |  | ||||||
| --- |  | ||||||
| kind: pipeline |  | ||||||
| name: go1.13 |  | ||||||
| 
 |  | ||||||
| platform: |  | ||||||
|   os: linux |  | ||||||
|   arch: amd64 |  | ||||||
| 
 |  | ||||||
| workspace: |  | ||||||
|   base: /go |  | ||||||
|   path: src/gitea.com/xorm/xorm |  | ||||||
| 
 |  | ||||||
| steps: |  | ||||||
| 
 |  | ||||||
| - name: build |  | ||||||
|   pull: default |  | ||||||
|   image: golang:1.13 |  | ||||||
|   environment: |  | ||||||
|     GO111MODULE: "off" |  | ||||||
|   commands: |  | ||||||
|     - go get -t -d -v ./...	 |  | ||||||
|     - go get -u xorm.io/core	 |  | ||||||
|     - go get -u xorm.io/builder |  | ||||||
|     - go build -v |  | ||||||
|   when: |  | ||||||
|     event: |  | ||||||
|     - push |  | ||||||
|     - pull_request |  | ||||||
| 
 |  | ||||||
| - name: build-gomod |  | ||||||
|   pull: default |   pull: default | ||||||
|   image: golang:1.13 |   image: golang:1.13 | ||||||
|   environment: |   environment: | ||||||
|  | @ -604,6 +199,7 @@ steps: | ||||||
|     GOPROXY: "https://goproxy.cn" |     GOPROXY: "https://goproxy.cn" | ||||||
|   commands: |   commands: | ||||||
|     - go build -v |     - go build -v | ||||||
|  |     - go vet | ||||||
|   when: |   when: | ||||||
|     event: |     event: | ||||||
|     - push |     - push | ||||||
|  | @ -640,6 +236,8 @@ steps: | ||||||
| - name: test-mysql-utf8mb4 | - name: test-mysql-utf8mb4 | ||||||
|   pull: default |   pull: default | ||||||
|   image: golang:1.13 |   image: golang:1.13 | ||||||
|  |   depends_on: | ||||||
|  |     - test-mysql | ||||||
|   environment: |   environment: | ||||||
|     GO111MODULE: "on" |     GO111MODULE: "on" | ||||||
|     GOPROXY: "https://goproxy.cn" |     GOPROXY: "https://goproxy.cn" | ||||||
|  | @ -654,6 +252,8 @@ steps: | ||||||
| - name: test-mymysql | - name: test-mymysql | ||||||
|   pull: default |   pull: default | ||||||
|   image: golang:1.13 |   image: golang:1.13 | ||||||
|  |   depends_on: | ||||||
|  |     - test-mysql-utf8mb4 | ||||||
|   environment: |   environment: | ||||||
|     GO111MODULE: "on" |     GO111MODULE: "on" | ||||||
|     GOPROXY: "https://goproxy.cn" |     GOPROXY: "https://goproxy.cn" | ||||||
|  | @ -716,6 +316,28 @@ steps: | ||||||
|   commands: |   commands: | ||||||
|   - "go test -v -race -db=\"mysql\" -conn_str=\"root:@tcp(tidb:4000)/xorm_test\" -ignore_select_update=true -coverprofile=coverage7-1.txt -covermode=atomic" |   - "go test -v -race -db=\"mysql\" -conn_str=\"root:@tcp(tidb:4000)/xorm_test\" -ignore_select_update=true -coverprofile=coverage7-1.txt -covermode=atomic" | ||||||
|   - "go test -v -race -db=\"mysql\" -conn_str=\"root:@tcp(tidb:4000)/xorm_test\" -ignore_select_update=true -cache=true -coverprofile=coverage7-2.txt -covermode=atomic" |   - "go test -v -race -db=\"mysql\" -conn_str=\"root:@tcp(tidb:4000)/xorm_test\" -ignore_select_update=true -cache=true -coverprofile=coverage7-2.txt -covermode=atomic" | ||||||
|  |   when: | ||||||
|  |     event: | ||||||
|  |     - push | ||||||
|  |     - pull_request | ||||||
|  | 
 | ||||||
|  | - name: merge_coverage | ||||||
|  |   pull: default | ||||||
|  |   image: golang:1.13 | ||||||
|  |   environment: | ||||||
|  |     GO111MODULE: "on" | ||||||
|  |     GOPROXY: "https://goproxy.cn" | ||||||
|  |   depends_on: | ||||||
|  |   - build | ||||||
|  |   - test-sqlite | ||||||
|  |   - test-mysql | ||||||
|  |   - test-mysql-utf8mb4 | ||||||
|  |   - test-mymysql | ||||||
|  |   - test-postgres | ||||||
|  |   - test-postgres-schema | ||||||
|  |   - test-mssql | ||||||
|  |   - test-tidb | ||||||
|  |   commands: | ||||||
|   - go get github.com/wadey/gocovmerge |   - go get github.com/wadey/gocovmerge | ||||||
|   - gocovmerge coverage1-1.txt coverage1-2.txt coverage2-1.txt coverage2-2.txt coverage2.1-1.txt coverage2.1-2.txt coverage3-1.txt coverage3-2.txt coverage4-1.txt coverage4-2.txt coverage5-1.txt coverage5-2.txt coverage6-1.txt coverage6-2.txt coverage7-1.txt coverage7-2.txt > coverage.txt |   - gocovmerge coverage1-1.txt coverage1-2.txt coverage2-1.txt coverage2-2.txt coverage2.1-1.txt coverage2.1-2.txt coverage3-1.txt coverage3-2.txt coverage4-1.txt coverage4-2.txt coverage5-1.txt coverage5-2.txt coverage6-1.txt coverage6-2.txt coverage7-1.txt coverage7-2.txt > coverage.txt | ||||||
|   when: |   when: | ||||||
|  | @ -724,6 +346,7 @@ steps: | ||||||
|     - pull_request |     - pull_request | ||||||
| 
 | 
 | ||||||
| services: | services: | ||||||
|  | 
 | ||||||
| - name: mysql | - name: mysql | ||||||
|   pull: default |   pull: default | ||||||
|   image: mysql:5.7 |   image: mysql:5.7 | ||||||
|  | @ -736,15 +359,6 @@ services: | ||||||
|     - tag |     - tag | ||||||
|     - pull_request |     - pull_request | ||||||
| 
 | 
 | ||||||
| - name: tidb |  | ||||||
|   pull: default |  | ||||||
|   image: pingcap/tidb:v3.0.3 |  | ||||||
|   when: |  | ||||||
|     event: |  | ||||||
|     - push |  | ||||||
|     - tag |  | ||||||
|     - pull_request |  | ||||||
| 
 |  | ||||||
| - name: pgsql | - name: pgsql | ||||||
|   pull: default |   pull: default | ||||||
|   image: postgres:9.5 |   image: postgres:9.5 | ||||||
|  | @ -764,6 +378,15 @@ services: | ||||||
|     ACCEPT_EULA: Y |     ACCEPT_EULA: Y | ||||||
|     SA_PASSWORD: yourStrong(!)Password |     SA_PASSWORD: yourStrong(!)Password | ||||||
|     MSSQL_PID: Developer |     MSSQL_PID: Developer | ||||||
|  |   when: | ||||||
|  |     event: | ||||||
|  |     - push | ||||||
|  |     - tag | ||||||
|  |     - pull_request | ||||||
|  | 
 | ||||||
|  | - name: tidb | ||||||
|  |   pull: default | ||||||
|  |   image: pingcap/tidb:v3.0.3 | ||||||
|   when: |   when: | ||||||
|     event: |     event: | ||||||
|     - push |     - push | ||||||
|  |  | ||||||
							
								
								
									
										45
									
								
								vendor/xorm.io/xorm/engine.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										45
									
								
								vendor/xorm.io/xorm/engine.go
									
									
									
										generated
									
									
										vendored
									
									
								
							|  | @ -207,25 +207,46 @@ func (engine *Engine) QuoteTo(buf *strings.Builder, value string) { | ||||||
| 		return | 		return | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	quotePair := engine.dialect.Quote("") | 	quoteTo(buf, engine.dialect.Quote(""), value) | ||||||
|  | } | ||||||
| 
 | 
 | ||||||
| 	if value[0] == '`' || len(quotePair) < 2 || value[0] == quotePair[0] { // no quote
 | func quoteTo(buf *strings.Builder, quotePair string, value string) { | ||||||
|  | 	if len(quotePair) < 2 { // no quote
 | ||||||
| 		_, _ = buf.WriteString(value) | 		_, _ = buf.WriteString(value) | ||||||
| 		return | 		return | ||||||
| 	} else { | 	} | ||||||
| 		prefix, suffix := quotePair[0], quotePair[1] | 	 | ||||||
|  | 	prefix, suffix := quotePair[0], quotePair[1] | ||||||
| 
 | 
 | ||||||
| 		_ = buf.WriteByte(prefix) | 	i := 0 | ||||||
| 		for i := 0; i < len(value); i++ { | 	for i < len(value) { | ||||||
| 			if value[i] == '.' { | 		// start of a token; might be already quoted
 | ||||||
| 				_ = buf.WriteByte(suffix) | 		if value[i] == '.' { | ||||||
| 				_ = buf.WriteByte('.') | 			_ = buf.WriteByte('.') | ||||||
| 				_ = buf.WriteByte(prefix) | 			i++ | ||||||
|  | 		} else if value[i] == prefix || value[i] == '`' { | ||||||
|  | 			// Has quotes; skip/normalize `name` to prefix+name+sufix
 | ||||||
|  | 			var ch byte | ||||||
|  | 			if value[i] == prefix { | ||||||
|  | 				ch = suffix | ||||||
| 			} else { | 			} else { | ||||||
|  | 				ch = '`' | ||||||
|  | 			} | ||||||
|  | 			i++ | ||||||
|  | 			_ = buf.WriteByte(prefix) | ||||||
|  | 			for ; i < len(value) && value[i] != ch; i++ { | ||||||
| 				_ = buf.WriteByte(value[i]) | 				_ = buf.WriteByte(value[i]) | ||||||
| 			} | 			} | ||||||
|  | 			_ = buf.WriteByte(suffix) | ||||||
|  | 			i++ | ||||||
|  | 		} else { | ||||||
|  | 			// Requires quotes
 | ||||||
|  | 			_ = buf.WriteByte(prefix) | ||||||
|  | 			for ; i < len(value) && value[i] != '.'; i++ { | ||||||
|  | 				_ = buf.WriteByte(value[i]) | ||||||
|  | 			} | ||||||
|  | 			_ = buf.WriteByte(suffix) | ||||||
| 		} | 		} | ||||||
| 		_ = buf.WriteByte(suffix) |  | ||||||
| 	} | 	} | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  | @ -330,7 +351,7 @@ func (engine *Engine) Ping() error { | ||||||
| 	return session.Ping() | 	return session.Ping() | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| // logging sql
 | // logSQL save sql
 | ||||||
| func (engine *Engine) logSQL(sqlStr string, sqlArgs ...interface{}) { | func (engine *Engine) logSQL(sqlStr string, sqlArgs ...interface{}) { | ||||||
| 	if engine.showSQL && !engine.showExecTime { | 	if engine.showSQL && !engine.showExecTime { | ||||||
| 		if len(sqlArgs) > 0 { | 		if len(sqlArgs) > 0 { | ||||||
|  |  | ||||||
							
								
								
									
										24
									
								
								vendor/xorm.io/xorm/session.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										24
									
								
								vendor/xorm.io/xorm/session.go
									
									
									
										generated
									
									
										vendored
									
									
								
							|  | @ -57,6 +57,7 @@ type Session struct { | ||||||
| 	//beforeSQLExec func(string, ...interface{})
 | 	//beforeSQLExec func(string, ...interface{})
 | ||||||
| 	lastSQL     string | 	lastSQL     string | ||||||
| 	lastSQLArgs []interface{} | 	lastSQLArgs []interface{} | ||||||
|  | 	showSQL     bool | ||||||
| 
 | 
 | ||||||
| 	ctx         context.Context | 	ctx         context.Context | ||||||
| 	sessionType sessionType | 	sessionType sessionType | ||||||
|  | @ -72,6 +73,7 @@ func (session *Session) Clone() *Session { | ||||||
| func (session *Session) Init() { | func (session *Session) Init() { | ||||||
| 	session.statement.Init() | 	session.statement.Init() | ||||||
| 	session.statement.Engine = session.engine | 	session.statement.Engine = session.engine | ||||||
|  | 	session.showSQL = session.engine.showSQL | ||||||
| 	session.isAutoCommit = true | 	session.isAutoCommit = true | ||||||
| 	session.isCommitedOrRollbacked = false | 	session.isCommitedOrRollbacked = false | ||||||
| 	session.isAutoClose = false | 	session.isAutoClose = false | ||||||
|  | @ -226,6 +228,16 @@ func (session *Session) Cascade(trueOrFalse ...bool) *Session { | ||||||
| 	return session | 	return session | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  | // MustLogSQL means record SQL or not and don't follow engine's setting
 | ||||||
|  | func (session *Session) MustLogSQL(log ...bool) *Session { | ||||||
|  | 	if len(log) > 0 { | ||||||
|  | 		session.showSQL = log[0] | ||||||
|  | 	} else { | ||||||
|  | 		session.showSQL = true | ||||||
|  | 	} | ||||||
|  | 	return session | ||||||
|  | } | ||||||
|  | 
 | ||||||
| // NoCache ask this session do not retrieve data from cache system and
 | // NoCache ask this session do not retrieve data from cache system and
 | ||||||
| // get data from database directly.
 | // get data from database directly.
 | ||||||
| func (session *Session) NoCache() *Session { | func (session *Session) NoCache() *Session { | ||||||
|  | @ -842,7 +854,17 @@ func (session *Session) slice2Bean(scanResults []interface{}, fields []string, b | ||||||
| func (session *Session) saveLastSQL(sql string, args ...interface{}) { | func (session *Session) saveLastSQL(sql string, args ...interface{}) { | ||||||
| 	session.lastSQL = sql | 	session.lastSQL = sql | ||||||
| 	session.lastSQLArgs = args | 	session.lastSQLArgs = args | ||||||
| 	session.engine.logSQL(sql, args...) | 	session.logSQL(sql, args...) | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | func (session *Session) logSQL(sqlStr string, sqlArgs ...interface{}) { | ||||||
|  | 	if session.showSQL && !session.engine.showExecTime { | ||||||
|  | 		if len(sqlArgs) > 0 { | ||||||
|  | 			session.engine.logger.Infof("[SQL] %v %#v", sqlStr, sqlArgs) | ||||||
|  | 		} else { | ||||||
|  | 			session.engine.logger.Infof("[SQL] %v", sqlStr) | ||||||
|  | 		} | ||||||
|  | 	} | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| // LastSQL returns last query information
 | // LastSQL returns last query information
 | ||||||
|  |  | ||||||
							
								
								
									
										4
									
								
								vendor/xorm.io/xorm/session_raw.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										4
									
								
								vendor/xorm.io/xorm/session_raw.go
									
									
									
										generated
									
									
										vendored
									
									
								
							|  | @ -27,7 +27,9 @@ func (session *Session) queryRows(sqlStr string, args ...interface{}) (*core.Row | ||||||
| 
 | 
 | ||||||
| 	session.queryPreprocess(&sqlStr, args...) | 	session.queryPreprocess(&sqlStr, args...) | ||||||
| 
 | 
 | ||||||
| 	if session.engine.showSQL { | 	if session.showSQL { | ||||||
|  | 		session.lastSQL = sqlStr | ||||||
|  | 		session.lastSQLArgs = args | ||||||
| 		if session.engine.showExecTime { | 		if session.engine.showExecTime { | ||||||
| 			b4ExecTime := time.Now() | 			b4ExecTime := time.Now() | ||||||
| 			defer func() { | 			defer func() { | ||||||
|  |  | ||||||
							
								
								
									
										17
									
								
								vendor/xorm.io/xorm/session_update.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										17
									
								
								vendor/xorm.io/xorm/session_update.go
									
									
									
										generated
									
									
										vendored
									
									
								
							|  | @ -377,10 +377,23 @@ func (session *Session) Update(bean interface{}, condiBean ...interface{}) (int6 | ||||||
| 		return 0, errors.New("No content found to be updated") | 		return 0, errors.New("No content found to be updated") | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	sqlStr = fmt.Sprintf("UPDATE %v%v SET %v %v", | 	var tableAlias = session.engine.Quote(tableName) | ||||||
|  | 	var fromSQL string | ||||||
|  | 	if session.statement.TableAlias != "" { | ||||||
|  | 		switch session.engine.dialect.DBType() { | ||||||
|  | 		case core.MSSQL: | ||||||
|  | 			fromSQL = fmt.Sprintf("FROM %s %s ", tableAlias, session.statement.TableAlias) | ||||||
|  | 			tableAlias = session.statement.TableAlias | ||||||
|  | 		default: | ||||||
|  | 			tableAlias = fmt.Sprintf("%s AS %s", tableAlias, session.statement.TableAlias) | ||||||
|  | 		} | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
|  | 	sqlStr = fmt.Sprintf("UPDATE %v%v SET %v %v%v", | ||||||
| 		top, | 		top, | ||||||
| 		session.engine.Quote(tableName), | 		tableAlias, | ||||||
| 		strings.Join(colNames, ", "), | 		strings.Join(colNames, ", "), | ||||||
|  | 		fromSQL, | ||||||
| 		condSQL) | 		condSQL) | ||||||
| 
 | 
 | ||||||
| 	res, err := session.exec(sqlStr, append(args, condArgs...)...) | 	res, err := session.exec(sqlStr, append(args, condArgs...)...) | ||||||
|  |  | ||||||
		Loading…
	
		Reference in a new issue