feat: update gitea vendor
runner nix smoke / nix label and flake smoke (push) Failing after 1m28s

This commit is contained in:
2026-09-26 21:18:24 +00:00
parent c439c1b948
commit d9b2a4e787
3538 changed files with 116131 additions and 44340 deletions
@@ -8,18 +8,18 @@ import (
"strconv"
"strings"
"code.gitea.io/gitea/models/db"
issues_model "code.gitea.io/gitea/models/issues"
"code.gitea.io/gitea/models/organization"
project_model "code.gitea.io/gitea/models/project"
repo_model "code.gitea.io/gitea/models/repo"
user_model "code.gitea.io/gitea/models/user"
"code.gitea.io/gitea/modules/container"
"code.gitea.io/gitea/modules/optional"
shared_user "code.gitea.io/gitea/routers/web/shared/user"
"code.gitea.io/gitea/services/context"
issue_service "code.gitea.io/gitea/services/issue"
pull_service "code.gitea.io/gitea/services/pull"
"gitea.dev/models/db"
issues_model "gitea.dev/models/issues"
"gitea.dev/models/organization"
project_model "gitea.dev/models/project"
repo_model "gitea.dev/models/repo"
user_model "gitea.dev/models/user"
"gitea.dev/modules/container"
"gitea.dev/modules/optional"
shared_user "gitea.dev/routers/web/shared/user"
"gitea.dev/services/context"
issue_service "gitea.dev/services/issue"
pull_service "gitea.dev/services/pull"
)
type issueSidebarMilestoneData struct {
@@ -33,12 +33,15 @@ type issueSidebarAssigneesData struct {
CandidateAssignees []*user_model.User
}
type issueSidebarProjectsData struct {
SelectedProjectIDs []int64 // TODO: support multiple projects in the future
type issueSidebarProjectCardData struct {
Project *project_model.Project
Columns []*project_model.Column
SelectedColumn *project_model.Column
}
// the "selected" fields are only valid when len(SelectedProjectIDs)==1
SelectedProjectColumns []*project_model.Column
SelectedProjectColumn *project_model.Column
type issueSidebarProjectsData struct {
SelectedProjectIDs []int64
ProjectCards []*issueSidebarProjectCardData
OpenProjects []*project_model.Project
ClosedProjects []*project_model.Project
@@ -107,7 +110,7 @@ func retrieveRepoIssueMetaData(ctx *context.Context, repo *repo_model.Repository
// A reader(creator) could update some meta (eg: target branch), but can't change assignees anymore.
// For non-creator users, only writers could update some meta (eg: assignees, milestone, project)
// Need to clarify the logic and add some tests in the future
data.CanModifyIssueOrPull = ctx.Repo.CanWriteIssuesOrPulls(isPull) && !ctx.Repo.Repository.IsArchived
data.CanModifyIssueOrPull = ctx.Repo.Permission.CanWriteIssuesOrPulls(isPull) && !ctx.Repo.Repository.IsArchived
if !data.CanModifyIssueOrPull {
return data
}
@@ -168,34 +171,80 @@ func (d *IssuePageMetaData) retrieveAssigneesData(ctx *context.Context) {
ctx.Data["Assignees"] = d.AssigneesData.CandidateAssignees
}
func (d *IssuePageMetaData) retrieveProjectData(ctx *context.Context) {
if d.Issue == nil || d.Issue.Project == nil {
func (d *IssuePageMetaData) retrieveProjectCardsForExistingIssue(ctx *context.Context) {
if err := d.Issue.LoadProjects(ctx); err != nil {
ctx.ServerError("LoadProjects", err)
return
}
d.ProjectsData.SelectedProjectIDs = []int64{d.Issue.Project.ID}
columns, err := d.Issue.Project.GetColumns(ctx)
// Load column mappings for all projects
projectColumnMap, err := d.Issue.ProjectColumnMap(ctx)
if err != nil {
ctx.ServerError("GetProjectColumns", err)
ctx.ServerError("ProjectColumnMap", err)
return
}
d.ProjectsData.SelectedProjectColumns = columns
columnID, err := d.Issue.ProjectColumnID(ctx)
if err != nil {
ctx.ServerError("ProjectColumnID", err)
return
}
for _, col := range columns {
if col.ID == columnID {
d.ProjectsData.SelectedProjectColumn = col
break
// Build project cards for each project
d.ProjectsData.ProjectCards = make([]*issueSidebarProjectCardData, 0, len(d.Issue.Projects))
for _, project := range d.Issue.Projects {
columns, err := project.GetColumns(ctx)
if err != nil {
ctx.ServerError("GetProjectColumns", err)
return
}
var selectedColumn *project_model.Column
columnID := projectColumnMap[project.ID]
for _, col := range columns {
if col.ID == columnID {
selectedColumn = col
break
}
}
if selectedColumn == nil {
selectedColumn, err = project.MustDefaultColumn(ctx)
if err != nil {
ctx.ServerError("MustDefaultColumn", err)
return
}
}
d.ProjectsData.ProjectCards = append(d.ProjectsData.ProjectCards, &issueSidebarProjectCardData{
Project: project,
Columns: columns,
SelectedColumn: selectedColumn,
})
}
d.ProjectsData.SelectedProjectIDs = make([]int64, 0, len(d.ProjectsData.ProjectCards))
for _, card := range d.ProjectsData.ProjectCards {
d.ProjectsData.SelectedProjectIDs = append(d.ProjectsData.SelectedProjectIDs, card.Project.ID)
}
}
func (d *IssuePageMetaData) retrieveProjectsDataForIssueWriter(ctx *context.Context) {
if d.Issue != nil && d.Issue.Project != nil {
d.ProjectsData.SelectedProjectIDs = []int64{d.Issue.Project.ID}
func (d *IssuePageMetaData) retrieveProjectData(ctx *context.Context) {
if d.Issue == nil {
return
}
d.retrieveProjectCardsForExistingIssue(ctx)
}
func (d *IssuePageMetaData) SetSelectedProjectIDs(ids []int64) {
allProjects := map[int64]*project_model.Project{}
for _, p := range d.ProjectsData.OpenProjects {
allProjects[p.ID] = p
}
for _, p := range d.ProjectsData.ClosedProjects {
allProjects[p.ID] = p
}
for _, id := range ids {
if project, ok := allProjects[id]; ok {
d.ProjectsData.ProjectCards = append(d.ProjectsData.ProjectCards, &issueSidebarProjectCardData{Project: project})
}
}
d.ProjectsData.SelectedProjectIDs = ids
}
func (d *IssuePageMetaData) retrieveProjectsDataForIssueWriter(ctx *context.Context) {
d.ProjectsData.OpenProjects, d.ProjectsData.ClosedProjects = retrieveProjectsInternal(ctx, ctx.Repo.Repository)
}
@@ -467,6 +516,7 @@ func (d *IssuePageMetaData) retrieveLabelsData(ctx *context.Context) {
ctx.ServerError("GetLabelsByRepoID", err)
return
}
issues_model.SortLabelsForDisplay(labels)
labelsData.RepoLabels = labels
if repo.Owner.IsOrganization() {
@@ -474,6 +524,7 @@ func (d *IssuePageMetaData) retrieveLabelsData(ctx *context.Context) {
if err != nil {
return
}
issues_model.SortLabelsForDisplay(orgLabels)
labelsData.OrgLabels = orgLabels
}
labelsData.AllLabels = append(labelsData.AllLabels, labelsData.RepoLabels...)