-
-
Notifications
You must be signed in to change notification settings - Fork 6.1k
Closed
Labels
Description
Description
Needs feedback
Can't seem to merge a pull request
When creating a simple pull request from the UI and then trying to "create merge commit"
gitea server errors out with below log
Possibly introduced by this commit 69f5ee9
gitea/modules/git/gitcmd/command.go
Line 473 in 03fce8f
panic("stdout and stderr field must be nil when using RunStdBytes") |
panics because c.opts.Stdout
and c.opts.Stderr
and not nil
gitea/modules/git/gitcmd/command.go
Line 471 in 03fce8f
if c.opts.Stdout != nil || c.opts.Stderr != nil { |
Debugger shows c.opts.Stdout
and c.opts.Stderr
are not nil and are initialized to
io.Writer(*strings.Builder) *{addr: *strings.Builder nil, buf: []uint8 len: 0, cap: 0, nil}

Gitea Version
main 03fce8f
Can you reproduce the bug on the Gitea demo site?
No
Log Gist
No response
Screenshots

logs:
2025/10/08 15:42:56 HTTPRequest [W] router: failed POST /gitea_admin/merge-me/pulls/1/merge for [::1]:57214, panic in 212.7ms @ repo/pull.go:1014(repo.MergePullRequest), err=stdout and stderr field must be nil when using RunStdBytes
2025/10/08 15:42:56 routers/common/errpage.go:25:RenderPanicErrorPage() [E] PANIC: stdout and stderr field must be nil when using RunStdBytes
/usr/local/go/src/runtime/panic.go:783 (0x10090eaff)
gopanic: fn()
/Users/heziaharon/Documents/repos/gitea/modules/web/routing/logger_manager.go:116 (0x1019792cb)
(*requestRecordsManager).handler-fm.(*requestRecordsManager).handler.func1.1: panic(localPanicErr)
/usr/local/go/src/runtime/panic.go:783 (0x10090eaff)
gopanic: fn()
/Users/heziaharon/Documents/repos/gitea/modules/git/gitcmd/command.go:473 (0x101139cf3)
(*Command).runStdBytes: panic("stdout and stderr field must be nil when using RunStdBytes")
/Users/heziaharon/Documents/repos/gitea/modules/git/gitcmd/command.go:461 (0x1011399cb)
(*Command).RunStdString: stdoutBytes, stderrBytes, runErr := c.WithParentCallerInfo().runStdBytes(ctx)
/Users/heziaharon/Documents/repos/gitea/services/pull/merge_prepare.go:76 (0x102048387)
createTemporaryRepoForMerge: trackingCommitID, _, err := mergeCtx.PrepareGitCmd(gitcmd.NewCommand("show-ref", "--hash").AddDynamicArguments(git.BranchPrefix + trackingBranch)).RunStdString(ctx)
/Users/heziaharon/Documents/repos/gitea/services/pull/merge.go:331 (0x102044047)
doMergeAndPush: mergeCtx, cancel, err := createTemporaryRepoForMerge(ctx, pr, doer, expectedHeadCommitID)
/Users/heziaharon/Documents/repos/gitea/services/pull/merge.go:262 (0x102043853)
Merge: _, err = doMergeAndPush(ctx, pr, doer, mergeStyle, expectedHeadCommitID, message, repo_module.PushTriggerPRMergeToBase)
/Users/heziaharon/Documents/repos/gitea/routers/web/repo/pull.go:1115 (0x1029938c3)
MergePullRequest: if err := pull_service.Merge(ctx, pr, ctx.Doer, ctx.Repo.GitRepo, repo_model.MergeStyle(form.Do), form.HeadCommitID, message, false); err != nil {
/usr/local/go/src/reflect/value.go:581 (0x10099508f)
Value.call: call(frametype, fn, stackArgs, uint32(frametype.Size()), uint32(abid.retOffset), uint32(frameSize), ®Args)
/usr/local/go/src/reflect/value.go:365 (0x100994563)
Value.Call: return v.call("Call", in)
/Users/heziaharon/Documents/repos/gitea/modules/web/handler.go:161 (0x101981467)
toHandlerProvider.func1.1: ret := fn.Call(argsIn)
/usr/local/go/src/net/http/server.go:2322 (0x100d72017)
HandlerFunc.ServeHTTP: f(w, r)
/usr/local/go/src/net/http/server.go:2322 (0x100d72017)
HandlerFunc.ServeHTTP: f(w, r)
/Users/heziaharon/Documents/repos/gitea/modules/web/handler.go:168 (0x1019814bb)
toHandlerProvider.func1.1: next.ServeHTTP(resp, req)
/usr/local/go/src/net/http/server.go:2322 (0x100d72017)
HandlerFunc.ServeHTTP: f(w, r)
/Users/heziaharon/Documents/repos/gitea/modules/web/handler.go:168 (0x1019814bb)
toHandlerProvider.func1.1: next.ServeHTTP(resp, req)
/usr/local/go/src/net/http/server.go:2322 (0x100d72017)
HandlerFunc.ServeHTTP: f(w, r)
/Users/heziaharon/Documents/repos/gitea/modules/web/handler.go:168 (0x1019814bb)
toHandlerProvider.func1.1: next.ServeHTTP(resp, req)
/usr/local/go/src/net/http/server.go:2322 (0x100d72017)
HandlerFunc.ServeHTTP: f(w, r)
/Users/heziaharon/Documents/repos/gitea/modules/web/handler.go:168 (0x1019814bb)
toHandlerProvider.func1.1: next.ServeHTTP(resp, req)
/usr/local/go/src/net/http/server.go:2322 (0x100d72017)
HandlerFunc.ServeHTTP: f(w, r)
/Users/heziaharon/Documents/repos/gitea/modules/web/handler.go:168 (0x1019814bb)
toHandlerProvider.func1.1: next.ServeHTTP(resp, req)
/usr/local/go/src/net/http/server.go:2322 (0x100d72017)
HandlerFunc.ServeHTTP: f(w, r)
/Users/heziaharon/Documents/repos/gitea/modules/web/handler.go:168 (0x1019814bb)
toHandlerProvider.func1.1: next.ServeHTTP(resp, req)
/usr/local/go/src/net/http/server.go:2322 (0x100d72017)
HandlerFunc.ServeHTTP: f(w, r)
/Users/heziaharon/go/pkg/mod/github.com/go-chi/chi/v5@v5.2.3/chain.go:31 (0x101979b8b)
(*ChainHandler).ServeHTTP: c.chain.ServeHTTP(w, r)
/Users/heziaharon/go/pkg/mod/github.com/go-chi/chi/v5@v5.2.3/mux.go:477 (0x10197c66b)
(*Mux).routeHTTP: h.ServeHTTP(w, r)
/usr/local/go/src/net/http/server.go:2322 (0x100d72017)
HandlerFunc.ServeHTTP: f(w, r)
/Users/heziaharon/Documents/repos/gitea/modules/web/handler.go:168 (0x1019814bb)
toHandlerProvider.func1.1: next.ServeHTTP(resp, req)
/usr/local/go/src/net/http/server.go:2322 (0x100d72017)
HandlerFunc.ServeHTTP: f(w, r)
/Users/heziaharon/Documents/repos/gitea/modules/web/handler.go:168 (0x1019814bb)
toHandlerProvider.func1.1: next.ServeHTTP(resp, req)
/usr/local/go/src/net/http/server.go:2322 (0x100d72017)
HandlerFunc.ServeHTTP: f(w, r)
/Users/heziaharon/go/pkg/mod/github.com/go-chi/chi/v5@v5.2.3/middleware/get_head.go:37 (0x1029176a7)
GetHead.func1: next.ServeHTTP(w, r)
/usr/local/go/src/net/http/server.go:2322 (0x100d72017)
HandlerFunc.ServeHTTP: f(w, r)
/Users/heziaharon/Documents/repos/gitea/modules/web/handler.go:125 (0x101981883)
toHandlerProvider.wrapHandlerProvider[...].func2.1: h.ServeHTTP(resp, req)
/usr/local/go/src/net/http/server.go:2322 (0x100d72017)
HandlerFunc.ServeHTTP: f(w, r)
/Users/heziaharon/Documents/repos/gitea/modules/web/handler.go:168 (0x1019814bb)
toHandlerProvider.func1.1: next.ServeHTTP(resp, req)
/usr/local/go/src/net/http/server.go:2322 (0x100d72017)
HandlerFunc.ServeHTTP: f(w, r)
/Users/heziaharon/Documents/repos/gitea/services/context/context.go:210 (0x101ed05b3)
Contexter.func1.1: next.ServeHTTP(ctx.Resp, ctx.Req)
/usr/local/go/src/net/http/server.go:2322 (0x100d72017)
HandlerFunc.ServeHTTP: f(w, r)
/Users/heziaharon/Documents/repos/gitea/modules/web/handler.go:125 (0x101981883)
toHandlerProvider.wrapHandlerProvider[...].func2.1: h.ServeHTTP(resp, req)
/usr/local/go/src/net/http/server.go:2322 (0x100d72017)
HandlerFunc.ServeHTTP: f(w, r)
/Users/heziaharon/go/pkg/mod/gitea.com/go-chi/session@v0.0.0-20250926004215-636cadd82e15/session.go:257 (0x10192bc0b)
Sessioner.func1.1: next.ServeHTTP(w, req)
/usr/local/go/src/net/http/server.go:2322 (0x100d72017)
HandlerFunc.ServeHTTP: f(w, r)
/Users/heziaharon/Documents/repos/gitea/modules/web/handler.go:125 (0x101981883)
toHandlerProvider.wrapHandlerProvider[...].func2.1: h.ServeHTTP(resp, req)
/usr/local/go/src/net/http/server.go:2322 (0x100d72017)
HandlerFunc.ServeHTTP: f(w, r)
/Users/heziaharon/go/pkg/mod/github.com/go-chi/chi/v5@v5.2.3/mux.go:73 (0x10197a663)
(*Mux).ServeHTTP: mx.handler.ServeHTTP(w, r)
/Users/heziaharon/go/pkg/mod/github.com/go-chi/chi/v5@v5.2.3/mux.go:321 (0x10197bc53)
(*Mux).Mount.func1: handler.ServeHTTP(w, r)
/usr/local/go/src/net/http/server.go:2322 (0x100d72017)
HandlerFunc.ServeHTTP: f(w, r)
/Users/heziaharon/go/pkg/mod/github.com/go-chi/chi/v5@v5.2.3/mux.go:477 (0x10197c66b)
(*Mux).routeHTTP: h.ServeHTTP(w, r)
/usr/local/go/src/net/http/server.go:2322 (0x100d72017)
HandlerFunc.ServeHTTP: f(w, r)
/Users/heziaharon/go/pkg/mod/github.com/go-chi/chi/v5@v5.2.3/mux.go:73 (0x10197a663)
(*Mux).ServeHTTP: mx.handler.ServeHTTP(w, r)
/Users/heziaharon/go/pkg/mod/github.com/go-chi/chi/v5@v5.2.3/mux.go:321 (0x10197bc53)
(*Mux).Mount.func1: handler.ServeHTTP(w, r)
/usr/local/go/src/net/http/server.go:2322 (0x100d72017)
HandlerFunc.ServeHTTP: f(w, r)
/Users/heziaharon/go/pkg/mod/github.com/go-chi/chi/v5@v5.2.3/mux.go:477 (0x10197c66b)
(*Mux).routeHTTP: h.ServeHTTP(w, r)
/usr/local/go/src/net/http/server.go:2322 (0x100d72017)
HandlerFunc.ServeHTTP: f(w, r)
/Users/heziaharon/Documents/repos/gitea/modules/web/routing/logger_manager.go:122 (0x101979187)
(*requestRecordsManager).handler-fm.(*requestRecordsManager).handler.func1: next.ServeHTTP(w, req)
/usr/local/go/src/net/http/server.go:2322 (0x100d72017)
HandlerFunc.ServeHTTP: f(w, r)
/Users/heziaharon/Documents/repos/gitea/modules/web/handler.go:125 (0x101981883)
toHandlerProvider.wrapHandlerProvider[...].func2.1: h.ServeHTTP(resp, req)
/usr/local/go/src/net/http/server.go:2322 (0x100d72017)
HandlerFunc.ServeHTTP: f(w, r)
/Users/heziaharon/go/pkg/mod/github.com/chi-middleware/proxy@v1.1.1/middleware.go:37 (0x10287523b)
ForwardedHeadersHandler.ForwardedHeaders.func1.1: h.ServeHTTP(w, r)
/usr/local/go/src/net/http/server.go:2322 (0x100d72017)
HandlerFunc.ServeHTTP: f(w, r)
/Users/heziaharon/Documents/repos/gitea/modules/web/handler.go:125 (0x101981883)
toHandlerProvider.wrapHandlerProvider[...].func2.1: h.ServeHTTP(resp, req)
/usr/local/go/src/net/http/server.go:2322 (0x100d72017)
HandlerFunc.ServeHTTP: f(w, r)
/Users/heziaharon/Documents/repos/gitea/routers/common/middleware.go:78 (0x1028774df)
ProtocolMiddlewares.RequestContextHandler.func2.1: next.ServeHTTP(respWriter, req)
/usr/local/go/src/net/http/server.go:2322 (0x100d72017)
HandlerFunc.ServeHTTP: f(w, r)
/Users/heziaharon/Documents/repos/gitea/modules/web/handler.go:125 (0x101981883)
toHandlerProvider.wrapHandlerProvider[...].func2.1: h.ServeHTTP(resp, req)
/usr/local/go/src/net/http/server.go:2322 (0x100d72017)
HandlerFunc.ServeHTTP: f(w, r)
/Users/heziaharon/Documents/repos/gitea/routers/common/middleware.go:93 (0x10287713b)
ProtocolMiddlewares.ChiRoutePathHandler.func1.1: next.ServeHTTP(resp, req)
/usr/local/go/src/net/http/server.go:2322 (0x100d72017)
HandlerFunc.ServeHTTP: f(w, r)
/Users/heziaharon/Documents/repos/gitea/modules/web/handler.go:125 (0x101981883)
toHandlerProvider.wrapHandlerProvider[...].func2.1: h.ServeHTTP(resp, req)
/usr/local/go/src/net/http/server.go:2322 (0x100d72017)
HandlerFunc.ServeHTTP: f(w, r)
/Users/heziaharon/go/pkg/mod/github.com/go-chi/chi/v5@v5.2.3/mux.go:90 (0x10197a623)
(*Mux).ServeHTTP: mx.handler.ServeHTTP(w, r)
/Users/heziaharon/Documents/repos/gitea/modules/web/router.go:243 (0x10198306b)
(*Router).normalizeRequestPath: next.ServeHTTP(resp, req)
/Users/heziaharon/Documents/repos/gitea/modules/web/router.go:181 (0x101982b6f)
(*Router).ServeHTTP: r.normalizeRequestPath(w, req, r.chiRouter)
/usr/local/go/src/net/http/server.go:3340 (0x100d8f1ff)
serverHandler.ServeHTTP: handler.ServeHTTP(rw, req)
/usr/local/go/src/net/http/server.go:2109 (0x100d70407)
(*conn).serve: serverHandler{c.server}.ServeHTTP(w, w.req)
/usr/local/go/src/runtime/asm_arm64.s:1268 (0x100917503)
goexit: MOVD R0, R0 // NOP
Git Version
2.39.5
Operating System
macos
How are you running Gitea?
Local setup make watch
Database
PostgreSQL