migrate tea to urfave v3 (#760)

I tested this somewhat, but I haven't been using the cli before so I'm not sure if there are changes - there shouldn't be though.

Reviewed-on: https://gitea.com/gitea/tea/pulls/760
Reviewed-by: Lunny Xiao <xiaolunwen@gmail.com>
Co-authored-by: TheFox0x7 <thefox0x7@gmail.com>
Co-committed-by: TheFox0x7 <thefox0x7@gmail.com>
This commit is contained in:
TheFox0x7
2025-06-10 05:19:59 +00:00
committed by Lunny Xiao
parent 5420af1dfa
commit 0e54bae0c4
91 changed files with 686 additions and 608 deletions

View File

@ -4,9 +4,10 @@
package milestones
import (
"code.gitea.io/tea/cmd/flags"
"context"
"github.com/urfave/cli/v2"
"code.gitea.io/tea/cmd/flags"
"github.com/urfave/cli/v3"
)
// CmdMilestonesClose represents a sub command of milestones to close an milestone
@ -15,11 +16,11 @@ var CmdMilestonesClose = cli.Command{
Usage: "Change state of one or more milestones to 'closed'",
Description: `Change state of one or more milestones to 'closed'`,
ArgsUsage: "<milestone name> [<milestone name>...]",
Action: func(ctx *cli.Context) error {
if ctx.Bool("force") {
return deleteMilestone(ctx)
Action: func(ctx context.Context, cmd *cli.Command) error {
if cmd.Bool("force") {
return deleteMilestone(ctx, cmd)
}
return editMilestoneStatus(ctx, true)
return editMilestoneStatus(ctx, cmd, true)
},
Flags: append([]cli.Flag{
&cli.BoolFlag{

View File

@ -6,14 +6,15 @@ package milestones
import (
"time"
stdctx "context"
"code.gitea.io/sdk/gitea"
"code.gitea.io/tea/cmd/flags"
"code.gitea.io/tea/modules/context"
"code.gitea.io/tea/modules/interact"
"code.gitea.io/tea/modules/task"
"code.gitea.io/sdk/gitea"
"github.com/araddon/dateparse"
"github.com/urfave/cli/v2"
"github.com/urfave/cli/v3"
)
// CmdMilestonesCreate represents a sub command of milestones to create milestone
@ -48,7 +49,7 @@ var CmdMilestonesCreate = cli.Command{
}, flags.AllDefaultFlags...),
}
func runMilestonesCreate(cmd *cli.Context) error {
func runMilestonesCreate(_ stdctx.Context, cmd *cli.Command) error {
ctx := context.InitCommand(cmd)
date := ctx.String("deadline")

View File

@ -4,10 +4,12 @@
package milestones
import (
stdctx "context"
"code.gitea.io/tea/cmd/flags"
"code.gitea.io/tea/modules/context"
"github.com/urfave/cli/v2"
"github.com/urfave/cli/v3"
)
// CmdMilestonesDelete represents a sub command of milestones to delete an milestone
@ -21,7 +23,7 @@ var CmdMilestonesDelete = cli.Command{
Flags: flags.AllDefaultFlags,
}
func deleteMilestone(cmd *cli.Context) error {
func deleteMilestone(_ stdctx.Context, cmd *cli.Command) error {
ctx := context.InitCommand(cmd)
ctx.Ensure(context.CtxRequirement{RemoteRepo: true})
client := ctx.Login.Client()

View File

@ -6,13 +6,14 @@ package milestones
import (
"fmt"
stdctx "context"
"code.gitea.io/sdk/gitea"
"code.gitea.io/tea/cmd/flags"
"code.gitea.io/tea/modules/context"
"code.gitea.io/tea/modules/print"
"code.gitea.io/tea/modules/utils"
"code.gitea.io/sdk/gitea"
"github.com/urfave/cli/v2"
"github.com/urfave/cli/v3"
)
var msIssuesFieldsFlag = flags.FieldsFlag(print.IssueFields, []string{
@ -27,7 +28,7 @@ var CmdMilestonesIssues = cli.Command{
Description: "manage issue/pull of an milestone",
ArgsUsage: "<milestone name>",
Action: runMilestoneIssueList,
Subcommands: []*cli.Command{
Commands: []*cli.Command{
&CmdMilestoneAddIssue,
&CmdMilestoneRemoveIssue,
},
@ -69,7 +70,7 @@ var CmdMilestoneRemoveIssue = cli.Command{
Flags: flags.AllDefaultFlags,
}
func runMilestoneIssueList(cmd *cli.Context) error {
func runMilestoneIssueList(_ stdctx.Context, cmd *cli.Command) error {
ctx := context.InitCommand(cmd)
ctx.Ensure(context.CtxRequirement{RemoteRepo: true})
client := ctx.Login.Client()
@ -119,7 +120,7 @@ func runMilestoneIssueList(cmd *cli.Context) error {
return nil
}
func runMilestoneIssueAdd(cmd *cli.Context) error {
func runMilestoneIssueAdd(_ stdctx.Context, cmd *cli.Command) error {
ctx := context.InitCommand(cmd)
ctx.Ensure(context.CtxRequirement{RemoteRepo: true})
client := ctx.Login.Client()
@ -146,7 +147,7 @@ func runMilestoneIssueAdd(cmd *cli.Context) error {
return err
}
func runMilestoneIssueRemove(cmd *cli.Context) error {
func runMilestoneIssueRemove(_ stdctx.Context, cmd *cli.Command) error {
ctx := context.InitCommand(cmd)
ctx.Ensure(context.CtxRequirement{RemoteRepo: true})
client := ctx.Login.Client()

View File

@ -4,12 +4,14 @@
package milestones
import (
stdctx "context"
"code.gitea.io/tea/cmd/flags"
"code.gitea.io/tea/modules/context"
"code.gitea.io/tea/modules/print"
"code.gitea.io/sdk/gitea"
"github.com/urfave/cli/v2"
"github.com/urfave/cli/v3"
)
var fieldsFlag = flags.FieldsFlag(print.MilestoneFields, []string{
@ -37,7 +39,7 @@ var CmdMilestonesList = cli.Command{
}
// RunMilestonesList list milestones
func RunMilestonesList(cmd *cli.Context) error {
func RunMilestonesList(_ stdctx.Context, cmd *cli.Command) error {
ctx := context.InitCommand(cmd)
ctx.Ensure(context.CtxRequirement{RemoteRepo: true})

View File

@ -4,6 +4,7 @@
package milestones
import (
stdctx "context"
"fmt"
"code.gitea.io/tea/cmd/flags"
@ -11,7 +12,7 @@ import (
"code.gitea.io/tea/modules/print"
"code.gitea.io/sdk/gitea"
"github.com/urfave/cli/v2"
"github.com/urfave/cli/v3"
)
// CmdMilestonesReopen represents a sub command of milestones to open an milestone
@ -21,13 +22,13 @@ var CmdMilestonesReopen = cli.Command{
Usage: "Change state of one or more milestones to 'open'",
Description: `Change state of one or more milestones to 'open'`,
ArgsUsage: "<milestone name> [<milestone name> ...]",
Action: func(ctx *cli.Context) error {
return editMilestoneStatus(ctx, false)
Action: func(ctx stdctx.Context, cmd *cli.Command) error {
return editMilestoneStatus(ctx, cmd, false)
},
Flags: flags.AllDefaultFlags,
}
func editMilestoneStatus(cmd *cli.Context, close bool) error {
func editMilestoneStatus(_ stdctx.Context, cmd *cli.Command, close bool) error {
ctx := context.InitCommand(cmd)
ctx.Ensure(context.CtxRequirement{RemoteRepo: true})
if ctx.Args().Len() == 0 {