summaryrefslogtreecommitdiffstats
path: root/vendor/code.gitea.io
diff options
context:
space:
mode:
authortechknowlogick <techknowlogick@gitea.io>2022-01-14 18:16:05 -0500
committerGitHub <noreply@github.com>2022-01-14 18:16:05 -0500
commit84145e45c50130922fae9055535ab5ea0378e1d4 (patch)
treefce077a5ae462840bb876ace79aca42abab29ed7 /vendor/code.gitea.io
parent2b16ca7c773de278ba01f122dc6f9f43d7534c52 (diff)
downloadgitea-84145e45c50130922fae9055535ab5ea0378e1d4.tar.gz
gitea-84145e45c50130922fae9055535ab5ea0378e1d4.zip
Remove golang vendored directory (#18277)
* rm go vendor * fix drone yaml * add to gitignore
Diffstat (limited to 'vendor/code.gitea.io')
-rw-r--r--vendor/code.gitea.io/gitea-vet/.changelog.yml30
-rw-r--r--vendor/code.gitea.io/gitea-vet/.drone.yml45
-rw-r--r--vendor/code.gitea.io/gitea-vet/.gitignore5
-rw-r--r--vendor/code.gitea.io/gitea-vet/.golangci.yml23
-rw-r--r--vendor/code.gitea.io/gitea-vet/CHANGELOG.md11
-rw-r--r--vendor/code.gitea.io/gitea-vet/LICENSE19
-rw-r--r--vendor/code.gitea.io/gitea-vet/Makefile22
-rw-r--r--vendor/code.gitea.io/gitea-vet/README.md11
-rw-r--r--vendor/code.gitea.io/gitea-vet/checks/imports.go46
-rw-r--r--vendor/code.gitea.io/gitea-vet/checks/license.go73
-rw-r--r--vendor/code.gitea.io/gitea-vet/checks/migrations.go77
-rw-r--r--vendor/code.gitea.io/gitea-vet/go.mod5
-rw-r--r--vendor/code.gitea.io/gitea-vet/go.sum20
-rw-r--r--vendor/code.gitea.io/gitea-vet/main.go19
-rw-r--r--vendor/code.gitea.io/sdk/gitea/LICENSE20
-rw-r--r--vendor/code.gitea.io/sdk/gitea/admin_cron.go47
-rw-r--r--vendor/code.gitea.io/sdk/gitea/admin_org.go39
-rw-r--r--vendor/code.gitea.io/sdk/gitea/admin_repo.go25
-rw-r--r--vendor/code.gitea.io/sdk/gitea/admin_user.go130
-rw-r--r--vendor/code.gitea.io/sdk/gitea/attachment.go111
-rw-r--r--vendor/code.gitea.io/sdk/gitea/client.go347
-rw-r--r--vendor/code.gitea.io/sdk/gitea/doc.go5
-rw-r--r--vendor/code.gitea.io/sdk/gitea/fork.go49
-rw-r--r--vendor/code.gitea.io/sdk/gitea/git_blob.go28
-rw-r--r--vendor/code.gitea.io/sdk/gitea/git_hook.go71
-rw-r--r--vendor/code.gitea.io/sdk/gitea/go.mod9
-rw-r--r--vendor/code.gitea.io/sdk/gitea/go.sum33
-rw-r--r--vendor/code.gitea.io/sdk/gitea/helper.go20
-rw-r--r--vendor/code.gitea.io/sdk/gitea/hook.go194
-rw-r--r--vendor/code.gitea.io/sdk/gitea/issue.go288
-rw-r--r--vendor/code.gitea.io/sdk/gitea/issue_comment.go154
-rw-r--r--vendor/code.gitea.io/sdk/gitea/issue_label.go211
-rw-r--r--vendor/code.gitea.io/sdk/gitea/issue_milestone.go237
-rw-r--r--vendor/code.gitea.io/sdk/gitea/issue_reaction.go104
-rw-r--r--vendor/code.gitea.io/sdk/gitea/issue_stopwatch.go57
-rw-r--r--vendor/code.gitea.io/sdk/gitea/issue_subscription.go87
-rw-r--r--vendor/code.gitea.io/sdk/gitea/issue_tracked_time.go142
-rw-r--r--vendor/code.gitea.io/sdk/gitea/list_options.go42
-rw-r--r--vendor/code.gitea.io/sdk/gitea/notifications.go241
-rw-r--r--vendor/code.gitea.io/sdk/gitea/oauth2.go91
-rw-r--r--vendor/code.gitea.io/sdk/gitea/org.go155
-rw-r--r--vendor/code.gitea.io/sdk/gitea/org_member.go119
-rw-r--r--vendor/code.gitea.io/sdk/gitea/org_team.go242
-rw-r--r--vendor/code.gitea.io/sdk/gitea/pull.go328
-rw-r--r--vendor/code.gitea.io/sdk/gitea/pull_review.go325
-rw-r--r--vendor/code.gitea.io/sdk/gitea/release.go202
-rw-r--r--vendor/code.gitea.io/sdk/gitea/repo.go534
-rw-r--r--vendor/code.gitea.io/sdk/gitea/repo_branch.go143
-rw-r--r--vendor/code.gitea.io/sdk/gitea/repo_branch_protection.go168
-rw-r--r--vendor/code.gitea.io/sdk/gitea/repo_collaborator.go136
-rw-r--r--vendor/code.gitea.io/sdk/gitea/repo_commit.go101
-rw-r--r--vendor/code.gitea.io/sdk/gitea/repo_file.go247
-rw-r--r--vendor/code.gitea.io/sdk/gitea/repo_key.go91
-rw-r--r--vendor/code.gitea.io/sdk/gitea/repo_migrate.go132
-rw-r--r--vendor/code.gitea.io/sdk/gitea/repo_refs.go78
-rw-r--r--vendor/code.gitea.io/sdk/gitea/repo_stars.go96
-rw-r--r--vendor/code.gitea.io/sdk/gitea/repo_tag.go130
-rw-r--r--vendor/code.gitea.io/sdk/gitea/repo_team.go65
-rw-r--r--vendor/code.gitea.io/sdk/gitea/repo_template.go65
-rw-r--r--vendor/code.gitea.io/sdk/gitea/repo_topics.go68
-rw-r--r--vendor/code.gitea.io/sdk/gitea/repo_transfer.go36
-rw-r--r--vendor/code.gitea.io/sdk/gitea/repo_tree.go44
-rw-r--r--vendor/code.gitea.io/sdk/gitea/repo_watch.go87
-rw-r--r--vendor/code.gitea.io/sdk/gitea/settings.go78
-rw-r--r--vendor/code.gitea.io/sdk/gitea/status.go108
-rw-r--r--vendor/code.gitea.io/sdk/gitea/user.go90
-rw-r--r--vendor/code.gitea.io/sdk/gitea/user_app.go90
-rw-r--r--vendor/code.gitea.io/sdk/gitea/user_email.go64
-rw-r--r--vendor/code.gitea.io/sdk/gitea/user_follow.go93
-rw-r--r--vendor/code.gitea.io/sdk/gitea/user_gpgkey.go89
-rw-r--r--vendor/code.gitea.io/sdk/gitea/user_key.go83
-rw-r--r--vendor/code.gitea.io/sdk/gitea/user_search.go48
-rw-r--r--vendor/code.gitea.io/sdk/gitea/user_settings.go62
-rw-r--r--vendor/code.gitea.io/sdk/gitea/version.go101
74 files changed, 0 insertions, 7686 deletions
diff --git a/vendor/code.gitea.io/gitea-vet/.changelog.yml b/vendor/code.gitea.io/gitea-vet/.changelog.yml
deleted file mode 100644
index b3e6446b71..0000000000
--- a/vendor/code.gitea.io/gitea-vet/.changelog.yml
+++ /dev/null
@@ -1,30 +0,0 @@
-# The full repository name
-repo: gitea/gitea-vet
-
-# Service type (gitea or github)
-service: gitea
-
-# Base URL for Gitea instance if using gitea service type (optional)
-base-url: https://gitea.com
-
-# Changelog groups and which labeled PRs to add to each group
-groups:
- -
- name: BREAKING
- labels:
- - breaking
- -
- name: FEATURES
- labels:
- - feature
- -
- name: BUGFIXES
- labels:
- - bug
- -
- name: ENHANCEMENTS
- labels:
- - enhancement
-
-# regex indicating which labels to skip for the changelog
-skip-labels: skip-changelog|backport\/.+
diff --git a/vendor/code.gitea.io/gitea-vet/.drone.yml b/vendor/code.gitea.io/gitea-vet/.drone.yml
deleted file mode 100644
index dd0fc13f9d..0000000000
--- a/vendor/code.gitea.io/gitea-vet/.drone.yml
+++ /dev/null
@@ -1,45 +0,0 @@
----
-kind: pipeline
-name: compliance
-
-platform:
- os: linux
- arch: arm64
-
-trigger:
- event:
- - pull_request
-
-steps:
- - name: check
- pull: always
- image: golang:1.14
- environment:
- GOPROXY: https://goproxy.cn
- commands:
- - make build
- - make lint
- - make vet
-
----
-kind: pipeline
-name: build-master
-
-platform:
- os: linux
- arch: amd64
-
-trigger:
- branch:
- - master
- event:
- - push
-
-steps:
- - name: build
- pull: always
- image: techknowlogick/xgo:latest
- environment:
- GOPROXY: https://goproxy.cn
- commands:
- - make build \ No newline at end of file
diff --git a/vendor/code.gitea.io/gitea-vet/.gitignore b/vendor/code.gitea.io/gitea-vet/.gitignore
deleted file mode 100644
index b89cc42a23..0000000000
--- a/vendor/code.gitea.io/gitea-vet/.gitignore
+++ /dev/null
@@ -1,5 +0,0 @@
-# GoLand
-.idea/
-
-# Binaries
-/gitea-vet* \ No newline at end of file
diff --git a/vendor/code.gitea.io/gitea-vet/.golangci.yml b/vendor/code.gitea.io/gitea-vet/.golangci.yml
deleted file mode 100644
index 704d99a1d3..0000000000
--- a/vendor/code.gitea.io/gitea-vet/.golangci.yml
+++ /dev/null
@@ -1,23 +0,0 @@
-linters:
- enable:
- - deadcode
- - dogsled
- - dupl
- - errcheck
- - gocognit
- - goconst
- - gocritic
- - gocyclo
- - gofmt
- - golint
- - gosimple
- - govet
- - maligned
- - misspell
- - prealloc
- - staticcheck
- - structcheck
- - typecheck
- - unparam
- - unused
- - varcheck \ No newline at end of file
diff --git a/vendor/code.gitea.io/gitea-vet/CHANGELOG.md b/vendor/code.gitea.io/gitea-vet/CHANGELOG.md
deleted file mode 100644
index 295456bb6b..0000000000
--- a/vendor/code.gitea.io/gitea-vet/CHANGELOG.md
+++ /dev/null
@@ -1,11 +0,0 @@
-## [v0.2.1](https://gitea.com/gitea/gitea-vet/releases/tag/v0.2.1) - 2020-08-15
-
-* BUGFIXES
- * Split migration check to Deps and Imports (#9)
-
-## [0.2.0](https://gitea.com/gitea/gitea-vet/pulls?q=&type=all&state=closed&milestone=1272) - 2020-07-20
-
-* FEATURES
- * Add migrations check (#5)
-* BUGFIXES
- * Correct Import Paths (#6)
diff --git a/vendor/code.gitea.io/gitea-vet/LICENSE b/vendor/code.gitea.io/gitea-vet/LICENSE
deleted file mode 100644
index a39c526bbe..0000000000
--- a/vendor/code.gitea.io/gitea-vet/LICENSE
+++ /dev/null
@@ -1,19 +0,0 @@
-Copyright (c) 2020 The Gitea Authors
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE. \ No newline at end of file
diff --git a/vendor/code.gitea.io/gitea-vet/Makefile b/vendor/code.gitea.io/gitea-vet/Makefile
deleted file mode 100644
index e9c9f4f70c..0000000000
--- a/vendor/code.gitea.io/gitea-vet/Makefile
+++ /dev/null
@@ -1,22 +0,0 @@
-GO ?= go
-
-.PHONY: build
-build:
- $(GO) build
-
-.PHONY: fmt
-fmt:
- $(GO) fmt ./...
-
-.PHONY: vet
-vet: build
- $(GO) vet ./...
- $(GO) vet -vettool=gitea-vet ./...
-
-.PHONY: lint
-lint:
- @hash golangci-lint > /dev/null 2>&1; if [ $$? -ne 0 ]; then \
- export BINARY="golangci-lint"; \
- curl -sfL https://install.goreleaser.com/github.com/golangci/golangci-lint.sh | sh -s -- -b $(shell $(GO) env GOPATH)/bin v1.24.0; \
- fi
- golangci-lint run --timeout 5m \ No newline at end of file
diff --git a/vendor/code.gitea.io/gitea-vet/README.md b/vendor/code.gitea.io/gitea-vet/README.md
deleted file mode 100644
index 5d3d09742b..0000000000
--- a/vendor/code.gitea.io/gitea-vet/README.md
+++ /dev/null
@@ -1,11 +0,0 @@
-# gitea-vet
-
-[![Build Status](https://drone.gitea.com/api/badges/gitea/gitea-vet/status.svg)](https://drone.gitea.com/gitea/gitea-vet)
-
-`go vet` tool for Gitea
-
-| Analyzer | Description |
-|------------|-----------------------------------------------------------------------------|
-| Imports | Checks for import sorting. stdlib->code.gitea.io->other |
-| License | Checks file headers for some form of `Copyright...YYYY...Gitea/Gogs` |
-| Migrations | Checks for black-listed packages in `code.gitea.io/gitea/models/migrations` |
diff --git a/vendor/code.gitea.io/gitea-vet/checks/imports.go b/vendor/code.gitea.io/gitea-vet/checks/imports.go
deleted file mode 100644
index 15563c8543..0000000000
--- a/vendor/code.gitea.io/gitea-vet/checks/imports.go
+++ /dev/null
@@ -1,46 +0,0 @@
-// Copyright 2020 The Gitea Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package checks
-
-import (
- "strings"
-
- "golang.org/x/tools/go/analysis"
-)
-
-var Imports = &analysis.Analyzer{
- Name: "imports",
- Doc: "check for import order",
- Run: runImports,
-}
-
-func runImports(pass *analysis.Pass) (interface{}, error) {
- for _, file := range pass.Files {
- level := 0
- for _, im := range file.Imports {
- var lvl int
- val := im.Path.Value
- switch {
- case importHasPrefix(val, "code.gitea.io"):
- lvl = 2
- case strings.Contains(val, "."):
- lvl = 3
- default:
- lvl = 1
- }
-
- if lvl < level {
- pass.Reportf(file.Pos(), "Imports are sorted wrong")
- break
- }
- level = lvl
- }
- }
- return nil, nil
-}
-
-func importHasPrefix(s, p string) bool {
- return strings.HasPrefix(s, "\""+p)
-}
diff --git a/vendor/code.gitea.io/gitea-vet/checks/license.go b/vendor/code.gitea.io/gitea-vet/checks/license.go
deleted file mode 100644
index a3ae04767b..0000000000
--- a/vendor/code.gitea.io/gitea-vet/checks/license.go
+++ /dev/null
@@ -1,73 +0,0 @@
-// Copyright 2020 The Gitea Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package checks
-
-import (
- "regexp"
- "strings"
-
- "golang.org/x/tools/go/analysis"
-)
-
-var (
- header = regexp.MustCompile(`.*Copyright.*\d{4}.*(Gitea|Gogs)`)
- goGenerate = "//go:generate"
- buildTag = "// +build"
-)
-
-var License = &analysis.Analyzer{
- Name: "license",
- Doc: "check for a copyright header",
- Run: runLicense,
-}
-
-func runLicense(pass *analysis.Pass) (interface{}, error) {
- for _, file := range pass.Files {
- if len(file.Comments) == 0 {
- pass.Reportf(file.Pos(), "Copyright not found")
- continue
- }
-
- if len(file.Comments[0].List) == 0 {
- pass.Reportf(file.Pos(), "Copyright not found or wrong")
- continue
- }
-
- commentGroup := 0
- if strings.HasPrefix(file.Comments[0].List[0].Text, goGenerate) {
- if len(file.Comments[0].List) > 1 {
- pass.Reportf(file.Pos(), "Must be an empty line between the go:generate and the Copyright")
- continue
- }
- commentGroup++
- }
-
- if strings.HasPrefix(file.Comments[0].List[0].Text, buildTag) {
- commentGroup++
- }
-
- if len(file.Comments) < commentGroup+1 {
- pass.Reportf(file.Pos(), "Copyright not found")
- continue
- }
-
- if len(file.Comments[commentGroup].List) < 1 {
- pass.Reportf(file.Pos(), "Copyright not found or wrong")
- continue
- }
-
- var check bool
- for _, comment := range file.Comments[commentGroup].List {
- if header.MatchString(comment.Text) {
- check = true
- }
- }
-
- if !check {
- pass.Reportf(file.Pos(), "Copyright did not match check")
- }
- }
- return nil, nil
-}
diff --git a/vendor/code.gitea.io/gitea-vet/checks/migrations.go b/vendor/code.gitea.io/gitea-vet/checks/migrations.go
deleted file mode 100644
index e3fe570f75..0000000000
--- a/vendor/code.gitea.io/gitea-vet/checks/migrations.go
+++ /dev/null
@@ -1,77 +0,0 @@
-// Copyright 2020 The Gitea Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package checks
-
-import (
- "errors"
- "os/exec"
- "strings"
-
- "golang.org/x/tools/go/analysis"
-)
-
-var Migrations = &analysis.Analyzer{
- Name: "migrations",
- Doc: "check migrations for black-listed packages.",
- Run: checkMigrations,
-}
-
-var (
- migrationDepBlockList = []string{
- "code.gitea.io/gitea/models",
- }
- migrationImpBlockList = []string{
- "code.gitea.io/gitea/modules/structs",
- }
-)
-
-func checkMigrations(pass *analysis.Pass) (interface{}, error) {
- if !strings.EqualFold(pass.Pkg.Path(), "code.gitea.io/gitea/models/migrations") {
- return nil, nil
- }
-
- if _, err := exec.LookPath("go"); err != nil {
- return nil, errors.New("go was not found in the PATH")
- }
-
- depsCmd := exec.Command("go", "list", "-f", `{{join .Deps "\n"}}`, "code.gitea.io/gitea/models/migrations")
- depsOut, err := depsCmd.Output()
- if err != nil {
- return nil, err
- }
-
- deps := strings.Split(string(depsOut), "\n")
- for _, dep := range deps {
- if stringInSlice(dep, migrationDepBlockList) {
- pass.Reportf(0, "code.gitea.io/gitea/models/migrations cannot depend on the following packages: %s", migrationDepBlockList)
- return nil, nil
- }
- }
-
- impsCmd := exec.Command("go", "list", "-f", `{{join .Imports "\n"}}`, "code.gitea.io/gitea/models/migrations")
- impsOut, err := impsCmd.Output()
- if err != nil {
- return nil, err
- }
-
- imps := strings.Split(string(impsOut), "\n")
- for _, imp := range imps {
- if stringInSlice(imp, migrationImpBlockList) {
- pass.Reportf(0, "code.gitea.io/gitea/models/migrations cannot import the following packages: %s", migrationImpBlockList)
- return nil, nil
- }
- }
-
- return nil, nil
-}
-
-func stringInSlice(needle string, haystack []string) bool {
- for _, h := range haystack {
- if strings.EqualFold(needle, h) {
- return true
- }
- }
- return false
-}
diff --git a/vendor/code.gitea.io/gitea-vet/go.mod b/vendor/code.gitea.io/gitea-vet/go.mod
deleted file mode 100644
index ed0987cc61..0000000000
--- a/vendor/code.gitea.io/gitea-vet/go.mod
+++ /dev/null
@@ -1,5 +0,0 @@
-module code.gitea.io/gitea-vet
-
-go 1.14
-
-require golang.org/x/tools v0.0.0-20200325010219-a49f79bcc224
diff --git a/vendor/code.gitea.io/gitea-vet/go.sum b/vendor/code.gitea.io/gitea-vet/go.sum
deleted file mode 100644
index 5feddd059c..0000000000
--- a/vendor/code.gitea.io/gitea-vet/go.sum
+++ /dev/null
@@ -1,20 +0,0 @@
-github.com/yuin/goldmark v1.1.25/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
-golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
-golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
-golang.org/x/mod v0.2.0 h1:KU7oHjnv3XNWfa5COkzUifxZmxp1TyI7ImMXqFxLwvQ=
-golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
-golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
-golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
-golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
-golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
-golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
-golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
-golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
-golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
-golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
-golang.org/x/tools v0.0.0-20200325010219-a49f79bcc224 h1:azwY/v0y0K4mFHVsg5+UrTgchqALYWpqVo6vL5OmkmI=
-golang.org/x/tools v0.0.0-20200325010219-a49f79bcc224/go.mod h1:Sl4aGygMT6LrqrWclx+PTx3U+LnKx/seiNR+3G19Ar8=
-golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
-golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
-golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543 h1:E7g+9GITq07hpfrRu66IVDexMakfv52eLZ2CXBWiKr4=
-golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
diff --git a/vendor/code.gitea.io/gitea-vet/main.go b/vendor/code.gitea.io/gitea-vet/main.go
deleted file mode 100644
index 4894055086..0000000000
--- a/vendor/code.gitea.io/gitea-vet/main.go
+++ /dev/null
@@ -1,19 +0,0 @@
-// Copyright 2020 The Gitea Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package main
-
-import (
- "code.gitea.io/gitea-vet/checks"
-
- "golang.org/x/tools/go/analysis/unitchecker"
-)
-
-func main() {
- unitchecker.Main(
- checks.Imports,
- checks.License,
- checks.Migrations,
- )
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/LICENSE b/vendor/code.gitea.io/sdk/gitea/LICENSE
deleted file mode 100644
index 10aeba46bc..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/LICENSE
+++ /dev/null
@@ -1,20 +0,0 @@
-Copyright (c) 2016 The Gitea Authors
-Copyright (c) 2014 The Gogs Authors
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.
diff --git a/vendor/code.gitea.io/sdk/gitea/admin_cron.go b/vendor/code.gitea.io/sdk/gitea/admin_cron.go
deleted file mode 100644
index 84316da2b1..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/admin_cron.go
+++ /dev/null
@@ -1,47 +0,0 @@
-// Copyright 2020 The Gitea Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea
-
-import (
- "fmt"
- "time"
-)
-
-// CronTask represents a Cron task
-type CronTask struct {
- Name string `json:"name"`
- Schedule string `json:"schedule"`
- Next time.Time `json:"next"`
- Prev time.Time `json:"prev"`
- ExecTimes int64 `json:"exec_times"`
-}
-
-// ListCronTaskOptions list options for ListCronTasks
-type ListCronTaskOptions struct {
- ListOptions
-}
-
-// ListCronTasks list available cron tasks
-func (c *Client) ListCronTasks(opt ListCronTaskOptions) ([]*CronTask, *Response, error) {
- if err := c.checkServerVersionGreaterThanOrEqual(version1_13_0); err != nil {
- return nil, nil, err
- }
- opt.setDefaults()
- ct := make([]*CronTask, 0, opt.PageSize)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/admin/cron?%s", opt.getURLQuery().Encode()), jsonHeader, nil, &ct)
- return ct, resp, err
-}
-
-// RunCronTasks run a cron task
-func (c *Client) RunCronTasks(task string) (*Response, error) {
- if err := c.checkServerVersionGreaterThanOrEqual(version1_13_0); err != nil {
- return nil, err
- }
- if err := escapeValidatePathSegments(&task); err != nil {
- return nil, err
- }
- _, resp, err := c.getResponse("POST", fmt.Sprintf("/admin/cron/%s", task), jsonHeader, nil)
- return resp, err
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/admin_org.go b/vendor/code.gitea.io/sdk/gitea/admin_org.go
deleted file mode 100644
index 26bf81fb4d..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/admin_org.go
+++ /dev/null
@@ -1,39 +0,0 @@
-// Copyright 2015 The Gogs Authors. All rights reserved.
-// Copyright 2019 The Gitea Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea
-
-import (
- "bytes"
- "encoding/json"
- "fmt"
-)
-
-// AdminListOrgsOptions options for listing admin's organizations
-type AdminListOrgsOptions struct {
- ListOptions
-}
-
-// AdminListOrgs lists all orgs
-func (c *Client) AdminListOrgs(opt AdminListOrgsOptions) ([]*Organization, *Response, error) {
- opt.setDefaults()
- orgs := make([]*Organization, 0, opt.PageSize)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/admin/orgs?%s", opt.getURLQuery().Encode()), nil, nil, &orgs)
- return orgs, resp, err
-}
-
-// AdminCreateOrg create an organization
-func (c *Client) AdminCreateOrg(user string, opt CreateOrgOption) (*Organization, *Response, error) {
- if err := escapeValidatePathSegments(&user); err != nil {
- return nil, nil, err
- }
- body, err := json.Marshal(&opt)
- if err != nil {
- return nil, nil, err
- }
- org := new(Organization)
- resp, err := c.getParsedResponse("POST", fmt.Sprintf("/admin/users/%s/orgs", user), jsonHeader, bytes.NewReader(body), org)
- return org, resp, err
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/admin_repo.go b/vendor/code.gitea.io/sdk/gitea/admin_repo.go
deleted file mode 100644
index 8666690cde..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/admin_repo.go
+++ /dev/null
@@ -1,25 +0,0 @@
-// Copyright 2015 The Gogs Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea
-
-import (
- "bytes"
- "encoding/json"
- "fmt"
-)
-
-// AdminCreateRepo create a repo
-func (c *Client) AdminCreateRepo(user string, opt CreateRepoOption) (*Repository, *Response, error) {
- if err := escapeValidatePathSegments(&user); err != nil {
- return nil, nil, err
- }
- body, err := json.Marshal(&opt)
- if err != nil {
- return nil, nil, err
- }
- repo := new(Repository)
- resp, err := c.getParsedResponse("POST", fmt.Sprintf("/admin/users/%s/repos", user), jsonHeader, bytes.NewReader(body), repo)
- return repo, resp, err
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/admin_user.go b/vendor/code.gitea.io/sdk/gitea/admin_user.go
deleted file mode 100644
index 172f0645c9..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/admin_user.go
+++ /dev/null
@@ -1,130 +0,0 @@
-// Copyright 2015 The Gogs Authors. All rights reserved.
-// Copyright 2019 The Gitea Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea
-
-import (
- "bytes"
- "encoding/json"
- "fmt"
-)
-
-// AdminListUsersOptions options for listing admin users
-type AdminListUsersOptions struct {
- ListOptions
-}
-
-// AdminListUsers lists all users
-func (c *Client) AdminListUsers(opt AdminListUsersOptions) ([]*User, *Response, error) {
- opt.setDefaults()
- users := make([]*User, 0, opt.PageSize)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/admin/users?%s", opt.getURLQuery().Encode()), nil, nil, &users)
- return users, resp, err
-}
-
-// CreateUserOption create user options
-type CreateUserOption struct {
- SourceID int64 `json:"source_id"`
- LoginName string `json:"login_name"`
- Username string `json:"username"`
- FullName string `json:"full_name"`
- Email string `json:"email"`
- Password string `json:"password"`
- MustChangePassword *bool `json:"must_change_password"`
- SendNotify bool `json:"send_notify"`
- Visibility *VisibleType `json:"visibility"`
-}
-
-// Validate the CreateUserOption struct
-func (opt CreateUserOption) Validate() error {
- if len(opt.Email) == 0 {
- return fmt.Errorf("email is empty")
- }
- if len(opt.Username) == 0 {
- return fmt.Errorf("username is empty")
- }
- return nil
-}
-
-// AdminCreateUser create a user
-func (c *Client) AdminCreateUser(opt CreateUserOption) (*User, *Response, error) {
- if err := opt.Validate(); err != nil {
- return nil, nil, err
- }
- body, err := json.Marshal(&opt)
- if err != nil {
- return nil, nil, err
- }
- user := new(User)
- resp, err := c.getParsedResponse("POST", "/admin/users", jsonHeader, bytes.NewReader(body), user)
- return user, resp, err
-}
-
-// EditUserOption edit user options
-type EditUserOption struct {
- SourceID int64 `json:"source_id"`
- LoginName string `json:"login_name"`
- Email *string `json:"email"`
- FullName *string `json:"full_name"`
- Password string `json:"password"`
- Description *string `json:"description"`
- MustChangePassword *bool `json:"must_change_password"`
- Website *string `json:"website"`
- Location *string `json:"location"`
- Active *bool `json:"active"`
- Admin *bool `json:"admin"`
- AllowGitHook *bool `json:"allow_git_hook"`
- AllowImportLocal *bool `json:"allow_import_local"`
- MaxRepoCreation *int `json:"max_repo_creation"`
- ProhibitLogin *bool `json:"prohibit_login"`
- AllowCreateOrganization *bool `json:"allow_create_organization"`
- Restricted *bool `json:"restricted"`
- Visibility *VisibleType `json:"visibility"`
-}
-
-// AdminEditUser modify user informations
-func (c *Client) AdminEditUser(user string, opt EditUserOption) (*Response, error) {
- if err := escapeValidatePathSegments(&user); err != nil {
- return nil, err
- }
- body, err := json.Marshal(&opt)
- if err != nil {
- return nil, err
- }
- _, resp, err := c.getResponse("PATCH", fmt.Sprintf("/admin/users/%s", user), jsonHeader, bytes.NewReader(body))
- return resp, err
-}
-
-// AdminDeleteUser delete one user according name
-func (c *Client) AdminDeleteUser(user string) (*Response, error) {
- if err := escapeValidatePathSegments(&user); err != nil {
- return nil, err
- }
- _, resp, err := c.getResponse("DELETE", fmt.Sprintf("/admin/users/%s", user), nil, nil)
- return resp, err
-}
-
-// AdminCreateUserPublicKey adds a public key for the user
-func (c *Client) AdminCreateUserPublicKey(user string, opt CreateKeyOption) (*PublicKey, *Response, error) {
- if err := escapeValidatePathSegments(&user); err != nil {
- return nil, nil, err
- }
- body, err := json.Marshal(&opt)
- if err != nil {
- return nil, nil, err
- }
- key := new(PublicKey)
- resp, err := c.getParsedResponse("POST", fmt.Sprintf("/admin/users/%s/keys", user), jsonHeader, bytes.NewReader(body), key)
- return key, resp, err
-}
-
-// AdminDeleteUserPublicKey deletes a user's public key
-func (c *Client) AdminDeleteUserPublicKey(user string, keyID int) (*Response, error) {
- if err := escapeValidatePathSegments(&user); err != nil {
- return nil, err
- }
- _, resp, err := c.getResponse("DELETE", fmt.Sprintf("/admin/users/%s/keys/%d", user, keyID), nil, nil)
- return resp, err
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/attachment.go b/vendor/code.gitea.io/sdk/gitea/attachment.go
deleted file mode 100644
index 24c57baf4b..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/attachment.go
+++ /dev/null
@@ -1,111 +0,0 @@
-// Copyright 2017 The Gitea Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea // import "code.gitea.io/sdk/gitea"
-import (
- "bytes"
- "encoding/json"
- "fmt"
- "io"
- "mime/multipart"
- "net/http"
- "time"
-)
-
-// Attachment a generic attachment
-type Attachment struct {
- ID int64 `json:"id"`
- Name string `json:"name"`
- Size int64 `json:"size"`
- DownloadCount int64 `json:"download_count"`
- Created time.Time `json:"created_at"`
- UUID string `json:"uuid"`
- DownloadURL string `json:"browser_download_url"`
-}
-
-// ListReleaseAttachmentsOptions options for listing release's attachments
-type ListReleaseAttachmentsOptions struct {
- ListOptions
-}
-
-// ListReleaseAttachments list release's attachments
-func (c *Client) ListReleaseAttachments(user, repo string, release int64, opt ListReleaseAttachmentsOptions) ([]*Attachment, *Response, error) {
- if err := escapeValidatePathSegments(&user, &repo); err != nil {
- return nil, nil, err
- }
- opt.setDefaults()
- attachments := make([]*Attachment, 0, opt.PageSize)
- resp, err := c.getParsedResponse("GET",
- fmt.Sprintf("/repos/%s/%s/releases/%d/assets?%s", user, repo, release, opt.getURLQuery().Encode()),
- nil, nil, &attachments)
- return attachments, resp, err
-}
-
-// GetReleaseAttachment returns the requested attachment
-func (c *Client) GetReleaseAttachment(user, repo string, release int64, id int64) (*Attachment, *Response, error) {
- if err := escapeValidatePathSegments(&user, &repo); err != nil {
- return nil, nil, err
- }
- a := new(Attachment)
- resp, err := c.getParsedResponse("GET",
- fmt.Sprintf("/repos/%s/%s/releases/%d/assets/%d", user, repo, release, id),
- nil, nil, &a)
- return a, resp, err
-}
-
-// CreateReleaseAttachment creates an attachment for the given release
-func (c *Client) CreateReleaseAttachment(user, repo string, release int64, file io.Reader, filename string) (*Attachment, *Response, error) {
- if err := escapeValidatePathSegments(&user, &repo); err != nil {
- return nil, nil, err
- }
- // Write file to body
- body := new(bytes.Buffer)
- writer := multipart.NewWriter(body)
- part, err := writer.CreateFormFile("attachment", filename)
- if err != nil {
- return nil, nil, err
- }
-
- if _, err = io.Copy(part, file); err != nil {
- return nil, nil, err
- }
- if err = writer.Close(); err != nil {
- return nil, nil, err
- }
-
- // Send request
- attachment := new(Attachment)
- resp, err := c.getParsedResponse("POST",
- fmt.Sprintf("/repos/%s/%s/releases/%d/assets", user, repo, release),
- http.Header{"Content-Type": {writer.FormDataContentType()}}, body, &attachment)
- return attachment, resp, err
-}
-
-// EditAttachmentOptions options for editing attachments
-type EditAttachmentOptions struct {
- Name string `json:"name"`
-}
-
-// EditReleaseAttachment updates the given attachment with the given options
-func (c *Client) EditReleaseAttachment(user, repo string, release int64, attachment int64, form EditAttachmentOptions) (*Attachment, *Response, error) {
- if err := escapeValidatePathSegments(&user, &repo); err != nil {
- return nil, nil, err
- }
- body, err := json.Marshal(&form)
- if err != nil {
- return nil, nil, err
- }
- attach := new(Attachment)
- resp, err := c.getParsedResponse("PATCH", fmt.Sprintf("/repos/%s/%s/releases/%d/assets/%d", user, repo, release, attachment), jsonHeader, bytes.NewReader(body), attach)
- return attach, resp, err
-}
-
-// DeleteReleaseAttachment deletes the given attachment including the uploaded file
-func (c *Client) DeleteReleaseAttachment(user, repo string, release int64, id int64) (*Response, error) {
- if err := escapeValidatePathSegments(&user, &repo); err != nil {
- return nil, err
- }
- _, resp, err := c.getResponse("DELETE", fmt.Sprintf("/repos/%s/%s/releases/%d/assets/%d", user, repo, release, id), nil, nil)
- return resp, err
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/client.go b/vendor/code.gitea.io/sdk/gitea/client.go
deleted file mode 100644
index 3fe3e8bd77..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/client.go
+++ /dev/null
@@ -1,347 +0,0 @@
-// Copyright 2014 The Gogs Authors. All rights reserved.
-// Copyright 2020 The Gitea Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea
-
-import (
- "context"
- "encoding/json"
- "errors"
- "fmt"
- "io"
- "io/ioutil"
- "net/http"
- "net/url"
- "strings"
- "sync"
-
- "github.com/hashicorp/go-version"
-)
-
-var jsonHeader = http.Header{"content-type": []string{"application/json"}}
-
-// Version return the library version
-func Version() string {
- return "0.15.1"
-}
-
-// Client represents a thread-safe Gitea API client.
-type Client struct {
- url string
- accessToken string
- username string
- password string
- otp string
- sudo string
- debug bool
- client *http.Client
- ctx context.Context
- mutex sync.RWMutex
-
- serverVersion *version.Version
- getVersionOnce sync.Once
- ignoreVersion bool // only set by SetGiteaVersion so don't need a mutex lock
-}
-
-// Response represents the gitea response
-type Response struct {
- *http.Response
-}
-
-// ClientOption are functions used to init a new client
-type ClientOption func(*Client) error
-
-// NewClient initializes and returns a API client.
-// Usage of all gitea.Client methods is concurrency-safe.
-func NewClient(url string, options ...ClientOption) (*Client, error) {
- client := &Client{
- url: strings.TrimSuffix(url, "/"),
- client: &http.Client{},
- ctx: context.Background(),
- }
- for _, opt := range options {
- if err := opt(client); err != nil {
- return nil, err
- }
- }
- if err := client.checkServerVersionGreaterThanOrEqual(version1_11_0); err != nil {
- return nil, err
- }
- return client, nil
-}
-
-// NewClientWithHTTP creates an API client with a custom http client
-// Deprecated use SetHTTPClient option
-func NewClientWithHTTP(url string, httpClient *http.Client) *Client {
- client, _ := NewClient(url, SetHTTPClient(httpClient))
- return client
-}
-
-// SetHTTPClient is an option for NewClient to set custom http client
-func SetHTTPClient(httpClient *http.Client) ClientOption {
- return func(client *Client) error {
- client.SetHTTPClient(httpClient)
- return nil
- }
-}
-
-// SetHTTPClient replaces default http.Client with user given one.
-func (c *Client) SetHTTPClient(client *http.Client) {
- c.mutex.Lock()
- c.client = client
- c.mutex.Unlock()
-}
-
-// SetToken is an option for NewClient to set token
-func SetToken(token string) ClientOption {
- return func(client *Client) error {
- client.mutex.Lock()
- client.accessToken = token
- client.mutex.Unlock()
- return nil
- }
-}
-
-// SetBasicAuth is an option for NewClient to set username and password
-func SetBasicAuth(username, password string) ClientOption {
- return func(client *Client) error {
- client.SetBasicAuth(username, password)
- return nil
- }
-}
-
-// SetBasicAuth sets username and password
-func (c *Client) SetBasicAuth(username, password string) {
- c.mutex.Lock()
- c.username, c.password = username, password
- c.mutex.Unlock()
-}
-
-// SetOTP is an option for NewClient to set OTP for 2FA
-func SetOTP(otp string) ClientOption {
- return func(client *Client) error {
- client.SetOTP(otp)
- return nil
- }
-}
-
-// SetOTP sets OTP for 2FA
-func (c *Client) SetOTP(otp string) {
- c.mutex.Lock()
- c.otp = otp
- c.mutex.Unlock()
-}
-
-// SetContext is an option for NewClient to set the default context
-func SetContext(ctx context.Context) ClientOption {
- return func(client *Client) error {
- client.SetContext(ctx)
- return nil
- }
-}
-
-// SetContext set default context witch is used for http requests
-func (c *Client) SetContext(ctx context.Context) {
- c.mutex.Lock()
- c.ctx = ctx
- c.mutex.Unlock()
-}
-
-// SetSudo is an option for NewClient to set sudo header
-func SetSudo(sudo string) ClientOption {
- return func(client *Client) error {
- client.SetSudo(sudo)
- return nil
- }
-}
-
-// SetSudo sets username to impersonate.
-func (c *Client) SetSudo(sudo string) {
- c.mutex.Lock()
- c.sudo = sudo
- c.mutex.Unlock()
-}
-
-// SetDebugMode is an option for NewClient to enable debug mode
-func SetDebugMode() ClientOption {
- return func(client *Client) error {
- client.mutex.Lock()
- client.debug = true
- client.mutex.Unlock()
- return nil
- }
-}
-
-func (c *Client) getWebResponse(method, path string, body io.Reader) ([]byte, *Response, error) {
- c.mutex.RLock()
- debug := c.debug
- if debug {
- fmt.Printf("%s: %s\nBody: %v\n", method, c.url+path, body)
- }
- req, err := http.NewRequestWithContext(c.ctx, method, c.url+path, body)
-
- client := c.client // client ref can change from this point on so safe it
- c.mutex.RUnlock()
-
- if err != nil {
- return nil, nil, err
- }
-
- resp, err := client.Do(req)
- if err != nil {
- return nil, nil, err
- }
-
- defer resp.Body.Close()
- data, err := ioutil.ReadAll(resp.Body)
- if debug {
- fmt.Printf("Response: %v\n\n", resp)
- }
- return data, &Response{resp}, nil
-}
-
-func (c *Client) doRequest(method, path string, header http.Header, body io.Reader) (*Response, error) {
- c.mutex.RLock()
- debug := c.debug
- if debug {
- fmt.Printf("%s: %s\nHeader: %v\nBody: %s\n", method, c.url+"/api/v1"+path, header, body)
- }
- req, err := http.NewRequestWithContext(c.ctx, method, c.url+"/api/v1"+path, body)
- if err != nil {
- c.mutex.RUnlock()
- return nil, err
- }
- if len(c.accessToken) != 0 {
- req.Header.Set("Authorization", "token "+c.accessToken)
- }
- if len(c.otp) != 0 {
- req.Header.Set("X-GITEA-OTP", c.otp)
- }
- if len(c.username) != 0 {
- req.SetBasicAuth(c.username, c.password)
- }
- if len(c.sudo) != 0 {
- req.Header.Set("Sudo", c.sudo)
- }
-
- client := c.client // client ref can change from this point on so safe it
- c.mutex.RUnlock()
-
- for k, v := range header {
- req.Header[k] = v
- }
-
- resp, err := client.Do(req)
- if err != nil {
- return nil, err
- }
- if debug {
- fmt.Printf("Response: %v\n\n", resp)
- }
- return &Response{resp}, nil
-}
-
-// Converts a response for a HTTP status code indicating an error condition
-// (non-2XX) to a well-known error value and response body. For non-problematic
-// (2XX) status codes nil will be returned. Note that on a non-2XX response, the
-// response body stream will have been read and, hence, is closed on return.
-func statusCodeToErr(resp *Response) (body []byte, err error) {
- // no error
- if resp.StatusCode/100 == 2 {
- return nil, nil
- }
-
- //
- // error: body will be read for details
- //
- defer resp.Body.Close()
- data, err := ioutil.ReadAll(resp.Body)
- if err != nil {
- return nil, fmt.Errorf("body read on HTTP error %d: %v", resp.StatusCode, err)
- }
-
- switch resp.StatusCode {
- case 403:
- return data, errors.New("403 Forbidden")
- case 404:
- return data, errors.New("404 Not Found")
- case 409:
- return data, errors.New("409 Conflict")
- case 422:
- return data, fmt.Errorf("422 Unprocessable Entity: %s", string(data))
- }
-
- path := resp.Request.URL.Path
- method := resp.Request.Method
- header := resp.Request.Header
- errMap := make(map[string]interface{})
- if err = json.Unmarshal(data, &errMap); err != nil {
- // when the JSON can't be parsed, data was probably empty or a
- // plain string, so we try to return a helpful error anyway
- return data, fmt.Errorf("Unknown API Error: %d\nRequest: '%s' with '%s' method '%s' header and '%s' body", resp.StatusCode, path, method, header, string(data))
- }
- return data, errors.New(errMap["message"].(string))
-}
-
-func (c *Client) getResponse(method, path string, header http.Header, body io.Reader) ([]byte, *Response, error) {
- resp, err := c.doRequest(method, path, header, body)
- if err != nil {
- return nil, nil, err
- }
- defer resp.Body.Close()
-
- // check for errors
- data, err := statusCodeToErr(resp)
- if err != nil {
- return data, resp, err
- }
-
- // success (2XX), read body
- data, err = ioutil.ReadAll(resp.Body)
- if err != nil {
- return nil, resp, err
- }
-
- return data, resp, nil
-}
-
-func (c *Client) getParsedResponse(method, path string, header http.Header, body io.Reader, obj interface{}) (*Response, error) {
- data, resp, err := c.getResponse(method, path, header, body)
- if err != nil {
- return resp, err
- }
- return resp, json.Unmarshal(data, obj)
-}
-
-func (c *Client) getStatusCode(method, path string, header http.Header, body io.Reader) (int, *Response, error) {
- resp, err := c.doRequest(method, path, header, body)
- if err != nil {
- return -1, resp, err
- }
- defer resp.Body.Close()
-
- return resp.StatusCode, resp, nil
-}
-
-// pathEscapeSegments escapes segments of a path while not escaping forward slash
-func pathEscapeSegments(path string) string {
- slice := strings.Split(path, "/")
- for index := range slice {
- slice[index] = url.PathEscape(slice[index])
- }
- escapedPath := strings.Join(slice, "/")
- return escapedPath
-}
-
-// escapeValidatePathSegments is a help function to validate and encode url path segments
-func escapeValidatePathSegments(seg ...*string) error {
- for i := range seg {
- if seg[i] == nil || len(*seg[i]) == 0 {
- return fmt.Errorf("path segment [%d] is empty", i)
- }
- *seg[i] = url.PathEscape(*seg[i])
- }
- return nil
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/doc.go b/vendor/code.gitea.io/sdk/gitea/doc.go
deleted file mode 100644
index 6bd327db46..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/doc.go
+++ /dev/null
@@ -1,5 +0,0 @@
-// Copyright 2016 The Gitea Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea // import "code.gitea.io/sdk/gitea"
diff --git a/vendor/code.gitea.io/sdk/gitea/fork.go b/vendor/code.gitea.io/sdk/gitea/fork.go
deleted file mode 100644
index c8e5323bc0..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/fork.go
+++ /dev/null
@@ -1,49 +0,0 @@
-// Copyright 2016 The Gitea Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea
-
-import (
- "bytes"
- "encoding/json"
- "fmt"
-)
-
-// ListForksOptions options for listing repository's forks
-type ListForksOptions struct {
- ListOptions
-}
-
-// ListForks list a repository's forks
-func (c *Client) ListForks(user string, repo string, opt ListForksOptions) ([]*Repository, *Response, error) {
- if err := escapeValidatePathSegments(&user, &repo); err != nil {
- return nil, nil, err
- }
- opt.setDefaults()
- forks := make([]*Repository, opt.PageSize)
- resp, err := c.getParsedResponse("GET",
- fmt.Sprintf("/repos/%s/%s/forks?%s", user, repo, opt.getURLQuery().Encode()),
- nil, nil, &forks)
- return forks, resp, err
-}
-
-// CreateForkOption options for creating a fork
-type CreateForkOption struct {
- // organization name, if forking into an organization
- Organization *string `json:"organization"`
-}
-
-// CreateFork create a fork of a repository
-func (c *Client) CreateFork(user, repo string, form CreateForkOption) (*Repository, *Response, error) {
- if err := escapeValidatePathSegments(&user, &repo); err != nil {
- return nil, nil, err
- }
- body, err := json.Marshal(form)
- if err != nil {
- return nil, nil, err
- }
- fork := new(Repository)
- resp, err := c.getParsedResponse("POST", fmt.Sprintf("/repos/%s/%s/forks", user, repo), jsonHeader, bytes.NewReader(body), &fork)
- return fork, resp, err
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/git_blob.go b/vendor/code.gitea.io/sdk/gitea/git_blob.go
deleted file mode 100644
index 7668672dc0..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/git_blob.go
+++ /dev/null
@@ -1,28 +0,0 @@
-// Copyright 2020 The Gitea Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea
-
-import (
- "fmt"
-)
-
-// GitBlobResponse represents a git blob
-type GitBlobResponse struct {
- Content string `json:"content"`
- Encoding string `json:"encoding"`
- URL string `json:"url"`
- SHA string `json:"sha"`
- Size int64 `json:"size"`
-}
-
-// GetBlob get the blob of a repository file
-func (c *Client) GetBlob(user, repo, sha string) (*GitBlobResponse, *Response, error) {
- if err := escapeValidatePathSegments(&user, &repo, &sha); err != nil {
- return nil, nil, err
- }
- blob := new(GitBlobResponse)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/repos/%s/%s/git/blobs/%s", user, repo, sha), nil, nil, blob)
- return blob, resp, err
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/git_hook.go b/vendor/code.gitea.io/sdk/gitea/git_hook.go
deleted file mode 100644
index d8fbf71bd9..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/git_hook.go
+++ /dev/null
@@ -1,71 +0,0 @@
-// Copyright 2019 The Gitea Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea
-
-import (
- "bytes"
- "encoding/json"
- "fmt"
-)
-
-// GitHook represents a Git repository hook
-type GitHook struct {
- Name string `json:"name"`
- IsActive bool `json:"is_active"`
- Content string `json:"content,omitempty"`
-}
-
-// ListRepoGitHooksOptions options for listing repository's githooks
-type ListRepoGitHooksOptions struct {
- ListOptions
-}
-
-// ListRepoGitHooks list all the Git hooks of one repository
-func (c *Client) ListRepoGitHooks(user, repo string, opt ListRepoGitHooksOptions) ([]*GitHook, *Response, error) {
- if err := escapeValidatePathSegments(&user, &repo); err != nil {
- return nil, nil, err
- }
- opt.setDefaults()
- hooks := make([]*GitHook, 0, opt.PageSize)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/repos/%s/%s/hooks/git?%s", user, repo, opt.getURLQuery().Encode()), nil, nil, &hooks)
- return hooks, resp, err
-}
-
-// GetRepoGitHook get a Git hook of a repository
-func (c *Client) GetRepoGitHook(user, repo, id string) (*GitHook, *Response, error) {
- if err := escapeValidatePathSegments(&user, &repo, &id); err != nil {
- return nil, nil, err
- }
- h := new(GitHook)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/repos/%s/%s/hooks/git/%s", user, repo, id), nil, nil, h)
- return h, resp, err
-}
-
-// EditGitHookOption options when modifying one Git hook
-type EditGitHookOption struct {
- Content string `json:"content"`
-}
-
-// EditRepoGitHook modify one Git hook of a repository
-func (c *Client) EditRepoGitHook(user, repo, id string, opt EditGitHookOption) (*Response, error) {
- if err := escapeValidatePathSegments(&user, &repo, &id); err != nil {
- return nil, err
- }
- body, err := json.Marshal(&opt)
- if err != nil {
- return nil, err
- }
- _, resp, err := c.getResponse("PATCH", fmt.Sprintf("/repos/%s/%s/hooks/git/%s", user, repo, id), jsonHeader, bytes.NewReader(body))
- return resp, err
-}
-
-// DeleteRepoGitHook delete one Git hook from a repository
-func (c *Client) DeleteRepoGitHook(user, repo, id string) (*Response, error) {
- if err := escapeValidatePathSegments(&user, &repo, &id); err != nil {
- return nil, err
- }
- _, resp, err := c.getResponse("DELETE", fmt.Sprintf("/repos/%s/%s/hooks/git/%s", user, repo, id), nil, nil)
- return resp, err
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/go.mod b/vendor/code.gitea.io/sdk/gitea/go.mod
deleted file mode 100644
index 7141bfa474..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/go.mod
+++ /dev/null
@@ -1,9 +0,0 @@
-module code.gitea.io/sdk/gitea
-
-go 1.13
-
-require (
- code.gitea.io/gitea-vet v0.2.1 // indirect
- github.com/hashicorp/go-version v1.2.1
- github.com/stretchr/testify v1.4.0
-)
diff --git a/vendor/code.gitea.io/sdk/gitea/go.sum b/vendor/code.gitea.io/sdk/gitea/go.sum
deleted file mode 100644
index 833e39100e..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/go.sum
+++ /dev/null
@@ -1,33 +0,0 @@
-code.gitea.io/gitea-vet v0.2.1 h1:b30by7+3SkmiftK0RjuXqFvZg2q4p68uoPGuxhzBN0s=
-code.gitea.io/gitea-vet v0.2.1/go.mod h1:zcNbT/aJEmivCAhfmkHOlT645KNOf9W2KnkLgFjGGfE=
-github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
-github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
-github.com/hashicorp/go-version v1.2.1 h1:zEfKbn2+PDgroKdiOzqiE8rsmLqU2uwi5PB5pBJ3TkI=
-github.com/hashicorp/go-version v1.2.1/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA=
-github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
-github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
-github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
-github.com/stretchr/testify v1.4.0 h1:2E4SXV/wtOkTonXsotYi4li6zVWxYlZuYNCXe9XRJyk=
-github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4=
-github.com/yuin/goldmark v1.1.25/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
-golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
-golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
-golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
-golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
-golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
-golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
-golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
-golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
-golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
-golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
-golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
-golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
-golang.org/x/tools v0.0.0-20200325010219-a49f79bcc224 h1:azwY/v0y0K4mFHVsg5+UrTgchqALYWpqVo6vL5OmkmI=
-golang.org/x/tools v0.0.0-20200325010219-a49f79bcc224/go.mod h1:Sl4aGygMT6LrqrWclx+PTx3U+LnKx/seiNR+3G19Ar8=
-golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
-golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
-golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
-gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM=
-gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
-gopkg.in/yaml.v2 v2.2.2 h1:ZCJp+EgiOT7lHqUV2J862kp8Qj64Jo6az82+3Td9dZw=
-gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
diff --git a/vendor/code.gitea.io/sdk/gitea/helper.go b/vendor/code.gitea.io/sdk/gitea/helper.go
deleted file mode 100644
index ff8038b128..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/helper.go
+++ /dev/null
@@ -1,20 +0,0 @@
-// Copyright 2020 The Gitea Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea
-
-// OptionalBool convert a bool to a bool reference
-func OptionalBool(v bool) *bool {
- return &v
-}
-
-// OptionalString convert a string to a string reference
-func OptionalString(v string) *string {
- return &v
-}
-
-// OptionalInt64 convert a int64 to a int64 reference
-func OptionalInt64(v int64) *int64 {
- return &v
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/hook.go b/vendor/code.gitea.io/sdk/gitea/hook.go
deleted file mode 100644
index 67a7518b68..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/hook.go
+++ /dev/null
@@ -1,194 +0,0 @@
-// Copyright 2014 The Gogs Authors. All rights reserved.
-// Copyright 2017 The Gitea Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea
-
-import (
- "bytes"
- "encoding/json"
- "fmt"
- "time"
-)
-
-// Hook a hook is a web hook when one repository changed
-type Hook struct {
- ID int64 `json:"id"`
- Type string `json:"type"`
- URL string `json:"-"`
- Config map[string]string `json:"config"`
- Events []string `json:"events"`
- Active bool `json:"active"`
- Updated time.Time `json:"updated_at"`
- Created time.Time `json:"created_at"`
-}
-
-// HookType represent all webhook types gitea currently offer
-type HookType string
-
-const (
- // HookTypeDingtalk webhook that dingtalk understand
- HookTypeDingtalk HookType = "dingtalk"
- // HookTypeDiscord webhook that discord understand
- HookTypeDiscord HookType = "discord"
- // HookTypeGitea webhook that gitea understand
- HookTypeGitea HookType = "gitea"
- // HookTypeGogs webhook that gogs understand
- HookTypeGogs HookType = "gogs"
- // HookTypeMsteams webhook that msteams understand
- HookTypeMsteams HookType = "msteams"
- // HookTypeSlack webhook that slack understand
- HookTypeSlack HookType = "slack"
- // HookTypeTelegram webhook that telegram understand
- HookTypeTelegram HookType = "telegram"
- // HookTypeFeishu webhook that feishu understand
- HookTypeFeishu HookType = "feishu"
-)
-
-// ListHooksOptions options for listing hooks
-type ListHooksOptions struct {
- ListOptions
-}
-
-// ListOrgHooks list all the hooks of one organization
-func (c *Client) ListOrgHooks(org string, opt ListHooksOptions) ([]*Hook, *Response, error) {
- if err := escapeValidatePathSegments(&org); err != nil {
- return nil, nil, err
- }
- opt.setDefaults()
- hooks := make([]*Hook, 0, opt.PageSize)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/orgs/%s/hooks?%s", org, opt.getURLQuery().Encode()), nil, nil, &hooks)
- return hooks, resp, err
-}
-
-// ListRepoHooks list all the hooks of one repository
-func (c *Client) ListRepoHooks(user, repo string, opt ListHooksOptions) ([]*Hook, *Response, error) {
- if err := escapeValidatePathSegments(&user, &repo); err != nil {
- return nil, nil, err
- }
- opt.setDefaults()
- hooks := make([]*Hook, 0, opt.PageSize)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/repos/%s/%s/hooks?%s", user, repo, opt.getURLQuery().Encode()), nil, nil, &hooks)
- return hooks, resp, err
-}
-
-// GetOrgHook get a hook of an organization
-func (c *Client) GetOrgHook(org string, id int64) (*Hook, *Response, error) {
- if err := escapeValidatePathSegments(&org); err != nil {
- return nil, nil, err
- }
- h := new(Hook)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/orgs/%s/hooks/%d", org, id), nil, nil, h)
- return h, resp, err
-}
-
-// GetRepoHook get a hook of a repository
-func (c *Client) GetRepoHook(user, repo string, id int64) (*Hook, *Response, error) {
- if err := escapeValidatePathSegments(&user, &repo); err != nil {
- return nil, nil, err
- }
- h := new(Hook)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/repos/%s/%s/hooks/%d", user, repo, id), nil, nil, h)
- return h, resp, err
-}
-
-// CreateHookOption options when create a hook
-type CreateHookOption struct {
- Type HookType `json:"type"`
- Config map[string]string `json:"config"`
- Events []string `json:"events"`
- BranchFilter string `json:"branch_filter"`
- Active bool `json:"active"`
-}
-
-// Validate the CreateHookOption struct
-func (opt CreateHookOption) Validate() error {
- if len(opt.Type) == 0 {
- return fmt.Errorf("hook type needed")
- }
- return nil
-}
-
-// CreateOrgHook create one hook for an organization, with options
-func (c *Client) CreateOrgHook(org string, opt CreateHookOption) (*Hook, *Response, error) {
- if err := escapeValidatePathSegments(&org); err != nil {
- return nil, nil, err
- }
- if err := opt.Validate(); err != nil {
- return nil, nil, err
- }
- body, err := json.Marshal(&opt)
- if err != nil {
- return nil, nil, err
- }
- h := new(Hook)
- resp, err := c.getParsedResponse("POST", fmt.Sprintf("/orgs/%s/hooks", org), jsonHeader, bytes.NewReader(body), h)
- return h, resp, err
-}
-
-// CreateRepoHook create one hook for a repository, with options
-func (c *Client) CreateRepoHook(user, repo string, opt CreateHookOption) (*Hook, *Response, error) {
- if err := escapeValidatePathSegments(&user, &repo); err != nil {
- return nil, nil, err
- }
- body, err := json.Marshal(&opt)
- if err != nil {
- return nil, nil, err
- }
- h := new(Hook)
- resp, err := c.getParsedResponse("POST", fmt.Sprintf("/repos/%s/%s/hooks", user, repo), jsonHeader, bytes.NewReader(body), h)
- return h, resp, err
-}
-
-// EditHookOption options when modify one hook
-type EditHookOption struct {
- Config map[string]string `json:"config"`
- Events []string `json:"events"`
- BranchFilter string `json:"branch_filter"`
- Active *bool `json:"active"`
-}
-
-// EditOrgHook modify one hook of an organization, with hook id and options
-func (c *Client) EditOrgHook(org string, id int64, opt EditHookOption) (*Response, error) {
- if err := escapeValidatePathSegments(&org); err != nil {
- return nil, err
- }
- body, err := json.Marshal(&opt)
- if err != nil {
- return nil, err
- }
- _, resp, err := c.getResponse("PATCH", fmt.Sprintf("/orgs/%s/hooks/%d", org, id), jsonHeader, bytes.NewReader(body))
- return resp, err
-}
-
-// EditRepoHook modify one hook of a repository, with hook id and options
-func (c *Client) EditRepoHook(user, repo string, id int64, opt EditHookOption) (*Response, error) {
- if err := escapeValidatePathSegments(&user, &repo); err != nil {
- return nil, err
- }
- body, err := json.Marshal(&opt)
- if err != nil {
- return nil, err
- }
- _, resp, err := c.getResponse("PATCH", fmt.Sprintf("/repos/%s/%s/hooks/%d", user, repo, id), jsonHeader, bytes.NewReader(body))
- return resp, err
-}
-
-// DeleteOrgHook delete one hook from an organization, with hook id
-func (c *Client) DeleteOrgHook(org string, id int64) (*Response, error) {
- if err := escapeValidatePathSegments(&org); err != nil {
- return nil, err
- }
- _, resp, err := c.getResponse("DELETE", fmt.Sprintf("/orgs/%s/hooks/%d", org, id), nil, nil)
- return resp, err
-}
-
-// DeleteRepoHook delete one hook from a repository, with hook id
-func (c *Client) DeleteRepoHook(user, repo string, id int64) (*Response, error) {
- if err := escapeValidatePathSegments(&user, &repo); err != nil {
- return nil, err
- }
- _, resp, err := c.getResponse("DELETE", fmt.Sprintf("/repos/%s/%s/hooks/%d", user, repo, id), nil, nil)
- return resp, err
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/issue.go b/vendor/code.gitea.io/sdk/gitea/issue.go
deleted file mode 100644
index c33856a4da..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/issue.go
+++ /dev/null
@@ -1,288 +0,0 @@
-// Copyright 2016 The Gogs Authors. All rights reserved.
-// Copyright 2019 The Gitea Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea
-
-import (
- "bytes"
- "encoding/json"
- "fmt"
- "net/url"
- "strings"
- "time"
-)
-
-// PullRequestMeta PR info if an issue is a PR
-type PullRequestMeta struct {
- HasMerged bool `json:"merged"`
- Merged *time.Time `json:"merged_at"`
-}
-
-// RepositoryMeta basic repository information
-type RepositoryMeta struct {
- ID int64 `json:"id"`
- Name string `json:"name"`
- Owner string `json:"owner"`
- FullName string `json:"full_name"`
-}
-
-// Issue represents an issue in a repository
-type Issue struct {
- ID int64 `json:"id"`
- URL string `json:"url"`
- HTMLURL string `json:"html_url"`
- Index int64 `json:"number"`
- Poster *User `json:"user"`
- OriginalAuthor string `json:"original_author"`
- OriginalAuthorID int64 `json:"original_author_id"`
- Title string `json:"title"`
- Body string `json:"body"`
- Ref string `json:"ref"`
- Labels []*Label `json:"labels"`
- Milestone *Milestone `json:"milestone"`
- Assignees []*User `json:"assignees"`
- // Whether the issue is open or closed
- State StateType `json:"state"`
- IsLocked bool `json:"is_locked"`
- Comments int `json:"comments"`
- Created time.Time `json:"created_at"`
- Updated time.Time `json:"updated_at"`
- Closed *time.Time `json:"closed_at"`
- Deadline *time.Time `json:"due_date"`
- PullRequest *PullRequestMeta `json:"pull_request"`
- Repository *RepositoryMeta `json:"repository"`
-}
-
-// ListIssueOption list issue options
-type ListIssueOption struct {
- ListOptions
- State StateType
- Type IssueType
- Labels []string
- Milestones []string
- KeyWord string
- Since time.Time
- Before time.Time
- // filter by created by username
- CreatedBy string
- // filter by assigned to username
- AssignedBy string
- // filter by username mentioned
- MentionedBy string
-}
-
-// StateType issue state type
-type StateType string
-
-const (
- // StateOpen pr/issue is opend
- StateOpen StateType = "open"
- // StateClosed pr/issue is closed
- StateClosed StateType = "closed"
- // StateAll is all
- StateAll StateType = "all"
-)
-
-// IssueType is issue a pull or only an issue
-type IssueType string
-
-const (
- // IssueTypeAll pr and issue
- IssueTypeAll IssueType = ""
- // IssueTypeIssue only issues
- IssueTypeIssue IssueType = "issues"
- // IssueTypePull only pulls
- IssueTypePull IssueType = "pulls"
-)
-
-// QueryEncode turns options into querystring argument
-func (opt *ListIssueOption) QueryEncode() string {
- query := opt.getURLQuery()
-
- if len(opt.State) > 0 {
- query.Add("state", string(opt.State))
- }
-
- if len(opt.Labels) > 0 {
- query.Add("labels", strings.Join(opt.Labels, ","))
- }
-
- if len(opt.KeyWord) > 0 {
- query.Add("q", opt.KeyWord)
- }
-
- query.Add("type", string(opt.Type))
-
- if len(opt.Milestones) > 0 {
- query.Add("milestones", strings.Join(opt.Milestones, ","))
- }
-
- if !opt.Since.IsZero() {
- query.Add("since", opt.Since.Format(time.RFC3339))
- }
- if !opt.Before.IsZero() {
- query.Add("before", opt.Before.Format(time.RFC3339))
- }
-
- if len(opt.CreatedBy) > 0 {
- query.Add("created_by", opt.CreatedBy)
- }
- if len(opt.AssignedBy) > 0 {
- query.Add("assigned_by", opt.AssignedBy)
- }
- if len(opt.MentionedBy) > 0 {
- query.Add("mentioned_by", opt.MentionedBy)
- }
-
- return query.Encode()
-}
-
-// ListIssues returns all issues assigned the authenticated user
-func (c *Client) ListIssues(opt ListIssueOption) ([]*Issue, *Response, error) {
- opt.setDefaults()
- issues := make([]*Issue, 0, opt.PageSize)
-
- link, _ := url.Parse("/repos/issues/search")
- link.RawQuery = opt.QueryEncode()
- resp, err := c.getParsedResponse("GET", link.String(), jsonHeader, nil, &issues)
- if e := c.checkServerVersionGreaterThanOrEqual(version1_12_0); e != nil {
- for i := 0; i < len(issues); i++ {
- if issues[i].Repository != nil {
- issues[i].Repository.Owner = strings.Split(issues[i].Repository.FullName, "/")[0]
- }
- }
- }
- for i := range issues {
- c.issueBackwardsCompatibility(issues[i])
- }
- return issues, resp, err
-}
-
-// ListRepoIssues returns all issues for a given repository
-func (c *Client) ListRepoIssues(owner, repo string, opt ListIssueOption) ([]*Issue, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, nil, err
- }
- opt.setDefaults()
- issues := make([]*Issue, 0, opt.PageSize)
-
- link, _ := url.Parse(fmt.Sprintf("/repos/%s/%s/issues", owner, repo))
- link.RawQuery = opt.QueryEncode()
- resp, err := c.getParsedResponse("GET", link.String(), jsonHeader, nil, &issues)
- if e := c.checkServerVersionGreaterThanOrEqual(version1_12_0); e != nil {
- for i := 0; i < len(issues); i++ {
- if issues[i].Repository != nil {
- issues[i].Repository.Owner = strings.Split(issues[i].Repository.FullName, "/")[0]
- }
- }
- }
- for i := range issues {
- c.issueBackwardsCompatibility(issues[i])
- }
- return issues, resp, err
-}
-
-// GetIssue returns a single issue for a given repository
-func (c *Client) GetIssue(owner, repo string, index int64) (*Issue, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, nil, err
- }
- issue := new(Issue)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/repos/%s/%s/issues/%d", owner, repo, index), nil, nil, issue)
- if e := c.checkServerVersionGreaterThanOrEqual(version1_12_0); e != nil && issue.Repository != nil {
- issue.Repository.Owner = strings.Split(issue.Repository.FullName, "/")[0]
- }
- c.issueBackwardsCompatibility(issue)
- return issue, resp, err
-}
-
-// CreateIssueOption options to create one issue
-type CreateIssueOption struct {
- Title string `json:"title"`
- Body string `json:"body"`
- Ref string `json:"ref"`
- Assignees []string `json:"assignees"`
- Deadline *time.Time `json:"due_date"`
- // milestone id
- Milestone int64 `json:"milestone"`
- // list of label ids
- Labels []int64 `json:"labels"`
- Closed bool `json:"closed"`
-}
-
-// Validate the CreateIssueOption struct
-func (opt CreateIssueOption) Validate() error {
- if len(strings.TrimSpace(opt.Title)) == 0 {
- return fmt.Errorf("title is empty")
- }
- return nil
-}
-
-// CreateIssue create a new issue for a given repository
-func (c *Client) CreateIssue(owner, repo string, opt CreateIssueOption) (*Issue, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, nil, err
- }
- if err := opt.Validate(); err != nil {
- return nil, nil, err
- }
- body, err := json.Marshal(&opt)
- if err != nil {
- return nil, nil, err
- }
- issue := new(Issue)
- resp, err := c.getParsedResponse("POST", fmt.Sprintf("/repos/%s/%s/issues", owner, repo),
- jsonHeader, bytes.NewReader(body), issue)
- c.issueBackwardsCompatibility(issue)
- return issue, resp, err
-}
-
-// EditIssueOption options for editing an issue
-type EditIssueOption struct {
- Title string `json:"title"`
- Body *string `json:"body"`
- Ref *string `json:"ref"`
- Assignees []string `json:"assignees"`
- Milestone *int64 `json:"milestone"`
- State *StateType `json:"state"`
- Deadline *time.Time `json:"due_date"`
- RemoveDeadline *bool `json:"unset_due_date"`
-}
-
-// Validate the EditIssueOption struct
-func (opt EditIssueOption) Validate() error {
- if len(opt.Title) != 0 && len(strings.TrimSpace(opt.Title)) == 0 {
- return fmt.Errorf("title is empty")
- }
- return nil
-}
-
-// EditIssue modify an existing issue for a given repository
-func (c *Client) EditIssue(owner, repo string, index int64, opt EditIssueOption) (*Issue, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, nil, err
- }
- if err := opt.Validate(); err != nil {
- return nil, nil, err
- }
- body, err := json.Marshal(&opt)
- if err != nil {
- return nil, nil, err
- }
- issue := new(Issue)
- resp, err := c.getParsedResponse("PATCH",
- fmt.Sprintf("/repos/%s/%s/issues/%d", owner, repo, index),
- jsonHeader, bytes.NewReader(body), issue)
- c.issueBackwardsCompatibility(issue)
- return issue, resp, err
-}
-
-func (c *Client) issueBackwardsCompatibility(issue *Issue) {
- if c.checkServerVersionGreaterThanOrEqual(version1_12_0) != nil {
- c.mutex.RLock()
- issue.HTMLURL = fmt.Sprintf("%s/%s/issues/%d", c.url, issue.Repository.FullName, issue.Index)
- c.mutex.RUnlock()
- }
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/issue_comment.go b/vendor/code.gitea.io/sdk/gitea/issue_comment.go
deleted file mode 100644
index 8131a6edc2..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/issue_comment.go
+++ /dev/null
@@ -1,154 +0,0 @@
-// Copyright 2016 The Gogs Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea
-
-import (
- "bytes"
- "encoding/json"
- "fmt"
- "net/url"
- "time"
-)
-
-// Comment represents a comment on a commit or issue
-type Comment struct {
- ID int64 `json:"id"`
- HTMLURL string `json:"html_url"`
- PRURL string `json:"pull_request_url"`
- IssueURL string `json:"issue_url"`
- Poster *User `json:"user"`
- OriginalAuthor string `json:"original_author"`
- OriginalAuthorID int64 `json:"original_author_id"`
- Body string `json:"body"`
- Created time.Time `json:"created_at"`
- Updated time.Time `json:"updated_at"`
-}
-
-// ListIssueCommentOptions list comment options
-type ListIssueCommentOptions struct {
- ListOptions
- Since time.Time
- Before time.Time
-}
-
-// QueryEncode turns options into querystring argument
-func (opt *ListIssueCommentOptions) QueryEncode() string {
- query := opt.getURLQuery()
- if !opt.Since.IsZero() {
- query.Add("since", opt.Since.Format(time.RFC3339))
- }
- if !opt.Before.IsZero() {
- query.Add("before", opt.Before.Format(time.RFC3339))
- }
- return query.Encode()
-}
-
-// ListIssueComments list comments on an issue.
-func (c *Client) ListIssueComments(owner, repo string, index int64, opt ListIssueCommentOptions) ([]*Comment, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, nil, err
- }
- opt.setDefaults()
- link, _ := url.Parse(fmt.Sprintf("/repos/%s/%s/issues/%d/comments", owner, repo, index))
- link.RawQuery = opt.QueryEncode()
- comments := make([]*Comment, 0, opt.PageSize)
- resp, err := c.getParsedResponse("GET", link.String(), nil, nil, &comments)
- return comments, resp, err
-}
-
-// ListRepoIssueComments list comments for a given repo.
-func (c *Client) ListRepoIssueComments(owner, repo string, opt ListIssueCommentOptions) ([]*Comment, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, nil, err
- }
- opt.setDefaults()
- link, _ := url.Parse(fmt.Sprintf("/repos/%s/%s/issues/comments", owner, repo))
- link.RawQuery = opt.QueryEncode()
- comments := make([]*Comment, 0, opt.PageSize)
- resp, err := c.getParsedResponse("GET", link.String(), nil, nil, &comments)
- return comments, resp, err
-}
-
-// GetIssueComment get a comment for a given repo by id.
-func (c *Client) GetIssueComment(owner, repo string, id int64) (*Comment, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, nil, err
- }
- comment := new(Comment)
- if err := c.checkServerVersionGreaterThanOrEqual(version1_12_0); err != nil {
- return comment, nil, err
- }
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/repos/%s/%s/issues/comments/%d", owner, repo, id), nil, nil, &comment)
- return comment, resp, err
-}
-
-// CreateIssueCommentOption options for creating a comment on an issue
-type CreateIssueCommentOption struct {
- Body string `json:"body"`
-}
-
-// Validate the CreateIssueCommentOption struct
-func (opt CreateIssueCommentOption) Validate() error {
- if len(opt.Body) == 0 {
- return fmt.Errorf("body is empty")
- }
- return nil
-}
-
-// CreateIssueComment create comment on an issue.
-func (c *Client) CreateIssueComment(owner, repo string, index int64, opt CreateIssueCommentOption) (*Comment, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, nil, err
- }
- if err := opt.Validate(); err != nil {
- return nil, nil, err
- }
- body, err := json.Marshal(&opt)
- if err != nil {
- return nil, nil, err
- }
- comment := new(Comment)
- resp, err := c.getParsedResponse("POST", fmt.Sprintf("/repos/%s/%s/issues/%d/comments", owner, repo, index), jsonHeader, bytes.NewReader(body), comment)
- return comment, resp, err
-}
-
-// EditIssueCommentOption options for editing a comment
-type EditIssueCommentOption struct {
- Body string `json:"body"`
-}
-
-// Validate the EditIssueCommentOption struct
-func (opt EditIssueCommentOption) Validate() error {
- if len(opt.Body) == 0 {
- return fmt.Errorf("body is empty")
- }
- return nil
-}
-
-// EditIssueComment edits an issue comment.
-func (c *Client) EditIssueComment(owner, repo string, commentID int64, opt EditIssueCommentOption) (*Comment, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, nil, err
- }
- if err := opt.Validate(); err != nil {
- return nil, nil, err
- }
- body, err := json.Marshal(&opt)
- if err != nil {
- return nil, nil, err
- }
- comment := new(Comment)
- resp, err := c.getParsedResponse("PATCH", fmt.Sprintf("/repos/%s/%s/issues/comments/%d", owner, repo, commentID), jsonHeader, bytes.NewReader(body), comment)
- return comment, resp, err
-}
-
-// DeleteIssueComment deletes an issue comment.
-func (c *Client) DeleteIssueComment(owner, repo string, commentID int64) (*Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, err
- }
- _, resp, err := c.getResponse("DELETE", fmt.Sprintf("/repos/%s/%s/issues/comments/%d", owner, repo, commentID), nil, nil)
- return resp, err
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/issue_label.go b/vendor/code.gitea.io/sdk/gitea/issue_label.go
deleted file mode 100644
index f343ee5ef6..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/issue_label.go
+++ /dev/null
@@ -1,211 +0,0 @@
-// Copyright 2016 The Gogs Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea
-
-import (
- "bytes"
- "encoding/json"
- "fmt"
- "regexp"
- "strings"
-)
-
-// Label a label to an issue or a pr
-type Label struct {
- ID int64 `json:"id"`
- Name string `json:"name"`
- // example: 00aabb
- Color string `json:"color"`
- Description string `json:"description"`
- URL string `json:"url"`
-}
-
-// ListLabelsOptions options for listing repository's labels
-type ListLabelsOptions struct {
- ListOptions
-}
-
-// ListRepoLabels list labels of one repository
-func (c *Client) ListRepoLabels(owner, repo string, opt ListLabelsOptions) ([]*Label, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, nil, err
- }
- opt.setDefaults()
- labels := make([]*Label, 0, opt.PageSize)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/repos/%s/%s/labels?%s", owner, repo, opt.getURLQuery().Encode()), nil, nil, &labels)
- return labels, resp, err
-}
-
-// GetRepoLabel get one label of repository by repo it
-func (c *Client) GetRepoLabel(owner, repo string, id int64) (*Label, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, nil, err
- }
- label := new(Label)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/repos/%s/%s/labels/%d", owner, repo, id), nil, nil, label)
- return label, resp, err
-}
-
-// CreateLabelOption options for creating a label
-type CreateLabelOption struct {
- Name string `json:"name"`
- // example: #00aabb
- Color string `json:"color"`
- Description string `json:"description"`
-}
-
-// Validate the CreateLabelOption struct
-func (opt CreateLabelOption) Validate() error {
- aw, err := regexp.MatchString("^#?[0-9,a-f,A-F]{6}$", opt.Color)
- if err != nil {
- return err
- }
- if !aw {
- return fmt.Errorf("invalid color format")
- }
- if len(strings.TrimSpace(opt.Name)) == 0 {
- return fmt.Errorf("empty name not allowed")
- }
- return nil
-}
-
-// CreateLabel create one label of repository
-func (c *Client) CreateLabel(owner, repo string, opt CreateLabelOption) (*Label, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, nil, err
- }
- if err := opt.Validate(); err != nil {
- return nil, nil, err
- }
- if len(opt.Color) == 6 {
- if err := c.checkServerVersionGreaterThanOrEqual(version1_12_0); err != nil {
- opt.Color = "#" + opt.Color
- }
- }
- body, err := json.Marshal(&opt)
- if err != nil {
- return nil, nil, err
- }
- label := new(Label)
- resp, err := c.getParsedResponse("POST",
- fmt.Sprintf("/repos/%s/%s/labels", owner, repo),
- jsonHeader, bytes.NewReader(body), label)
- return label, resp, err
-}
-
-// EditLabelOption options for editing a label
-type EditLabelOption struct {
- Name *string `json:"name"`
- Color *string `json:"color"`
- Description *string `json:"description"`
-}
-
-// Validate the EditLabelOption struct
-func (opt EditLabelOption) Validate() error {
- if opt.Color != nil {
- aw, err := regexp.MatchString("^#?[0-9,a-f,A-F]{6}$", *opt.Color)
- if err != nil {
- return err
- }
- if !aw {
- return fmt.Errorf("invalid color format")
- }
- }
- if opt.Name != nil {
- if len(strings.TrimSpace(*opt.Name)) == 0 {
- return fmt.Errorf("empty name not allowed")
- }
- }
- return nil
-}
-
-// EditLabel modify one label with options
-func (c *Client) EditLabel(owner, repo string, id int64, opt EditLabelOption) (*Label, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, nil, err
- }
- if err := opt.Validate(); err != nil {
- return nil, nil, err
- }
- body, err := json.Marshal(&opt)
- if err != nil {
- return nil, nil, err
- }
- label := new(Label)
- resp, err := c.getParsedResponse("PATCH", fmt.Sprintf("/repos/%s/%s/labels/%d", owner, repo, id), jsonHeader, bytes.NewReader(body), label)
- return label, resp, err
-}
-
-// DeleteLabel delete one label of repository by id
-func (c *Client) DeleteLabel(owner, repo string, id int64) (*Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, err
- }
- _, resp, err := c.getResponse("DELETE", fmt.Sprintf("/repos/%s/%s/labels/%d", owner, repo, id), nil, nil)
- return resp, err
-}
-
-// GetIssueLabels get labels of one issue via issue id
-func (c *Client) GetIssueLabels(owner, repo string, index int64, opts ListLabelsOptions) ([]*Label, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, nil, err
- }
- labels := make([]*Label, 0, 5)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/repos/%s/%s/issues/%d/labels?%s", owner, repo, index, opts.getURLQuery().Encode()), nil, nil, &labels)
- return labels, resp, err
-}
-
-// IssueLabelsOption a collection of labels
-type IssueLabelsOption struct {
- // list of label IDs
- Labels []int64 `json:"labels"`
-}
-
-// AddIssueLabels add one or more labels to one issue
-func (c *Client) AddIssueLabels(owner, repo string, index int64, opt IssueLabelsOption) ([]*Label, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, nil, err
- }
- body, err := json.Marshal(&opt)
- if err != nil {
- return nil, nil, err
- }
- var labels []*Label
- resp, err := c.getParsedResponse("POST", fmt.Sprintf("/repos/%s/%s/issues/%d/labels", owner, repo, index), jsonHeader, bytes.NewReader(body), &labels)
- return labels, resp, err
-}
-
-// ReplaceIssueLabels replace old labels of issue with new labels
-func (c *Client) ReplaceIssueLabels(owner, repo string, index int64, opt IssueLabelsOption) ([]*Label, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, nil, err
- }
- body, err := json.Marshal(&opt)
- if err != nil {
- return nil, nil, err
- }
- var labels []*Label
- resp, err := c.getParsedResponse("PUT", fmt.Sprintf("/repos/%s/%s/issues/%d/labels", owner, repo, index), jsonHeader, bytes.NewReader(body), &labels)
- return labels, resp, err
-}
-
-// DeleteIssueLabel delete one label of one issue by issue id and label id
-// TODO: maybe we need delete by label name and issue id
-func (c *Client) DeleteIssueLabel(owner, repo string, index, label int64) (*Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, err
- }
- _, resp, err := c.getResponse("DELETE", fmt.Sprintf("/repos/%s/%s/issues/%d/labels/%d", owner, repo, index, label), nil, nil)
- return resp, err
-}
-
-// ClearIssueLabels delete all the labels of one issue.
-func (c *Client) ClearIssueLabels(owner, repo string, index int64) (*Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, err
- }
- _, resp, err := c.getResponse("DELETE", fmt.Sprintf("/repos/%s/%s/issues/%d/labels", owner, repo, index), nil, nil)
- return resp, err
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/issue_milestone.go b/vendor/code.gitea.io/sdk/gitea/issue_milestone.go
deleted file mode 100644
index dfb5720a0c..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/issue_milestone.go
+++ /dev/null
@@ -1,237 +0,0 @@
-// Copyright 2016 The Gogs Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea
-
-import (
- "bytes"
- "encoding/json"
- "fmt"
- "net/url"
- "strings"
- "time"
-)
-
-// Milestone milestone is a collection of issues on one repository
-type Milestone struct {
- ID int64 `json:"id"`
- Title string `json:"title"`
- Description string `json:"description"`
- State StateType `json:"state"`
- OpenIssues int `json:"open_issues"`
- ClosedIssues int `json:"closed_issues"`
- Created time.Time `json:"created_at"`
- Updated *time.Time `json:"updated_at"`
- Closed *time.Time `json:"closed_at"`
- Deadline *time.Time `json:"due_on"`
-}
-
-// ListMilestoneOption list milestone options
-type ListMilestoneOption struct {
- ListOptions
- // open, closed, all
- State StateType
- Name string
-}
-
-// QueryEncode turns options into querystring argument
-func (opt *ListMilestoneOption) QueryEncode() string {
- query := opt.getURLQuery()
- if opt.State != "" {
- query.Add("state", string(opt.State))
- }
- if len(opt.Name) != 0 {
- query.Add("name", opt.Name)
- }
- return query.Encode()
-}
-
-// ListRepoMilestones list all the milestones of one repository
-func (c *Client) ListRepoMilestones(owner, repo string, opt ListMilestoneOption) ([]*Milestone, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, nil, err
- }
- opt.setDefaults()
- milestones := make([]*Milestone, 0, opt.PageSize)
-
- link, _ := url.Parse(fmt.Sprintf("/repos/%s/%s/milestones", owner, repo))
- link.RawQuery = opt.QueryEncode()
- resp, err := c.getParsedResponse("GET", link.String(), nil, nil, &milestones)
- return milestones, resp, err
-}
-
-// GetMilestone get one milestone by repo name and milestone id
-func (c *Client) GetMilestone(owner, repo string, id int64) (*Milestone, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, nil, err
- }
- milestone := new(Milestone)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/repos/%s/%s/milestones/%d", owner, repo, id), nil, nil, milestone)
- return milestone, resp, err
-}
-
-// GetMilestoneByName get one milestone by repo and milestone name
-func (c *Client) GetMilestoneByName(owner, repo string, name string) (*Milestone, *Response, error) {
- if c.checkServerVersionGreaterThanOrEqual(version1_13_0) != nil {
- // backwards compatibility mode
- m, resp, err := c.resolveMilestoneByName(owner, repo, name)
- return m, resp, err
- }
- if err := escapeValidatePathSegments(&owner, &repo, &name); err != nil {
- return nil, nil, err
- }
- milestone := new(Milestone)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/repos/%s/%s/milestones/%s", owner, repo, name), nil, nil, milestone)
- return milestone, resp, err
-}
-
-// CreateMilestoneOption options for creating a milestone
-type CreateMilestoneOption struct {
- Title string `json:"title"`
- Description string `json:"description"`
- State StateType `json:"state"`
- Deadline *time.Time `json:"due_on"`
-}
-
-// Validate the CreateMilestoneOption struct
-func (opt CreateMilestoneOption) Validate() error {
- if len(strings.TrimSpace(opt.Title)) == 0 {
- return fmt.Errorf("title is empty")
- }
- return nil
-}
-
-// CreateMilestone create one milestone with options
-func (c *Client) CreateMilestone(owner, repo string, opt CreateMilestoneOption) (*Milestone, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, nil, err
- }
- if err := opt.Validate(); err != nil {
- return nil, nil, err
- }
- body, err := json.Marshal(&opt)
- if err != nil {
- return nil, nil, err
- }
- milestone := new(Milestone)
- resp, err := c.getParsedResponse("POST", fmt.Sprintf("/repos/%s/%s/milestones", owner, repo), jsonHeader, bytes.NewReader(body), milestone)
-
- // make creating closed milestones need gitea >= v1.13.0
- // this make it backwards compatible
- if err == nil && opt.State == StateClosed && milestone.State != StateClosed {
- closed := StateClosed
- return c.EditMilestone(owner, repo, milestone.ID, EditMilestoneOption{
- State: &closed,
- })
- }
-
- return milestone, resp, err
-}
-
-// EditMilestoneOption options for editing a milestone
-type EditMilestoneOption struct {
- Title string `json:"title"`
- Description *string `json:"description"`
- State *StateType `json:"state"`
- Deadline *time.Time `json:"due_on"`
-}
-
-// Validate the EditMilestoneOption struct
-func (opt EditMilestoneOption) Validate() error {
- if len(opt.Title) != 0 && len(strings.TrimSpace(opt.Title)) == 0 {
- return fmt.Errorf("title is empty")
- }
- return nil
-}
-
-// EditMilestone modify milestone with options
-func (c *Client) EditMilestone(owner, repo string, id int64, opt EditMilestoneOption) (*Milestone, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, nil, err
- }
- if err := opt.Validate(); err != nil {
- return nil, nil, err
- }
- body, err := json.Marshal(&opt)
- if err != nil {
- return nil, nil, err
- }
- milestone := new(Milestone)
- resp, err := c.getParsedResponse("PATCH", fmt.Sprintf("/repos/%s/%s/milestones/%d", owner, repo, id), jsonHeader, bytes.NewReader(body), milestone)
- return milestone, resp, err
-}
-
-// EditMilestoneByName modify milestone with options
-func (c *Client) EditMilestoneByName(owner, repo string, name string, opt EditMilestoneOption) (*Milestone, *Response, error) {
- if c.checkServerVersionGreaterThanOrEqual(version1_13_0) != nil {
- // backwards compatibility mode
- m, _, err := c.resolveMilestoneByName(owner, repo, name)
- if err != nil {
- return nil, nil, err
- }
- return c.EditMilestone(owner, repo, m.ID, opt)
- }
- if err := escapeValidatePathSegments(&owner, &repo, &name); err != nil {
- return nil, nil, err
- }
- if err := opt.Validate(); err != nil {
- return nil, nil, err
- }
- body, err := json.Marshal(&opt)
- if err != nil {
- return nil, nil, err
- }
- milestone := new(Milestone)
- resp, err := c.getParsedResponse("PATCH", fmt.Sprintf("/repos/%s/%s/milestones/%s", owner, repo, name), jsonHeader, bytes.NewReader(body), milestone)
- return milestone, resp, err
-}
-
-// DeleteMilestone delete one milestone by id
-func (c *Client) DeleteMilestone(owner, repo string, id int64) (*Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, err
- }
- _, resp, err := c.getResponse("DELETE", fmt.Sprintf("/repos/%s/%s/milestones/%d", owner, repo, id), nil, nil)
- return resp, err
-}
-
-// DeleteMilestoneByName delete one milestone by name
-func (c *Client) DeleteMilestoneByName(owner, repo string, name string) (*Response, error) {
- if c.checkServerVersionGreaterThanOrEqual(version1_13_0) != nil {
- // backwards compatibility mode
- m, _, err := c.resolveMilestoneByName(owner, repo, name)
- if err != nil {
- return nil, err
- }
- return c.DeleteMilestone(owner, repo, m.ID)
- }
- if err := escapeValidatePathSegments(&owner, &repo, &name); err != nil {
- return nil, err
- }
- _, resp, err := c.getResponse("DELETE", fmt.Sprintf("/repos/%s/%s/milestones/%s", owner, repo, name), nil, nil)
- return resp, err
-}
-
-// resolveMilestoneByName is a fallback method to find milestone id by name
-func (c *Client) resolveMilestoneByName(owner, repo, name string) (*Milestone, *Response, error) {
- for i := 1; ; i++ {
- miles, resp, err := c.ListRepoMilestones(owner, repo, ListMilestoneOption{
- ListOptions: ListOptions{
- Page: i,
- },
- State: "all",
- })
- if err != nil {
- return nil, nil, err
- }
- if len(miles) == 0 {
- return nil, nil, fmt.Errorf("milestone '%s' do not exist", name)
- }
- for _, m := range miles {
- if strings.ToLower(strings.TrimSpace(m.Title)) == strings.ToLower(strings.TrimSpace(name)) {
- return m, resp, nil
- }
- }
- }
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/issue_reaction.go b/vendor/code.gitea.io/sdk/gitea/issue_reaction.go
deleted file mode 100644
index b45c066646..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/issue_reaction.go
+++ /dev/null
@@ -1,104 +0,0 @@
-// Copyright 2020 The Gitea Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea
-
-import (
- "bytes"
- "encoding/json"
- "fmt"
- "time"
-)
-
-// Reaction contain one reaction
-type Reaction struct {
- User *User `json:"user"`
- Reaction string `json:"content"`
- Created time.Time `json:"created_at"`
-}
-
-// GetIssueReactions get a list reactions of an issue
-func (c *Client) GetIssueReactions(owner, repo string, index int64) ([]*Reaction, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, nil, err
- }
- reactions := make([]*Reaction, 0, 10)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/repos/%s/%s/issues/%d/reactions", owner, repo, index), nil, nil, &reactions)
- return reactions, resp, err
-}
-
-// GetIssueCommentReactions get a list of reactions from a comment of an issue
-func (c *Client) GetIssueCommentReactions(owner, repo string, commentID int64) ([]*Reaction, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, nil, err
- }
- reactions := make([]*Reaction, 0, 10)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/repos/%s/%s/issues/comments/%d/reactions", owner, repo, commentID), nil, nil, &reactions)
- return reactions, resp, err
-}
-
-// editReactionOption contain the reaction type
-type editReactionOption struct {
- Reaction string `json:"content"`
-}
-
-// PostIssueReaction add a reaction to an issue
-func (c *Client) PostIssueReaction(owner, repo string, index int64, reaction string) (*Reaction, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, nil, err
- }
- reactionResponse := new(Reaction)
- body, err := json.Marshal(&editReactionOption{Reaction: reaction})
- if err != nil {
- return nil, nil, err
- }
- resp, err := c.getParsedResponse("POST",
- fmt.Sprintf("/repos/%s/%s/issues/%d/reactions", owner, repo, index),
- jsonHeader, bytes.NewReader(body), reactionResponse)
- return reactionResponse, resp, err
-}
-
-// DeleteIssueReaction remove a reaction from an issue
-func (c *Client) DeleteIssueReaction(owner, repo string, index int64, reaction string) (*Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, err
- }
- body, err := json.Marshal(&editReactionOption{Reaction: reaction})
- if err != nil {
- return nil, err
- }
- _, resp, err := c.getResponse("DELETE", fmt.Sprintf("/repos/%s/%s/issues/%d/reactions", owner, repo, index), jsonHeader, bytes.NewReader(body))
- return resp, err
-}
-
-// PostIssueCommentReaction add a reaction to a comment of an issue
-func (c *Client) PostIssueCommentReaction(owner, repo string, commentID int64, reaction string) (*Reaction, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, nil, err
- }
- reactionResponse := new(Reaction)
- body, err := json.Marshal(&editReactionOption{Reaction: reaction})
- if err != nil {
- return nil, nil, err
- }
- resp, err := c.getParsedResponse("POST",
- fmt.Sprintf("/repos/%s/%s/issues/comments/%d/reactions", owner, repo, commentID),
- jsonHeader, bytes.NewReader(body), reactionResponse)
- return reactionResponse, resp, err
-}
-
-// DeleteIssueCommentReaction remove a reaction from a comment of an issue
-func (c *Client) DeleteIssueCommentReaction(owner, repo string, commentID int64, reaction string) (*Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, err
- }
- body, err := json.Marshal(&editReactionOption{Reaction: reaction})
- if err != nil {
- return nil, err
- }
- _, resp, err := c.getResponse("DELETE",
- fmt.Sprintf("/repos/%s/%s/issues/comments/%d/reactions", owner, repo, commentID),
- jsonHeader, bytes.NewReader(body))
- return resp, err
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/issue_stopwatch.go b/vendor/code.gitea.io/sdk/gitea/issue_stopwatch.go
deleted file mode 100644
index ebb0b8ae40..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/issue_stopwatch.go
+++ /dev/null
@@ -1,57 +0,0 @@
-// Copyright 2020 The Gitea Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea
-
-import (
- "fmt"
- "time"
-)
-
-// StopWatch represents a running stopwatch of an issue / pr
-type StopWatch struct {
- Created time.Time `json:"created"`
- Seconds int64 `json:"seconds"`
- Duration string `json:"duration"`
- IssueIndex int64 `json:"issue_index"`
- IssueTitle string `json:"issue_title"`
- RepoOwnerName string `json:"repo_owner_name"`
- RepoName string `json:"repo_name"`
-}
-
-// GetMyStopwatches list all stopwatches
-func (c *Client) GetMyStopwatches() ([]*StopWatch, *Response, error) {
- stopwatches := make([]*StopWatch, 0, 1)
- resp, err := c.getParsedResponse("GET", "/user/stopwatches", nil, nil, &stopwatches)
- return stopwatches, resp, err
-}
-
-// DeleteIssueStopwatch delete / cancel a specific stopwatch
-func (c *Client) DeleteIssueStopwatch(owner, repo string, index int64) (*Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, err
- }
- _, resp, err := c.getResponse("DELETE", fmt.Sprintf("/repos/%s/%s/issues/%d/stopwatch/delete", owner, repo, index), nil, nil)
- return resp, err
-}
-
-// StartIssueStopWatch starts a stopwatch for an existing issue for a given
-// repository
-func (c *Client) StartIssueStopWatch(owner, repo string, index int64) (*Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, err
- }
- _, resp, err := c.getResponse("POST", fmt.Sprintf("/repos/%s/%s/issues/%d/stopwatch/start", owner, repo, index), nil, nil)
- return resp, err
-}
-
-// StopIssueStopWatch stops an existing stopwatch for an issue in a given
-// repository
-func (c *Client) StopIssueStopWatch(owner, repo string, index int64) (*Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, err
- }
- _, resp, err := c.getResponse("POST", fmt.Sprintf("/repos/%s/%s/issues/%d/stopwatch/stop", owner, repo, index), nil, nil)
- return resp, err
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/issue_subscription.go b/vendor/code.gitea.io/sdk/gitea/issue_subscription.go
deleted file mode 100644
index 86853c7186..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/issue_subscription.go
+++ /dev/null
@@ -1,87 +0,0 @@
-// Copyright 2020 The Gitea Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea
-
-import (
- "fmt"
- "net/http"
-)
-
-// GetIssueSubscribers get list of users who subscribed on an issue
-func (c *Client) GetIssueSubscribers(owner, repo string, index int64) ([]*User, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, nil, err
- }
- subscribers := make([]*User, 0, 10)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/repos/%s/%s/issues/%d/subscriptions", owner, repo, index), nil, nil, &subscribers)
- return subscribers, resp, err
-}
-
-// AddIssueSubscription Subscribe user to issue
-func (c *Client) AddIssueSubscription(owner, repo string, index int64, user string) (*Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo, &user); err != nil {
- return nil, err
- }
- status, resp, err := c.getStatusCode("PUT", fmt.Sprintf("/repos/%s/%s/issues/%d/subscriptions/%s", owner, repo, index, user), nil, nil)
- if err != nil {
- return resp, err
- }
- if status == http.StatusCreated {
- return resp, nil
- }
- if status == http.StatusOK {
- return resp, fmt.Errorf("already subscribed")
- }
- return resp, fmt.Errorf("unexpected Status: %d", status)
-}
-
-// DeleteIssueSubscription unsubscribe user from issue
-func (c *Client) DeleteIssueSubscription(owner, repo string, index int64, user string) (*Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo, &user); err != nil {
- return nil, err
- }
- status, resp, err := c.getStatusCode("DELETE", fmt.Sprintf("/repos/%s/%s/issues/%d/subscriptions/%s", owner, repo, index, user), nil, nil)
- if err != nil {
- return resp, err
- }
- if status == http.StatusCreated {
- return resp, nil
- }
- if status == http.StatusOK {
- return resp, fmt.Errorf("already unsubscribed")
- }
- return resp, fmt.Errorf("unexpected Status: %d", status)
-}
-
-// CheckIssueSubscription check if current user is subscribed to an issue
-func (c *Client) CheckIssueSubscription(owner, repo string, index int64) (*WatchInfo, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, nil, err
- }
- if err := c.checkServerVersionGreaterThanOrEqual(version1_12_0); err != nil {
- return nil, nil, err
- }
- wi := new(WatchInfo)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/repos/%s/%s/issues/%d/subscriptions/check", owner, repo, index), nil, nil, wi)
- return wi, resp, err
-}
-
-// IssueSubscribe subscribe current user to an issue
-func (c *Client) IssueSubscribe(owner, repo string, index int64) (*Response, error) {
- u, _, err := c.GetMyUserInfo()
- if err != nil {
- return nil, err
- }
- return c.AddIssueSubscription(owner, repo, index, u.UserName)
-}
-
-// IssueUnSubscribe unsubscribe current user from an issue
-func (c *Client) IssueUnSubscribe(owner, repo string, index int64) (*Response, error) {
- u, _, err := c.GetMyUserInfo()
- if err != nil {
- return nil, err
- }
- return c.DeleteIssueSubscription(owner, repo, index, u.UserName)
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/issue_tracked_time.go b/vendor/code.gitea.io/sdk/gitea/issue_tracked_time.go
deleted file mode 100644
index c558516237..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/issue_tracked_time.go
+++ /dev/null
@@ -1,142 +0,0 @@
-// Copyright 2017 The Gitea Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea
-
-import (
- "bytes"
- "encoding/json"
- "fmt"
- "net/url"
- "time"
-)
-
-// TrackedTime worked time for an issue / pr
-type TrackedTime struct {
- ID int64 `json:"id"`
- Created time.Time `json:"created"`
- // Time in seconds
- Time int64 `json:"time"`
- // deprecated (only for backwards compatibility)
- UserID int64 `json:"user_id"`
- UserName string `json:"user_name"`
- // deprecated (only for backwards compatibility)
- IssueID int64 `json:"issue_id"`
- Issue *Issue `json:"issue"`
-}
-
-// ListTrackedTimesOptions options for listing repository's tracked times
-type ListTrackedTimesOptions struct {
- ListOptions
- Since time.Time
- Before time.Time
- // User filter is only used by ListRepoTrackedTimes !!!
- User string
-}
-
-// QueryEncode turns options into querystring argument
-func (opt *ListTrackedTimesOptions) QueryEncode() string {
- query := opt.getURLQuery()
-
- if !opt.Since.IsZero() {
- query.Add("since", opt.Since.Format(time.RFC3339))
- }
- if !opt.Before.IsZero() {
- query.Add("before", opt.Before.Format(time.RFC3339))
- }
-
- if len(opt.User) != 0 {
- query.Add("user", opt.User)
- }
-
- return query.Encode()
-}
-
-// ListRepoTrackedTimes list tracked times of a repository
-func (c *Client) ListRepoTrackedTimes(owner, repo string, opt ListTrackedTimesOptions) ([]*TrackedTime, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, nil, err
- }
- link, _ := url.Parse(fmt.Sprintf("/repos/%s/%s/times", owner, repo))
- opt.setDefaults()
- link.RawQuery = opt.QueryEncode()
- times := make([]*TrackedTime, 0, opt.PageSize)
- resp, err := c.getParsedResponse("GET", link.String(), jsonHeader, nil, &times)
- return times, resp, err
-}
-
-// GetMyTrackedTimes list tracked times of the current user
-func (c *Client) GetMyTrackedTimes() ([]*TrackedTime, *Response, error) {
- times := make([]*TrackedTime, 0, 10)
- resp, err := c.getParsedResponse("GET", "/user/times", jsonHeader, nil, &times)
- return times, resp, err
-}
-
-// AddTimeOption options for adding time to an issue
-type AddTimeOption struct {
- // time in seconds
- Time int64 `json:"time"`
- // optional
- Created time.Time `json:"created"`
- // optional
- User string `json:"user_name"`
-}
-
-// Validate the AddTimeOption struct
-func (opt AddTimeOption) Validate() error {
- if opt.Time == 0 {
- return fmt.Errorf("no time to add")
- }
- return nil
-}
-
-// AddTime adds time to issue with the given index
-func (c *Client) AddTime(owner, repo string, index int64, opt AddTimeOption) (*TrackedTime, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, nil, err
- }
- if err := opt.Validate(); err != nil {
- return nil, nil, err
- }
- body, err := json.Marshal(&opt)
- if err != nil {
- return nil, nil, err
- }
- t := new(TrackedTime)
- resp, err := c.getParsedResponse("POST",
- fmt.Sprintf("/repos/%s/%s/issues/%d/times", owner, repo, index),
- jsonHeader, bytes.NewReader(body), t)
- return t, resp, err
-}
-
-// ListIssueTrackedTimes list tracked times of a single issue for a given repository
-func (c *Client) ListIssueTrackedTimes(owner, repo string, index int64, opt ListTrackedTimesOptions) ([]*TrackedTime, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, nil, err
- }
- link, _ := url.Parse(fmt.Sprintf("/repos/%s/%s/issues/%d/times", owner, repo, index))
- opt.setDefaults()
- link.RawQuery = opt.QueryEncode()
- times := make([]*TrackedTime, 0, opt.PageSize)
- resp, err := c.getParsedResponse("GET", link.String(), jsonHeader, nil, &times)
- return times, resp, err
-}
-
-// ResetIssueTime reset tracked time of a single issue for a given repository
-func (c *Client) ResetIssueTime(owner, repo string, index int64) (*Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, err
- }
- _, resp, err := c.getResponse("DELETE", fmt.Sprintf("/repos/%s/%s/issues/%d/times", owner, repo, index), jsonHeader, nil)
- return resp, err
-}
-
-// DeleteTime delete a specific tracked time by id of a single issue for a given repository
-func (c *Client) DeleteTime(owner, repo string, index, timeID int64) (*Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, err
- }
- _, resp, err := c.getResponse("DELETE", fmt.Sprintf("/repos/%s/%s/issues/%d/times/%d", owner, repo, index, timeID), jsonHeader, nil)
- return resp, err
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/list_options.go b/vendor/code.gitea.io/sdk/gitea/list_options.go
deleted file mode 100644
index 6f3ffb2313..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/list_options.go
+++ /dev/null
@@ -1,42 +0,0 @@
-// Copyright 2020 The Gitea Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea
-
-import (
- "fmt"
- "net/url"
-)
-
-const defaultPageSize = 10
-const maxPageSize = 50
-
-// ListOptions options for using Gitea's API pagination
-type ListOptions struct {
- Page int
- PageSize int
-}
-
-func (o ListOptions) getURLQuery() url.Values {
- query := make(url.Values)
- query.Add("page", fmt.Sprintf("%d", o.Page))
- query.Add("limit", fmt.Sprintf("%d", o.PageSize))
-
- return query
-}
-
-// setDefaults set default pagination options if none or wrong are set
-// if you set -1 as page it will set all to 0
-func (o *ListOptions) setDefaults() {
- if o.Page < 0 {
- o.Page, o.PageSize = 0, 0
- return
- } else if o.Page == 0 {
- o.Page = 1
- }
-
- if o.PageSize < 0 || o.PageSize > maxPageSize {
- o.PageSize = defaultPageSize
- }
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/notifications.go b/vendor/code.gitea.io/sdk/gitea/notifications.go
deleted file mode 100644
index 8b1ffa7ba2..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/notifications.go
+++ /dev/null
@@ -1,241 +0,0 @@
-// Copyright 2020 The Gitea Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea
-
-import (
- "fmt"
- "net/url"
- "time"
-
- "github.com/hashicorp/go-version"
-)
-
-var (
- version1_12_3, _ = version.NewVersion("1.12.3")
-)
-
-// NotificationThread expose Notification on API
-type NotificationThread struct {
- ID int64 `json:"id"`
- Repository *Repository `json:"repository"`
- Subject *NotificationSubject `json:"subject"`
- Unread bool `json:"unread"`
- Pinned bool `json:"pinned"`
- UpdatedAt time.Time `json:"updated_at"`
- URL string `json:"url"`
-}
-
-// NotificationSubject contains the notification subject (Issue/Pull/Commit)
-type NotificationSubject struct {
- Title string `json:"title"`
- URL string `json:"url"`
- LatestCommentURL string `json:"latest_comment_url"`
- Type NotifySubjectType `json:"type"`
- State NotifySubjectState `json:"state"`
-}
-
-// NotifyStatus notification status type
-type NotifyStatus string
-
-const (
- // NotifyStatusUnread was not read
- NotifyStatusUnread NotifyStatus = "unread"
- // NotifyStatusRead was already read by user
- NotifyStatusRead NotifyStatus = "read"
- // NotifyStatusPinned notification is pinned by user
- NotifyStatusPinned NotifyStatus = "pinned"
-)
-
-// NotifySubjectType represent type of notification subject
-type NotifySubjectType string
-
-const (
- // NotifySubjectIssue an issue is subject of an notification
- NotifySubjectIssue NotifySubjectType = "Issue"
- // NotifySubjectPull an pull is subject of an notification
- NotifySubjectPull NotifySubjectType = "Pull"
- // NotifySubjectCommit an commit is subject of an notification
- NotifySubjectCommit NotifySubjectType = "Commit"
- // NotifySubjectRepository an repository is subject of an notification
- NotifySubjectRepository NotifySubjectType = "Repository"
-)
-
-// NotifySubjectState reflect state of notification subject
-type NotifySubjectState string
-
-const (
- // NotifySubjectOpen if subject is a pull/issue and is open at the moment
- NotifySubjectOpen NotifySubjectState = "open"
- // NotifySubjectClosed if subject is a pull/issue and is closed at the moment
- NotifySubjectClosed NotifySubjectState = "closed"
- // NotifySubjectMerged if subject is a pull and got merged
- NotifySubjectMerged NotifySubjectState = "merged"
-)
-
-// ListNotificationOptions represents the filter options
-type ListNotificationOptions struct {
- ListOptions
- Since time.Time
- Before time.Time
- Status []NotifyStatus
- SubjectTypes []NotifySubjectType
-}
-
-// MarkNotificationOptions represents the filter & modify options
-type MarkNotificationOptions struct {
- LastReadAt time.Time
- Status []NotifyStatus
- ToStatus NotifyStatus
-}
-
-// QueryEncode encode options to url query
-func (opt *ListNotificationOptions) QueryEncode() string {
- query := opt.getURLQuery()
- if !opt.Since.IsZero() {
- query.Add("since", opt.Since.Format(time.RFC3339))
- }
- if !opt.Before.IsZero() {
- query.Add("before", opt.Before.Format(time.RFC3339))
- }
- for _, s := range opt.Status {
- query.Add("status-types", string(s))
- }
- for _, s := range opt.SubjectTypes {
- query.Add("subject-type", string(s))
- }
- return query.Encode()
-}
-
-// Validate the CreateUserOption struct
-func (opt ListNotificationOptions) Validate(c *Client) error {
- if len(opt.Status) != 0 {
- return c.checkServerVersionGreaterThanOrEqual(version1_12_3)
- }
- return nil
-}
-
-// QueryEncode encode options to url query
-func (opt *MarkNotificationOptions) QueryEncode() string {
- query := make(url.Values)
- if !opt.LastReadAt.IsZero() {
- query.Add("last_read_at", opt.LastReadAt.Format(time.RFC3339))
- }
- for _, s := range opt.Status {
- query.Add("status-types", string(s))
- }
- if len(opt.ToStatus) != 0 {
- query.Add("to-status", string(opt.ToStatus))
- }
- return query.Encode()
-}
-
-// Validate the CreateUserOption struct
-func (opt MarkNotificationOptions) Validate(c *Client) error {
- if len(opt.Status) != 0 || len(opt.ToStatus) != 0 {
- return c.checkServerVersionGreaterThanOrEqual(version1_12_3)
- }
- return nil
-}
-
-// CheckNotifications list users's notification threads
-func (c *Client) CheckNotifications() (int64, *Response, error) {
- if err := c.checkServerVersionGreaterThanOrEqual(version1_12_0); err != nil {
- return 0, nil, err
- }
- new := struct {
- New int64 `json:"new"`
- }{}
-
- resp, err := c.getParsedResponse("GET", "/notifications/new", jsonHeader, nil, &new)
- return new.New, resp, err
-}
-
-// GetNotification get notification thread by ID
-func (c *Client) GetNotification(id int64) (*NotificationThread, *Response, error) {
- if err := c.checkServerVersionGreaterThanOrEqual(version1_12_0); err != nil {
- return nil, nil, err
- }
- thread := new(NotificationThread)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/notifications/threads/%d", id), nil, nil, thread)
- return thread, resp, err
-}
-
-// ReadNotification mark notification thread as read by ID
-// It optionally takes a second argument if status has to be set other than 'read'
-func (c *Client) ReadNotification(id int64, status ...NotifyStatus) (*Response, error) {
- if err := c.checkServerVersionGreaterThanOrEqual(version1_12_0); err != nil {
- return nil, err
- }
- link := fmt.Sprintf("/notifications/threads/%d", id)
- if len(status) != 0 {
- link += fmt.Sprintf("?to-status=%s", status[0])
- }
- _, resp, err := c.getResponse("PATCH", link, nil, nil)
- return resp, err
-}
-
-// ListNotifications list users's notification threads
-func (c *Client) ListNotifications(opt ListNotificationOptions) ([]*NotificationThread, *Response, error) {
- if err := c.checkServerVersionGreaterThanOrEqual(version1_12_0); err != nil {
- return nil, nil, err
- }
- if err := opt.Validate(c); err != nil {
- return nil, nil, err
- }
- link, _ := url.Parse("/notifications")
- link.RawQuery = opt.QueryEncode()
- threads := make([]*NotificationThread, 0, 10)
- resp, err := c.getParsedResponse("GET", link.String(), nil, nil, &threads)
- return threads, resp, err
-}
-
-// ReadNotifications mark notification threads as read
-func (c *Client) ReadNotifications(opt MarkNotificationOptions) (*Response, error) {
- if err := c.checkServerVersionGreaterThanOrEqual(version1_12_0); err != nil {
- return nil, err
- }
- if err := opt.Validate(c); err != nil {
- return nil, err
- }
- link, _ := url.Parse("/notifications")
- link.RawQuery = opt.QueryEncode()
- _, resp, err := c.getResponse("PUT", link.String(), nil, nil)
- return resp, err
-}
-
-// ListRepoNotifications list users's notification threads on a specific repo
-func (c *Client) ListRepoNotifications(owner, repo string, opt ListNotificationOptions) ([]*NotificationThread, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, nil, err
- }
- if err := c.checkServerVersionGreaterThanOrEqual(version1_12_0); err != nil {
- return nil, nil, err
- }
- if err := opt.Validate(c); err != nil {
- return nil, nil, err
- }
- link, _ := url.Parse(fmt.Sprintf("/repos/%s/%s/notifications", owner, repo))
- link.RawQuery = opt.QueryEncode()
- threads := make([]*NotificationThread, 0, 10)
- resp, err := c.getParsedResponse("GET", link.String(), nil, nil, &threads)
- return threads, resp, err
-}
-
-// ReadRepoNotifications mark notification threads as read on a specific repo
-func (c *Client) ReadRepoNotifications(owner, repo string, opt MarkNotificationOptions) (*Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, err
- }
- if err := c.checkServerVersionGreaterThanOrEqual(version1_12_0); err != nil {
- return nil, err
- }
- if err := opt.Validate(c); err != nil {
- return nil, err
- }
- link, _ := url.Parse(fmt.Sprintf("/repos/%s/%s/notifications", owner, repo))
- link.RawQuery = opt.QueryEncode()
- _, resp, err := c.getResponse("PUT", link.String(), nil, nil)
- return resp, err
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/oauth2.go b/vendor/code.gitea.io/sdk/gitea/oauth2.go
deleted file mode 100644
index bbdfdafb67..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/oauth2.go
+++ /dev/null
@@ -1,91 +0,0 @@
-// Copyright 2020 The Gitea Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea
-
-import (
- "bytes"
- "encoding/json"
- "fmt"
- "time"
-)
-
-// Oauth2 represents an Oauth2 Application
-type Oauth2 struct {
- ID int64 `json:"id"`
- Name string `json:"name"`
- ClientID string `json:"client_id"`
- ClientSecret string `json:"client_secret"`
- RedirectURIs []string `json:"redirect_uris"`
- Created time.Time `json:"created"`
-}
-
-// ListOauth2Option for listing Oauth2 Applications
-type ListOauth2Option struct {
- ListOptions
-}
-
-// CreateOauth2Option required options for creating an Application
-type CreateOauth2Option struct {
- Name string `json:"name"`
- RedirectURIs []string `json:"redirect_uris"`
-}
-
-// CreateOauth2 create an Oauth2 Application and returns a completed Oauth2 object.
-func (c *Client) CreateOauth2(opt CreateOauth2Option) (*Oauth2, *Response, error) {
- if err := c.checkServerVersionGreaterThanOrEqual(version1_12_0); err != nil {
- return nil, nil, err
- }
- body, err := json.Marshal(&opt)
- if err != nil {
- return nil, nil, err
- }
- oauth := new(Oauth2)
- resp, err := c.getParsedResponse("POST", "/user/applications/oauth2", jsonHeader, bytes.NewReader(body), oauth)
- return oauth, resp, err
-}
-
-// UpdateOauth2 a specific Oauth2 Application by ID and return a completed Oauth2 object.
-func (c *Client) UpdateOauth2(oauth2id int64, opt CreateOauth2Option) (*Oauth2, *Response, error) {
- if err := c.checkServerVersionGreaterThanOrEqual(version1_12_0); err != nil {
- return nil, nil, err
- }
- body, err := json.Marshal(&opt)
- if err != nil {
- return nil, nil, err
- }
- oauth := new(Oauth2)
- resp, err := c.getParsedResponse("PATCH", fmt.Sprintf("/user/applications/oauth2/%d", oauth2id), jsonHeader, bytes.NewReader(body), oauth)
- return oauth, resp, err
-}
-
-// GetOauth2 a specific Oauth2 Application by ID.
-func (c *Client) GetOauth2(oauth2id int64) (*Oauth2, *Response, error) {
- if err := c.checkServerVersionGreaterThanOrEqual(version1_12_0); err != nil {
- return nil, nil, err
- }
- oauth2s := &Oauth2{}
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/user/applications/oauth2/%d", oauth2id), nil, nil, &oauth2s)
- return oauth2s, resp, err
-}
-
-// ListOauth2 all of your Oauth2 Applications.
-func (c *Client) ListOauth2(opt ListOauth2Option) ([]*Oauth2, *Response, error) {
- if err := c.checkServerVersionGreaterThanOrEqual(version1_12_0); err != nil {
- return nil, nil, err
- }
- opt.setDefaults()
- oauth2s := make([]*Oauth2, 0, opt.PageSize)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/user/applications/oauth2?%s", opt.getURLQuery().Encode()), nil, nil, &oauth2s)
- return oauth2s, resp, err
-}
-
-// DeleteOauth2 delete an Oauth2 application by ID
-func (c *Client) DeleteOauth2(oauth2id int64) (*Response, error) {
- if err := c.checkServerVersionGreaterThanOrEqual(version1_12_0); err != nil {
- return nil, err
- }
- _, resp, err := c.getResponse("DELETE", fmt.Sprintf("/user/applications/oauth2/%d", oauth2id), nil, nil)
- return resp, err
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/org.go b/vendor/code.gitea.io/sdk/gitea/org.go
deleted file mode 100644
index 82e1bf540d..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/org.go
+++ /dev/null
@@ -1,155 +0,0 @@
-// Copyright 2015 The Gogs Authors. All rights reserved.
-// Copyright 2019 The Gitea Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea
-
-import (
- "bytes"
- "encoding/json"
- "fmt"
-)
-
-// Organization represents an organization
-type Organization struct {
- ID int64 `json:"id"`
- UserName string `json:"username"`
- FullName string `json:"full_name"`
- AvatarURL string `json:"avatar_url"`
- Description string `json:"description"`
- Website string `json:"website"`
- Location string `json:"location"`
- Visibility string `json:"visibility"`
-}
-
-// VisibleType defines the visibility
-type VisibleType string
-
-const (
- // VisibleTypePublic Visible for everyone
- VisibleTypePublic VisibleType = "public"
-
- // VisibleTypeLimited Visible for every connected user
- VisibleTypeLimited VisibleType = "limited"
-
- // VisibleTypePrivate Visible only for organization's members
- VisibleTypePrivate VisibleType = "private"
-)
-
-// ListOrgsOptions options for listing organizations
-type ListOrgsOptions struct {
- ListOptions
-}
-
-// ListMyOrgs list all of current user's organizations
-func (c *Client) ListMyOrgs(opt ListOrgsOptions) ([]*Organization, *Response, error) {
- opt.setDefaults()
- orgs := make([]*Organization, 0, opt.PageSize)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/user/orgs?%s", opt.getURLQuery().Encode()), nil, nil, &orgs)
- return orgs, resp, err
-}
-
-// ListUserOrgs list all of some user's organizations
-func (c *Client) ListUserOrgs(user string, opt ListOrgsOptions) ([]*Organization, *Response, error) {
- if err := escapeValidatePathSegments(&user); err != nil {
- return nil, nil, err
- }
- opt.setDefaults()
- orgs := make([]*Organization, 0, opt.PageSize)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/users/%s/orgs?%s", user, opt.getURLQuery().Encode()), nil, nil, &orgs)
- return orgs, resp, err
-}
-
-// GetOrg get one organization by name
-func (c *Client) GetOrg(orgname string) (*Organization, *Response, error) {
- if err := escapeValidatePathSegments(&orgname); err != nil {
- return nil, nil, err
- }
- org := new(Organization)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/orgs/%s", orgname), nil, nil, org)
- return org, resp, err
-}
-
-// CreateOrgOption options for creating an organization
-type CreateOrgOption struct {
- Name string `json:"username"`
- FullName string `json:"full_name"`
- Description string `json:"description"`
- Website string `json:"website"`
- Location string `json:"location"`
- Visibility VisibleType `json:"visibility"`
- RepoAdminChangeTeamAccess bool `json:"repo_admin_change_team_access"`
-}
-
-// checkVisibilityOpt check if mode exist
-func checkVisibilityOpt(v VisibleType) bool {
- return v == VisibleTypePublic || v == VisibleTypeLimited || v == VisibleTypePrivate
-}
-
-// Validate the CreateOrgOption struct
-func (opt CreateOrgOption) Validate() error {
- if len(opt.Name) == 0 {
- return fmt.Errorf("empty org name")
- }
- if len(opt.Visibility) != 0 && !checkVisibilityOpt(opt.Visibility) {
- return fmt.Errorf("infalid bisibility option")
- }
- return nil
-}
-
-// CreateOrg creates an organization
-func (c *Client) CreateOrg(opt CreateOrgOption) (*Organization, *Response, error) {
- if err := opt.Validate(); err != nil {
- return nil, nil, err
- }
- body, err := json.Marshal(&opt)
- if err != nil {
- return nil, nil, err
- }
- org := new(Organization)
- resp, err := c.getParsedResponse("POST", "/orgs", jsonHeader, bytes.NewReader(body), org)
- return org, resp, err
-}
-
-// EditOrgOption options for editing an organization
-type EditOrgOption struct {
- FullName string `json:"full_name"`
- Description string `json:"description"`
- Website string `json:"website"`
- Location string `json:"location"`
- Visibility VisibleType `json:"visibility"`
-}
-
-// Validate the EditOrgOption struct
-func (opt EditOrgOption) Validate() error {
- if len(opt.Visibility) != 0 && !checkVisibilityOpt(opt.Visibility) {
- return fmt.Errorf("infalid bisibility option")
- }
- return nil
-}
-
-// EditOrg modify one organization via options
-func (c *Client) EditOrg(orgname string, opt EditOrgOption) (*Response, error) {
- if err := escapeValidatePathSegments(&orgname); err != nil {
- return nil, err
- }
- if err := opt.Validate(); err != nil {
- return nil, err
- }
- body, err := json.Marshal(&opt)
- if err != nil {
- return nil, err
- }
- _, resp, err := c.getResponse("PATCH", fmt.Sprintf("/orgs/%s", orgname), jsonHeader, bytes.NewReader(body))
- return resp, err
-}
-
-// DeleteOrg deletes an organization
-func (c *Client) DeleteOrg(orgname string) (*Response, error) {
- if err := escapeValidatePathSegments(&orgname); err != nil {
- return nil, err
- }
- _, resp, err := c.getResponse("DELETE", fmt.Sprintf("/orgs/%s", orgname), jsonHeader, nil)
- return resp, err
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/org_member.go b/vendor/code.gitea.io/sdk/gitea/org_member.go
deleted file mode 100644
index 1eed90f6b6..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/org_member.go
+++ /dev/null
@@ -1,119 +0,0 @@
-// Copyright 2020 The Gitea Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea
-
-import (
- "fmt"
- "net/http"
- "net/url"
-)
-
-// DeleteOrgMembership remove a member from an organization
-func (c *Client) DeleteOrgMembership(org, user string) (*Response, error) {
- if err := escapeValidatePathSegments(&org, &user); err != nil {
- return nil, err
- }
- _, resp, err := c.getResponse("DELETE", fmt.Sprintf("/orgs/%s/members/%s", org, user), nil, nil)
- return resp, err
-}
-
-// ListOrgMembershipOption list OrgMembership options
-type ListOrgMembershipOption struct {
- ListOptions
-}
-
-// ListOrgMembership list an organization's members
-func (c *Client) ListOrgMembership(org string, opt ListOrgMembershipOption) ([]*User, *Response, error) {
- if err := escapeValidatePathSegments(&org); err != nil {
- return nil, nil, err
- }
- opt.setDefaults()
- users := make([]*User, 0, opt.PageSize)
-
- link, _ := url.Parse(fmt.Sprintf("/orgs/%s/members", org))
- link.RawQuery = opt.getURLQuery().Encode()
- resp, err := c.getParsedResponse("GET", link.String(), jsonHeader, nil, &users)
- return users, resp, err
-}
-
-// ListPublicOrgMembership list an organization's members
-func (c *Client) ListPublicOrgMembership(org string, opt ListOrgMembershipOption) ([]*User, *Response, error) {
- if err := escapeValidatePathSegments(&org); err != nil {
- return nil, nil, err
- }
- opt.setDefaults()
- users := make([]*User, 0, opt.PageSize)
-
- link, _ := url.Parse(fmt.Sprintf("/orgs/%s/public_members", org))
- link.RawQuery = opt.getURLQuery().Encode()
- resp, err := c.getParsedResponse("GET", link.String(), jsonHeader, nil, &users)
- return users, resp, err
-}
-
-// CheckOrgMembership Check if a user is a member of an organization
-func (c *Client) CheckOrgMembership(org, user string) (bool, *Response, error) {
- if err := escapeValidatePathSegments(&org, &user); err != nil {
- return false, nil, err
- }
- status, resp, err := c.getStatusCode("GET", fmt.Sprintf("/orgs/%s/members/%s", org, user), nil, nil)
- if err != nil {
- return false, resp, err
- }
- switch status {
- case http.StatusNoContent:
- return true, resp, nil
- case http.StatusNotFound:
- return false, resp, nil
- default:
- return false, resp, fmt.Errorf("unexpected Status: %d", status)
- }
-}
-
-// CheckPublicOrgMembership Check if a user is a member of an organization
-func (c *Client) CheckPublicOrgMembership(org, user string) (bool, *Response, error) {
- if err := escapeValidatePathSegments(&org, &user); err != nil {
- return false, nil, err
- }
- status, resp, err := c.getStatusCode("GET", fmt.Sprintf("/orgs/%s/public_members/%s", org, user), nil, nil)
- if err != nil {
- return false, resp, err
- }
- switch status {
- case http.StatusNoContent:
- return true, resp, nil
- case http.StatusNotFound:
- return false, resp, nil
- default:
- return false, resp, fmt.Errorf("unexpected Status: %d", status)
- }
-}
-
-// SetPublicOrgMembership publicize/conceal a user's membership
-func (c *Client) SetPublicOrgMembership(org, user string, visible bool) (*Response, error) {
- if err := escapeValidatePathSegments(&org, &user); err != nil {
- return nil, err
- }
- var (
- status int
- err error
- resp *Response
- )
- if visible {
- status, resp, err = c.getStatusCode("PUT", fmt.Sprintf("/orgs/%s/public_members/%s", org, user), nil, nil)
- } else {
- status, resp, err = c.getStatusCode("DELETE", fmt.Sprintf("/orgs/%s/public_members/%s", org, user), nil, nil)
- }
- if err != nil {
- return resp, err
- }
- switch status {
- case http.StatusNoContent:
- return resp, nil
- case http.StatusNotFound:
- return resp, fmt.Errorf("forbidden")
- default:
- return resp, fmt.Errorf("unexpected Status: %d", status)
- }
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/org_team.go b/vendor/code.gitea.io/sdk/gitea/org_team.go
deleted file mode 100644
index 4b1b27b4b7..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/org_team.go
+++ /dev/null
@@ -1,242 +0,0 @@
-// Copyright 2019 The Gitea Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea
-
-import (
- "bytes"
- "encoding/json"
- "fmt"
-)
-
-// Team represents a team in an organization
-type Team struct {
- ID int64 `json:"id"`
- Name string `json:"name"`
- Description string `json:"description"`
- Organization *Organization `json:"organization"`
- Permission AccessMode `json:"permission"`
- CanCreateOrgRepo bool `json:"can_create_org_repo"`
- IncludesAllRepositories bool `json:"includes_all_repositories"`
- Units []RepoUnitType `json:"units"`
-}
-
-// RepoUnitType represent all unit types of a repo gitea currently offer
-type RepoUnitType string
-
-const (
- // RepoUnitCode represent file view of a repository
- RepoUnitCode RepoUnitType = "repo.code"
- // RepoUnitIssues represent issues of a repository
- RepoUnitIssues RepoUnitType = "repo.issues"
- // RepoUnitPulls represent pulls of a repository
- RepoUnitPulls RepoUnitType = "repo.pulls"
- // RepoUnitExtIssues represent external issues of a repository
- RepoUnitExtIssues RepoUnitType = "repo.ext_issues"
- // RepoUnitWiki represent wiki of a repository
- RepoUnitWiki RepoUnitType = "repo.wiki"
- // RepoUnitExtWiki represent external wiki of a repository
- RepoUnitExtWiki RepoUnitType = "repo.ext_wiki"
- // RepoUnitReleases represent releases of a repository
- RepoUnitReleases RepoUnitType = "repo.releases"
- // RepoUnitProjects represent projects of a repository
- RepoUnitProjects RepoUnitType = "repo.projects"
-)
-
-// ListTeamsOptions options for listing teams
-type ListTeamsOptions struct {
- ListOptions
-}
-
-// ListOrgTeams lists all teams of an organization
-func (c *Client) ListOrgTeams(org string, opt ListTeamsOptions) ([]*Team, *Response, error) {
- if err := escapeValidatePathSegments(&org); err != nil {
- return nil, nil, err
- }
- opt.setDefaults()
- teams := make([]*Team, 0, opt.PageSize)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/orgs/%s/teams?%s", org, opt.getURLQuery().Encode()), nil, nil, &teams)
- return teams, resp, err
-}
-
-// ListMyTeams lists all the teams of the current user
-func (c *Client) ListMyTeams(opt *ListTeamsOptions) ([]*Team, *Response, error) {
- opt.setDefaults()
- teams := make([]*Team, 0, opt.PageSize)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/user/teams?%s", opt.getURLQuery().Encode()), nil, nil, &teams)
- return teams, resp, err
-}
-
-// GetTeam gets a team by ID
-func (c *Client) GetTeam(id int64) (*Team, *Response, error) {
- t := new(Team)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/teams/%d", id), nil, nil, t)
- return t, resp, err
-}
-
-// CreateTeamOption options for creating a team
-type CreateTeamOption struct {
- Name string `json:"name"`
- Description string `json:"description"`
- Permission AccessMode `json:"permission"`
- CanCreateOrgRepo bool `json:"can_create_org_repo"`
- IncludesAllRepositories bool `json:"includes_all_repositories"`
- Units []RepoUnitType `json:"units"`
-}
-
-// Validate the CreateTeamOption struct
-func (opt CreateTeamOption) Validate() error {
- if opt.Permission == AccessModeOwner {
- opt.Permission = AccessModeAdmin
- } else if opt.Permission != AccessModeRead && opt.Permission != AccessModeWrite && opt.Permission != AccessModeAdmin {
- return fmt.Errorf("permission mode invalid")
- }
- if len(opt.Name) == 0 {
- return fmt.Errorf("name required")
- }
- if len(opt.Name) > 30 {
- return fmt.Errorf("name to long")
- }
- if len(opt.Description) > 255 {
- return fmt.Errorf("description to long")
- }
- return nil
-}
-
-// CreateTeam creates a team for an organization
-func (c *Client) CreateTeam(org string, opt CreateTeamOption) (*Team, *Response, error) {
- if err := escapeValidatePathSegments(&org); err != nil {
- return nil, nil, err
- }
- if err := opt.Validate(); err != nil {
- return nil, nil, err
- }
- body, err := json.Marshal(&opt)
- if err != nil {
- return nil, nil, err
- }
- t := new(Team)
- resp, err := c.getParsedResponse("POST", fmt.Sprintf("/orgs/%s/teams", org), jsonHeader, bytes.NewReader(body), t)
- return t, resp, err
-}
-
-// EditTeamOption options for editing a team
-type EditTeamOption struct {
- Name string `json:"name"`
- Description *string `json:"description"`
- Permission AccessMode `json:"permission"`
- CanCreateOrgRepo *bool `json:"can_create_org_repo"`
- IncludesAllRepositories *bool `json:"includes_all_repositories"`
- Units []RepoUnitType `json:"units"`
-}
-
-// Validate the EditTeamOption struct
-func (opt EditTeamOption) Validate() error {
- if opt.Permission == AccessModeOwner {
- opt.Permission = AccessModeAdmin
- } else if opt.Permission != AccessModeRead && opt.Permission != AccessModeWrite && opt.Permission != AccessModeAdmin {
- return fmt.Errorf("permission mode invalid")
- }
- if len(opt.Name) == 0 {
- return fmt.Errorf("name required")
- }
- if len(opt.Name) > 30 {
- return fmt.Errorf("name to long")
- }
- if opt.Description != nil && len(*opt.Description) > 255 {
- return fmt.Errorf("description to long")
- }
- return nil
-}
-
-// EditTeam edits a team of an organization
-func (c *Client) EditTeam(id int64, opt EditTeamOption) (*Response, error) {
- if err := opt.Validate(); err != nil {
- return nil, err
- }
- body, err := json.Marshal(&opt)
- if err != nil {
- return nil, err
- }
- _, resp, err := c.getResponse("PATCH", fmt.Sprintf("/teams/%d", id), jsonHeader, bytes.NewReader(body))
- return resp, err
-}
-
-// DeleteTeam deletes a team of an organization
-func (c *Client) DeleteTeam(id int64) (*Response, error) {
- _, resp, err := c.getResponse("DELETE", fmt.Sprintf("/teams/%d", id), nil, nil)
- return resp, err
-}
-
-// ListTeamMembersOptions options for listing team's members
-type ListTeamMembersOptions struct {
- ListOptions
-}
-
-// ListTeamMembers lists all members of a team
-func (c *Client) ListTeamMembers(id int64, opt ListTeamMembersOptions) ([]*User, *Response, error) {
- opt.setDefaults()
- members := make([]*User, 0, opt.PageSize)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/teams/%d/members?%s", id, opt.getURLQuery().Encode()), nil, nil, &members)
- return members, resp, err
-}
-
-// GetTeamMember gets a member of a team
-func (c *Client) GetTeamMember(id int64, user string) (*User, *Response, error) {
- if err := escapeValidatePathSegments(&user); err != nil {
- return nil, nil, err
- }
- m := new(User)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/teams/%d/members/%s", id, user), nil, nil, m)
- return m, resp, err
-}
-
-// AddTeamMember adds a member to a team
-func (c *Client) AddTeamMember(id int64, user string) (*Response, error) {
- if err := escapeValidatePathSegments(&user); err != nil {
- return nil, err
- }
- _, resp, err := c.getResponse("PUT", fmt.Sprintf("/teams/%d/members/%s", id, user), nil, nil)
- return resp, err
-}
-
-// RemoveTeamMember removes a member from a team
-func (c *Client) RemoveTeamMember(id int64, user string) (*Response, error) {
- if err := escapeValidatePathSegments(&user); err != nil {
- return nil, err
- }
- _, resp, err := c.getResponse("DELETE", fmt.Sprintf("/teams/%d/members/%s", id, user), nil, nil)
- return resp, err
-}
-
-// ListTeamRepositoriesOptions options for listing team's repositories
-type ListTeamRepositoriesOptions struct {
- ListOptions
-}
-
-// ListTeamRepositories lists all repositories of a team
-func (c *Client) ListTeamRepositories(id int64, opt ListTeamRepositoriesOptions) ([]*Repository, *Response, error) {
- opt.setDefaults()
- repos := make([]*Repository, 0, opt.PageSize)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/teams/%d/repos?%s", id, opt.getURLQuery().Encode()), nil, nil, &repos)
- return repos, resp, err
-}
-
-// AddTeamRepository adds a repository to a team
-func (c *Client) AddTeamRepository(id int64, org, repo string) (*Response, error) {
- if err := escapeValidatePathSegments(&org, &repo); err != nil {
- return nil, err
- }
- _, resp, err := c.getResponse("PUT", fmt.Sprintf("/teams/%d/repos/%s/%s", id, org, repo), nil, nil)
- return resp, err
-}
-
-// RemoveTeamRepository removes a repository from a team
-func (c *Client) RemoveTeamRepository(id int64, org, repo string) (*Response, error) {
- if err := escapeValidatePathSegments(&org, &repo); err != nil {
- return nil, err
- }
- _, resp, err := c.getResponse("DELETE", fmt.Sprintf("/teams/%d/repos/%s/%s", id, org, repo), nil, nil)
- return resp, err
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/pull.go b/vendor/code.gitea.io/sdk/gitea/pull.go
deleted file mode 100644
index e0198c2890..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/pull.go
+++ /dev/null
@@ -1,328 +0,0 @@
-// Copyright 2016 The Gogs Authors. All rights reserved.
-// Copyright 2019 The Gitea Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea
-
-import (
- "bytes"
- "encoding/json"
- "fmt"
- "net/url"
- "strings"
- "time"
-
- "github.com/hashicorp/go-version"
-)
-
-// PRBranchInfo information about a branch
-type PRBranchInfo struct {
- Name string `json:"label"`
- Ref string `json:"ref"`
- Sha string `json:"sha"`
- RepoID int64 `json:"repo_id"`
- Repository *Repository `json:"repo"`
-}
-
-// PullRequest represents a pull request
-type PullRequest struct {
- ID int64 `json:"id"`
- URL string `json:"url"`
- Index int64 `json:"number"`
- Poster *User `json:"user"`
- Title string `json:"title"`
- Body string `json:"body"`
- Labels []*Label `json:"labels"`
- Milestone *Milestone `json:"milestone"`
- Assignee *User `json:"assignee"`
- Assignees []*User `json:"assignees"`
- State StateType `json:"state"`
- IsLocked bool `json:"is_locked"`
- Comments int `json:"comments"`
-
- HTMLURL string `json:"html_url"`
- DiffURL string `json:"diff_url"`
- PatchURL string `json:"patch_url"`
-
- Mergeable bool `json:"mergeable"`
- HasMerged bool `json:"merged"`
- Merged *time.Time `json:"merged_at"`
- MergedCommitID *string `json:"merge_commit_sha"`
- MergedBy *User `json:"merged_by"`
-
- Base *PRBranchInfo `json:"base"`
- Head *PRBranchInfo `json:"head"`
- MergeBase string `json:"merge_base"`
-
- Deadline *time.Time `json:"due_date"`
- Created *time.Time `json:"created_at"`
- Updated *time.Time `json:"updated_at"`
- Closed *time.Time `json:"closed_at"`
-}
-
-// ListPullRequestsOptions options for listing pull requests
-type ListPullRequestsOptions struct {
- ListOptions
- State StateType `json:"state"`
- // oldest, recentupdate, leastupdate, mostcomment, leastcomment, priority
- Sort string
- Milestone int64
-}
-
-// MergeStyle is used specify how a pull is merged
-type MergeStyle string
-
-const (
- // MergeStyleMerge merge pull as usual
- MergeStyleMerge MergeStyle = "merge"
- // MergeStyleRebase rebase pull
- MergeStyleRebase MergeStyle = "rebase"
- // MergeStyleRebaseMerge rebase and merge pull
- MergeStyleRebaseMerge MergeStyle = "rebase-merge"
- // MergeStyleSquash squash and merge pull
- MergeStyleSquash MergeStyle = "squash"
-)
-
-// QueryEncode turns options into querystring argument
-func (opt *ListPullRequestsOptions) QueryEncode() string {
- query := opt.getURLQuery()
- if len(opt.State) > 0 {
- query.Add("state", string(opt.State))
- }
- if len(opt.Sort) > 0 {
- query.Add("sort", opt.Sort)
- }
- if opt.Milestone > 0 {
- query.Add("milestone", fmt.Sprintf("%d", opt.Milestone))
- }
- return query.Encode()
-}
-
-// ListRepoPullRequests list PRs of one repository
-func (c *Client) ListRepoPullRequests(owner, repo string, opt ListPullRequestsOptions) ([]*PullRequest, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, nil, err
- }
- opt.setDefaults()
- prs := make([]*PullRequest, 0, opt.PageSize)
-
- link, _ := url.Parse(fmt.Sprintf("/repos/%s/%s/pulls", owner, repo))
- link.RawQuery = opt.QueryEncode()
- resp, err := c.getParsedResponse("GET", link.String(), jsonHeader, nil, &prs)
- if c.checkServerVersionGreaterThanOrEqual(version1_14_0) != nil {
- for i := range prs {
- if err := fixPullHeadSha(c, prs[i]); err != nil {
- return prs, resp, err
- }
- }
- }
- return prs, resp, err
-}
-
-// GetPullRequest get information of one PR
-func (c *Client) GetPullRequest(owner, repo string, index int64) (*PullRequest, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, nil, err
- }
- pr := new(PullRequest)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/repos/%s/%s/pulls/%d", owner, repo, index), nil, nil, pr)
- if c.checkServerVersionGreaterThanOrEqual(version1_14_0) != nil {
- if err := fixPullHeadSha(c, pr); err != nil {
- return pr, resp, err
- }
- }
- return pr, resp, err
-}
-
-// CreatePullRequestOption options when creating a pull request
-type CreatePullRequestOption struct {
- Head string `json:"head"`
- Base string `json:"base"`
- Title string `json:"title"`
- Body string `json:"body"`
- Assignee string `json:"assignee"`
- Assignees []string `json:"assignees"`
- Milestone int64 `json:"milestone"`
- Labels []int64 `json:"labels"`
- Deadline *time.Time `json:"due_date"`
-}
-
-// CreatePullRequest create pull request with options
-func (c *Client) CreatePullRequest(owner, repo string, opt CreatePullRequestOption) (*PullRequest, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, nil, err
- }
- body, err := json.Marshal(&opt)
- if err != nil {
- return nil, nil, err
- }
- pr := new(PullRequest)
- resp, err := c.getParsedResponse("POST",
- fmt.Sprintf("/repos/%s/%s/pulls", owner, repo),
- jsonHeader, bytes.NewReader(body), pr)
- return pr, resp, err
-}
-
-// EditPullRequestOption options when modify pull request
-type EditPullRequestOption struct {
- Title string `json:"title"`
- Body string `json:"body"`
- Base string `json:"base"`
- Assignee string `json:"assignee"`
- Assignees []string `json:"assignees"`
- Milestone int64 `json:"milestone"`
- Labels []int64 `json:"labels"`
- State *StateType `json:"state"`
- Deadline *time.Time `json:"due_date"`
-}
-
-// Validate the EditPullRequestOption struct
-func (opt EditPullRequestOption) Validate(c *Client) error {
- if len(opt.Title) != 0 && len(strings.TrimSpace(opt.Title)) == 0 {
- return fmt.Errorf("title is empty")
- }
- if len(opt.Base) != 0 {
- if err := c.checkServerVersionGreaterThanOrEqual(version1_12_0); err != nil {
- return fmt.Errorf("can not change base gitea to old")
- }
- }
- return nil
-}
-
-// EditPullRequest modify pull request with PR id and options
-func (c *Client) EditPullRequest(owner, repo string, index int64, opt EditPullRequestOption) (*PullRequest, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, nil, err
- }
- if err := opt.Validate(c); err != nil {
- return nil, nil, err
- }
- body, err := json.Marshal(&opt)
- if err != nil {
- return nil, nil, err
- }
- pr := new(PullRequest)
- resp, err := c.getParsedResponse("PATCH",
- fmt.Sprintf("/repos/%s/%s/pulls/%d", owner, repo, index),
- jsonHeader, bytes.NewReader(body), pr)
- return pr, resp, err
-}
-
-// MergePullRequestOption options when merging a pull request
-type MergePullRequestOption struct {
- Style MergeStyle `json:"Do"`
- Title string `json:"MergeTitleField"`
- Message string `json:"MergeMessageField"`
-}
-
-var version1_11_5, _ = version.NewVersion("1.11.5")
-
-// Validate the MergePullRequestOption struct
-func (opt MergePullRequestOption) Validate(c *Client) error {
- if opt.Style == MergeStyleSquash {
- if err := c.checkServerVersionGreaterThanOrEqual(version1_11_5); err != nil {
- return err
- }
- }
- return nil
-}
-
-// MergePullRequest merge a PR to repository by PR id
-func (c *Client) MergePullRequest(owner, repo string, index int64, opt MergePullRequestOption) (bool, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return false, nil, err
- }
- if err := opt.Validate(c); err != nil {
- return false, nil, err
- }
- body, err := json.Marshal(&opt)
- if err != nil {
- return false, nil, err
- }
- status, resp, err := c.getStatusCode("POST", fmt.Sprintf("/repos/%s/%s/pulls/%d/merge", owner, repo, index), jsonHeader, bytes.NewReader(body))
- if err != nil {
- return false, resp, err
- }
- return status == 200, resp, nil
-}
-
-// IsPullRequestMerged test if one PR is merged to one repository
-func (c *Client) IsPullRequestMerged(owner, repo string, index int64) (bool, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return false, nil, err
- }
- status, resp, err := c.getStatusCode("GET", fmt.Sprintf("/repos/%s/%s/pulls/%d/merge", owner, repo, index), nil, nil)
-
- if err != nil {
- return false, resp, err
- }
-
- return status == 204, resp, nil
-}
-
-// getPullRequestDiffOrPatch gets the patch or diff file as bytes for a PR
-func (c *Client) getPullRequestDiffOrPatch(owner, repo, kind string, index int64) ([]byte, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo, &kind); err != nil {
- return nil, nil, err
- }
- if err := c.checkServerVersionGreaterThanOrEqual(version1_13_0); err != nil {
- r, _, err2 := c.GetRepo(owner, repo)
- if err2 != nil {
- return nil, nil, err
- }
- if r.Private {
- return nil, nil, err
- }
- return c.getWebResponse("GET", fmt.Sprintf("/%s/%s/pulls/%d.%s", owner, repo, index, kind), nil)
- }
- return c.getResponse("GET", fmt.Sprintf("/repos/%s/%s/pulls/%d.%s", owner, repo, index, kind), nil, nil)
-}
-
-// GetPullRequestPatch gets the .patch file as bytes for a PR
-func (c *Client) GetPullRequestPatch(owner, repo string, index int64) ([]byte, *Response, error) {
- return c.getPullRequestDiffOrPatch(owner, repo, "patch", index)
-}
-
-// GetPullRequestDiff gets the .diff file as bytes for a PR
-func (c *Client) GetPullRequestDiff(owner, repo string, index int64) ([]byte, *Response, error) {
- return c.getPullRequestDiffOrPatch(owner, repo, "diff", index)
-}
-
-// ListPullRequestCommitsOptions options for listing pull requests
-type ListPullRequestCommitsOptions struct {
- ListOptions
-}
-
-// ListPullRequestCommits list commits for a pull request
-func (c *Client) ListPullRequestCommits(owner, repo string, index int64, opt ListPullRequestCommitsOptions) ([]*Commit, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, nil, err
- }
- link, _ := url.Parse(fmt.Sprintf("/repos/%s/%s/pulls/%d/commits", owner, repo, index))
- opt.setDefaults()
- commits := make([]*Commit, 0, opt.PageSize)
- link.RawQuery = opt.getURLQuery().Encode()
- resp, err := c.getParsedResponse("GET", link.String(), nil, nil, &commits)
- return commits, resp, err
-}
-
-// fixPullHeadSha is a workaround for https://github.com/go-gitea/gitea/issues/12675
-// When no head sha is available, this is because the branch got deleted in the base repo.
-// pr.Head.Ref points in this case not to the head repo branch name, but the base repo ref,
-// which stays available to resolve the commit sha. This is fixed for gitea >= 1.14.0
-func fixPullHeadSha(client *Client, pr *PullRequest) error {
- if pr.Base != nil && pr.Base.Repository != nil && pr.Base.Repository.Owner != nil &&
- pr.Head != nil && pr.Head.Ref != "" && pr.Head.Sha == "" {
- owner := pr.Base.Repository.Owner.UserName
- repo := pr.Base.Repository.Name
- refs, _, err := client.GetRepoRefs(owner, repo, pr.Head.Ref)
- if err != nil {
- return err
- } else if len(refs) == 0 {
- return fmt.Errorf("unable to resolve PR ref '%s'", pr.Head.Ref)
- }
- pr.Head.Sha = refs[0].Object.SHA
- }
- return nil
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/pull_review.go b/vendor/code.gitea.io/sdk/gitea/pull_review.go
deleted file mode 100644
index a484dfdd9c..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/pull_review.go
+++ /dev/null
@@ -1,325 +0,0 @@
-// Copyright 2020 The Gitea Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea
-
-import (
- "bytes"
- "encoding/json"
- "fmt"
- "net/url"
- "strings"
- "time"
-)
-
-// ReviewStateType review state type
-type ReviewStateType string
-
-const (
- // ReviewStateApproved pr is approved
- ReviewStateApproved ReviewStateType = "APPROVED"
- // ReviewStatePending pr state is pending
- ReviewStatePending ReviewStateType = "PENDING"
- // ReviewStateComment is a comment review
- ReviewStateComment ReviewStateType = "COMMENT"
- // ReviewStateRequestChanges changes for pr are requested
- ReviewStateRequestChanges ReviewStateType = "REQUEST_CHANGES"
- // ReviewStateRequestReview review is requested from user
- ReviewStateRequestReview ReviewStateType = "REQUEST_REVIEW"
- // ReviewStateUnknown state of pr is unknown
- ReviewStateUnknown ReviewStateType = ""
-)
-
-// PullReview represents a pull request review
-type PullReview struct {
- ID int64 `json:"id"`
- Reviewer *User `json:"user"`
- ReviewerTeam *Team `json:"team"`
- State ReviewStateType `json:"state"`
- Body string `json:"body"`
- CommitID string `json:"commit_id"`
- // Stale indicates if the pull has changed since the review
- Stale bool `json:"stale"`
- // Official indicates if the review counts towards the required approval limit, if PR base is a protected branch
- Official bool `json:"official"`
- Dismissed bool `json:"dismissed"`
- CodeCommentsCount int `json:"comments_count"`
- Submitted time.Time `json:"submitted_at"`
-
- HTMLURL string `json:"html_url"`
- HTMLPullURL string `json:"pull_request_url"`
-}
-
-// PullReviewComment represents a comment on a pull request review
-type PullReviewComment struct {
- ID int64 `json:"id"`
- Body string `json:"body"`
- Reviewer *User `json:"user"`
- ReviewID int64 `json:"pull_request_review_id"`
- Resolver *User `json:"resolver"`
-
- Created time.Time `json:"created_at"`
- Updated time.Time `json:"updated_at"`
-
- Path string `json:"path"`
- CommitID string `json:"commit_id"`
- OrigCommitID string `json:"original_commit_id"`
- DiffHunk string `json:"diff_hunk"`
- LineNum uint64 `json:"position"`
- OldLineNum uint64 `json:"original_position"`
-
- HTMLURL string `json:"html_url"`
- HTMLPullURL string `json:"pull_request_url"`
-}
-
-// CreatePullReviewOptions are options to create a pull review
-type CreatePullReviewOptions struct {
- State ReviewStateType `json:"event"`
- Body string `json:"body"`
- CommitID string `json:"commit_id"`
- Comments []CreatePullReviewComment `json:"comments"`
-}
-
-// CreatePullReviewComment represent a review comment for creation api
-type CreatePullReviewComment struct {
- // the tree path
- Path string `json:"path"`
- Body string `json:"body"`
- // if comment to old file line or 0
- OldLineNum int64 `json:"old_position"`
- // if comment to new file line or 0
- NewLineNum int64 `json:"new_position"`
-}
-
-// SubmitPullReviewOptions are options to submit a pending pull review
-type SubmitPullReviewOptions struct {
- State ReviewStateType `json:"event"`
- Body string `json:"body"`
-}
-
-// DismissPullReviewOptions are options to dismiss a pull review
-type DismissPullReviewOptions struct {
- Message string `json:"message"`
-}
-
-// PullReviewRequestOptions are options to add or remove pull review requests
-type PullReviewRequestOptions struct {
- Reviewers []string `json:"reviewers"`
- TeamReviewers []string `json:"team_reviewers"`
-}
-
-// ListPullReviewsOptions options for listing PullReviews
-type ListPullReviewsOptions struct {
- ListOptions
-}
-
-// Validate the CreatePullReviewOptions struct
-func (opt CreatePullReviewOptions) Validate() error {
- if opt.State != ReviewStateApproved && len(strings.TrimSpace(opt.Body)) == 0 {
- return fmt.Errorf("body is empty")
- }
- for i := range opt.Comments {
- if err := opt.Comments[i].Validate(); err != nil {
- return err
- }
- }
- return nil
-}
-
-// Validate the SubmitPullReviewOptions struct
-func (opt SubmitPullReviewOptions) Validate() error {
- if opt.State != ReviewStateApproved && len(strings.TrimSpace(opt.Body)) == 0 {
- return fmt.Errorf("body is empty")
- }
- return nil
-}
-
-// Validate the CreatePullReviewComment struct
-func (opt CreatePullReviewComment) Validate() error {
- if len(strings.TrimSpace(opt.Body)) == 0 {
- return fmt.Errorf("body is empty")
- }
- if opt.NewLineNum != 0 && opt.OldLineNum != 0 {
- return fmt.Errorf("old and new line num are set, cant identify the code comment position")
- }
- return nil
-}
-
-// ListPullReviews lists all reviews of a pull request
-func (c *Client) ListPullReviews(owner, repo string, index int64, opt ListPullReviewsOptions) ([]*PullReview, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, nil, err
- }
- if err := c.checkServerVersionGreaterThanOrEqual(version1_12_0); err != nil {
- return nil, nil, err
- }
- opt.setDefaults()
- rs := make([]*PullReview, 0, opt.PageSize)
-
- link, _ := url.Parse(fmt.Sprintf("/repos/%s/%s/pulls/%d/reviews", owner, repo, index))
- link.RawQuery = opt.ListOptions.getURLQuery().Encode()
-
- resp, err := c.getParsedResponse("GET", link.String(), jsonHeader, nil, &rs)
- return rs, resp, err
-}
-
-// GetPullReview gets a specific review of a pull request
-func (c *Client) GetPullReview(owner, repo string, index, id int64) (*PullReview, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, nil, err
- }
- if err := c.checkServerVersionGreaterThanOrEqual(version1_12_0); err != nil {
- return nil, nil, err
- }
-
- r := new(PullReview)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/repos/%s/%s/pulls/%d/reviews/%d", owner, repo, index, id), jsonHeader, nil, &r)
- return r, resp, err
-}
-
-// ListPullReviewComments lists all comments of a pull request review
-func (c *Client) ListPullReviewComments(owner, repo string, index, id int64) ([]*PullReviewComment, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, nil, err
- }
- if err := c.checkServerVersionGreaterThanOrEqual(version1_12_0); err != nil {
- return nil, nil, err
- }
- rcl := make([]*PullReviewComment, 0, 4)
- link, _ := url.Parse(fmt.Sprintf("/repos/%s/%s/pulls/%d/reviews/%d/comments", owner, repo, index, id))
-
- resp, err := c.getParsedResponse("GET", link.String(), jsonHeader, nil, &rcl)
- return rcl, resp, err
-}
-
-// DeletePullReview delete a specific review from a pull request
-func (c *Client) DeletePullReview(owner, repo string, index, id int64) (*Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, err
- }
- if err := c.checkServerVersionGreaterThanOrEqual(version1_12_0); err != nil {
- return nil, err
- }
-
- _, resp, err := c.getResponse("DELETE", fmt.Sprintf("/repos/%s/%s/pulls/%d/reviews/%d", owner, repo, index, id), jsonHeader, nil)
- return resp, err
-}
-
-// CreatePullReview create a review to an pull request
-func (c *Client) CreatePullReview(owner, repo string, index int64, opt CreatePullReviewOptions) (*PullReview, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, nil, err
- }
- if err := c.checkServerVersionGreaterThanOrEqual(version1_12_0); err != nil {
- return nil, nil, err
- }
- if err := opt.Validate(); err != nil {
- return nil, nil, err
- }
- body, err := json.Marshal(&opt)
- if err != nil {
- return nil, nil, err
- }
-
- r := new(PullReview)
- resp, err := c.getParsedResponse("POST",
- fmt.Sprintf("/repos/%s/%s/pulls/%d/reviews", owner, repo, index),
- jsonHeader, bytes.NewReader(body), r)
- return r, resp, err
-}
-
-// SubmitPullReview submit a pending review to an pull request
-func (c *Client) SubmitPullReview(owner, repo string, index, id int64, opt SubmitPullReviewOptions) (*PullReview, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, nil, err
- }
- if err := c.checkServerVersionGreaterThanOrEqual(version1_12_0); err != nil {
- return nil, nil, err
- }
- if err := opt.Validate(); err != nil {
- return nil, nil, err
- }
- body, err := json.Marshal(&opt)
- if err != nil {
- return nil, nil, err
- }
-
- r := new(PullReview)
- resp, err := c.getParsedResponse("POST",
- fmt.Sprintf("/repos/%s/%s/pulls/%d/reviews/%d", owner, repo, index, id),
- jsonHeader, bytes.NewReader(body), r)
- return r, resp, err
-}
-
-// CreateReviewRequests create review requests to an pull request
-func (c *Client) CreateReviewRequests(owner, repo string, index int64, opt PullReviewRequestOptions) (*Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, err
- }
- if err := c.checkServerVersionGreaterThanOrEqual(version1_14_0); err != nil {
- return nil, err
- }
- body, err := json.Marshal(&opt)
- if err != nil {
- return nil, err
- }
-
- _, resp, err := c.getResponse("POST",
- fmt.Sprintf("/repos/%s/%s/pulls/%d/requested_reviewers", owner, repo, index),
- jsonHeader, bytes.NewReader(body))
- return resp, err
-}
-
-// DeleteReviewRequests delete review requests to an pull request
-func (c *Client) DeleteReviewRequests(owner, repo string, index int64, opt PullReviewRequestOptions) (*Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, err
- }
- if err := c.checkServerVersionGreaterThanOrEqual(version1_14_0); err != nil {
- return nil, err
- }
- body, err := json.Marshal(&opt)
- if err != nil {
- return nil, err
- }
-
- _, resp, err := c.getResponse("DELETE",
- fmt.Sprintf("/repos/%s/%s/pulls/%d/requested_reviewers", owner, repo, index),
- jsonHeader, bytes.NewReader(body))
- return resp, err
-}
-
-// DismissPullReview dismiss a review for a pull request
-func (c *Client) DismissPullReview(owner, repo string, index, id int64, opt DismissPullReviewOptions) (*Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, err
- }
- if err := c.checkServerVersionGreaterThanOrEqual(version1_14_0); err != nil {
- return nil, err
- }
- body, err := json.Marshal(&opt)
- if err != nil {
- return nil, err
- }
-
- _, resp, err := c.getResponse("POST",
- fmt.Sprintf("/repos/%s/%s/pulls/%d/reviews/%d/dismissals", owner, repo, index, id),
- jsonHeader, bytes.NewReader(body))
- return resp, err
-}
-
-// UnDismissPullReview cancel to dismiss a review for a pull request
-func (c *Client) UnDismissPullReview(owner, repo string, index, id int64) (*Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, err
- }
- if err := c.checkServerVersionGreaterThanOrEqual(version1_14_0); err != nil {
- return nil, err
- }
-
- _, resp, err := c.getResponse("POST",
- fmt.Sprintf("/repos/%s/%s/pulls/%d/reviews/%d/undismissals", owner, repo, index, id),
- jsonHeader, nil)
- return resp, err
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/release.go b/vendor/code.gitea.io/sdk/gitea/release.go
deleted file mode 100644
index c8e7681d02..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/release.go
+++ /dev/null
@@ -1,202 +0,0 @@
-// Copyright 2016 The Gitea Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea
-
-import (
- "bytes"
- "encoding/json"
- "fmt"
- "net/http"
- "strings"
- "time"
-)
-
-// Release represents a repository release
-type Release struct {
- ID int64 `json:"id"`
- TagName string `json:"tag_name"`
- Target string `json:"target_commitish"`
- Title string `json:"name"`
- Note string `json:"body"`
- URL string `json:"url"`
- HTMLURL string `json:"html_url"`
- TarURL string `json:"tarball_url"`
- ZipURL string `json:"zipball_url"`
- IsDraft bool `json:"draft"`
- IsPrerelease bool `json:"prerelease"`
- CreatedAt time.Time `json:"created_at"`
- PublishedAt time.Time `json:"published_at"`
- Publisher *User `json:"author"`
- Attachments []*Attachment `json:"assets"`
-}
-
-// ListReleasesOptions options for listing repository's releases
-type ListReleasesOptions struct {
- ListOptions
- IsDraft *bool
- IsPreRelease *bool
-}
-
-// QueryEncode turns options into querystring argument
-func (opt *ListReleasesOptions) QueryEncode() string {
- query := opt.getURLQuery()
-
- if opt.IsDraft != nil {
- query.Add("draft", fmt.Sprintf("%t", *opt.IsDraft))
- }
- if opt.IsPreRelease != nil {
- query.Add("draft", fmt.Sprintf("%t", *opt.IsPreRelease))
- }
-
- return query.Encode()
-}
-
-// ListReleases list releases of a repository
-func (c *Client) ListReleases(owner, repo string, opt ListReleasesOptions) ([]*Release, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, nil, err
- }
- opt.setDefaults()
- releases := make([]*Release, 0, opt.PageSize)
- resp, err := c.getParsedResponse("GET",
- fmt.Sprintf("/repos/%s/%s/releases?%s", owner, repo, opt.QueryEncode()),
- nil, nil, &releases)
- return releases, resp, err
-}
-
-// GetRelease get a release of a repository by id
-func (c *Client) GetRelease(owner, repo string, id int64) (*Release, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, nil, err
- }
- r := new(Release)
- resp, err := c.getParsedResponse("GET",
- fmt.Sprintf("/repos/%s/%s/releases/%d", owner, repo, id),
- jsonHeader, nil, &r)
- return r, resp, err
-}
-
-// GetReleaseByTag get a release of a repository by tag
-func (c *Client) GetReleaseByTag(owner, repo string, tag string) (*Release, *Response, error) {
- if c.checkServerVersionGreaterThanOrEqual(version1_13_0) != nil {
- return c.fallbackGetReleaseByTag(owner, repo, tag)
- }
- if err := escapeValidatePathSegments(&owner, &repo, &tag); err != nil {
- return nil, nil, err
- }
- r := new(Release)
- resp, err := c.getParsedResponse("GET",
- fmt.Sprintf("/repos/%s/%s/releases/tags/%s", owner, repo, tag),
- nil, nil, &r)
- return r, resp, err
-}
-
-// CreateReleaseOption options when creating a release
-type CreateReleaseOption struct {
- TagName string `json:"tag_name"`
- Target string `json:"target_commitish"`
- Title string `json:"name"`
- Note string `json:"body"`
- IsDraft bool `json:"draft"`
- IsPrerelease bool `json:"prerelease"`
-}
-
-// Validate the CreateReleaseOption struct
-func (opt CreateReleaseOption) Validate() error {
- if len(strings.TrimSpace(opt.Title)) == 0 {
- return fmt.Errorf("title is empty")
- }
- return nil
-}
-
-// CreateRelease create a release
-func (c *Client) CreateRelease(owner, repo string, opt CreateReleaseOption) (*Release, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, nil, err
- }
- if err := opt.Validate(); err != nil {
- return nil, nil, err
- }
- body, err := json.Marshal(opt)
- if err != nil {
- return nil, nil, err
- }
- r := new(Release)
- resp, err := c.getParsedResponse("POST",
- fmt.Sprintf("/repos/%s/%s/releases", owner, repo),
- jsonHeader, bytes.NewReader(body), r)
- return r, resp, err
-}
-
-// EditReleaseOption options when editing a release
-type EditReleaseOption struct {
- TagName string `json:"tag_name"`
- Target string `json:"target_commitish"`
- Title string `json:"name"`
- Note string `json:"body"`
- IsDraft *bool `json:"draft"`
- IsPrerelease *bool `json:"prerelease"`
-}
-
-// EditRelease edit a release
-func (c *Client) EditRelease(owner, repo string, id int64, form EditReleaseOption) (*Release, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, nil, err
- }
- body, err := json.Marshal(form)
- if err != nil {
- return nil, nil, err
- }
- r := new(Release)
- resp, err := c.getParsedResponse("PATCH",
- fmt.Sprintf("/repos/%s/%s/releases/%d", owner, repo, id),
- jsonHeader, bytes.NewReader(body), r)
- return r, resp, err
-}
-
-// DeleteRelease delete a release from a repository, keeping its tag
-func (c *Client) DeleteRelease(user, repo string, id int64) (*Response, error) {
- if err := escapeValidatePathSegments(&user, &repo); err != nil {
- return nil, err
- }
- _, resp, err := c.getResponse("DELETE",
- fmt.Sprintf("/repos/%s/%s/releases/%d", user, repo, id),
- nil, nil)
- return resp, err
-}
-
-// DeleteReleaseByTag deletes a release frm a repository by tag
-func (c *Client) DeleteReleaseByTag(user, repo string, tag string) (*Response, error) {
- if err := escapeValidatePathSegments(&user, &repo, &tag); err != nil {
- return nil, err
- }
- if err := c.checkServerVersionGreaterThanOrEqual(version1_14_0); err != nil {
- return nil, err
- }
- _, resp, err := c.getResponse("DELETE",
- fmt.Sprintf("/repos/%s/%s/releases/tags/%s", user, repo, tag),
- nil, nil)
- return resp, err
-}
-
-// fallbackGetReleaseByTag is fallback for old gitea installations ( < 1.13.0 )
-func (c *Client) fallbackGetReleaseByTag(owner, repo string, tag string) (*Release, *Response, error) {
- for i := 1; ; i++ {
- rl, resp, err := c.ListReleases(owner, repo, ListReleasesOptions{ListOptions: ListOptions{Page: i}})
- if err != nil {
- return nil, resp, err
- }
- if len(rl) == 0 {
- return nil,
- &Response{&http.Response{StatusCode: 404}},
- fmt.Errorf("release with tag '%s' not found", tag)
- }
- for _, r := range rl {
- if r.TagName == tag {
- return r, resp, nil
- }
- }
- }
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/repo.go b/vendor/code.gitea.io/sdk/gitea/repo.go
deleted file mode 100644
index 62d13a3ab5..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/repo.go
+++ /dev/null
@@ -1,534 +0,0 @@
-// Copyright 2014 The Gogs Authors. All rights reserved.
-// Copyright 2020 The Gitea Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea
-
-import (
- "bytes"
- "encoding/json"
- "fmt"
- "io"
- "net/url"
- "strings"
- "time"
-)
-
-// Permission represents a set of permissions
-type Permission struct {
- Admin bool `json:"admin"`
- Push bool `json:"push"`
- Pull bool `json:"pull"`
-}
-
-// InternalTracker represents settings for internal tracker
-type InternalTracker struct {
- // Enable time tracking (Built-in issue tracker)
- EnableTimeTracker bool `json:"enable_time_tracker"`
- // Let only contributors track time (Built-in issue tracker)
- AllowOnlyContributorsToTrackTime bool `json:"allow_only_contributors_to_track_time"`
- // Enable dependencies for issues and pull requests (Built-in issue tracker)
- EnableIssueDependencies bool `json:"enable_issue_dependencies"`
-}
-
-// ExternalTracker represents settings for external tracker
-type ExternalTracker struct {
- // URL of external issue tracker.
- ExternalTrackerURL string `json:"external_tracker_url"`
- // External Issue Tracker URL Format. Use the placeholders {user}, {repo} and {index} for the username, repository name and issue index.
- ExternalTrackerFormat string `json:"external_tracker_format"`
- // External Issue Tracker Number Format, either `numeric` or `alphanumeric`
- ExternalTrackerStyle string `json:"external_tracker_style"`
-}
-
-// ExternalWiki represents setting for external wiki
-type ExternalWiki struct {
- // URL of external wiki.
- ExternalWikiURL string `json:"external_wiki_url"`
-}
-
-// Repository represents a repository
-type Repository struct {
- ID int64 `json:"id"`
- Owner *User `json:"owner"`
- Name string `json:"name"`
- FullName string `json:"full_name"`
- Description string `json:"description"`
- Empty bool `json:"empty"`
- Private bool `json:"private"`
- Fork bool `json:"fork"`
- Template bool `json:"template"`
- Parent *Repository `json:"parent"`
- Mirror bool `json:"mirror"`
- Size int `json:"size"`
- HTMLURL string `json:"html_url"`
- SSHURL string `json:"ssh_url"`
- CloneURL string `json:"clone_url"`
- OriginalURL string `json:"original_url"`
- Website string `json:"website"`
- Stars int `json:"stars_count"`
- Forks int `json:"forks_count"`
- Watchers int `json:"watchers_count"`
- OpenIssues int `json:"open_issues_count"`
- OpenPulls int `json:"open_pr_counter"`
- Releases int `json:"release_counter"`
- DefaultBranch string `json:"default_branch"`
- Archived bool `json:"archived"`
- Created time.Time `json:"created_at"`
- Updated time.Time `json:"updated_at"`
- Permissions *Permission `json:"permissions,omitempty"`
- HasIssues bool `json:"has_issues"`
- InternalTracker *InternalTracker `json:"internal_tracker,omitempty"`
- ExternalTracker *ExternalTracker `json:"external_tracker,omitempty"`
- HasWiki bool `json:"has_wiki"`
- ExternalWiki *ExternalWiki `json:"external_wiki,omitempty"`
- HasPullRequests bool `json:"has_pull_requests"`
- HasProjects bool `json:"has_projects"`
- IgnoreWhitespaceConflicts bool `json:"ignore_whitespace_conflicts"`
- AllowMerge bool `json:"allow_merge_commits"`
- AllowRebase bool `json:"allow_rebase"`
- AllowRebaseMerge bool `json:"allow_rebase_explicit"`
- AllowSquash bool `json:"allow_squash_merge"`
- AvatarURL string `json:"avatar_url"`
- Internal bool `json:"internal"`
- MirrorInterval string `json:"mirror_interval"`
- DefaultMergeStyle MergeStyle `json:"default_merge_style"`
-}
-
-// RepoType represent repo type
-type RepoType string
-
-const (
- // RepoTypeNone dont specify a type
- RepoTypeNone RepoType = ""
- // RepoTypeSource is the default repo type
- RepoTypeSource RepoType = "source"
- // RepoTypeFork is a repo witch was forked from an other one
- RepoTypeFork RepoType = "fork"
- // RepoTypeMirror represents an mirror repo
- RepoTypeMirror RepoType = "mirror"
-)
-
-// TrustModel represent how git signatures are handled in a repository
-type TrustModel string
-
-const (
- // TrustModelDefault use TM set by global config
- TrustModelDefault TrustModel = "default"
- // TrustModelCollaborator gpg signature has to be owned by a repo collaborator
- TrustModelCollaborator TrustModel = "collaborator"
- // TrustModelCommitter gpg signature has to match committer
- TrustModelCommitter TrustModel = "committer"
- // TrustModelCollaboratorCommitter gpg signature has to match committer and owned by a repo collaborator
- TrustModelCollaboratorCommitter TrustModel = "collaboratorcommitter"
-)
-
-// ListReposOptions options for listing repositories
-type ListReposOptions struct {
- ListOptions
-}
-
-// ListMyRepos lists all repositories for the authenticated user that has access to.
-func (c *Client) ListMyRepos(opt ListReposOptions) ([]*Repository, *Response, error) {
- opt.setDefaults()
- repos := make([]*Repository, 0, opt.PageSize)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/user/repos?%s", opt.getURLQuery().Encode()), nil, nil, &repos)
- return repos, resp, err
-}
-
-// ListUserRepos list all repositories of one user by user's name
-func (c *Client) ListUserRepos(user string, opt ListReposOptions) ([]*Repository, *Response, error) {
- if err := escapeValidatePathSegments(&user); err != nil {
- return nil, nil, err
- }
- opt.setDefaults()
- repos := make([]*Repository, 0, opt.PageSize)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/users/%s/repos?%s", user, opt.getURLQuery().Encode()), nil, nil, &repos)
- return repos, resp, err
-}
-
-// ListOrgReposOptions options for a organization's repositories
-type ListOrgReposOptions struct {
- ListOptions
-}
-
-// ListOrgRepos list all repositories of one organization by organization's name
-func (c *Client) ListOrgRepos(org string, opt ListOrgReposOptions) ([]*Repository, *Response, error) {
- if err := escapeValidatePathSegments(&org); err != nil {
- return nil, nil, err
- }
- opt.setDefaults()
- repos := make([]*Repository, 0, opt.PageSize)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/orgs/%s/repos?%s", org, opt.getURLQuery().Encode()), nil, nil, &repos)
- return repos, resp, err
-}
-
-// SearchRepoOptions options for searching repositories
-type SearchRepoOptions struct {
- ListOptions
-
- // The keyword to query
- Keyword string
- // Limit search to repositories with keyword as topic
- KeywordIsTopic bool
- // Include search of keyword within repository description
- KeywordInDescription bool
-
- /*
- User Filter
- */
-
- // Repo Owner
- OwnerID int64
- // Stared By UserID
- StarredByUserID int64
-
- /*
- Repo Attributes
- */
-
- // pubic, private or all repositories (defaults to all)
- IsPrivate *bool
- // archived, non-archived or all repositories (defaults to all)
- IsArchived *bool
- // Exclude template repos from search
- ExcludeTemplate bool
- // Filter by "fork", "source", "mirror"
- Type RepoType
-
- /*
- Sort Filters
- */
-
- // sort repos by attribute. Supported values are "alpha", "created", "updated", "size", and "id". Default is "alpha"
- Sort string
- // sort order, either "asc" (ascending) or "desc" (descending). Default is "asc", ignored if "sort" is not specified.
- Order string
- // Repo owner to prioritize in the results
- PrioritizedByOwnerID int64
-
- /*
- Cover EdgeCases
- */
- // if set all other options are ignored and this string is used as query
- RawQuery string
-}
-
-// QueryEncode turns options into querystring argument
-func (opt *SearchRepoOptions) QueryEncode() string {
- query := opt.getURLQuery()
- if opt.Keyword != "" {
- query.Add("q", opt.Keyword)
- }
- if opt.KeywordIsTopic {
- query.Add("topic", "true")
- }
- if opt.KeywordInDescription {
- query.Add("includeDesc", "true")
- }
-
- // User Filter
- if opt.OwnerID > 0 {
- query.Add("uid", fmt.Sprintf("%d", opt.OwnerID))
- query.Add("exclusive", "true")
- }
- if opt.StarredByUserID > 0 {
- query.Add("starredBy", fmt.Sprintf("%d", opt.StarredByUserID))
- }
-
- // Repo Attributes
- if opt.IsPrivate != nil {
- query.Add("is_private", fmt.Sprintf("%v", opt.IsPrivate))
- }
- if opt.IsArchived != nil {
- query.Add("archived", fmt.Sprintf("%v", opt.IsArchived))
- }
- if opt.ExcludeTemplate {
- query.Add("template", "false")
- }
- if len(opt.Type) != 0 {
- query.Add("mode", string(opt.Type))
- }
-
- // Sort Filters
- if opt.Sort != "" {
- query.Add("sort", opt.Sort)
- }
- if opt.PrioritizedByOwnerID > 0 {
- query.Add("priority_owner_id", fmt.Sprintf("%d", opt.PrioritizedByOwnerID))
- }
- if opt.Order != "" {
- query.Add("order", opt.Order)
- }
-
- return query.Encode()
-}
-
-type searchRepoResponse struct {
- Repos []*Repository `json:"data"`
-}
-
-// SearchRepos searches for repositories matching the given filters
-func (c *Client) SearchRepos(opt SearchRepoOptions) ([]*Repository, *Response, error) {
- opt.setDefaults()
- repos := new(searchRepoResponse)
-
- link, _ := url.Parse("/repos/search")
-
- if len(opt.RawQuery) != 0 {
- link.RawQuery = opt.RawQuery
- } else {
- link.RawQuery = opt.QueryEncode()
- // IsPrivate only works on gitea >= 1.12.0
- if err := c.checkServerVersionGreaterThanOrEqual(version1_12_0); err != nil && opt.IsPrivate != nil {
- if *opt.IsPrivate {
- // private repos only not supported on gitea <= 1.11.x
- return nil, nil, err
- }
- link.Query().Add("private", "false")
- }
- }
-
- resp, err := c.getParsedResponse("GET", link.String(), nil, nil, &repos)
- return repos.Repos, resp, err
-}
-
-// CreateRepoOption options when creating repository
-type CreateRepoOption struct {
- // Name of the repository to create
- Name string `json:"name"`
- // Description of the repository to create
- Description string `json:"description"`
- // Whether the repository is private
- Private bool `json:"private"`
- // Issue Label set to use
- IssueLabels string `json:"issue_labels"`
- // Whether the repository should be auto-intialized?
- AutoInit bool `json:"auto_init"`
- // Whether the repository is template
- Template bool `json:"template"`
- // Gitignores to use
- Gitignores string `json:"gitignores"`
- // License to use
- License string `json:"license"`
- // Readme of the repository to create
- Readme string `json:"readme"`
- // DefaultBranch of the repository (used when initializes and in template)
- DefaultBranch string `json:"default_branch"`
- // TrustModel of the repository
- TrustModel TrustModel `json:"trust_model"`
-}
-
-// Validate the CreateRepoOption struct
-func (opt CreateRepoOption) Validate(c *Client) error {
- if len(strings.TrimSpace(opt.Name)) == 0 {
- return fmt.Errorf("name is empty")
- }
- if len(opt.Name) > 100 {
- return fmt.Errorf("name has more than 100 chars")
- }
- if len(opt.Description) > 255 {
- return fmt.Errorf("name has more than 255 chars")
- }
- if len(opt.DefaultBranch) > 100 {
- return fmt.Errorf("name has more than 100 chars")
- }
- if len(opt.TrustModel) != 0 {
- if err := c.checkServerVersionGreaterThanOrEqual(version1_13_0); err != nil {
- return err
- }
- }
- return nil
-}
-
-// CreateRepo creates a repository for authenticated user.
-func (c *Client) CreateRepo(opt CreateRepoOption) (*Repository, *Response, error) {
- if err := opt.Validate(c); err != nil {
- return nil, nil, err
- }
- body, err := json.Marshal(&opt)
- if err != nil {
- return nil, nil, err
- }
- repo := new(Repository)
- resp, err := c.getParsedResponse("POST", "/user/repos", jsonHeader, bytes.NewReader(body), repo)
- return repo, resp, err
-}
-
-// CreateOrgRepo creates an organization repository for authenticated user.
-func (c *Client) CreateOrgRepo(org string, opt CreateRepoOption) (*Repository, *Response, error) {
- if err := escapeValidatePathSegments(&org); err != nil {
- return nil, nil, err
- }
- if err := opt.Validate(c); err != nil {
- return nil, nil, err
- }
- body, err := json.Marshal(&opt)
- if err != nil {
- return nil, nil, err
- }
- repo := new(Repository)
- resp, err := c.getParsedResponse("POST", fmt.Sprintf("/org/%s/repos", org), jsonHeader, bytes.NewReader(body), repo)
- return repo, resp, err
-}
-
-// GetRepo returns information of a repository of given owner.
-func (c *Client) GetRepo(owner, reponame string) (*Repository, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &reponame); err != nil {
- return nil, nil, err
- }
- repo := new(Repository)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/repos/%s/%s", owner, reponame), nil, nil, repo)
- return repo, resp, err
-}
-
-// GetRepoByID returns information of a repository by a giver repository ID.
-func (c *Client) GetRepoByID(id int64) (*Repository, *Response, error) {
- repo := new(Repository)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/repositories/%d", id), nil, nil, repo)
- return repo, resp, err
-}
-
-// EditRepoOption options when editing a repository's properties
-type EditRepoOption struct {
- // name of the repository
- Name *string `json:"name,omitempty"`
- // a short description of the repository.
- Description *string `json:"description,omitempty"`
- // a URL with more information about the repository.
- Website *string `json:"website,omitempty"`
- // either `true` to make the repository private or `false` to make it public.
- // Note: you will get a 422 error if the organization restricts changing repository visibility to organization
- // owners and a non-owner tries to change the value of private.
- Private *bool `json:"private,omitempty"`
- // either `true` to make this repository a template or `false` to make it a normal repository
- Template *bool `json:"template,omitempty"`
- // either `true` to enable issues for this repository or `false` to disable them.
- HasIssues *bool `json:"has_issues,omitempty"`
- // set this structure to configure internal issue tracker (requires has_issues)
- InternalTracker *InternalTracker `json:"internal_tracker,omitempty"`
- // set this structure to use external issue tracker (requires has_issues)
- ExternalTracker *ExternalTracker `json:"external_tracker,omitempty"`
- // either `true` to enable the wiki for this repository or `false` to disable it.
- HasWiki *bool `json:"has_wiki,omitempty"`
- // set this structure to use external wiki instead of internal (requires has_wiki)
- ExternalWiki *ExternalWiki `json:"external_wiki,omitempty"`
- // sets the default branch for this repository.
- DefaultBranch *string `json:"default_branch,omitempty"`
- // either `true` to allow pull requests, or `false` to prevent pull request.
- HasPullRequests *bool `json:"has_pull_requests,omitempty"`
- // either `true` to enable project unit, or `false` to disable them.
- HasProjects *bool `json:"has_projects,omitempty"`
- // either `true` to ignore whitespace for conflicts, or `false` to not ignore whitespace. `has_pull_requests` must be `true`.
- IgnoreWhitespaceConflicts *bool `json:"ignore_whitespace_conflicts,omitempty"`
- // either `true` to allow merging pull requests with a merge commit, or `false` to prevent merging pull requests with merge commits. `has_pull_requests` must be `true`.
- AllowMerge *bool `json:"allow_merge_commits,omitempty"`
- // either `true` to allow rebase-merging pull requests, or `false` to prevent rebase-merging. `has_pull_requests` must be `true`.
- AllowRebase *bool `json:"allow_rebase,omitempty"`
- // either `true` to allow rebase with explicit merge commits (--no-ff), or `false` to prevent rebase with explicit merge commits. `has_pull_requests` must be `true`.
- AllowRebaseMerge *bool `json:"allow_rebase_explicit,omitempty"`
- // either `true` to allow squash-merging pull requests, or `false` to prevent squash-merging. `has_pull_requests` must be `true`.
- AllowSquash *bool `json:"allow_squash_merge,omitempty"`
- // set to `true` to archive this repository.
- Archived *bool `json:"archived,omitempty"`
- // set to a string like `8h30m0s` to set the mirror interval time
- MirrorInterval *string `json:"mirror_interval,omitempty"`
- // either `true` to allow mark pr as merged manually, or `false` to prevent it. `has_pull_requests` must be `true`.
- AllowManualMerge *bool `json:"allow_manual_merge,omitempty"`
- // either `true` to enable AutodetectManualMerge, or `false` to prevent it. `has_pull_requests` must be `true`, Note: In some special cases, misjudgments can occur.
- AutodetectManualMerge *bool `json:"autodetect_manual_merge,omitempty"`
- // set to a merge style to be used by this repository: "merge", "rebase", "rebase-merge", or "squash". `has_pull_requests` must be `true`.
- DefaultMergeStyle *MergeStyle `json:"default_merge_style,omitempty"`
- // set to `true` to archive this repository.
-}
-
-// EditRepo edit the properties of a repository
-func (c *Client) EditRepo(owner, reponame string, opt EditRepoOption) (*Repository, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &reponame); err != nil {
- return nil, nil, err
- }
- body, err := json.Marshal(&opt)
- if err != nil {
- return nil, nil, err
- }
- repo := new(Repository)
- resp, err := c.getParsedResponse("PATCH", fmt.Sprintf("/repos/%s/%s", owner, reponame), jsonHeader, bytes.NewReader(body), repo)
- return repo, resp, err
-}
-
-// DeleteRepo deletes a repository of user or organization.
-func (c *Client) DeleteRepo(owner, repo string) (*Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, err
- }
- _, resp, err := c.getResponse("DELETE", fmt.Sprintf("/repos/%s/%s", owner, repo), nil, nil)
- return resp, err
-}
-
-// MirrorSync adds a mirrored repository to the mirror sync queue.
-func (c *Client) MirrorSync(owner, repo string) (*Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, err
- }
- _, resp, err := c.getResponse("POST", fmt.Sprintf("/repos/%s/%s/mirror-sync", owner, repo), nil, nil)
- return resp, err
-}
-
-// GetRepoLanguages return language stats of a repo
-func (c *Client) GetRepoLanguages(owner, repo string) (map[string]int64, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, nil, err
- }
- langMap := make(map[string]int64)
-
- data, resp, err := c.getResponse("GET", fmt.Sprintf("/repos/%s/%s/languages", owner, repo), jsonHeader, nil)
- if err != nil {
- return nil, resp, err
- }
- if err = json.Unmarshal(data, &langMap); err != nil {
- return nil, resp, err
- }
- return langMap, resp, nil
-}
-
-// ArchiveType represent supported archive formats by gitea
-type ArchiveType string
-
-const (
- // ZipArchive represent zip format
- ZipArchive ArchiveType = ".zip"
- // TarGZArchive represent tar.gz format
- TarGZArchive ArchiveType = ".tar.gz"
-)
-
-// GetArchive get an archive of a repository by git reference
-// e.g.: ref -> master, 70b7c74b33, v1.2.1, ...
-func (c *Client) GetArchive(owner, repo, ref string, ext ArchiveType) ([]byte, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, nil, err
- }
- ref = pathEscapeSegments(ref)
- return c.getResponse("GET", fmt.Sprintf("/repos/%s/%s/archive/%s%s", owner, repo, ref, ext), nil, nil)
-}
-
-// GetArchiveReader gets a `git archive` for a particular tree-ish git reference
-// such as a branch name (`master`), a commit hash (`70b7c74b33`), a tag
-// (`v1.2.1`). The archive is returned as a byte stream in a ReadCloser. It is
-// the responsibility of the client to close the reader.
-func (c *Client) GetArchiveReader(owner, repo, ref string, ext ArchiveType) (io.ReadCloser, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, nil, err
- }
- ref = pathEscapeSegments(ref)
- resp, err := c.doRequest("GET", fmt.Sprintf("/repos/%s/%s/archive/%s%s", owner, repo, ref, ext), nil, nil)
- if err != nil {
- return nil, resp, err
- }
-
- if _, err := statusCodeToErr(resp); err != nil {
- return nil, resp, err
- }
-
- return resp.Body, resp, nil
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/repo_branch.go b/vendor/code.gitea.io/sdk/gitea/repo_branch.go
deleted file mode 100644
index 0b7e873c4f..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/repo_branch.go
+++ /dev/null
@@ -1,143 +0,0 @@
-// Copyright 2016 The Gogs Authors. All rights reserved.
-// Copyright 2020 The Gitea Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea
-
-import (
- "bytes"
- "encoding/json"
- "fmt"
- "time"
-)
-
-// PayloadUser represents the author or committer of a commit
-type PayloadUser struct {
- // Full name of the commit author
- Name string `json:"name"`
- Email string `json:"email"`
- UserName string `json:"username"`
-}
-
-// PayloadCommit represents a commit
-type PayloadCommit struct {
- // sha1 hash of the commit
- ID string `json:"id"`
- Message string `json:"message"`
- URL string `json:"url"`
- Author *PayloadUser `json:"author"`
- Committer *PayloadUser `json:"committer"`
- Verification *PayloadCommitVerification `json:"verification"`
- Timestamp time.Time `json:"timestamp"`
- Added []string `json:"added"`
- Removed []string `json:"removed"`
- Modified []string `json:"modified"`
-}
-
-// PayloadCommitVerification represents the GPG verification of a commit
-type PayloadCommitVerification struct {
- Verified bool `json:"verified"`
- Reason string `json:"reason"`
- Signature string `json:"signature"`
- Payload string `json:"payload"`
-}
-
-// Branch represents a repository branch
-type Branch struct {
- Name string `json:"name"`
- Commit *PayloadCommit `json:"commit"`
- Protected bool `json:"protected"`
- RequiredApprovals int64 `json:"required_approvals"`
- EnableStatusCheck bool `json:"enable_status_check"`
- StatusCheckContexts []string `json:"status_check_contexts"`
- UserCanPush bool `json:"user_can_push"`
- UserCanMerge bool `json:"user_can_merge"`
- EffectiveBranchProtectionName string `json:"effective_branch_protection_name"`
-}
-
-// ListRepoBranchesOptions options for listing a repository's branches
-type ListRepoBranchesOptions struct {
- ListOptions
-}
-
-// ListRepoBranches list all the branches of one repository
-func (c *Client) ListRepoBranches(user, repo string, opt ListRepoBranchesOptions) ([]*Branch, *Response, error) {
- if err := escapeValidatePathSegments(&user, &repo); err != nil {
- return nil, nil, err
- }
- opt.setDefaults()
- branches := make([]*Branch, 0, opt.PageSize)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/repos/%s/%s/branches?%s", user, repo, opt.getURLQuery().Encode()), nil, nil, &branches)
- return branches, resp, err
-}
-
-// GetRepoBranch get one branch's information of one repository
-func (c *Client) GetRepoBranch(user, repo, branch string) (*Branch, *Response, error) {
- if err := escapeValidatePathSegments(&user, &repo, &branch); err != nil {
- return nil, nil, err
- }
- b := new(Branch)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/repos/%s/%s/branches/%s", user, repo, branch), nil, nil, &b)
- if err != nil {
- return nil, resp, err
- }
- return b, resp, nil
-}
-
-// DeleteRepoBranch delete a branch in a repository
-func (c *Client) DeleteRepoBranch(user, repo, branch string) (bool, *Response, error) {
- if err := escapeValidatePathSegments(&user, &repo, &branch); err != nil {
- return false, nil, err
- }
- if err := c.checkServerVersionGreaterThanOrEqual(version1_12_0); err != nil {
- return false, nil, err
- }
- status, resp, err := c.getStatusCode("DELETE", fmt.Sprintf("/repos/%s/%s/branches/%s", user, repo, branch), nil, nil)
- if err != nil {
- return false, resp, err
- }
- return status == 204, resp, nil
-}
-
-// CreateBranchOption options when creating a branch in a repository
-type CreateBranchOption struct {
- // Name of the branch to create
- BranchName string `json:"new_branch_name"`
- // Name of the old branch to create from (optional)
- OldBranchName string `json:"old_branch_name"`
-}
-
-// Validate the CreateBranchOption struct
-func (opt CreateBranchOption) Validate() error {
- if len(opt.BranchName) == 0 {
- return fmt.Errorf("BranchName is empty")
- }
- if len(opt.BranchName) > 100 {
- return fmt.Errorf("BranchName to long")
- }
- if len(opt.OldBranchName) > 100 {
- return fmt.Errorf("OldBranchName to long")
- }
- return nil
-}
-
-// CreateBranch creates a branch for a user's repository
-func (c *Client) CreateBranch(owner, repo string, opt CreateBranchOption) (*Branch, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, nil, err
- }
- if err := c.checkServerVersionGreaterThanOrEqual(version1_13_0); err != nil {
- return nil, nil, err
- }
- if err := opt.Validate(); err != nil {
- return nil, nil, err
- }
- body, err := json.Marshal(&opt)
- if err != nil {
- return nil, nil, err
- }
- branch := new(Branch)
- resp, err := c.getParsedResponse("POST", fmt.Sprintf("/repos/%s/%s/branches", owner, repo), jsonHeader, bytes.NewReader(body), branch)
- return branch, resp, err
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/repo_branch_protection.go b/vendor/code.gitea.io/sdk/gitea/repo_branch_protection.go
deleted file mode 100644
index 22bd7b9629..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/repo_branch_protection.go
+++ /dev/null
@@ -1,168 +0,0 @@
-// Copyright 2020 The Gitea Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea
-
-import (
- "bytes"
- "encoding/json"
- "fmt"
- "net/url"
- "time"
-)
-
-// BranchProtection represents a branch protection for a repository
-type BranchProtection struct {
- BranchName string `json:"branch_name"`
- EnablePush bool `json:"enable_push"`
- EnablePushWhitelist bool `json:"enable_push_whitelist"`
- PushWhitelistUsernames []string `json:"push_whitelist_usernames"`
- PushWhitelistTeams []string `json:"push_whitelist_teams"`
- PushWhitelistDeployKeys bool `json:"push_whitelist_deploy_keys"`
- EnableMergeWhitelist bool `json:"enable_merge_whitelist"`
- MergeWhitelistUsernames []string `json:"merge_whitelist_usernames"`
- MergeWhitelistTeams []string `json:"merge_whitelist_teams"`
- EnableStatusCheck bool `json:"enable_status_check"`
- StatusCheckContexts []string `json:"status_check_contexts"`
- RequiredApprovals int64 `json:"required_approvals"`
- EnableApprovalsWhitelist bool `json:"enable_approvals_whitelist"`
- ApprovalsWhitelistUsernames []string `json:"approvals_whitelist_username"`
- ApprovalsWhitelistTeams []string `json:"approvals_whitelist_teams"`
- BlockOnRejectedReviews bool `json:"block_on_rejected_reviews"`
- BlockOnOfficialReviewRequests bool `json:"block_on_official_review_requests"`
- BlockOnOutdatedBranch bool `json:"block_on_outdated_branch"`
- DismissStaleApprovals bool `json:"dismiss_stale_approvals"`
- RequireSignedCommits bool `json:"require_signed_commits"`
- ProtectedFilePatterns string `json:"protected_file_patterns"`
- Created time.Time `json:"created_at"`
- Updated time.Time `json:"updated_at"`
-}
-
-// CreateBranchProtectionOption options for creating a branch protection
-type CreateBranchProtectionOption struct {
- BranchName string `json:"branch_name"`
- EnablePush bool `json:"enable_push"`
- EnablePushWhitelist bool `json:"enable_push_whitelist"`
- PushWhitelistUsernames []string `json:"push_whitelist_usernames"`
- PushWhitelistTeams []string `json:"push_whitelist_teams"`
- PushWhitelistDeployKeys bool `json:"push_whitelist_deploy_keys"`
- EnableMergeWhitelist bool `json:"enable_merge_whitelist"`
- MergeWhitelistUsernames []string `json:"merge_whitelist_usernames"`
- MergeWhitelistTeams []string `json:"merge_whitelist_teams"`
- EnableStatusCheck bool `json:"enable_status_check"`
- StatusCheckContexts []string `json:"status_check_contexts"`
- RequiredApprovals int64 `json:"required_approvals"`
- EnableApprovalsWhitelist bool `json:"enable_approvals_whitelist"`
- ApprovalsWhitelistUsernames []string `json:"approvals_whitelist_username"`
- ApprovalsWhitelistTeams []string `json:"approvals_whitelist_teams"`
- BlockOnRejectedReviews bool `json:"block_on_rejected_reviews"`
- BlockOnOfficialReviewRequests bool `json:"block_on_official_review_requests"`
- BlockOnOutdatedBranch bool `json:"block_on_outdated_branch"`
- DismissStaleApprovals bool `json:"dismiss_stale_approvals"`
- RequireSignedCommits bool `json:"require_signed_commits"`
- ProtectedFilePatterns string `json:"protected_file_patterns"`
-}
-
-// EditBranchProtectionOption options for editing a branch protection
-type EditBranchProtectionOption struct {
- EnablePush *bool `json:"enable_push"`
- EnablePushWhitelist *bool `json:"enable_push_whitelist"`
- PushWhitelistUsernames []string `json:"push_whitelist_usernames"`
- PushWhitelistTeams []string `json:"push_whitelist_teams"`
- PushWhitelistDeployKeys *bool `json:"push_whitelist_deploy_keys"`
- EnableMergeWhitelist *bool `json:"enable_merge_whitelist"`
- MergeWhitelistUsernames []string `json:"merge_whitelist_usernames"`
- MergeWhitelistTeams []string `json:"merge_whitelist_teams"`
- EnableStatusCheck *bool `json:"enable_status_check"`
- StatusCheckContexts []string `json:"status_check_contexts"`
- RequiredApprovals *int64 `json:"required_approvals"`
- EnableApprovalsWhitelist *bool `json:"enable_approvals_whitelist"`
- ApprovalsWhitelistUsernames []string `json:"approvals_whitelist_username"`
- ApprovalsWhitelistTeams []string `json:"approvals_whitelist_teams"`
- BlockOnRejectedReviews *bool `json:"block_on_rejected_reviews"`
- BlockOnOfficialReviewRequests *bool `json:"block_on_official_review_requests"`
- BlockOnOutdatedBranch *bool `json:"block_on_outdated_branch"`
- DismissStaleApprovals *bool `json:"dismiss_stale_approvals"`
- RequireSignedCommits *bool `json:"require_signed_commits"`
- ProtectedFilePatterns *string `json:"protected_file_patterns"`
-}
-
-// ListBranchProtectionsOptions list branch protection options
-type ListBranchProtectionsOptions struct {
- ListOptions
-}
-
-// ListBranchProtections list branch protections for a repo
-func (c *Client) ListBranchProtections(owner, repo string, opt ListBranchProtectionsOptions) ([]*BranchProtection, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, nil, err
- }
- if err := c.checkServerVersionGreaterThanOrEqual(version1_12_0); err != nil {
- return nil, nil, err
- }
- bps := make([]*BranchProtection, 0, opt.PageSize)
- link, _ := url.Parse(fmt.Sprintf("/repos/%s/%s/branch_protections", owner, repo))
- link.RawQuery = opt.getURLQuery().Encode()
- resp, err := c.getParsedResponse("GET", link.String(), jsonHeader, nil, &bps)
- return bps, resp, err
-}
-
-// GetBranchProtection gets a branch protection
-func (c *Client) GetBranchProtection(owner, repo, name string) (*BranchProtection, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo, &name); err != nil {
- return nil, nil, err
- }
- if err := c.checkServerVersionGreaterThanOrEqual(version1_12_0); err != nil {
- return nil, nil, err
- }
- bp := new(BranchProtection)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/repos/%s/%s/branch_protections/%s", owner, repo, name), jsonHeader, nil, bp)
- return bp, resp, err
-}
-
-// CreateBranchProtection creates a branch protection for a repo
-func (c *Client) CreateBranchProtection(owner, repo string, opt CreateBranchProtectionOption) (*BranchProtection, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, nil, err
- }
- if err := c.checkServerVersionGreaterThanOrEqual(version1_12_0); err != nil {
- return nil, nil, err
- }
- bp := new(BranchProtection)
- body, err := json.Marshal(&opt)
- if err != nil {
- return nil, nil, err
- }
- resp, err := c.getParsedResponse("POST", fmt.Sprintf("/repos/%s/%s/branch_protections", owner, repo), jsonHeader, bytes.NewReader(body), bp)
- return bp, resp, err
-}
-
-// EditBranchProtection edits a branch protection for a repo
-func (c *Client) EditBranchProtection(owner, repo, name string, opt EditBranchProtectionOption) (*BranchProtection, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo, &name); err != nil {
- return nil, nil, err
- }
- if err := c.checkServerVersionGreaterThanOrEqual(version1_12_0); err != nil {
- return nil, nil, err
- }
- bp := new(BranchProtection)
- body, err := json.Marshal(&opt)
- if err != nil {
- return nil, nil, err
- }
- resp, err := c.getParsedResponse("PATCH", fmt.Sprintf("/repos/%s/%s/branch_protections/%s", owner, repo, name), jsonHeader, bytes.NewReader(body), bp)
- return bp, resp, err
-}
-
-// DeleteBranchProtection deletes a branch protection for a repo
-func (c *Client) DeleteBranchProtection(owner, repo, name string) (*Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo, &name); err != nil {
- return nil, err
- }
- if err := c.checkServerVersionGreaterThanOrEqual(version1_12_0); err != nil {
- return nil, err
- }
- _, resp, err := c.getResponse("DELETE", fmt.Sprintf("/repos/%s/%s/branch_protections/%s", owner, repo, name), jsonHeader, nil)
- return resp, err
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/repo_collaborator.go b/vendor/code.gitea.io/sdk/gitea/repo_collaborator.go
deleted file mode 100644
index c766250f42..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/repo_collaborator.go
+++ /dev/null
@@ -1,136 +0,0 @@
-// Copyright 2021 The Gitea Authors. All rights reserved.
-// Copyright 2016 The Gogs Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea
-
-import (
- "bytes"
- "encoding/json"
- "fmt"
-)
-
-// ListCollaboratorsOptions options for listing a repository's collaborators
-type ListCollaboratorsOptions struct {
- ListOptions
-}
-
-// ListCollaborators list a repository's collaborators
-func (c *Client) ListCollaborators(user, repo string, opt ListCollaboratorsOptions) ([]*User, *Response, error) {
- if err := escapeValidatePathSegments(&user, &repo); err != nil {
- return nil, nil, err
- }
- opt.setDefaults()
- collaborators := make([]*User, 0, opt.PageSize)
- resp, err := c.getParsedResponse("GET",
- fmt.Sprintf("/repos/%s/%s/collaborators?%s", user, repo, opt.getURLQuery().Encode()),
- nil, nil, &collaborators)
- return collaborators, resp, err
-}
-
-// IsCollaborator check if a user is a collaborator of a repository
-func (c *Client) IsCollaborator(user, repo, collaborator string) (bool, *Response, error) {
- if err := escapeValidatePathSegments(&user, &repo, &collaborator); err != nil {
- return false, nil, err
- }
- status, resp, err := c.getStatusCode("GET", fmt.Sprintf("/repos/%s/%s/collaborators/%s", user, repo, collaborator), nil, nil)
- if err != nil {
- return false, resp, err
- }
- if status == 204 {
- return true, resp, nil
- }
- return false, resp, nil
-}
-
-// AddCollaboratorOption options when adding a user as a collaborator of a repository
-type AddCollaboratorOption struct {
- Permission *AccessMode `json:"permission"`
-}
-
-// AccessMode represent the grade of access you have to something
-type AccessMode string
-
-const (
- // AccessModeNone no access
- AccessModeNone AccessMode = "none"
- // AccessModeRead read access
- AccessModeRead AccessMode = "read"
- // AccessModeWrite write access
- AccessModeWrite AccessMode = "write"
- // AccessModeAdmin admin access
- AccessModeAdmin AccessMode = "admin"
- // AccessModeOwner owner
- AccessModeOwner AccessMode = "owner"
-)
-
-// Validate the AddCollaboratorOption struct
-func (opt AddCollaboratorOption) Validate() error {
- if opt.Permission != nil {
- if *opt.Permission == AccessModeOwner {
- *opt.Permission = AccessModeAdmin
- return nil
- }
- if *opt.Permission == AccessModeNone {
- opt.Permission = nil
- return nil
- }
- if *opt.Permission != AccessModeRead && *opt.Permission != AccessModeWrite && *opt.Permission != AccessModeAdmin {
- return fmt.Errorf("permission mode invalid")
- }
- }
- return nil
-}
-
-// AddCollaborator add some user as a collaborator of a repository
-func (c *Client) AddCollaborator(user, repo, collaborator string, opt AddCollaboratorOption) (*Response, error) {
- if err := escapeValidatePathSegments(&user, &repo, &collaborator); err != nil {
- return nil, err
- }
- if err := opt.Validate(); err != nil {
- return nil, err
- }
- body, err := json.Marshal(&opt)
- if err != nil {
- return nil, err
- }
- _, resp, err := c.getResponse("PUT", fmt.Sprintf("/repos/%s/%s/collaborators/%s", user, repo, collaborator), jsonHeader, bytes.NewReader(body))
- return resp, err
-}
-
-// DeleteCollaborator remove a collaborator from a repository
-func (c *Client) DeleteCollaborator(user, repo, collaborator string) (*Response, error) {
- if err := escapeValidatePathSegments(&user, &repo, &collaborator); err != nil {
- return nil, err
- }
- _, resp, err := c.getResponse("DELETE",
- fmt.Sprintf("/repos/%s/%s/collaborators/%s", user, repo, collaborator), nil, nil)
- return resp, err
-}
-
-// GetReviewers return all users that can be requested to review in this repo
-func (c *Client) GetReviewers(user, repo string) ([]*User, *Response, error) {
- if err := c.checkServerVersionGreaterThanOrEqual(version1_15_0); err != nil {
- return nil, nil, err
- }
- if err := escapeValidatePathSegments(&user, &repo); err != nil {
- return nil, nil, err
- }
- reviewers := make([]*User, 0, 5)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/repos/%s/%s/reviewers", user, repo), nil, nil, &reviewers)
- return reviewers, resp, err
-}
-
-// GetAssignees return all users that have write access and can be assigned to issues
-func (c *Client) GetAssignees(user, repo string) ([]*User, *Response, error) {
- if err := c.checkServerVersionGreaterThanOrEqual(version1_15_0); err != nil {
- return nil, nil, err
- }
- if err := escapeValidatePathSegments(&user, &repo); err != nil {
- return nil, nil, err
- }
- assignees := make([]*User, 0, 5)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/repos/%s/%s/assignees", user, repo), nil, nil, &assignees)
- return assignees, resp, err
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/repo_commit.go b/vendor/code.gitea.io/sdk/gitea/repo_commit.go
deleted file mode 100644
index 9bb65b3b11..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/repo_commit.go
+++ /dev/null
@@ -1,101 +0,0 @@
-// Copyright 2018 The Gogs Authors. All rights reserved.
-// Copyright 2019 The Gitea Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea
-
-import (
- "fmt"
- "net/url"
- "time"
-)
-
-// Identity for a person's identity like an author or committer
-type Identity struct {
- Name string `json:"name"`
- Email string `json:"email"`
-}
-
-// CommitMeta contains meta information of a commit in terms of API.
-type CommitMeta struct {
- URL string `json:"url"`
- SHA string `json:"sha"`
- Created time.Time `json:"created"`
-}
-
-// CommitUser contains information of a user in the context of a commit.
-type CommitUser struct {
- Identity
- Date string `json:"date"`
-}
-
-// RepoCommit contains information of a commit in the context of a repository.
-type RepoCommit struct {
- URL string `json:"url"`
- Author *CommitUser `json:"author"`
- Committer *CommitUser `json:"committer"`
- Message string `json:"message"`
- Tree *CommitMeta `json:"tree"`
-}
-
-// Commit contains information generated from a Git commit.
-type Commit struct {
- *CommitMeta
- HTMLURL string `json:"html_url"`
- RepoCommit *RepoCommit `json:"commit"`
- Author *User `json:"author"`
- Committer *User `json:"committer"`
- Parents []*CommitMeta `json:"parents"`
- Files []*CommitAffectedFiles `json:"files"`
-}
-
-// CommitDateOptions store dates for GIT_AUTHOR_DATE and GIT_COMMITTER_DATE
-type CommitDateOptions struct {
- Author time.Time `json:"author"`
- Committer time.Time `json:"committer"`
-}
-
-// CommitAffectedFiles store information about files affected by the commit
-type CommitAffectedFiles struct {
- Filename string `json:"filename"`
-}
-
-// GetSingleCommit returns a single commit
-func (c *Client) GetSingleCommit(user, repo, commitID string) (*Commit, *Response, error) {
- if err := escapeValidatePathSegments(&user, &repo, &commitID); err != nil {
- return nil, nil, err
- }
- commit := new(Commit)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/repos/%s/%s/git/commits/%s", user, repo, commitID), nil, nil, &commit)
- return commit, resp, err
-}
-
-// ListCommitOptions list commit options
-type ListCommitOptions struct {
- ListOptions
- //SHA or branch to start listing commits from (usually 'master')
- SHA string
-}
-
-// QueryEncode turns options into querystring argument
-func (opt *ListCommitOptions) QueryEncode() string {
- query := opt.ListOptions.getURLQuery()
- if opt.SHA != "" {
- query.Add("sha", opt.SHA)
- }
- return query.Encode()
-}
-
-// ListRepoCommits return list of commits from a repo
-func (c *Client) ListRepoCommits(user, repo string, opt ListCommitOptions) ([]*Commit, *Response, error) {
- if err := escapeValidatePathSegments(&user, &repo); err != nil {
- return nil, nil, err
- }
- link, _ := url.Parse(fmt.Sprintf("/repos/%s/%s/commits", user, repo))
- opt.setDefaults()
- commits := make([]*Commit, 0, opt.PageSize)
- link.RawQuery = opt.QueryEncode()
- resp, err := c.getParsedResponse("GET", link.String(), nil, nil, &commits)
- return commits, resp, err
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/repo_file.go b/vendor/code.gitea.io/sdk/gitea/repo_file.go
deleted file mode 100644
index 6f99ea06bf..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/repo_file.go
+++ /dev/null
@@ -1,247 +0,0 @@
-// Copyright 2014 The Gogs Authors. All rights reserved.
-// Copyright 2019 The Gitea Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea
-
-import (
- "bytes"
- "encoding/json"
- "fmt"
- "net/url"
- "strings"
-)
-
-// FileOptions options for all file APIs
-type FileOptions struct {
- // message (optional) for the commit of this file. if not supplied, a default message will be used
- Message string `json:"message"`
- // branch (optional) to base this file from. if not given, the default branch is used
- BranchName string `json:"branch"`
- // new_branch (optional) will make a new branch from `branch` before creating the file
- NewBranchName string `json:"new_branch"`
- // `author` and `committer` are optional (if only one is given, it will be used for the other, otherwise the authenticated user will be used)
- Author Identity `json:"author"`
- Committer Identity `json:"committer"`
- Dates CommitDateOptions `json:"dates"`
- // Add a Signed-off-by trailer by the committer at the end of the commit log message.
- Signoff bool `json:"signoff"`
-}
-
-// CreateFileOptions options for creating files
-// Note: `author` and `committer` are optional (if only one is given, it will be used for the other, otherwise the authenticated user will be used)
-type CreateFileOptions struct {
- FileOptions
- // content must be base64 encoded
- // required: true
- Content string `json:"content"`
-}
-
-// DeleteFileOptions options for deleting files (used for other File structs below)
-// Note: `author` and `committer` are optional (if only one is given, it will be used for the other, otherwise the authenticated user will be used)
-type DeleteFileOptions struct {
- FileOptions
- // sha is the SHA for the file that already exists
- // required: true
- SHA string `json:"sha"`
-}
-
-// UpdateFileOptions options for updating files
-// Note: `author` and `committer` are optional (if only one is given, it will be used for the other, otherwise the authenticated user will be used)
-type UpdateFileOptions struct {
- FileOptions
- // sha is the SHA for the file that already exists
- // required: true
- SHA string `json:"sha"`
- // content must be base64 encoded
- // required: true
- Content string `json:"content"`
- // from_path (optional) is the path of the original file which will be moved/renamed to the path in the URL
- FromPath string `json:"from_path"`
-}
-
-// FileLinksResponse contains the links for a repo's file
-type FileLinksResponse struct {
- Self *string `json:"self"`
- GitURL *string `json:"git"`
- HTMLURL *string `json:"html"`
-}
-
-// ContentsResponse contains information about a repo's entry's (dir, file, symlink, submodule) metadata and content
-type ContentsResponse struct {
- Name string `json:"name"`
- Path string `json:"path"`
- SHA string `json:"sha"`
- // `type` will be `file`, `dir`, `symlink`, or `submodule`
- Type string `json:"type"`
- Size int64 `json:"size"`
- // `encoding` is populated when `type` is `file`, otherwise null
- Encoding *string `json:"encoding"`
- // `content` is populated when `type` is `file`, otherwise null
- Content *string `json:"content"`
- // `target` is populated when `type` is `symlink`, otherwise null
- Target *string `json:"target"`
- URL *string `json:"url"`
- HTMLURL *string `json:"html_url"`
- GitURL *string `json:"git_url"`
- DownloadURL *string `json:"download_url"`
- // `submodule_git_url` is populated when `type` is `submodule`, otherwise null
- SubmoduleGitURL *string `json:"submodule_git_url"`
- Links *FileLinksResponse `json:"_links"`
-}
-
-// FileCommitResponse contains information generated from a Git commit for a repo's file.
-type FileCommitResponse struct {
- CommitMeta
- HTMLURL string `json:"html_url"`
- Author *CommitUser `json:"author"`
- Committer *CommitUser `json:"committer"`
- Parents []*CommitMeta `json:"parents"`
- Message string `json:"message"`
- Tree *CommitMeta `json:"tree"`
-}
-
-// FileResponse contains information about a repo's file
-type FileResponse struct {
- Content *ContentsResponse `json:"content"`
- Commit *FileCommitResponse `json:"commit"`
- Verification *PayloadCommitVerification `json:"verification"`
-}
-
-// FileDeleteResponse contains information about a repo's file that was deleted
-type FileDeleteResponse struct {
- Content interface{} `json:"content"` // to be set to nil
- Commit *FileCommitResponse `json:"commit"`
- Verification *PayloadCommitVerification `json:"verification"`
-}
-
-// GetFile downloads a file of repository, ref can be branch/tag/commit.
-// e.g.: ref -> master, filepath -> README.md (no leading slash)
-func (c *Client) GetFile(owner, repo, ref, filepath string) ([]byte, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, nil, err
- }
- filepath = pathEscapeSegments(filepath)
- if c.checkServerVersionGreaterThanOrEqual(version1_14_0) != nil {
- ref = pathEscapeSegments(ref)
- return c.getResponse("GET", fmt.Sprintf("/repos/%s/%s/raw/%s/%s", owner, repo, ref, filepath), nil, nil)
- }
- return c.getResponse("GET", fmt.Sprintf("/repos/%s/%s/raw/%s?ref=%s", owner, repo, filepath, url.QueryEscape(ref)), nil, nil)
-}
-
-// GetContents get the metadata and contents of a file in a repository
-// ref is optional
-func (c *Client) GetContents(owner, repo, ref, filepath string) (*ContentsResponse, *Response, error) {
- data, resp, err := c.getDirOrFileContents(owner, repo, ref, filepath)
- if err != nil {
- return nil, resp, err
- }
- cr := new(ContentsResponse)
- if json.Unmarshal(data, &cr) != nil {
- return nil, resp, fmt.Errorf("expect file, got directory")
- }
- return cr, resp, err
-}
-
-// ListContents gets a list of entries in a dir
-// ref is optional
-func (c *Client) ListContents(owner, repo, ref, filepath string) ([]*ContentsResponse, *Response, error) {
- data, resp, err := c.getDirOrFileContents(owner, repo, ref, filepath)
- if err != nil {
- return nil, resp, err
- }
- crl := make([]*ContentsResponse, 0)
- if json.Unmarshal(data, &crl) != nil {
- return nil, resp, fmt.Errorf("expect directory, got file")
- }
- return crl, resp, err
-}
-
-func (c *Client) getDirOrFileContents(owner, repo, ref, filepath string) ([]byte, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, nil, err
- }
- filepath = pathEscapeSegments(strings.TrimPrefix(filepath, "/"))
- return c.getResponse("GET", fmt.Sprintf("/repos/%s/%s/contents/%s?ref=%s", owner, repo, filepath, url.QueryEscape(ref)), jsonHeader, nil)
-}
-
-// CreateFile create a file in a repository
-func (c *Client) CreateFile(owner, repo, filepath string, opt CreateFileOptions) (*FileResponse, *Response, error) {
- var err error
- if opt.BranchName, err = c.setDefaultBranchForOldVersions(owner, repo, opt.BranchName); err != nil {
- return nil, nil, err
- }
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, nil, err
- }
- filepath = pathEscapeSegments(filepath)
-
- body, err := json.Marshal(&opt)
- if err != nil {
- return nil, nil, err
- }
- fr := new(FileResponse)
- resp, err := c.getParsedResponse("POST", fmt.Sprintf("/repos/%s/%s/contents/%s", owner, repo, filepath), jsonHeader, bytes.NewReader(body), fr)
- return fr, resp, err
-}
-
-// UpdateFile update a file in a repository
-func (c *Client) UpdateFile(owner, repo, filepath string, opt UpdateFileOptions) (*FileResponse, *Response, error) {
- var err error
- if opt.BranchName, err = c.setDefaultBranchForOldVersions(owner, repo, opt.BranchName); err != nil {
- return nil, nil, err
- }
-
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, nil, err
- }
- filepath = pathEscapeSegments(filepath)
-
- body, err := json.Marshal(&opt)
- if err != nil {
- return nil, nil, err
- }
- fr := new(FileResponse)
- resp, err := c.getParsedResponse("PUT", fmt.Sprintf("/repos/%s/%s/contents/%s", owner, repo, filepath), jsonHeader, bytes.NewReader(body), fr)
- return fr, resp, err
-}
-
-// DeleteFile delete a file from repository
-func (c *Client) DeleteFile(owner, repo, filepath string, opt DeleteFileOptions) (*Response, error) {
- var err error
- if opt.BranchName, err = c.setDefaultBranchForOldVersions(owner, repo, opt.BranchName); err != nil {
- return nil, err
- }
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, err
- }
- filepath = pathEscapeSegments(filepath)
-
- body, err := json.Marshal(&opt)
- if err != nil {
- return nil, err
- }
- status, resp, err := c.getStatusCode("DELETE", fmt.Sprintf("/repos/%s/%s/contents/%s", owner, repo, filepath), jsonHeader, bytes.NewReader(body))
- if err != nil {
- return resp, err
- }
- if status != 200 && status != 204 {
- return resp, fmt.Errorf("unexpected Status: %d", status)
- }
- return resp, nil
-}
-
-func (c *Client) setDefaultBranchForOldVersions(owner, repo, branch string) (string, error) {
- if len(branch) == 0 {
- // Gitea >= 1.12.0 Use DefaultBranch on "", mimic this for older versions
- if c.checkServerVersionGreaterThanOrEqual(version1_12_0) != nil {
- r, _, err := c.GetRepo(owner, repo)
- if err != nil {
- return "", err
- }
- return r.DefaultBranch, nil
- }
- }
- return branch, nil
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/repo_key.go b/vendor/code.gitea.io/sdk/gitea/repo_key.go
deleted file mode 100644
index ee2ff4084e..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/repo_key.go
+++ /dev/null
@@ -1,91 +0,0 @@
-// Copyright 2015 The Gogs Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea
-
-import (
- "bytes"
- "encoding/json"
- "fmt"
- "net/url"
- "time"
-)
-
-// DeployKey a deploy key
-type DeployKey struct {
- ID int64 `json:"id"`
- KeyID int64 `json:"key_id"`
- Key string `json:"key"`
- URL string `json:"url"`
- Title string `json:"title"`
- Fingerprint string `json:"fingerprint"`
- Created time.Time `json:"created_at"`
- ReadOnly bool `json:"read_only"`
- Repository *Repository `json:"repository,omitempty"`
-}
-
-// ListDeployKeysOptions options for listing a repository's deploy keys
-type ListDeployKeysOptions struct {
- ListOptions
- KeyID int64
- Fingerprint string
-}
-
-// QueryEncode turns options into querystring argument
-func (opt *ListDeployKeysOptions) QueryEncode() string {
- query := opt.getURLQuery()
- if opt.KeyID > 0 {
- query.Add("key_id", fmt.Sprintf("%d", opt.KeyID))
- }
- if len(opt.Fingerprint) > 0 {
- query.Add("fingerprint", opt.Fingerprint)
- }
- return query.Encode()
-}
-
-// ListDeployKeys list all the deploy keys of one repository
-func (c *Client) ListDeployKeys(user, repo string, opt ListDeployKeysOptions) ([]*DeployKey, *Response, error) {
- if err := escapeValidatePathSegments(&user, &repo); err != nil {
- return nil, nil, err
- }
- link, _ := url.Parse(fmt.Sprintf("/repos/%s/%s/keys", user, repo))
- opt.setDefaults()
- link.RawQuery = opt.QueryEncode()
- keys := make([]*DeployKey, 0, opt.PageSize)
- resp, err := c.getParsedResponse("GET", link.String(), nil, nil, &keys)
- return keys, resp, err
-}
-
-// GetDeployKey get one deploy key with key id
-func (c *Client) GetDeployKey(user, repo string, keyID int64) (*DeployKey, *Response, error) {
- if err := escapeValidatePathSegments(&user, &repo); err != nil {
- return nil, nil, err
- }
- key := new(DeployKey)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/repos/%s/%s/keys/%d", user, repo, keyID), nil, nil, &key)
- return key, resp, err
-}
-
-// CreateDeployKey options when create one deploy key
-func (c *Client) CreateDeployKey(user, repo string, opt CreateKeyOption) (*DeployKey, *Response, error) {
- if err := escapeValidatePathSegments(&user, &repo); err != nil {
- return nil, nil, err
- }
- body, err := json.Marshal(&opt)
- if err != nil {
- return nil, nil, err
- }
- key := new(DeployKey)
- resp, err := c.getParsedResponse("POST", fmt.Sprintf("/repos/%s/%s/keys", user, repo), jsonHeader, bytes.NewReader(body), key)
- return key, resp, err
-}
-
-// DeleteDeployKey delete deploy key with key id
-func (c *Client) DeleteDeployKey(owner, repo string, keyID int64) (*Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, err
- }
- _, resp, err := c.getResponse("DELETE", fmt.Sprintf("/repos/%s/%s/keys/%d", owner, repo, keyID), nil, nil)
- return resp, err
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/repo_migrate.go b/vendor/code.gitea.io/sdk/gitea/repo_migrate.go
deleted file mode 100644
index cd0fe44c80..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/repo_migrate.go
+++ /dev/null
@@ -1,132 +0,0 @@
-// Copyright 2020 The Gitea Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea
-
-import (
- "bytes"
- "encoding/json"
- "fmt"
-)
-
-// GitServiceType represents a git service
-type GitServiceType string
-
-const (
- // GitServicePlain represents a plain git service
- GitServicePlain GitServiceType = "git"
- //GitServiceGithub represents github.com
- GitServiceGithub GitServiceType = "github"
- // GitServiceGitlab represents a gitlab service
- GitServiceGitlab GitServiceType = "gitlab"
- // GitServiceGitea represents a gitea service
- GitServiceGitea GitServiceType = "gitea"
- // GitServiceGogs represents a gogs service
- GitServiceGogs GitServiceType = "gogs"
-)
-
-// MigrateRepoOption options for migrating a repository from an external service
-type MigrateRepoOption struct {
- RepoName string `json:"repo_name"`
- RepoOwner string `json:"repo_owner"`
- // deprecated use RepoOwner
- RepoOwnerID int64 `json:"uid"`
- CloneAddr string `json:"clone_addr"`
- Service GitServiceType `json:"service"`
- AuthUsername string `json:"auth_username"`
- AuthPassword string `json:"auth_password"`
- AuthToken string `json:"auth_token"`
- Mirror bool `json:"mirror"`
- Private bool `json:"private"`
- Description string `json:"description"`
- Wiki bool `json:"wiki"`
- Milestones bool `json:"milestones"`
- Labels bool `json:"labels"`
- Issues bool `json:"issues"`
- PullRequests bool `json:"pull_requests"`
- Releases bool `json:"releases"`
- MirrorInterval string `json:"mirror_interval"`
- LFS bool `json:"lfs"`
- LFSEndpoint string `json:"lfs_endpoint"`
-}
-
-// Validate the MigrateRepoOption struct
-func (opt *MigrateRepoOption) Validate(c *Client) error {
- // check user options
- if len(opt.CloneAddr) == 0 {
- return fmt.Errorf("CloneAddr required")
- }
- if len(opt.RepoName) == 0 {
- return fmt.Errorf("RepoName required")
- } else if len(opt.RepoName) > 100 {
- return fmt.Errorf("RepoName to long")
- }
- if len(opt.Description) > 255 {
- return fmt.Errorf("Description to long")
- }
- switch opt.Service {
- case GitServiceGithub:
- if len(opt.AuthToken) == 0 {
- return fmt.Errorf("github requires token authentication")
- }
- case GitServiceGitlab, GitServiceGitea:
- if len(opt.AuthToken) == 0 {
- return fmt.Errorf("%s requires token authentication", opt.Service)
- }
- // Gitlab is supported since 1.12.0 but api cant handle it until 1.13.0
- // https://github.com/go-gitea/gitea/pull/12672
- if c.checkServerVersionGreaterThanOrEqual(version1_13_0) != nil {
- return fmt.Errorf("migrate from service %s need gitea >= 1.13.0", opt.Service)
- }
- case GitServiceGogs:
- if len(opt.AuthToken) == 0 {
- return fmt.Errorf("gogs requires token authentication")
- }
- if c.checkServerVersionGreaterThanOrEqual(version1_14_0) != nil {
- return fmt.Errorf("migrate from service gogs need gitea >= 1.14.0")
- }
- }
- return nil
-}
-
-// MigrateRepo migrates a repository from other Git hosting sources for the authenticated user.
-//
-// To migrate a repository for a organization, the authenticated user must be a
-// owner of the specified organization.
-func (c *Client) MigrateRepo(opt MigrateRepoOption) (*Repository, *Response, error) {
- if err := opt.Validate(c); err != nil {
- return nil, nil, err
- }
-
- if err := c.checkServerVersionGreaterThanOrEqual(version1_13_0); err != nil {
- if len(opt.AuthToken) != 0 {
- // gitea <= 1.12 dont understand AuthToken
- opt.AuthUsername = opt.AuthToken
- opt.AuthPassword, opt.AuthToken = "", ""
- }
- if len(opt.RepoOwner) != 0 {
- // gitea <= 1.12 dont understand RepoOwner
- u, _, err := c.GetUserInfo(opt.RepoOwner)
- if err != nil {
- return nil, nil, err
- }
- opt.RepoOwnerID = u.ID
- } else if opt.RepoOwnerID == 0 {
- // gitea <= 1.12 require RepoOwnerID
- u, _, err := c.GetMyUserInfo()
- if err != nil {
- return nil, nil, err
- }
- opt.RepoOwnerID = u.ID
- }
- }
-
- body, err := json.Marshal(&opt)
- if err != nil {
- return nil, nil, err
- }
- repo := new(Repository)
- resp, err := c.getParsedResponse("POST", "/repos/migrate", jsonHeader, bytes.NewReader(body), repo)
- return repo, resp, err
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/repo_refs.go b/vendor/code.gitea.io/sdk/gitea/repo_refs.go
deleted file mode 100644
index c954a80ef2..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/repo_refs.go
+++ /dev/null
@@ -1,78 +0,0 @@
-// Copyright 2018 The Gitea Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea
-
-import (
- "encoding/json"
- "errors"
- "fmt"
- "strings"
-)
-
-// Reference represents a Git reference.
-type Reference struct {
- Ref string `json:"ref"`
- URL string `json:"url"`
- Object *GitObject `json:"object"`
-}
-
-// GitObject represents a Git object.
-type GitObject struct {
- Type string `json:"type"`
- SHA string `json:"sha"`
- URL string `json:"url"`
-}
-
-// GetRepoRef get one ref's information of one repository
-func (c *Client) GetRepoRef(user, repo, ref string) (*Reference, *Response, error) {
- if err := escapeValidatePathSegments(&user, &repo); err != nil {
- return nil, nil, err
- }
- ref = strings.TrimPrefix(ref, "refs/")
- ref = pathEscapeSegments(ref)
- r := new(Reference)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/repos/%s/%s/git/refs/%s", user, repo, ref), nil, nil, &r)
- if _, ok := err.(*json.UnmarshalTypeError); ok {
- // Multiple refs
- return nil, resp, errors.New("no exact match found for this ref")
- } else if err != nil {
- return nil, resp, err
- }
-
- return r, resp, nil
-}
-
-// GetRepoRefs get list of ref's information of one repository
-func (c *Client) GetRepoRefs(user, repo, ref string) ([]*Reference, *Response, error) {
- if err := escapeValidatePathSegments(&user, &repo); err != nil {
- return nil, nil, err
- }
- ref = strings.TrimPrefix(ref, "refs/")
- ref = pathEscapeSegments(ref)
-
- data, resp, err := c.getResponse("GET", fmt.Sprintf("/repos/%s/%s/git/refs/%s", user, repo, ref), nil, nil)
- if err != nil {
- return nil, resp, err
- }
-
- // Attempt to unmarshal single returned ref.
- r := new(Reference)
- refErr := json.Unmarshal(data, r)
- if refErr == nil {
- return []*Reference{r}, resp, nil
- }
-
- // Attempt to unmarshal multiple refs.
- var rs []*Reference
- refsErr := json.Unmarshal(data, &rs)
- if refsErr == nil {
- if len(rs) == 0 {
- return nil, resp, errors.New("unexpected response: an array of refs with length 0")
- }
- return rs, resp, nil
- }
-
- return nil, resp, fmt.Errorf("unmarshalling failed for both single and multiple refs: %s and %s", refErr, refsErr)
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/repo_stars.go b/vendor/code.gitea.io/sdk/gitea/repo_stars.go
deleted file mode 100644
index 01243c2505..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/repo_stars.go
+++ /dev/null
@@ -1,96 +0,0 @@
-// Copyright 2021 The Gitea Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea
-
-import (
- "fmt"
- "net/http"
-)
-
-// ListStargazersOptions options for listing a repository's stargazers
-type ListStargazersOptions struct {
- ListOptions
-}
-
-// ListRepoStargazers list a repository's stargazers
-func (c *Client) ListRepoStargazers(user, repo string, opt ListStargazersOptions) ([]*User, *Response, error) {
- if err := escapeValidatePathSegments(&user, &repo); err != nil {
- return nil, nil, err
- }
- opt.setDefaults()
- stargazers := make([]*User, 0, opt.PageSize)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/repos/%s/%s/stargazers?%s", user, repo, opt.getURLQuery().Encode()), nil, nil, &stargazers)
- return stargazers, resp, err
-}
-
-// GetStarredRepos returns the repos that the given user has starred
-func (c *Client) GetStarredRepos(user string) ([]*Repository, *Response, error) {
- if err := escapeValidatePathSegments(&user); err != nil {
- return nil, nil, err
- }
- repos := make([]*Repository, 0, 10)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/users/%s/starred", user), jsonHeader, nil, &repos)
- return repos, resp, err
-}
-
-// GetMyStarredRepos returns the repos that the authenticated user has starred
-func (c *Client) GetMyStarredRepos() ([]*Repository, *Response, error) {
- repos := make([]*Repository, 0, 10)
- resp, err := c.getParsedResponse("GET", "/user/starred", jsonHeader, nil, &repos)
- return repos, resp, err
-}
-
-// IsRepoStarring returns whether the authenticated user has starred the repo or not
-func (c *Client) IsRepoStarring(user, repo string) (bool, *Response, error) {
- if err := escapeValidatePathSegments(&user, &repo); err != nil {
- return false, nil, err
- }
- _, resp, err := c.getResponse("GET", fmt.Sprintf("/user/starred/%s/%s", user, repo), jsonHeader, nil)
- if resp != nil {
- switch resp.StatusCode {
- case http.StatusNotFound:
- return false, resp, nil
- case http.StatusNoContent:
- return true, resp, nil
- default:
- return false, resp, fmt.Errorf("unexpected status code '%d'", resp.StatusCode)
- }
- }
- return false, nil, err
-}
-
-// StarRepo star specified repo as the authenticated user
-func (c *Client) StarRepo(user, repo string) (*Response, error) {
- if err := escapeValidatePathSegments(&user, &repo); err != nil {
- return nil, err
- }
- _, resp, err := c.getResponse("PUT", fmt.Sprintf("/user/starred/%s/%s", user, repo), jsonHeader, nil)
- if resp != nil {
- switch resp.StatusCode {
- case http.StatusNoContent:
- return resp, nil
- default:
- return resp, fmt.Errorf("unexpected status code '%d'", resp.StatusCode)
- }
- }
- return nil, err
-}
-
-// UnStarRepo remove star to specified repo as the authenticated user
-func (c *Client) UnStarRepo(user, repo string) (*Response, error) {
- if err := escapeValidatePathSegments(&user, &repo); err != nil {
- return nil, err
- }
- _, resp, err := c.getResponse("DELETE", fmt.Sprintf("/user/starred/%s/%s", user, repo), jsonHeader, nil)
- if resp != nil {
- switch resp.StatusCode {
- case http.StatusNoContent:
- return resp, nil
- default:
- return resp, fmt.Errorf("unexpected status code '%d'", resp.StatusCode)
- }
- }
- return nil, err
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/repo_tag.go b/vendor/code.gitea.io/sdk/gitea/repo_tag.go
deleted file mode 100644
index 7317d3f393..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/repo_tag.go
+++ /dev/null
@@ -1,130 +0,0 @@
-// Copyright 2019 The Gitea Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea
-
-import (
- "bytes"
- "encoding/json"
- "fmt"
-)
-
-// Tag represents a repository tag
-type Tag struct {
- Name string `json:"name"`
- Message string `json:"message"`
- ID string `json:"id"`
- Commit *CommitMeta `json:"commit"`
- ZipballURL string `json:"zipball_url"`
- TarballURL string `json:"tarball_url"`
-}
-
-// AnnotatedTag represents an annotated tag
-type AnnotatedTag struct {
- Tag string `json:"tag"`
- SHA string `json:"sha"`
- URL string `json:"url"`
- Message string `json:"message"`
- Tagger *CommitUser `json:"tagger"`
- Object *AnnotatedTagObject `json:"object"`
- Verification *PayloadCommitVerification `json:"verification"`
-}
-
-// AnnotatedTagObject contains meta information of the tag object
-type AnnotatedTagObject struct {
- Type string `json:"type"`
- URL string `json:"url"`
- SHA string `json:"sha"`
-}
-
-// ListRepoTagsOptions options for listing a repository's tags
-type ListRepoTagsOptions struct {
- ListOptions
-}
-
-// ListRepoTags list all the branches of one repository
-func (c *Client) ListRepoTags(user, repo string, opt ListRepoTagsOptions) ([]*Tag, *Response, error) {
- if err := escapeValidatePathSegments(&user, &repo); err != nil {
- return nil, nil, err
- }
- opt.setDefaults()
- tags := make([]*Tag, 0, opt.PageSize)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/repos/%s/%s/tags?%s", user, repo, opt.getURLQuery().Encode()), nil, nil, &tags)
- return tags, resp, err
-}
-
-// GetTag get the tag of a repository
-func (c *Client) GetTag(user, repo, tag string) (*Tag, *Response, error) {
- if err := c.checkServerVersionGreaterThanOrEqual(version1_15_0); err != nil {
- return nil, nil, err
- }
- if err := escapeValidatePathSegments(&user, &repo, &tag); err != nil {
- return nil, nil, err
- }
- t := new(Tag)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/repos/%s/%s/tags/%s", user, repo, tag), nil, nil, &t)
- return t, resp, err
-}
-
-// GetAnnotatedTag get the tag object of an annotated tag (not lightweight tags) of a repository
-func (c *Client) GetAnnotatedTag(user, repo, sha string) (*AnnotatedTag, *Response, error) {
- if err := c.checkServerVersionGreaterThanOrEqual(version1_15_0); err != nil {
- return nil, nil, err
- }
- if err := escapeValidatePathSegments(&user, &repo, &sha); err != nil {
- return nil, nil, err
- }
- t := new(AnnotatedTag)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/repos/%s/%s/git/tags/%s", user, repo, sha), nil, nil, &t)
- return t, resp, err
-}
-
-// CreateTagOption options when creating a tag
-type CreateTagOption struct {
- TagName string `json:"tag_name"`
- Message string `json:"message"`
- Target string `json:"target"`
-}
-
-// Validate validates CreateTagOption
-func (opt CreateTagOption) Validate() error {
- if len(opt.TagName) == 0 {
- return fmt.Errorf("TagName is required")
- }
- return nil
-}
-
-// CreateTag create a new git tag in a repository
-func (c *Client) CreateTag(user, repo string, opt CreateTagOption) (*Tag, *Response, error) {
- if err := c.checkServerVersionGreaterThanOrEqual(version1_15_0); err != nil {
- return nil, nil, err
- }
- if err := escapeValidatePathSegments(&user, &repo); err != nil {
- return nil, nil, err
- }
- if err := opt.Validate(); err != nil {
- return nil, nil, err
- }
- body, err := json.Marshal(opt)
- if err != nil {
- return nil, nil, err
- }
- t := new(Tag)
- resp, err := c.getParsedResponse("POST", fmt.Sprintf("/repos/%s/%s/tags", user, repo), jsonHeader, bytes.NewReader(body), &t)
- return t, resp, err
-}
-
-// DeleteTag deletes a tag from a repository, if no release refers to it
-func (c *Client) DeleteTag(user, repo, tag string) (*Response, error) {
- if err := escapeValidatePathSegments(&user, &repo, &tag); err != nil {
- return nil, err
- }
- if err := c.checkServerVersionGreaterThanOrEqual(version1_14_0); err != nil {
- return nil, err
- }
- _, resp, err := c.getResponse("DELETE",
- fmt.Sprintf("/repos/%s/%s/tags/%s", user, repo, tag),
- nil, nil)
- return resp, err
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/repo_team.go b/vendor/code.gitea.io/sdk/gitea/repo_team.go
deleted file mode 100644
index b983d8748a..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/repo_team.go
+++ /dev/null
@@ -1,65 +0,0 @@
-// Copyright 2021 The Gitea Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea
-
-import (
- "fmt"
- "net/http"
-)
-
-// GetRepoTeams return teams from a repository
-func (c *Client) GetRepoTeams(user, repo string) ([]*Team, *Response, error) {
- if err := c.checkServerVersionGreaterThanOrEqual(version1_15_0); err != nil {
- return nil, nil, err
- }
- if err := escapeValidatePathSegments(&user, &repo); err != nil {
- return nil, nil, err
- }
- teams := make([]*Team, 0, 5)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/repos/%s/%s/teams", user, repo), nil, nil, &teams)
- return teams, resp, err
-}
-
-// AddRepoTeam add a team to a repository
-func (c *Client) AddRepoTeam(user, repo, team string) (*Response, error) {
- if err := c.checkServerVersionGreaterThanOrEqual(version1_15_0); err != nil {
- return nil, err
- }
- if err := escapeValidatePathSegments(&user, &repo, &team); err != nil {
- return nil, err
- }
- _, resp, err := c.getResponse("PUT", fmt.Sprintf("/repos/%s/%s/teams/%s", user, repo, team), nil, nil)
- return resp, err
-}
-
-// RemoveRepoTeam delete a team from a repository
-func (c *Client) RemoveRepoTeam(user, repo, team string) (*Response, error) {
- if err := c.checkServerVersionGreaterThanOrEqual(version1_15_0); err != nil {
- return nil, err
- }
- if err := escapeValidatePathSegments(&user, &repo, &team); err != nil {
- return nil, err
- }
- _, resp, err := c.getResponse("DELETE", fmt.Sprintf("/repos/%s/%s/teams/%s", user, repo, team), nil, nil)
- return resp, err
-}
-
-// CheckRepoTeam check if team is assigned to repo by name and return it.
-// If not assigned, it will return nil.
-func (c *Client) CheckRepoTeam(user, repo, team string) (*Team, *Response, error) {
- if err := c.checkServerVersionGreaterThanOrEqual(version1_15_0); err != nil {
- return nil, nil, err
- }
- if err := escapeValidatePathSegments(&user, &repo, &team); err != nil {
- return nil, nil, err
- }
- t := new(Team)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/repos/%s/%s/teams/%s", user, repo, team), nil, nil, &t)
- if resp != nil && resp.StatusCode == http.StatusNotFound {
- // if not found it's not an error, it indicates it's not assigned
- return nil, resp, nil
- }
- return t, resp, err
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/repo_template.go b/vendor/code.gitea.io/sdk/gitea/repo_template.go
deleted file mode 100644
index 8b689bea49..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/repo_template.go
+++ /dev/null
@@ -1,65 +0,0 @@
-// Copyright 2021 The Gitea Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea
-
-import (
- "bytes"
- "encoding/json"
- "fmt"
-)
-
-// CreateRepoFromTemplateOption options when creating repository using a template
-type CreateRepoFromTemplateOption struct {
- // Owner is the organization or person who will own the new repository
- Owner string `json:"owner"`
- // Name of the repository to create
- Name string `json:"name"`
- // Description of the repository to create
- Description string `json:"description"`
- // Private is whether the repository is private
- Private bool `json:"private"`
- // GitContent include git content of default branch in template repo
- GitContent bool `json:"git_content"`
- // Topics include topics of template repo
- Topics bool `json:"topics"`
- // GitHooks include git hooks of template repo
- GitHooks bool `json:"git_hooks"`
- // Webhooks include webhooks of template repo
- Webhooks bool `json:"webhooks"`
- // Avatar include avatar of the template repo
- Avatar bool `json:"avatar"`
- // Labels include labels of template repo
- Labels bool `json:"labels"`
-}
-
-// Validate validates CreateRepoFromTemplateOption
-func (opt CreateRepoFromTemplateOption) Validate() error {
- if len(opt.Owner) == 0 {
- return fmt.Errorf("field Owner is required")
- }
- if len(opt.Name) == 0 {
- return fmt.Errorf("field Name is required")
- }
- return nil
-}
-
-// CreateRepoFromTemplate create a repository using a template
-func (c *Client) CreateRepoFromTemplate(templateOwner, templateRepo string, opt CreateRepoFromTemplateOption) (*Repository, *Response, error) {
- if err := escapeValidatePathSegments(&templateOwner, &templateRepo); err != nil {
- return nil, nil, err
- }
-
- if err := opt.Validate(); err != nil {
- return nil, nil, err
- }
- body, err := json.Marshal(&opt)
- if err != nil {
- return nil, nil, err
- }
-
- repo := new(Repository)
- resp, err := c.getParsedResponse("POST", fmt.Sprintf("/repos/%s/%s/generate", templateOwner, templateRepo), jsonHeader, bytes.NewReader(body), &repo)
- return repo, resp, err
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/repo_topics.go b/vendor/code.gitea.io/sdk/gitea/repo_topics.go
deleted file mode 100644
index 92f2228cd9..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/repo_topics.go
+++ /dev/null
@@ -1,68 +0,0 @@
-// Copyright 2019 The Gitea Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea
-
-import (
- "bytes"
- "encoding/json"
- "fmt"
-)
-
-// ListRepoTopicsOptions options for listing repo's topics
-type ListRepoTopicsOptions struct {
- ListOptions
-}
-
-// topicsList represents a list of repo's topics
-type topicsList struct {
- Topics []string `json:"topics"`
-}
-
-// ListRepoTopics list all repository's topics
-func (c *Client) ListRepoTopics(user, repo string, opt ListRepoTopicsOptions) ([]string, *Response, error) {
- if err := escapeValidatePathSegments(&user, &repo); err != nil {
- return nil, nil, err
- }
- opt.setDefaults()
-
- list := new(topicsList)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/repos/%s/%s/topics?%s", user, repo, opt.getURLQuery().Encode()), nil, nil, list)
- if err != nil {
- return nil, resp, err
- }
- return list.Topics, resp, nil
-}
-
-// SetRepoTopics replaces the list of repo's topics
-func (c *Client) SetRepoTopics(user, repo string, list []string) (*Response, error) {
- if err := escapeValidatePathSegments(&user, &repo); err != nil {
- return nil, err
- }
- l := topicsList{Topics: list}
- body, err := json.Marshal(&l)
- if err != nil {
- return nil, err
- }
- _, resp, err := c.getResponse("PUT", fmt.Sprintf("/repos/%s/%s/topics", user, repo), jsonHeader, bytes.NewReader(body))
- return resp, err
-}
-
-// AddRepoTopic adds a topic to a repo's topics list
-func (c *Client) AddRepoTopic(user, repo, topic string) (*Response, error) {
- if err := escapeValidatePathSegments(&user, &repo, &topic); err != nil {
- return nil, err
- }
- _, resp, err := c.getResponse("PUT", fmt.Sprintf("/repos/%s/%s/topics/%s", user, repo, topic), nil, nil)
- return resp, err
-}
-
-// DeleteRepoTopic deletes a topic from repo's topics list
-func (c *Client) DeleteRepoTopic(user, repo, topic string) (*Response, error) {
- if err := escapeValidatePathSegments(&user, &repo, &topic); err != nil {
- return nil, err
- }
- _, resp, err := c.getResponse("DELETE", fmt.Sprintf("/repos/%s/%s/topics/%s", user, repo, topic), nil, nil)
- return resp, err
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/repo_transfer.go b/vendor/code.gitea.io/sdk/gitea/repo_transfer.go
deleted file mode 100644
index be06010a78..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/repo_transfer.go
+++ /dev/null
@@ -1,36 +0,0 @@
-// Copyright 2020 The Gitea Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea
-
-import (
- "bytes"
- "encoding/json"
- "fmt"
-)
-
-// TransferRepoOption options when transfer a repository's ownership
-type TransferRepoOption struct {
- // required: true
- NewOwner string `json:"new_owner"`
- // ID of the team or teams to add to the repository. Teams can only be added to organization-owned repositories.
- TeamIDs *[]int64 `json:"team_ids"`
-}
-
-// TransferRepo transfers the ownership of a repository
-func (c *Client) TransferRepo(owner, reponame string, opt TransferRepoOption) (*Repository, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &reponame); err != nil {
- return nil, nil, err
- }
- if err := c.checkServerVersionGreaterThanOrEqual(version1_12_0); err != nil {
- return nil, nil, err
- }
- body, err := json.Marshal(&opt)
- if err != nil {
- return nil, nil, err
- }
- repo := new(Repository)
- resp, err := c.getParsedResponse("POST", fmt.Sprintf("/repos/%s/%s/transfer", owner, reponame), jsonHeader, bytes.NewReader(body), repo)
- return repo, resp, err
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/repo_tree.go b/vendor/code.gitea.io/sdk/gitea/repo_tree.go
deleted file mode 100644
index 452394a3c8..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/repo_tree.go
+++ /dev/null
@@ -1,44 +0,0 @@
-// Copyright 2018 The Gitea Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea
-
-import (
- "fmt"
-)
-
-// GitEntry represents a git tree
-type GitEntry struct {
- Path string `json:"path"`
- Mode string `json:"mode"`
- Type string `json:"type"`
- Size int64 `json:"size"`
- SHA string `json:"sha"`
- URL string `json:"url"`
-}
-
-// GitTreeResponse returns a git tree
-type GitTreeResponse struct {
- SHA string `json:"sha"`
- URL string `json:"url"`
- Entries []GitEntry `json:"tree"`
- Truncated bool `json:"truncated"`
- Page int `json:"page"`
- TotalCount int `json:"total_count"`
-}
-
-// GetTrees downloads a file of repository, ref can be branch/tag/commit.
-// e.g.: ref -> master, tree -> macaron.go(no leading slash)
-func (c *Client) GetTrees(user, repo, ref string, recursive bool) (*GitTreeResponse, *Response, error) {
- if err := escapeValidatePathSegments(&user, &repo, &ref); err != nil {
- return nil, nil, err
- }
- trees := new(GitTreeResponse)
- var path = fmt.Sprintf("/repos/%s/%s/git/trees/%s", user, repo, ref)
- if recursive {
- path += "?recursive=1"
- }
- resp, err := c.getParsedResponse("GET", path, nil, nil, trees)
- return trees, resp, err
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/repo_watch.go b/vendor/code.gitea.io/sdk/gitea/repo_watch.go
deleted file mode 100644
index f499aff221..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/repo_watch.go
+++ /dev/null
@@ -1,87 +0,0 @@
-// Copyright 2017 The Gitea Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea
-
-import (
- "fmt"
- "net/http"
- "time"
-)
-
-// WatchInfo represents an API watch status of one repository
-type WatchInfo struct {
- Subscribed bool `json:"subscribed"`
- Ignored bool `json:"ignored"`
- Reason interface{} `json:"reason"`
- CreatedAt time.Time `json:"created_at"`
- URL string `json:"url"`
- RepositoryURL string `json:"repository_url"`
-}
-
-// GetWatchedRepos list all the watched repos of user
-func (c *Client) GetWatchedRepos(user string) ([]*Repository, *Response, error) {
- if err := escapeValidatePathSegments(&user); err != nil {
- return nil, nil, err
- }
- repos := make([]*Repository, 0, 10)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/users/%s/subscriptions", user), nil, nil, &repos)
- return repos, resp, err
-}
-
-// GetMyWatchedRepos list repositories watched by the authenticated user
-func (c *Client) GetMyWatchedRepos() ([]*Repository, *Response, error) {
- repos := make([]*Repository, 0, 10)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/user/subscriptions"), nil, nil, &repos)
- return repos, resp, err
-}
-
-// CheckRepoWatch check if the current user is watching a repo
-func (c *Client) CheckRepoWatch(owner, repo string) (bool, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return false, nil, err
- }
- status, resp, err := c.getStatusCode("GET", fmt.Sprintf("/repos/%s/%s/subscription", owner, repo), nil, nil)
- if err != nil {
- return false, resp, err
- }
- switch status {
- case http.StatusNotFound:
- return false, resp, nil
- case http.StatusOK:
- return true, resp, nil
- default:
- return false, resp, fmt.Errorf("unexpected Status: %d", status)
- }
-}
-
-// WatchRepo start to watch a repository
-func (c *Client) WatchRepo(owner, repo string) (*Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, err
- }
- status, resp, err := c.getStatusCode("PUT", fmt.Sprintf("/repos/%s/%s/subscription", owner, repo), nil, nil)
- if err != nil {
- return resp, err
- }
- if status == http.StatusOK {
- return resp, nil
- }
- return resp, fmt.Errorf("unexpected Status: %d", status)
-}
-
-// UnWatchRepo stop to watch a repository
-func (c *Client) UnWatchRepo(owner, repo string) (*Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, err
- }
- status, resp, err := c.getStatusCode("DELETE", fmt.Sprintf("/repos/%s/%s/subscription", owner, repo), nil, nil)
- if err != nil {
- return resp, err
- }
- if status == http.StatusNoContent {
- return resp, nil
- }
- return resp, fmt.Errorf("unexpected Status: %d", status)
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/settings.go b/vendor/code.gitea.io/sdk/gitea/settings.go
deleted file mode 100644
index fb94248f63..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/settings.go
+++ /dev/null
@@ -1,78 +0,0 @@
-// Copyright 2020 The Gitea Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea
-
-// GlobalUISettings represent the global ui settings of a gitea instance witch is exposed by API
-type GlobalUISettings struct {
- DefaultTheme string `json:"default_theme"`
- AllowedReactions []string `json:"allowed_reactions"`
- CustomEmojis []string `json:"custom_emojis"`
-}
-
-// GlobalRepoSettings represent the global repository settings of a gitea instance witch is exposed by API
-type GlobalRepoSettings struct {
- MirrorsDisabled bool `json:"mirrors_disabled"`
- HTTPGitDisabled bool `json:"http_git_disabled"`
- MigrationsDisabled bool `json:"migrations_disabled"`
- StarsDisabled bool `json:"stars_disabled"`
- TimeTrackingDisabled bool `json:"time_tracking_disabled"`
- LFSDisabled bool `json:"lfs_disabled"`
-}
-
-// GlobalAPISettings contains global api settings exposed by it
-type GlobalAPISettings struct {
- MaxResponseItems int `json:"max_response_items"`
- DefaultPagingNum int `json:"default_paging_num"`
- DefaultGitTreesPerPage int `json:"default_git_trees_per_page"`
- DefaultMaxBlobSize int64 `json:"default_max_blob_size"`
-}
-
-// GlobalAttachmentSettings contains global Attachment settings exposed by API
-type GlobalAttachmentSettings struct {
- Enabled bool `json:"enabled"`
- AllowedTypes string `json:"allowed_types"`
- MaxSize int64 `json:"max_size"`
- MaxFiles int `json:"max_files"`
-}
-
-// GetGlobalUISettings get global ui settings witch are exposed by API
-func (c *Client) GetGlobalUISettings() (*GlobalUISettings, *Response, error) {
- if err := c.checkServerVersionGreaterThanOrEqual(version1_13_0); err != nil {
- return nil, nil, err
- }
- conf := new(GlobalUISettings)
- resp, err := c.getParsedResponse("GET", "/settings/ui", jsonHeader, nil, &conf)
- return conf, resp, err
-}
-
-// GetGlobalRepoSettings get global repository settings witch are exposed by API
-func (c *Client) GetGlobalRepoSettings() (*GlobalRepoSettings, *Response, error) {
- if err := c.checkServerVersionGreaterThanOrEqual(version1_13_0); err != nil {
- return nil, nil, err
- }
- conf := new(GlobalRepoSettings)
- resp, err := c.getParsedResponse("GET", "/settings/repository", jsonHeader, nil, &conf)
- return conf, resp, err
-}
-
-// GetGlobalAPISettings get global api settings witch are exposed by it
-func (c *Client) GetGlobalAPISettings() (*GlobalAPISettings, *Response, error) {
- if err := c.checkServerVersionGreaterThanOrEqual(version1_13_0); err != nil {
- return nil, nil, err
- }
- conf := new(GlobalAPISettings)
- resp, err := c.getParsedResponse("GET", "/settings/api", jsonHeader, nil, &conf)
- return conf, resp, err
-}
-
-// GetGlobalAttachmentSettings get global repository settings witch are exposed by API
-func (c *Client) GetGlobalAttachmentSettings() (*GlobalAttachmentSettings, *Response, error) {
- if err := c.checkServerVersionGreaterThanOrEqual(version1_13_0); err != nil {
- return nil, nil, err
- }
- conf := new(GlobalAttachmentSettings)
- resp, err := c.getParsedResponse("GET", "/settings/attachment", jsonHeader, nil, &conf)
- return conf, resp, err
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/status.go b/vendor/code.gitea.io/sdk/gitea/status.go
deleted file mode 100644
index fe5d9711f9..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/status.go
+++ /dev/null
@@ -1,108 +0,0 @@
-// Copyright 2017 The Gitea Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea
-
-import (
- "bytes"
- "encoding/json"
- "fmt"
- "net/url"
- "time"
-)
-
-// StatusState holds the state of a Status
-// It can be "pending", "success", "error", "failure", and "warning"
-type StatusState string
-
-const (
- // StatusPending is for when the Status is Pending
- StatusPending StatusState = "pending"
- // StatusSuccess is for when the Status is Success
- StatusSuccess StatusState = "success"
- // StatusError is for when the Status is Error
- StatusError StatusState = "error"
- // StatusFailure is for when the Status is Failure
- StatusFailure StatusState = "failure"
- // StatusWarning is for when the Status is Warning
- StatusWarning StatusState = "warning"
-)
-
-// Status holds a single Status of a single Commit
-type Status struct {
- ID int64 `json:"id"`
- State StatusState `json:"status"`
- TargetURL string `json:"target_url"`
- Description string `json:"description"`
- URL string `json:"url"`
- Context string `json:"context"`
- Creator *User `json:"creator"`
- Created time.Time `json:"created_at"`
- Updated time.Time `json:"updated_at"`
-}
-
-// CreateStatusOption holds the information needed to create a new Status for a Commit
-type CreateStatusOption struct {
- State StatusState `json:"state"`
- TargetURL string `json:"target_url"`
- Description string `json:"description"`
- Context string `json:"context"`
-}
-
-// CreateStatus creates a new Status for a given Commit
-func (c *Client) CreateStatus(owner, repo, sha string, opts CreateStatusOption) (*Status, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo); err != nil {
- return nil, nil, err
- }
- body, err := json.Marshal(&opts)
- if err != nil {
- return nil, nil, err
- }
- status := new(Status)
- resp, err := c.getParsedResponse("POST", fmt.Sprintf("/repos/%s/%s/statuses/%s", owner, repo, url.QueryEscape(sha)), jsonHeader, bytes.NewReader(body), status)
- return status, resp, err
-}
-
-// ListStatusesOption options for listing a repository's commit's statuses
-type ListStatusesOption struct {
- ListOptions
-}
-
-// ListStatuses returns all statuses for a given Commit by ref
-func (c *Client) ListStatuses(owner, repo, ref string, opt ListStatusesOption) ([]*Status, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo, &ref); err != nil {
- return nil, nil, err
- }
- opt.setDefaults()
- statuses := make([]*Status, 0, opt.PageSize)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/repos/%s/%s/commits/%s/statuses?%s", owner, repo, ref, opt.getURLQuery().Encode()), jsonHeader, nil, &statuses)
- return statuses, resp, err
-}
-
-// CombinedStatus holds the combined state of several statuses for a single commit
-type CombinedStatus struct {
- State StatusState `json:"state"`
- SHA string `json:"sha"`
- TotalCount int `json:"total_count"`
- Statuses []*Status `json:"statuses"`
- Repository *Repository `json:"repository"`
- CommitURL string `json:"commit_url"`
- URL string `json:"url"`
-}
-
-// GetCombinedStatus returns the CombinedStatus for a given Commit
-func (c *Client) GetCombinedStatus(owner, repo, ref string) (*CombinedStatus, *Response, error) {
- if err := escapeValidatePathSegments(&owner, &repo, &ref); err != nil {
- return nil, nil, err
- }
- status := new(CombinedStatus)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/repos/%s/%s/commits/%s/status", owner, repo, ref), jsonHeader, nil, status)
-
- // gitea api return empty body if nothing here jet
- if resp != nil && resp.StatusCode == 200 && err != nil {
- return status, resp, nil
- }
-
- return status, resp, err
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/user.go b/vendor/code.gitea.io/sdk/gitea/user.go
deleted file mode 100644
index c37627bfaa..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/user.go
+++ /dev/null
@@ -1,90 +0,0 @@
-// Copyright 2014 The Gogs Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea
-
-import (
- "fmt"
- "net/url"
- "strconv"
- "time"
-)
-
-// User represents a user
-type User struct {
- // the user's id
- ID int64 `json:"id"`
- // the user's username
- UserName string `json:"login"`
- // the user's full name
- FullName string `json:"full_name"`
- Email string `json:"email"`
- // URL to the user's avatar
- AvatarURL string `json:"avatar_url"`
- // User locale
- Language string `json:"language"`
- // Is the user an administrator
- IsAdmin bool `json:"is_admin"`
- // Date and Time of last login
- LastLogin time.Time `json:"last_login"`
- // Date and Time of user creation
- Created time.Time `json:"created"`
- // Is user restricted
- Restricted bool `json:"restricted"`
- // Is user active
- IsActive bool `json:"active"`
- // Is user login prohibited
- ProhibitLogin bool `json:"prohibit_login"`
- // the user's location
- Location string `json:"location"`
- // the user's website
- Website string `json:"website"`
- // the user's description
- Description string `json:"description"`
- // User visibility level option
- Visibility VisibleType `json:"visibility"`
-
- // user counts
- FollowerCount int `json:"followers_count"`
- FollowingCount int `json:"following_count"`
- StarredRepoCount int `json:"starred_repos_count"`
-}
-
-// GetUserInfo get user info by user's name
-func (c *Client) GetUserInfo(user string) (*User, *Response, error) {
- if err := escapeValidatePathSegments(&user); err != nil {
- return nil, nil, err
- }
- u := new(User)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/users/%s", user), nil, nil, u)
- return u, resp, err
-}
-
-// GetMyUserInfo get user info of current user
-func (c *Client) GetMyUserInfo() (*User, *Response, error) {
- u := new(User)
- resp, err := c.getParsedResponse("GET", "/user", nil, nil, u)
- return u, resp, err
-}
-
-// GetUserByID returns user by a given user ID
-func (c *Client) GetUserByID(id int64) (*User, *Response, error) {
- if id < 0 {
- return nil, nil, fmt.Errorf("invalid user id %d", id)
- }
-
- query := make(url.Values)
- query.Add("uid", strconv.FormatInt(id, 10))
- users, resp, err := c.searchUsers(query.Encode())
-
- if err != nil {
- return nil, resp, err
- }
-
- if len(users) == 1 {
- return users[0], resp, err
- }
-
- return nil, resp, fmt.Errorf("user not found with id %d", id)
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/user_app.go b/vendor/code.gitea.io/sdk/gitea/user_app.go
deleted file mode 100644
index 88b01ed083..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/user_app.go
+++ /dev/null
@@ -1,90 +0,0 @@
-// Copyright 2014 The Gogs Authors. All rights reserved.
-// Copyright 2019 The Gitea Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea
-
-import (
- "bytes"
- "encoding/json"
- "fmt"
- "net/url"
- "reflect"
-)
-
-// AccessToken represents an API access token.
-type AccessToken struct {
- ID int64 `json:"id"`
- Name string `json:"name"`
- Token string `json:"sha1"`
- TokenLastEight string `json:"token_last_eight"`
-}
-
-// ListAccessTokensOptions options for listing a users's access tokens
-type ListAccessTokensOptions struct {
- ListOptions
-}
-
-// ListAccessTokens lists all the access tokens of user
-func (c *Client) ListAccessTokens(opts ListAccessTokensOptions) ([]*AccessToken, *Response, error) {
- c.mutex.RLock()
- username := c.username
- c.mutex.RUnlock()
- if len(username) == 0 {
- return nil, nil, fmt.Errorf("\"username\" not set: only BasicAuth allowed")
- }
- opts.setDefaults()
- tokens := make([]*AccessToken, 0, opts.PageSize)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/users/%s/tokens?%s", url.PathEscape(username), opts.getURLQuery().Encode()), jsonHeader, nil, &tokens)
- return tokens, resp, err
-}
-
-// CreateAccessTokenOption options when create access token
-type CreateAccessTokenOption struct {
- Name string `json:"name"`
-}
-
-// CreateAccessToken create one access token with options
-func (c *Client) CreateAccessToken(opt CreateAccessTokenOption) (*AccessToken, *Response, error) {
- c.mutex.RLock()
- username := c.username
- c.mutex.RUnlock()
- if len(username) == 0 {
- return nil, nil, fmt.Errorf("\"username\" not set: only BasicAuth allowed")
- }
- body, err := json.Marshal(&opt)
- if err != nil {
- return nil, nil, err
- }
- t := new(AccessToken)
- resp, err := c.getParsedResponse("POST", fmt.Sprintf("/users/%s/tokens", url.PathEscape(username)), jsonHeader, bytes.NewReader(body), t)
- return t, resp, err
-}
-
-// DeleteAccessToken delete token, identified by ID and if not available by name
-func (c *Client) DeleteAccessToken(value interface{}) (*Response, error) {
- c.mutex.RLock()
- username := c.username
- c.mutex.RUnlock()
- if len(username) == 0 {
- return nil, fmt.Errorf("\"username\" not set: only BasicAuth allowed")
- }
-
- var token = ""
-
- switch reflect.ValueOf(value).Kind() {
- case reflect.Int64:
- token = fmt.Sprintf("%d", value.(int64))
- case reflect.String:
- if err := c.checkServerVersionGreaterThanOrEqual(version1_13_0); err != nil {
- return nil, err
- }
- token = value.(string)
- default:
- return nil, fmt.Errorf("only string and int64 supported")
- }
-
- _, resp, err := c.getResponse("DELETE", fmt.Sprintf("/users/%s/tokens/%s", url.PathEscape(username), url.PathEscape(token)), jsonHeader, nil)
- return resp, err
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/user_email.go b/vendor/code.gitea.io/sdk/gitea/user_email.go
deleted file mode 100644
index 4962b082b4..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/user_email.go
+++ /dev/null
@@ -1,64 +0,0 @@
-// Copyright 2015 The Gogs Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea
-
-import (
- "bytes"
- "encoding/json"
- "fmt"
-)
-
-// Email an email address belonging to a user
-type Email struct {
- Email string `json:"email"`
- Verified bool `json:"verified"`
- Primary bool `json:"primary"`
-}
-
-// ListEmailsOptions options for listing current's user emails
-type ListEmailsOptions struct {
- ListOptions
-}
-
-// ListEmails all the email addresses of user
-func (c *Client) ListEmails(opt ListEmailsOptions) ([]*Email, *Response, error) {
- opt.setDefaults()
- emails := make([]*Email, 0, opt.PageSize)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/user/emails?%s", opt.getURLQuery().Encode()), nil, nil, &emails)
- return emails, resp, err
-}
-
-// CreateEmailOption options when creating email addresses
-type CreateEmailOption struct {
- // email addresses to add
- Emails []string `json:"emails"`
-}
-
-// AddEmail add one email to current user with options
-func (c *Client) AddEmail(opt CreateEmailOption) ([]*Email, *Response, error) {
- body, err := json.Marshal(&opt)
- if err != nil {
- return nil, nil, err
- }
- emails := make([]*Email, 0, 3)
- resp, err := c.getParsedResponse("POST", "/user/emails", jsonHeader, bytes.NewReader(body), &emails)
- return emails, resp, err
-}
-
-// DeleteEmailOption options when deleting email addresses
-type DeleteEmailOption struct {
- // email addresses to delete
- Emails []string `json:"emails"`
-}
-
-// DeleteEmail delete one email of current users'
-func (c *Client) DeleteEmail(opt DeleteEmailOption) (*Response, error) {
- body, err := json.Marshal(&opt)
- if err != nil {
- return nil, err
- }
- _, resp, err := c.getResponse("DELETE", "/user/emails", jsonHeader, bytes.NewReader(body))
- return resp, err
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/user_follow.go b/vendor/code.gitea.io/sdk/gitea/user_follow.go
deleted file mode 100644
index 7bd340ca26..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/user_follow.go
+++ /dev/null
@@ -1,93 +0,0 @@
-// Copyright 2015 The Gogs Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea
-
-import "fmt"
-
-// ListFollowersOptions options for listing followers
-type ListFollowersOptions struct {
- ListOptions
-}
-
-// ListMyFollowers list all the followers of current user
-func (c *Client) ListMyFollowers(opt ListFollowersOptions) ([]*User, *Response, error) {
- opt.setDefaults()
- users := make([]*User, 0, opt.PageSize)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/user/followers?%s", opt.getURLQuery().Encode()), nil, nil, &users)
- return users, resp, err
-}
-
-// ListFollowers list all the followers of one user
-func (c *Client) ListFollowers(user string, opt ListFollowersOptions) ([]*User, *Response, error) {
- if err := escapeValidatePathSegments(&user); err != nil {
- return nil, nil, err
- }
- opt.setDefaults()
- users := make([]*User, 0, opt.PageSize)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/users/%s/followers?%s", user, opt.getURLQuery().Encode()), nil, nil, &users)
- return users, resp, err
-}
-
-// ListFollowingOptions options for listing a user's users being followed
-type ListFollowingOptions struct {
- ListOptions
-}
-
-// ListMyFollowing list all the users current user followed
-func (c *Client) ListMyFollowing(opt ListFollowingOptions) ([]*User, *Response, error) {
- opt.setDefaults()
- users := make([]*User, 0, opt.PageSize)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/user/following?%s", opt.getURLQuery().Encode()), nil, nil, &users)
- return users, resp, err
-}
-
-// ListFollowing list all the users the user followed
-func (c *Client) ListFollowing(user string, opt ListFollowingOptions) ([]*User, *Response, error) {
- if err := escapeValidatePathSegments(&user); err != nil {
- return nil, nil, err
- }
- opt.setDefaults()
- users := make([]*User, 0, opt.PageSize)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/users/%s/following?%s", user, opt.getURLQuery().Encode()), nil, nil, &users)
- return users, resp, err
-}
-
-// IsFollowing if current user followed the target
-func (c *Client) IsFollowing(target string) (bool, *Response) {
- if err := escapeValidatePathSegments(&target); err != nil {
- // ToDo return err
- return false, nil
- }
- _, resp, err := c.getResponse("GET", fmt.Sprintf("/user/following/%s", target), nil, nil)
- return err == nil, resp
-}
-
-// IsUserFollowing if the user followed the target
-func (c *Client) IsUserFollowing(user, target string) (bool, *Response) {
- if err := escapeValidatePathSegments(&user, &target); err != nil {
- // ToDo return err
- return false, nil
- }
- _, resp, err := c.getResponse("GET", fmt.Sprintf("/users/%s/following/%s", user, target), nil, nil)
- return err == nil, resp
-}
-
-// Follow set current user follow the target
-func (c *Client) Follow(target string) (*Response, error) {
- if err := escapeValidatePathSegments(&target); err != nil {
- return nil, err
- }
- _, resp, err := c.getResponse("PUT", fmt.Sprintf("/user/following/%s", target), nil, nil)
- return resp, err
-}
-
-// Unfollow set current user unfollow the target
-func (c *Client) Unfollow(target string) (*Response, error) {
- if err := escapeValidatePathSegments(&target); err != nil {
- return nil, err
- }
- _, resp, err := c.getResponse("DELETE", fmt.Sprintf("/user/following/%s", target), nil, nil)
- return resp, err
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/user_gpgkey.go b/vendor/code.gitea.io/sdk/gitea/user_gpgkey.go
deleted file mode 100644
index 6c1b9d10f3..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/user_gpgkey.go
+++ /dev/null
@@ -1,89 +0,0 @@
-// Copyright 2017 Gitea Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea
-
-import (
- "bytes"
- "encoding/json"
- "fmt"
- "time"
-)
-
-// GPGKey a user GPG key to sign commit and tag in repository
-type GPGKey struct {
- ID int64 `json:"id"`
- PrimaryKeyID string `json:"primary_key_id"`
- KeyID string `json:"key_id"`
- PublicKey string `json:"public_key"`
- Emails []*GPGKeyEmail `json:"emails"`
- SubsKey []*GPGKey `json:"subkeys"`
- CanSign bool `json:"can_sign"`
- CanEncryptComms bool `json:"can_encrypt_comms"`
- CanEncryptStorage bool `json:"can_encrypt_storage"`
- CanCertify bool `json:"can_certify"`
- Created time.Time `json:"created_at,omitempty"`
- Expires time.Time `json:"expires_at,omitempty"`
-}
-
-// GPGKeyEmail an email attached to a GPGKey
-type GPGKeyEmail struct {
- Email string `json:"email"`
- Verified bool `json:"verified"`
-}
-
-// ListGPGKeysOptions options for listing a user's GPGKeys
-type ListGPGKeysOptions struct {
- ListOptions
-}
-
-// ListGPGKeys list all the GPG keys of the user
-func (c *Client) ListGPGKeys(user string, opt ListGPGKeysOptions) ([]*GPGKey, *Response, error) {
- if err := escapeValidatePathSegments(&user); err != nil {
- return nil, nil, err
- }
- opt.setDefaults()
- keys := make([]*GPGKey, 0, opt.PageSize)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/users/%s/gpg_keys?%s", user, opt.getURLQuery().Encode()), nil, nil, &keys)
- return keys, resp, err
-}
-
-// ListMyGPGKeys list all the GPG keys of current user
-func (c *Client) ListMyGPGKeys(opt *ListGPGKeysOptions) ([]*GPGKey, *Response, error) {
- opt.setDefaults()
- keys := make([]*GPGKey, 0, opt.PageSize)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/user/gpg_keys?%s", opt.getURLQuery().Encode()), nil, nil, &keys)
- return keys, resp, err
-}
-
-// GetGPGKey get current user's GPG key by key id
-func (c *Client) GetGPGKey(keyID int64) (*GPGKey, *Response, error) {
- key := new(GPGKey)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/user/gpg_keys/%d", keyID), nil, nil, &key)
- return key, resp, err
-}
-
-// CreateGPGKeyOption options create user GPG key
-type CreateGPGKeyOption struct {
- // An armored GPG key to add
- //
- ArmoredKey string `json:"armored_public_key"`
-}
-
-// CreateGPGKey create GPG key with options
-func (c *Client) CreateGPGKey(opt CreateGPGKeyOption) (*GPGKey, *Response, error) {
- body, err := json.Marshal(&opt)
- if err != nil {
- return nil, nil, err
- }
- key := new(GPGKey)
- resp, err := c.getParsedResponse("POST", "/user/gpg_keys", jsonHeader, bytes.NewReader(body), key)
- return key, resp, err
-}
-
-// DeleteGPGKey delete GPG key with key id
-func (c *Client) DeleteGPGKey(keyID int64) (*Response, error) {
- _, resp, err := c.getResponse("DELETE", fmt.Sprintf("/user/gpg_keys/%d", keyID), nil, nil)
- return resp, err
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/user_key.go b/vendor/code.gitea.io/sdk/gitea/user_key.go
deleted file mode 100644
index 02795baefc..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/user_key.go
+++ /dev/null
@@ -1,83 +0,0 @@
-// Copyright 2015 The Gogs Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea
-
-import (
- "bytes"
- "encoding/json"
- "fmt"
- "time"
-)
-
-// PublicKey publickey is a user key to push code to repository
-type PublicKey struct {
- ID int64 `json:"id"`
- Key string `json:"key"`
- URL string `json:"url,omitempty"`
- Title string `json:"title,omitempty"`
- Fingerprint string `json:"fingerprint,omitempty"`
- Created time.Time `json:"created_at,omitempty"`
- Owner *User `json:"user,omitempty"`
- ReadOnly bool `json:"read_only,omitempty"`
- KeyType string `json:"key_type,omitempty"`
-}
-
-// ListPublicKeysOptions options for listing a user's PublicKeys
-type ListPublicKeysOptions struct {
- ListOptions
-}
-
-// ListPublicKeys list all the public keys of the user
-func (c *Client) ListPublicKeys(user string, opt ListPublicKeysOptions) ([]*PublicKey, *Response, error) {
- if err := escapeValidatePathSegments(&user); err != nil {
- return nil, nil, err
- }
- opt.setDefaults()
- keys := make([]*PublicKey, 0, opt.PageSize)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/users/%s/keys?%s", user, opt.getURLQuery().Encode()), nil, nil, &keys)
- return keys, resp, err
-}
-
-// ListMyPublicKeys list all the public keys of current user
-func (c *Client) ListMyPublicKeys(opt ListPublicKeysOptions) ([]*PublicKey, *Response, error) {
- opt.setDefaults()
- keys := make([]*PublicKey, 0, opt.PageSize)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/user/keys?%s", opt.getURLQuery().Encode()), nil, nil, &keys)
- return keys, resp, err
-}
-
-// GetPublicKey get current user's public key by key id
-func (c *Client) GetPublicKey(keyID int64) (*PublicKey, *Response, error) {
- key := new(PublicKey)
- resp, err := c.getParsedResponse("GET", fmt.Sprintf("/user/keys/%d", keyID), nil, nil, &key)
- return key, resp, err
-}
-
-// CreateKeyOption options when creating a key
-type CreateKeyOption struct {
- // Title of the key to add
- Title string `json:"title"`
- // An armored SSH key to add
- Key string `json:"key"`
- // Describe if the key has only read access or read/write
- ReadOnly bool `json:"read_only"`
-}
-
-// CreatePublicKey create public key with options
-func (c *Client) CreatePublicKey(opt CreateKeyOption) (*PublicKey, *Response, error) {
- body, err := json.Marshal(&opt)
- if err != nil {
- return nil, nil, err
- }
- key := new(PublicKey)
- resp, err := c.getParsedResponse("POST", "/user/keys", jsonHeader, bytes.NewReader(body), key)
- return key, resp, err
-}
-
-// DeletePublicKey delete public key with key id
-func (c *Client) DeletePublicKey(keyID int64) (*Response, error) {
- _, resp, err := c.getResponse("DELETE", fmt.Sprintf("/user/keys/%d", keyID), nil, nil)
- return resp, err
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/user_search.go b/vendor/code.gitea.io/sdk/gitea/user_search.go
deleted file mode 100644
index 5ea0c45f81..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/user_search.go
+++ /dev/null
@@ -1,48 +0,0 @@
-// Copyright 2020 The Gitea Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea
-
-import (
- "fmt"
- "net/url"
-)
-
-type searchUsersResponse struct {
- Users []*User `json:"data"`
-}
-
-// SearchUsersOption options for SearchUsers
-type SearchUsersOption struct {
- ListOptions
- KeyWord string
-}
-
-// QueryEncode turns options into querystring argument
-func (opt *SearchUsersOption) QueryEncode() string {
- query := make(url.Values)
- if opt.Page > 0 {
- query.Add("page", fmt.Sprintf("%d", opt.Page))
- }
- if opt.PageSize > 0 {
- query.Add("limit", fmt.Sprintf("%d", opt.PageSize))
- }
- if len(opt.KeyWord) > 0 {
- query.Add("q", opt.KeyWord)
- }
- return query.Encode()
-}
-
-func (c *Client) searchUsers(rawQuery string) ([]*User, *Response, error) {
- link, _ := url.Parse("/users/search")
- link.RawQuery = rawQuery
- userResp := new(searchUsersResponse)
- resp, err := c.getParsedResponse("GET", link.String(), nil, nil, &userResp)
- return userResp.Users, resp, err
-}
-
-// SearchUsers finds users by query
-func (c *Client) SearchUsers(opt SearchUsersOption) ([]*User, *Response, error) {
- return c.searchUsers(opt.QueryEncode())
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/user_settings.go b/vendor/code.gitea.io/sdk/gitea/user_settings.go
deleted file mode 100644
index 494cab3629..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/user_settings.go
+++ /dev/null
@@ -1,62 +0,0 @@
-// Copyright 2021 The Gitea Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea
-
-import (
- "bytes"
- "encoding/json"
-)
-
-// UserSettings represents user settings
-type UserSettings struct {
- FullName string `json:"full_name"`
- Website string `json:"website"`
- Description string `json:"description"`
- Location string `json:"location"`
- Language string `json:"language"`
- Theme string `json:"theme"`
- DiffViewStyle string `json:"diff_view_style"`
- // Privacy
- HideEmail bool `json:"hide_email"`
- HideActivity bool `json:"hide_activity"`
-}
-
-// UserSettingsOptions represents options to change user settings
-type UserSettingsOptions struct {
- FullName *string `json:"full_name,omitempty"`
- Website *string `json:"website,omitempty"`
- Description *string `json:"description,omitempty"`
- Location *string `json:"location,omitempty"`
- Language *string `json:"language,omitempty"`
- Theme *string `json:"theme,omitempty"`
- DiffViewStyle *string `json:"diff_view_style,omitempty"`
- // Privacy
- HideEmail *bool `json:"hide_email,omitempty"`
- HideActivity *bool `json:"hide_activity,omitempty"`
-}
-
-// GetUserSettings returns user settings
-func (c *Client) GetUserSettings() (*UserSettings, *Response, error) {
- if err := c.checkServerVersionGreaterThanOrEqual(version1_15_0); err != nil {
- return nil, nil, err
- }
- userConfig := new(UserSettings)
- resp, err := c.getParsedResponse("GET", "/user/settings", nil, nil, userConfig)
- return userConfig, resp, err
-}
-
-// UpdateUserSettings returns user settings
-func (c *Client) UpdateUserSettings(opt UserSettingsOptions) (*UserSettings, *Response, error) {
- if err := c.checkServerVersionGreaterThanOrEqual(version1_15_0); err != nil {
- return nil, nil, err
- }
- body, err := json.Marshal(&opt)
- if err != nil {
- return nil, nil, err
- }
- userConfig := new(UserSettings)
- resp, err := c.getParsedResponse("PATCH", "/user/settings", jsonHeader, bytes.NewReader(body), userConfig)
- return userConfig, resp, err
-}
diff --git a/vendor/code.gitea.io/sdk/gitea/version.go b/vendor/code.gitea.io/sdk/gitea/version.go
deleted file mode 100644
index 1f41c77183..0000000000
--- a/vendor/code.gitea.io/sdk/gitea/version.go
+++ /dev/null
@@ -1,101 +0,0 @@
-// Copyright 2020 The Gitea Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package gitea
-
-import (
- "fmt"
-
- "github.com/hashicorp/go-version"
-)
-
-// ServerVersion returns the version of the server
-func (c *Client) ServerVersion() (string, *Response, error) {
- var v = struct {
- Version string `json:"version"`
- }{}
- resp, err := c.getParsedResponse("GET", "/version", nil, nil, &v)
- return v.Version, resp, err
-}
-
-// CheckServerVersionConstraint validates that the login's server satisfies a
-// given version constraint such as ">= 1.11.0+dev"
-func (c *Client) CheckServerVersionConstraint(constraint string) error {
- if err := c.loadServerVersion(); err != nil {
- return err
- }
-
- check, err := version.NewConstraint(constraint)
- if err != nil {
- return err
- }
- if !check.Check(c.serverVersion) {
- c.mutex.RLock()
- url := c.url
- c.mutex.RUnlock()
- return fmt.Errorf("gitea server at %s does not satisfy version constraint %s", url, constraint)
- }
- return nil
-}
-
-// SetGiteaVersion configures the Client to assume the given version of the
-// Gitea server, instead of querying the server for it when initializing.
-// Use "" to skip all canonical ways in the SDK to check for versions
-func SetGiteaVersion(v string) ClientOption {
- if v == "" {
- return func(c *Client) error {
- c.ignoreVersion = true
- return nil
- }
- }
- return func(c *Client) (err error) {
- c.getVersionOnce.Do(func() {
- c.serverVersion, err = version.NewVersion(v)
- return
- })
- return
- }
-}
-
-// predefined versions only have to be parsed by library once
-var (
- version1_11_0, _ = version.NewVersion("1.11.0")
- version1_12_0, _ = version.NewVersion("1.12.0")
- version1_13_0, _ = version.NewVersion("1.13.0")
- version1_14_0, _ = version.NewVersion("1.14.0")
- version1_15_0, _ = version.NewVersion("1.15.0")
-)
-
-// checkServerVersionGreaterThanOrEqual is the canonical way in the SDK to check for versions for API compatibility reasons
-func (c *Client) checkServerVersionGreaterThanOrEqual(v *version.Version) error {
- if c.ignoreVersion {
- return nil
- }
- if err := c.loadServerVersion(); err != nil {
- return err
- }
-
- if !c.serverVersion.GreaterThanOrEqual(v) {
- c.mutex.RLock()
- url := c.url
- c.mutex.RUnlock()
- return fmt.Errorf("gitea server at %s is older than %s", url, v.Original())
- }
- return nil
-}
-
-// loadServerVersion init the serverVersion variable
-func (c *Client) loadServerVersion() (err error) {
- c.getVersionOnce.Do(func() {
- raw, _, err2 := c.ServerVersion()
- if err2 != nil {
- err = err2
- return
- }
- if c.serverVersion, err = version.NewVersion(raw); err != nil {
- return
- }
- })
- return
-}