git: d6876fa0b302 - main - misc/crush: Update to 0.81.0

From: Hiroki Tagato <tagattie_at_FreeBSD.org>
Date: Thu, 02 Jul 2026 07:41:24 UTC
The branch main has been updated by tagattie:

URL: https://cgit.FreeBSD.org/ports/commit/?id=d6876fa0b302d139f9f783cc9fb00db366e10a8b

commit d6876fa0b302d139f9f783cc9fb00db366e10a8b
Author:     Hiroki Tagato <tagattie@FreeBSD.org>
AuthorDate: 2026-07-02 07:39:30 +0000
Commit:     Hiroki Tagato <tagattie@FreeBSD.org>
CommitDate: 2026-07-02 07:41:16 +0000

    misc/crush: Update to 0.81.0
    
    Changelog: https://github.com/charmbracelet/crush/releases/tag/v0.81.0
    
    Reported by:    GitHub (watch releases)
---
 misc/crush/Makefile                                |  5 +--
 misc/crush/distinfo                                | 10 ++---
 .../files/extra-patch-disable-command-blocking     | 50 +++++++++-------------
 3 files changed, 26 insertions(+), 39 deletions(-)

diff --git a/misc/crush/Makefile b/misc/crush/Makefile
index 09deedbcb2cf..ed431499b223 100644
--- a/misc/crush/Makefile
+++ b/misc/crush/Makefile
@@ -1,7 +1,6 @@
 PORTNAME=	crush
 DISTVERSIONPREFIX=	v
-DISTVERSION=	0.80.0
-PORTREVISION=	1
+DISTVERSION=	0.81.0
 CATEGORIES=	misc devel
 
 MAINTAINER=	tagattie@FreeBSD.org
@@ -18,8 +17,6 @@ USES=		go:1.26+,modules
 GO_MODULE=	github.com/charmbracelet/crush
 GO_LDFLAGS=	-w -X github.com/charmbracelet/crush/internal/version.Version=${DISTVERSION}
 
-PATCH_STRIP=	-p1
-
 PLIST_FILES=	bin/${PORTNAME}
 PORTDOCS=	README.md
 
diff --git a/misc/crush/distinfo b/misc/crush/distinfo
index 7aa44b511375..8ef2bcd6f379 100644
--- a/misc/crush/distinfo
+++ b/misc/crush/distinfo
@@ -1,5 +1,5 @@
-TIMESTAMP = 1782455827
-SHA256 (go/misc_crush/crush-v0.80.0/v0.80.0.mod) = 9432cf6b9124ee68cb6cdf2c0792d44ef6ac43cbf0a9f2ab74a909b43c280090
-SIZE (go/misc_crush/crush-v0.80.0/v0.80.0.mod) = 10574
-SHA256 (go/misc_crush/crush-v0.80.0/v0.80.0.zip) = ba47bcdcdaed486414c14a7ff044e78b77f5b3c3bbe3554bb2b8397a57689da7
-SIZE (go/misc_crush/crush-v0.80.0/v0.80.0.zip) = 2242336
+TIMESTAMP = 1782974253
+SHA256 (go/misc_crush/crush-v0.81.0/v0.81.0.mod) = 0e78633eca5405456c2047ce8dc51241dc9912bbbad9c2458675799b29040996
+SIZE (go/misc_crush/crush-v0.81.0/v0.81.0.mod) = 10624
+SHA256 (go/misc_crush/crush-v0.81.0/v0.81.0.zip) = 0238ad4f84149ca67d4dbc73be37c4ce9ff459bb944b70a0a5affce1c6ce48f8
+SIZE (go/misc_crush/crush-v0.81.0/v0.81.0.zip) = 2294639
diff --git a/misc/crush/files/extra-patch-disable-command-blocking b/misc/crush/files/extra-patch-disable-command-blocking
index 9b197f1648f0..400bcb76fafd 100644
--- a/misc/crush/files/extra-patch-disable-command-blocking
+++ b/misc/crush/files/extra-patch-disable-command-blocking
@@ -1,8 +1,6 @@
-diff --git a/internal/agent/common_test.go b/internal/agent/common_test.go
-index 8eb0f10..568d615 100644
---- a/internal/agent/common_test.go
-+++ b/internal/agent/common_test.go
-@@ -166,7 +166,7 @@ func coderAgent(r *vcr.Recorder, env fakeEnv, large, small fantasy.LanguageModel
+--- internal/agent/common_test.go.orig	1979-11-29 15:00:00 UTC
++++ internal/agent/common_test.go
+@@ -167,7 +167,7 @@ func coderAgent(r *vcr.Recorder, env fakeEnv, large, s
  	}
  
  	allTools := []fantasy.AgentTool{
@@ -11,11 +9,9 @@ index 8eb0f10..568d615 100644
  		tools.NewDownloadTool(env.permissions, env.workingDir, r.GetDefaultClient()),
  		tools.NewEditTool(nil, env.permissions, env.history, *env.filetracker, env.workingDir),
  		tools.NewMultiEditTool(nil, env.permissions, env.history, *env.filetracker, env.workingDir),
-diff --git a/internal/agent/coordinator.go b/internal/agent/coordinator.go
-index 86ca09e..c07dd45 100644
---- a/internal/agent/coordinator.go
-+++ b/internal/agent/coordinator.go
-@@ -605,7 +605,7 @@ func (c *coordinator) buildTools(ctx context.Context, agent config.Agent, isSubA
+--- internal/agent/coordinator.go.orig	1979-11-29 15:00:00 UTC
++++ internal/agent/coordinator.go
+@@ -647,7 +647,7 @@ func (c *coordinator) buildTools(ctx context.Context, 
  
  	allTools = append(
  		allTools,
@@ -24,11 +20,9 @@ index 86ca09e..c07dd45 100644
  		tools.NewCrushInfoTool(c.cfg, c.lspManager, c.allSkills, c.activeSkills, c.skillTracker),
  		tools.NewCrushLogsTool(logFile),
  		tools.NewJobOutputTool(),
-diff --git a/internal/agent/tools/bash.go b/internal/agent/tools/bash.go
-index 6b91c58..b95bfe1 100644
---- a/internal/agent/tools/bash.go
-+++ b/internal/agent/tools/bash.go
-@@ -142,8 +142,11 @@ var bannedCommands = []string{
+--- internal/agent/tools/bash.go.orig	1979-11-29 15:00:00 UTC
++++ internal/agent/tools/bash.go
+@@ -145,8 +145,11 @@ var bannedCommands = []string{
  	"ufw",
  }
  
@@ -41,7 +35,7 @@ index 6b91c58..b95bfe1 100644
  	var out bytes.Buffer
  	if err := bashDescriptionTpl.Execute(&out, bashDescriptionData{
  		BannedCommands:  bannedCommandsStr,
-@@ -158,7 +161,10 @@ func bashDescription(attribution *config.Attribution, modelID string) string {
+@@ -162,7 +165,10 @@ func bashDescription(attribution *config.Attribution, 
  	return out.String()
  }
  
@@ -53,7 +47,7 @@ index 6b91c58..b95bfe1 100644
  	return []shell.BlockFunc{
  		shell.CommandsBlocker(bannedCommands),
  
-@@ -190,10 +196,10 @@ func blockFuncs() []shell.BlockFunc {
+@@ -194,10 +200,10 @@ func blockFuncs() []shell.BlockFunc {
  	}
  }
  
@@ -66,7 +60,7 @@ index 6b91c58..b95bfe1 100644
  		func(ctx context.Context, params BashParams, call fantasy.ToolCall) (fantasy.ToolResponse, error) {
  			if params.Command == "" {
  				return fantasy.NewTextErrorResponse("missing command"), nil
-@@ -247,7 +253,7 @@ func NewBashTool(permissions permission.Service, workingDir string, attribution
+@@ -251,7 +257,7 @@ func NewBashTool(permissions permission.Service, worki
  				bgManager := shell.GetBackgroundShellManager()
  				bgManager.Cleanup()
  				// Use background context so it continues after tool returns
@@ -75,7 +69,7 @@ index 6b91c58..b95bfe1 100644
  				if err != nil {
  					return fantasy.ToolResponse{}, fmt.Errorf("error starting background shell: %w", err)
  				}
-@@ -302,7 +308,7 @@ func NewBashTool(permissions permission.Service, workingDir string, attribution
+@@ -306,7 +312,7 @@ func NewBashTool(permissions permission.Service, worki
  			// Start with detached context so it can survive if moved to background
  			bgManager := shell.GetBackgroundShellManager()
  			bgManager.Cleanup()
@@ -84,11 +78,9 @@ index 6b91c58..b95bfe1 100644
  			if err != nil {
  				return fantasy.ToolResponse{}, fmt.Errorf("error starting shell: %w", err)
  			}
-diff --git a/internal/agent/tools/bash_test.go b/internal/agent/tools/bash_test.go
-index 40169e8..42b7426 100644
---- a/internal/agent/tools/bash_test.go
-+++ b/internal/agent/tools/bash_test.go
-@@ -115,7 +115,7 @@ func (m *recordingPermissionService) SubscribeNotifications(ctx context.Context)
+--- internal/agent/tools/bash_test.go.orig	1979-11-29 15:00:00 UTC
++++ internal/agent/tools/bash_test.go
+@@ -117,7 +117,7 @@ func newBashToolForTest(workingDir string) fantasy.Age
  func newBashToolForTest(workingDir string) fantasy.AgentTool {
  	permissions := &mockBashPermissionService{Broker: pubsub.NewBroker[permission.PermissionRequest]()}
  	attribution := &config.Attribution{TrailerStyle: config.TrailerStyleNone}
@@ -97,7 +89,7 @@ index 40169e8..42b7426 100644
  }
  
  func newBashToolWithRecordingPerms(workingDir string, allow bool) (fantasy.AgentTool, *recordingPermissionService) {
-@@ -124,7 +124,7 @@ func newBashToolWithRecordingPerms(workingDir string, allow bool) (fantasy.Agent
+@@ -126,7 +126,7 @@ func newBashToolWithRecordingPerms(workingDir string, 
  		allow:  allow,
  	}
  	attribution := &config.Attribution{TrailerStyle: config.TrailerStyleNone}
@@ -106,11 +98,9 @@ index 40169e8..42b7426 100644
  }
  
  func TestBashTool_ChainedCommandsRequirePermission(t *testing.T) {
-diff --git a/internal/config/config.go b/internal/config/config.go
-index fc3bab3..4a7f732 100644
---- a/internal/config/config.go
-+++ b/internal/config/config.go
-@@ -265,6 +265,7 @@ type Options struct {
+--- internal/config/config.go.orig	1979-11-29 15:00:00 UTC
++++ internal/config/config.go
+@@ -281,6 +281,7 @@ type Options struct {
  	Debug                bool        `json:"debug,omitempty" jsonschema:"description=Enable debug logging,default=false"`
  	DebugLSP             bool        `json:"debug_lsp,omitempty" jsonschema:"description=Enable debug logging for LSP servers,default=false"`
  	DisableAutoSummarize bool        `json:"disable_auto_summarize,omitempty" jsonschema:"description=Disable automatic conversation summarization,default=false"`