Start to migrate from util.OptionalBool to optional.Option[bool] (#29329)
		
	just create transition helper and migrate two structs (cherry picked from commit 7fbdb60fc1152acc9a040dc04b1b0f5a3475b081)
This commit is contained in:
		
					parent
					
						
							
								4b494d341f
							
						
					
				
			
			
				commit
				
					
						8ff858b94b
					
				
			
		
					 24 changed files with 84 additions and 64 deletions
				
			
		| 
						 | 
				
			
			@ -10,8 +10,8 @@ import (
 | 
			
		|||
	auth_model "code.gitea.io/gitea/models/auth"
 | 
			
		||||
	user_model "code.gitea.io/gitea/models/user"
 | 
			
		||||
	pwd "code.gitea.io/gitea/modules/auth/password"
 | 
			
		||||
	"code.gitea.io/gitea/modules/optional"
 | 
			
		||||
	"code.gitea.io/gitea/modules/setting"
 | 
			
		||||
	"code.gitea.io/gitea/modules/util"
 | 
			
		||||
 | 
			
		||||
	"github.com/urfave/cli/v2"
 | 
			
		||||
)
 | 
			
		||||
| 
						 | 
				
			
			@ -123,10 +123,10 @@ func runCreateUser(c *cli.Context) error {
 | 
			
		|||
		changePassword = c.Bool("must-change-password")
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	restricted := util.OptionalBoolNone
 | 
			
		||||
	restricted := optional.None[bool]()
 | 
			
		||||
 | 
			
		||||
	if c.IsSet("restricted") {
 | 
			
		||||
		restricted = util.OptionalBoolOf(c.Bool("restricted"))
 | 
			
		||||
		restricted = optional.Some(c.Bool("restricted"))
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	// default user visibility in app.ini
 | 
			
		||||
| 
						 | 
				
			
			@ -142,7 +142,7 @@ func runCreateUser(c *cli.Context) error {
 | 
			
		|||
	}
 | 
			
		||||
 | 
			
		||||
	overwriteDefault := &user_model.CreateUserOverwriteOptions{
 | 
			
		||||
		IsActive:     util.OptionalBoolTrue,
 | 
			
		||||
		IsActive:     optional.Some(true),
 | 
			
		||||
		IsRestricted: restricted,
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -9,7 +9,7 @@ import (
 | 
			
		|||
	"code.gitea.io/gitea/models/db"
 | 
			
		||||
	user_model "code.gitea.io/gitea/models/user"
 | 
			
		||||
	"code.gitea.io/gitea/modules/container"
 | 
			
		||||
	"code.gitea.io/gitea/modules/util"
 | 
			
		||||
	"code.gitea.io/gitea/modules/optional"
 | 
			
		||||
 | 
			
		||||
	"xorm.io/builder"
 | 
			
		||||
)
 | 
			
		||||
| 
						 | 
				
			
			@ -67,7 +67,7 @@ type FindBranchOptions struct {
 | 
			
		|||
	db.ListOptions
 | 
			
		||||
	RepoID             int64
 | 
			
		||||
	ExcludeBranchNames []string
 | 
			
		||||
	IsDeletedBranch    util.OptionalBool
 | 
			
		||||
	IsDeletedBranch    optional.Option[bool]
 | 
			
		||||
	OrderBy            string
 | 
			
		||||
	Keyword            string
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			@ -81,8 +81,8 @@ func (opts FindBranchOptions) ToConds() builder.Cond {
 | 
			
		|||
	if len(opts.ExcludeBranchNames) > 0 {
 | 
			
		||||
		cond = cond.And(builder.NotIn("name", opts.ExcludeBranchNames))
 | 
			
		||||
	}
 | 
			
		||||
	if !opts.IsDeletedBranch.IsNone() {
 | 
			
		||||
		cond = cond.And(builder.Eq{"is_deleted": opts.IsDeletedBranch.IsTrue()})
 | 
			
		||||
	if opts.IsDeletedBranch.Has() {
 | 
			
		||||
		cond = cond.And(builder.Eq{"is_deleted": opts.IsDeletedBranch.Value()})
 | 
			
		||||
	}
 | 
			
		||||
	if opts.Keyword != "" {
 | 
			
		||||
		cond = cond.And(builder.Like{"name", opts.Keyword})
 | 
			
		||||
| 
						 | 
				
			
			@ -92,7 +92,7 @@ func (opts FindBranchOptions) ToConds() builder.Cond {
 | 
			
		|||
 | 
			
		||||
func (opts FindBranchOptions) ToOrders() string {
 | 
			
		||||
	orderBy := opts.OrderBy
 | 
			
		||||
	if !opts.IsDeletedBranch.IsFalse() { // if deleted branch included, put them at the end
 | 
			
		||||
	if opts.IsDeletedBranch.ValueOrDefault(true) { // if deleted branch included, put them at the end
 | 
			
		||||
		if orderBy != "" {
 | 
			
		||||
			orderBy += ", "
 | 
			
		||||
		}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -12,7 +12,7 @@ import (
 | 
			
		|||
	repo_model "code.gitea.io/gitea/models/repo"
 | 
			
		||||
	"code.gitea.io/gitea/models/unittest"
 | 
			
		||||
	"code.gitea.io/gitea/modules/git"
 | 
			
		||||
	"code.gitea.io/gitea/modules/util"
 | 
			
		||||
	"code.gitea.io/gitea/modules/optional"
 | 
			
		||||
 | 
			
		||||
	"github.com/stretchr/testify/assert"
 | 
			
		||||
)
 | 
			
		||||
| 
						 | 
				
			
			@ -49,7 +49,7 @@ func TestGetDeletedBranches(t *testing.T) {
 | 
			
		|||
	branches, err := db.Find[git_model.Branch](db.DefaultContext, git_model.FindBranchOptions{
 | 
			
		||||
		ListOptions:     db.ListOptionsAll,
 | 
			
		||||
		RepoID:          repo.ID,
 | 
			
		||||
		IsDeletedBranch: util.OptionalBoolTrue,
 | 
			
		||||
		IsDeletedBranch: optional.Some(true),
 | 
			
		||||
	})
 | 
			
		||||
	assert.NoError(t, err)
 | 
			
		||||
	assert.Len(t, branches, 2)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -8,7 +8,7 @@ import (
 | 
			
		|||
	"sort"
 | 
			
		||||
 | 
			
		||||
	"code.gitea.io/gitea/models/db"
 | 
			
		||||
	"code.gitea.io/gitea/modules/util"
 | 
			
		||||
	"code.gitea.io/gitea/modules/optional"
 | 
			
		||||
 | 
			
		||||
	"github.com/gobwas/glob"
 | 
			
		||||
)
 | 
			
		||||
| 
						 | 
				
			
			@ -56,7 +56,7 @@ func FindAllMatchedBranches(ctx context.Context, repoID int64, ruleName string)
 | 
			
		|||
				Page:     page,
 | 
			
		||||
			},
 | 
			
		||||
			RepoID:          repoID,
 | 
			
		||||
			IsDeletedBranch: util.OptionalBoolFalse,
 | 
			
		||||
			IsDeletedBranch: optional.Some(false),
 | 
			
		||||
		})
 | 
			
		||||
		if err != nil {
 | 
			
		||||
			return nil, err
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -25,6 +25,7 @@ import (
 | 
			
		|||
	"code.gitea.io/gitea/modules/container"
 | 
			
		||||
	"code.gitea.io/gitea/modules/git"
 | 
			
		||||
	"code.gitea.io/gitea/modules/log"
 | 
			
		||||
	"code.gitea.io/gitea/modules/optional"
 | 
			
		||||
	"code.gitea.io/gitea/modules/setting"
 | 
			
		||||
	"code.gitea.io/gitea/modules/structs"
 | 
			
		||||
	"code.gitea.io/gitea/modules/timeutil"
 | 
			
		||||
| 
						 | 
				
			
			@ -585,14 +586,14 @@ func IsUsableUsername(name string) error {
 | 
			
		|||
 | 
			
		||||
// CreateUserOverwriteOptions are an optional options who overwrite system defaults on user creation
 | 
			
		||||
type CreateUserOverwriteOptions struct {
 | 
			
		||||
	KeepEmailPrivate             util.OptionalBool
 | 
			
		||||
	KeepEmailPrivate             optional.Option[bool]
 | 
			
		||||
	Visibility                   *structs.VisibleType
 | 
			
		||||
	AllowCreateOrganization      util.OptionalBool
 | 
			
		||||
	AllowCreateOrganization      optional.Option[bool]
 | 
			
		||||
	EmailNotificationsPreference *string
 | 
			
		||||
	MaxRepoCreation              *int
 | 
			
		||||
	Theme                        *string
 | 
			
		||||
	IsRestricted                 util.OptionalBool
 | 
			
		||||
	IsActive                     util.OptionalBool
 | 
			
		||||
	IsRestricted                 optional.Option[bool]
 | 
			
		||||
	IsActive                     optional.Option[bool]
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// CreateUser creates record of a new user.
 | 
			
		||||
| 
						 | 
				
			
			@ -619,14 +620,14 @@ func CreateUser(ctx context.Context, u *User, overwriteDefault ...*CreateUserOve
 | 
			
		|||
	// overwrite defaults if set
 | 
			
		||||
	if len(overwriteDefault) != 0 && overwriteDefault[0] != nil {
 | 
			
		||||
		overwrite := overwriteDefault[0]
 | 
			
		||||
		if !overwrite.KeepEmailPrivate.IsNone() {
 | 
			
		||||
			u.KeepEmailPrivate = overwrite.KeepEmailPrivate.IsTrue()
 | 
			
		||||
		if overwrite.KeepEmailPrivate.Has() {
 | 
			
		||||
			u.KeepEmailPrivate = overwrite.KeepEmailPrivate.Value()
 | 
			
		||||
		}
 | 
			
		||||
		if overwrite.Visibility != nil {
 | 
			
		||||
			u.Visibility = *overwrite.Visibility
 | 
			
		||||
		}
 | 
			
		||||
		if !overwrite.AllowCreateOrganization.IsNone() {
 | 
			
		||||
			u.AllowCreateOrganization = overwrite.AllowCreateOrganization.IsTrue()
 | 
			
		||||
		if overwrite.AllowCreateOrganization.Has() {
 | 
			
		||||
			u.AllowCreateOrganization = overwrite.AllowCreateOrganization.Value()
 | 
			
		||||
		}
 | 
			
		||||
		if overwrite.EmailNotificationsPreference != nil {
 | 
			
		||||
			u.EmailNotificationsPreference = *overwrite.EmailNotificationsPreference
 | 
			
		||||
| 
						 | 
				
			
			@ -637,11 +638,11 @@ func CreateUser(ctx context.Context, u *User, overwriteDefault ...*CreateUserOve
 | 
			
		|||
		if overwrite.Theme != nil {
 | 
			
		||||
			u.Theme = *overwrite.Theme
 | 
			
		||||
		}
 | 
			
		||||
		if !overwrite.IsRestricted.IsNone() {
 | 
			
		||||
			u.IsRestricted = overwrite.IsRestricted.IsTrue()
 | 
			
		||||
		if overwrite.IsRestricted.Has() {
 | 
			
		||||
			u.IsRestricted = overwrite.IsRestricted.Value()
 | 
			
		||||
		}
 | 
			
		||||
		if !overwrite.IsActive.IsNone() {
 | 
			
		||||
			u.IsActive = overwrite.IsActive.IsTrue()
 | 
			
		||||
		if overwrite.IsActive.Has() {
 | 
			
		||||
			u.IsActive = overwrite.IsActive.Value()
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -27,6 +27,7 @@ import (
 | 
			
		|||
	"code.gitea.io/gitea/modules/gitrepo"
 | 
			
		||||
	code_indexer "code.gitea.io/gitea/modules/indexer/code"
 | 
			
		||||
	"code.gitea.io/gitea/modules/log"
 | 
			
		||||
	"code.gitea.io/gitea/modules/optional"
 | 
			
		||||
	repo_module "code.gitea.io/gitea/modules/repository"
 | 
			
		||||
	"code.gitea.io/gitea/modules/setting"
 | 
			
		||||
	"code.gitea.io/gitea/modules/util"
 | 
			
		||||
| 
						 | 
				
			
			@ -672,7 +673,7 @@ func RepoAssignment(ctx *Context) context.CancelFunc {
 | 
			
		|||
 | 
			
		||||
	branchOpts := git_model.FindBranchOptions{
 | 
			
		||||
		RepoID:          ctx.Repo.Repository.ID,
 | 
			
		||||
		IsDeletedBranch: util.OptionalBoolFalse,
 | 
			
		||||
		IsDeletedBranch: optional.Some(false),
 | 
			
		||||
		ListOptions:     db.ListOptionsAll,
 | 
			
		||||
	}
 | 
			
		||||
	branchesTotal, err := db.Count[git_model.Branch](ctx, branchOpts)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -6,8 +6,6 @@ package optional
 | 
			
		|||
import (
 | 
			
		||||
	"testing"
 | 
			
		||||
 | 
			
		||||
	"code.gitea.io/gitea/modules/util"
 | 
			
		||||
 | 
			
		||||
	"github.com/stretchr/testify/assert"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -30,7 +28,8 @@ func TestOption(t *testing.T) {
 | 
			
		|||
	var ptr *int
 | 
			
		||||
	assert.False(t, FromPtr(ptr).Has())
 | 
			
		||||
 | 
			
		||||
	opt1 := FromPtr(util.ToPointer(1))
 | 
			
		||||
	int1 := 1
 | 
			
		||||
	opt1 := FromPtr(&int1)
 | 
			
		||||
	assert.True(t, opt1.Has())
 | 
			
		||||
	assert.Equal(t, int(1), opt1.Value())
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -11,6 +11,8 @@ import (
 | 
			
		|||
	"strconv"
 | 
			
		||||
	"strings"
 | 
			
		||||
 | 
			
		||||
	"code.gitea.io/gitea/modules/optional"
 | 
			
		||||
 | 
			
		||||
	"golang.org/x/text/cases"
 | 
			
		||||
	"golang.org/x/text/language"
 | 
			
		||||
)
 | 
			
		||||
| 
						 | 
				
			
			@ -42,6 +44,22 @@ func (o OptionalBool) IsNone() bool {
 | 
			
		|||
	return o == OptionalBoolNone
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// ToGeneric converts OptionalBool to optional.Option[bool]
 | 
			
		||||
func (o OptionalBool) ToGeneric() optional.Option[bool] {
 | 
			
		||||
	if o.IsNone() {
 | 
			
		||||
		return optional.None[bool]()
 | 
			
		||||
	}
 | 
			
		||||
	return optional.Some[bool](o.IsTrue())
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// OptionalBoolFromGeneric converts optional.Option[bool] to OptionalBool
 | 
			
		||||
func OptionalBoolFromGeneric(o optional.Option[bool]) OptionalBool {
 | 
			
		||||
	if o.Has() {
 | 
			
		||||
		return OptionalBoolOf(o.Value())
 | 
			
		||||
	}
 | 
			
		||||
	return OptionalBoolNone
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// OptionalBoolOf get the corresponding OptionalBool of a bool
 | 
			
		||||
func OptionalBoolOf(b bool) OptionalBool {
 | 
			
		||||
	if b {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -21,7 +21,6 @@ import (
 | 
			
		|||
	"code.gitea.io/gitea/modules/setting"
 | 
			
		||||
	api "code.gitea.io/gitea/modules/structs"
 | 
			
		||||
	"code.gitea.io/gitea/modules/timeutil"
 | 
			
		||||
	"code.gitea.io/gitea/modules/util"
 | 
			
		||||
	"code.gitea.io/gitea/modules/web"
 | 
			
		||||
	"code.gitea.io/gitea/routers/api/v1/user"
 | 
			
		||||
	"code.gitea.io/gitea/routers/api/v1/utils"
 | 
			
		||||
| 
						 | 
				
			
			@ -117,11 +116,8 @@ func CreateUser(ctx *context.APIContext) {
 | 
			
		|||
	}
 | 
			
		||||
 | 
			
		||||
	overwriteDefault := &user_model.CreateUserOverwriteOptions{
 | 
			
		||||
		IsActive: util.OptionalBoolTrue,
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	if form.Restricted != nil {
 | 
			
		||||
		overwriteDefault.IsRestricted = util.OptionalBoolOf(*form.Restricted)
 | 
			
		||||
		IsActive:     optional.Some(true),
 | 
			
		||||
		IsRestricted: optional.FromPtr(form.Restricted),
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	if form.Visibility != "" {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -17,9 +17,9 @@ import (
 | 
			
		|||
	"code.gitea.io/gitea/modules/context"
 | 
			
		||||
	"code.gitea.io/gitea/modules/git"
 | 
			
		||||
	"code.gitea.io/gitea/modules/gitrepo"
 | 
			
		||||
	"code.gitea.io/gitea/modules/optional"
 | 
			
		||||
	repo_module "code.gitea.io/gitea/modules/repository"
 | 
			
		||||
	api "code.gitea.io/gitea/modules/structs"
 | 
			
		||||
	"code.gitea.io/gitea/modules/util"
 | 
			
		||||
	"code.gitea.io/gitea/modules/web"
 | 
			
		||||
	"code.gitea.io/gitea/routers/api/v1/utils"
 | 
			
		||||
	"code.gitea.io/gitea/services/convert"
 | 
			
		||||
| 
						 | 
				
			
			@ -141,7 +141,7 @@ func DeleteBranch(ctx *context.APIContext) {
 | 
			
		|||
	// check whether branches of this repository has been synced
 | 
			
		||||
	totalNumOfBranches, err := db.Count[git_model.Branch](ctx, git_model.FindBranchOptions{
 | 
			
		||||
		RepoID:          ctx.Repo.Repository.ID,
 | 
			
		||||
		IsDeletedBranch: util.OptionalBoolFalse,
 | 
			
		||||
		IsDeletedBranch: optional.Some(false),
 | 
			
		||||
	})
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		ctx.Error(http.StatusInternalServerError, "CountBranches", err)
 | 
			
		||||
| 
						 | 
				
			
			@ -340,7 +340,7 @@ func ListBranches(ctx *context.APIContext) {
 | 
			
		|||
		branchOpts := git_model.FindBranchOptions{
 | 
			
		||||
			ListOptions:     listOptions,
 | 
			
		||||
			RepoID:          ctx.Repo.Repository.ID,
 | 
			
		||||
			IsDeletedBranch: util.OptionalBoolFalse,
 | 
			
		||||
			IsDeletedBranch: optional.Some(false),
 | 
			
		||||
		}
 | 
			
		||||
		var err error
 | 
			
		||||
		totalNumOfBranches, err = db.Count[git_model.Branch](ctx, branchOpts)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -25,11 +25,11 @@ import (
 | 
			
		|||
	"code.gitea.io/gitea/modules/generate"
 | 
			
		||||
	"code.gitea.io/gitea/modules/graceful"
 | 
			
		||||
	"code.gitea.io/gitea/modules/log"
 | 
			
		||||
	"code.gitea.io/gitea/modules/optional"
 | 
			
		||||
	"code.gitea.io/gitea/modules/setting"
 | 
			
		||||
	"code.gitea.io/gitea/modules/templates"
 | 
			
		||||
	"code.gitea.io/gitea/modules/translation"
 | 
			
		||||
	"code.gitea.io/gitea/modules/user"
 | 
			
		||||
	"code.gitea.io/gitea/modules/util"
 | 
			
		||||
	"code.gitea.io/gitea/modules/web"
 | 
			
		||||
	"code.gitea.io/gitea/modules/web/middleware"
 | 
			
		||||
	"code.gitea.io/gitea/routers/common"
 | 
			
		||||
| 
						 | 
				
			
			@ -537,8 +537,8 @@ func SubmitInstall(ctx *context.Context) {
 | 
			
		|||
			IsAdmin: true,
 | 
			
		||||
		}
 | 
			
		||||
		overwriteDefault := &user_model.CreateUserOverwriteOptions{
 | 
			
		||||
			IsRestricted: util.OptionalBoolFalse,
 | 
			
		||||
			IsActive:     util.OptionalBoolTrue,
 | 
			
		||||
			IsRestricted: optional.Some(false),
 | 
			
		||||
			IsActive:     optional.Some(true),
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		if err = user_model.CreateUser(ctx, u, overwriteDefault); err != nil {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -140,7 +140,7 @@ func NewUserPost(ctx *context.Context) {
 | 
			
		|||
	}
 | 
			
		||||
 | 
			
		||||
	overwriteDefault := &user_model.CreateUserOverwriteOptions{
 | 
			
		||||
		IsActive:   util.OptionalBoolTrue,
 | 
			
		||||
		IsActive:   optional.Some(true),
 | 
			
		||||
		Visibility: &form.Visibility,
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -982,7 +982,7 @@ func SignInOAuthCallback(ctx *context.Context) {
 | 
			
		|||
			}
 | 
			
		||||
 | 
			
		||||
			overwriteDefault := &user_model.CreateUserOverwriteOptions{
 | 
			
		||||
				IsActive: util.OptionalBoolOf(!setting.OAuth2Client.RegisterEmailConfirm && !setting.Service.RegisterManualConfirm),
 | 
			
		||||
				IsActive: optional.Some(!setting.OAuth2Client.RegisterEmailConfirm && !setting.Service.RegisterManualConfirm),
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			source := authSource.Cfg.(*oauth2.Source)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -31,6 +31,7 @@ import (
 | 
			
		|||
	"code.gitea.io/gitea/modules/gitrepo"
 | 
			
		||||
	"code.gitea.io/gitea/modules/log"
 | 
			
		||||
	"code.gitea.io/gitea/modules/markup"
 | 
			
		||||
	"code.gitea.io/gitea/modules/optional"
 | 
			
		||||
	"code.gitea.io/gitea/modules/setting"
 | 
			
		||||
	api "code.gitea.io/gitea/modules/structs"
 | 
			
		||||
	"code.gitea.io/gitea/modules/typesniffer"
 | 
			
		||||
| 
						 | 
				
			
			@ -700,7 +701,7 @@ func getBranchesAndTagsForRepo(ctx gocontext.Context, repo *repo_model.Repositor
 | 
			
		|||
		ListOptions: db.ListOptions{
 | 
			
		||||
			ListAll: true,
 | 
			
		||||
		},
 | 
			
		||||
		IsDeletedBranch: util.OptionalBoolFalse,
 | 
			
		||||
		IsDeletedBranch: optional.Some(false),
 | 
			
		||||
	})
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return nil, nil, err
 | 
			
		||||
| 
						 | 
				
			
			@ -757,7 +758,7 @@ func CompareDiff(ctx *context.Context) {
 | 
			
		|||
		ListOptions: db.ListOptions{
 | 
			
		||||
			ListAll: true,
 | 
			
		||||
		},
 | 
			
		||||
		IsDeletedBranch: util.OptionalBoolFalse,
 | 
			
		||||
		IsDeletedBranch: optional.Some(false),
 | 
			
		||||
	})
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		ctx.ServerError("GetBranches", err)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -33,6 +33,7 @@ import (
 | 
			
		|||
	"code.gitea.io/gitea/modules/gitrepo"
 | 
			
		||||
	issue_template "code.gitea.io/gitea/modules/issue/template"
 | 
			
		||||
	"code.gitea.io/gitea/modules/log"
 | 
			
		||||
	"code.gitea.io/gitea/modules/optional"
 | 
			
		||||
	"code.gitea.io/gitea/modules/setting"
 | 
			
		||||
	"code.gitea.io/gitea/modules/structs"
 | 
			
		||||
	"code.gitea.io/gitea/modules/upload"
 | 
			
		||||
| 
						 | 
				
			
			@ -193,7 +194,7 @@ func updateForkRepositoryInContext(ctx *context.Context, forkRepo *repo_model.Re
 | 
			
		|||
		ListOptions: db.ListOptions{
 | 
			
		||||
			ListAll: true,
 | 
			
		||||
		},
 | 
			
		||||
		IsDeletedBranch: util.OptionalBoolFalse,
 | 
			
		||||
		IsDeletedBranch: optional.Some(false),
 | 
			
		||||
		// Add it as the first option
 | 
			
		||||
		ExcludeBranchNames: []string{ctx.Repo.Repository.DefaultBranch},
 | 
			
		||||
	})
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -24,6 +24,7 @@ import (
 | 
			
		|||
	"code.gitea.io/gitea/modules/context"
 | 
			
		||||
	"code.gitea.io/gitea/modules/git"
 | 
			
		||||
	"code.gitea.io/gitea/modules/log"
 | 
			
		||||
	"code.gitea.io/gitea/modules/optional"
 | 
			
		||||
	repo_module "code.gitea.io/gitea/modules/repository"
 | 
			
		||||
	"code.gitea.io/gitea/modules/setting"
 | 
			
		||||
	"code.gitea.io/gitea/modules/storage"
 | 
			
		||||
| 
						 | 
				
			
			@ -685,7 +686,7 @@ type branchTagSearchResponse struct {
 | 
			
		|||
func GetBranchesList(ctx *context.Context) {
 | 
			
		||||
	branchOpts := git_model.FindBranchOptions{
 | 
			
		||||
		RepoID:          ctx.Repo.Repository.ID,
 | 
			
		||||
		IsDeletedBranch: util.OptionalBoolFalse,
 | 
			
		||||
		IsDeletedBranch: optional.Some(false),
 | 
			
		||||
		ListOptions: db.ListOptions{
 | 
			
		||||
			ListAll: true,
 | 
			
		||||
		},
 | 
			
		||||
| 
						 | 
				
			
			@ -720,7 +721,7 @@ func GetTagList(ctx *context.Context) {
 | 
			
		|||
func PrepareBranchList(ctx *context.Context) {
 | 
			
		||||
	branchOpts := git_model.FindBranchOptions{
 | 
			
		||||
		RepoID:          ctx.Repo.Repository.ID,
 | 
			
		||||
		IsDeletedBranch: util.OptionalBoolFalse,
 | 
			
		||||
		IsDeletedBranch: optional.Some(false),
 | 
			
		||||
		ListOptions: db.ListOptions{
 | 
			
		||||
			ListAll: true,
 | 
			
		||||
		},
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -10,8 +10,8 @@ import (
 | 
			
		|||
 | 
			
		||||
	user_model "code.gitea.io/gitea/models/user"
 | 
			
		||||
	"code.gitea.io/gitea/modules/log"
 | 
			
		||||
	"code.gitea.io/gitea/modules/optional"
 | 
			
		||||
	"code.gitea.io/gitea/modules/setting"
 | 
			
		||||
	"code.gitea.io/gitea/modules/util"
 | 
			
		||||
	"code.gitea.io/gitea/modules/web/middleware"
 | 
			
		||||
 | 
			
		||||
	gouuid "github.com/google/uuid"
 | 
			
		||||
| 
						 | 
				
			
			@ -161,7 +161,7 @@ func (r *ReverseProxy) newUser(req *http.Request) *user_model.User {
 | 
			
		|||
	}
 | 
			
		||||
 | 
			
		||||
	overwriteDefault := user_model.CreateUserOverwriteOptions{
 | 
			
		||||
		IsActive: util.OptionalBoolTrue,
 | 
			
		||||
		IsActive: optional.Some(true),
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	if err := user_model.CreateUser(req.Context(), user, &overwriteDefault); err != nil {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -13,7 +13,6 @@ import (
 | 
			
		|||
	user_model "code.gitea.io/gitea/models/user"
 | 
			
		||||
	auth_module "code.gitea.io/gitea/modules/auth"
 | 
			
		||||
	"code.gitea.io/gitea/modules/optional"
 | 
			
		||||
	"code.gitea.io/gitea/modules/util"
 | 
			
		||||
	source_service "code.gitea.io/gitea/services/auth/source"
 | 
			
		||||
	user_service "code.gitea.io/gitea/services/user"
 | 
			
		||||
)
 | 
			
		||||
| 
						 | 
				
			
			@ -85,8 +84,8 @@ func (source *Source) Authenticate(ctx context.Context, user *user_model.User, u
 | 
			
		|||
			IsAdmin:     sr.IsAdmin,
 | 
			
		||||
		}
 | 
			
		||||
		overwriteDefault := &user_model.CreateUserOverwriteOptions{
 | 
			
		||||
			IsRestricted: util.OptionalBoolOf(sr.IsRestricted),
 | 
			
		||||
			IsActive:     util.OptionalBoolTrue,
 | 
			
		||||
			IsRestricted: optional.Some(sr.IsRestricted),
 | 
			
		||||
			IsActive:     optional.Some(true),
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		err := user_model.CreateUser(ctx, user, overwriteDefault)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -16,7 +16,6 @@ import (
 | 
			
		|||
	"code.gitea.io/gitea/modules/container"
 | 
			
		||||
	"code.gitea.io/gitea/modules/log"
 | 
			
		||||
	"code.gitea.io/gitea/modules/optional"
 | 
			
		||||
	"code.gitea.io/gitea/modules/util"
 | 
			
		||||
	source_service "code.gitea.io/gitea/services/auth/source"
 | 
			
		||||
	user_service "code.gitea.io/gitea/services/user"
 | 
			
		||||
)
 | 
			
		||||
| 
						 | 
				
			
			@ -125,8 +124,8 @@ func (source *Source) Sync(ctx context.Context, updateExisting bool) error {
 | 
			
		|||
				IsAdmin:     su.IsAdmin,
 | 
			
		||||
			}
 | 
			
		||||
			overwriteDefault := &user_model.CreateUserOverwriteOptions{
 | 
			
		||||
				IsRestricted: util.OptionalBoolOf(su.IsRestricted),
 | 
			
		||||
				IsActive:     util.OptionalBoolTrue,
 | 
			
		||||
				IsRestricted: optional.Some(su.IsRestricted),
 | 
			
		||||
				IsActive:     optional.Some(true),
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			err = user_model.CreateUser(ctx, usr, overwriteDefault)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -11,8 +11,8 @@ import (
 | 
			
		|||
	"code.gitea.io/gitea/models/auth"
 | 
			
		||||
	user_model "code.gitea.io/gitea/models/user"
 | 
			
		||||
	"code.gitea.io/gitea/modules/auth/pam"
 | 
			
		||||
	"code.gitea.io/gitea/modules/optional"
 | 
			
		||||
	"code.gitea.io/gitea/modules/setting"
 | 
			
		||||
	"code.gitea.io/gitea/modules/util"
 | 
			
		||||
 | 
			
		||||
	"github.com/google/uuid"
 | 
			
		||||
)
 | 
			
		||||
| 
						 | 
				
			
			@ -60,7 +60,7 @@ func (source *Source) Authenticate(ctx context.Context, user *user_model.User, u
 | 
			
		|||
		LoginName:   userName, // This is what the user typed in
 | 
			
		||||
	}
 | 
			
		||||
	overwriteDefault := &user_model.CreateUserOverwriteOptions{
 | 
			
		||||
		IsActive: util.OptionalBoolTrue,
 | 
			
		||||
		IsActive: optional.Some(true),
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	if err := user_model.CreateUser(ctx, user, overwriteDefault); err != nil {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -12,6 +12,7 @@ import (
 | 
			
		|||
 | 
			
		||||
	auth_model "code.gitea.io/gitea/models/auth"
 | 
			
		||||
	user_model "code.gitea.io/gitea/models/user"
 | 
			
		||||
	"code.gitea.io/gitea/modules/optional"
 | 
			
		||||
	"code.gitea.io/gitea/modules/util"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -75,7 +76,7 @@ func (source *Source) Authenticate(ctx context.Context, user *user_model.User, u
 | 
			
		|||
		LoginName:   userName,
 | 
			
		||||
	}
 | 
			
		||||
	overwriteDefault := &user_model.CreateUserOverwriteOptions{
 | 
			
		||||
		IsActive: util.OptionalBoolTrue,
 | 
			
		||||
		IsActive: optional.Some(true),
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	if err := user_model.CreateUser(ctx, user, overwriteDefault); err != nil {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -16,6 +16,7 @@ import (
 | 
			
		|||
	"code.gitea.io/gitea/modules/base"
 | 
			
		||||
	gitea_context "code.gitea.io/gitea/modules/context"
 | 
			
		||||
	"code.gitea.io/gitea/modules/log"
 | 
			
		||||
	"code.gitea.io/gitea/modules/optional"
 | 
			
		||||
	"code.gitea.io/gitea/modules/setting"
 | 
			
		||||
	"code.gitea.io/gitea/modules/util"
 | 
			
		||||
	"code.gitea.io/gitea/modules/web/middleware"
 | 
			
		||||
| 
						 | 
				
			
			@ -172,8 +173,8 @@ func (s *SSPI) newUser(ctx context.Context, username string, cfg *sspi.Source) (
 | 
			
		|||
	}
 | 
			
		||||
	emailNotificationPreference := user_model.EmailNotificationsDisabled
 | 
			
		||||
	overwriteDefault := &user_model.CreateUserOverwriteOptions{
 | 
			
		||||
		IsActive:                     util.OptionalBoolOf(cfg.AutoActivateUsers),
 | 
			
		||||
		KeepEmailPrivate:             util.OptionalBoolTrue,
 | 
			
		||||
		IsActive:                     optional.Some(cfg.AutoActivateUsers),
 | 
			
		||||
		KeepEmailPrivate:             optional.Some(true),
 | 
			
		||||
		EmailNotificationsPreference: &emailNotificationPreference,
 | 
			
		||||
	}
 | 
			
		||||
	if err := user_model.CreateUser(ctx, user, overwriteDefault); err != nil {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -19,6 +19,7 @@ import (
 | 
			
		|||
	"code.gitea.io/gitea/modules/git"
 | 
			
		||||
	"code.gitea.io/gitea/modules/gitrepo"
 | 
			
		||||
	"code.gitea.io/gitea/modules/log"
 | 
			
		||||
	"code.gitea.io/gitea/modules/optional"
 | 
			
		||||
	repo_module "code.gitea.io/gitea/modules/repository"
 | 
			
		||||
	"code.gitea.io/gitea/modules/setting"
 | 
			
		||||
	"code.gitea.io/gitea/modules/util"
 | 
			
		||||
| 
						 | 
				
			
			@ -154,7 +155,7 @@ func adoptRepository(ctx context.Context, repoPath string, u *user_model.User, r
 | 
			
		|||
		ListOptions: db.ListOptions{
 | 
			
		||||
			ListAll: true,
 | 
			
		||||
		},
 | 
			
		||||
		IsDeletedBranch: util.OptionalBoolFalse,
 | 
			
		||||
		IsDeletedBranch: optional.Some(false),
 | 
			
		||||
	})
 | 
			
		||||
 | 
			
		||||
	found := false
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -19,6 +19,7 @@ import (
 | 
			
		|||
	"code.gitea.io/gitea/modules/gitrepo"
 | 
			
		||||
	"code.gitea.io/gitea/modules/graceful"
 | 
			
		||||
	"code.gitea.io/gitea/modules/log"
 | 
			
		||||
	"code.gitea.io/gitea/modules/optional"
 | 
			
		||||
	"code.gitea.io/gitea/modules/queue"
 | 
			
		||||
	repo_module "code.gitea.io/gitea/modules/repository"
 | 
			
		||||
	"code.gitea.io/gitea/modules/timeutil"
 | 
			
		||||
| 
						 | 
				
			
			@ -59,7 +60,7 @@ func LoadBranches(ctx context.Context, repo *repo_model.Repository, gitRepo *git
 | 
			
		|||
 | 
			
		||||
	branchOpts := git_model.FindBranchOptions{
 | 
			
		||||
		RepoID:          repo.ID,
 | 
			
		||||
		IsDeletedBranch: isDeletedBranch,
 | 
			
		||||
		IsDeletedBranch: isDeletedBranch.ToGeneric(),
 | 
			
		||||
		ListOptions: db.ListOptions{
 | 
			
		||||
			Page:     page,
 | 
			
		||||
			PageSize: pageSize,
 | 
			
		||||
| 
						 | 
				
			
			@ -243,7 +244,7 @@ func syncBranchToDB(ctx context.Context, repoID, pusherID int64, branchName stri
 | 
			
		|||
	// we cannot simply insert the branch but need to check we have branches or not
 | 
			
		||||
	hasBranch, err := db.Exist[git_model.Branch](ctx, git_model.FindBranchOptions{
 | 
			
		||||
		RepoID:          repoID,
 | 
			
		||||
		IsDeletedBranch: util.OptionalBoolFalse,
 | 
			
		||||
		IsDeletedBranch: optional.Some(false),
 | 
			
		||||
	}.ToConds())
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return err
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue