diff --git a/0001-Strip-non-Linux-deps-and-use-system-libraries.patch b/0001-Strip-non-Linux-deps-and-use-system-libraries.patch index b320e91..3c2cde6 100644 --- a/0001-Strip-non-Linux-deps-and-use-system-libraries.patch +++ b/0001-Strip-non-Linux-deps-and-use-system-libraries.patch @@ -1,17 +1,17 @@ -From 50bf2e0a81cf7aa02f5bb4e2a5a1fc7a3521a8e4 Mon Sep 17 00:00:00 2001 -From: Sam Doran -Date: Tue, 23 Jun 2026 10:42:47 -0400 +From bdc2c3cd8a789d9a5b486d638878b2b409eacb38 Mon Sep 17 00:00:00 2001 +From: thepetk +Date: Tue, 21 Jul 2026 15:30:40 +0100 Subject: [PATCH] Strip non-Linux deps and use system libraries --- - Cargo.toml | 9 ++------- - crates/goose-cli/Cargo.toml | 4 ---- - crates/goose-server/Cargo.toml | 3 --- - crates/goose/Cargo.toml | 13 ++----------- - 4 files changed, 3 insertions(+), 26 deletions(-) + Cargo.toml | 16 ++-------------- + crates/goose-cli/Cargo.toml | 5 ----- + crates/goose-server/Cargo.toml | 4 ---- + crates/goose/Cargo.toml | 15 --------------- + 4 files changed, 2 insertions(+), 38 deletions(-) diff --git a/Cargo.toml b/Cargo.toml -index e69de25..f5d7fb1 100644 +index d0022e7..99e52aa 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,8 +1,6 @@ @@ -22,7 +22,7 @@ index e69de25..f5d7fb1 100644 - "vendor/v8", ] resolver = "2" - + @@ -44,7 +42,7 @@ http = { version = "1.1", default-features = false, features = ["std"] } ignore = { version = "0.4.12", default-features = false } include_dir = { version = "0.7", default-features = false } @@ -31,7 +31,7 @@ index e69de25..f5d7fb1 100644 +keyring = { version = "3.6.3", default-features = false } lru = { version = "0.18", default-features = false } once_cell = { version = "1.21.3", default-features = false, features = ["std"] } - rand = { version = "0.8.5", default-features = false, features = ["std"] } + rand = "0.10.1" @@ -72,7 +70,7 @@ utoipa = { version = "4.2", default-features = false } uuid = { version = "1.23", default-features = false, features = ["v4", "std"] } webbrowser = { version = "1", default-features = false } @@ -41,21 +41,30 @@ index e69de25..f5d7fb1 100644 wiremock = { version = "0.6", default-features = false } zip = { version = "8", default-features = false, features = ["deflate"] } serial_test = { version = "3", default-features = false } -@@ -110,6 +108,3 @@ llama-cpp-sys-2 = { version = "=0.1.146", default-features = false } +@@ -110,15 +108,5 @@ llama-cpp-sys-2 = { version = "=0.1.146", default-features = false } icu_calendar = { version = "=2.1.1", default-features = false } icu_locale = { version = "=2.1.1", default-features = false } - + -[patch.crates-io] -v8 = { path = "vendor/v8" } -cudaforge = { git = "https://github.com/jbg/cudaforge", rev = "e7c1967340e40673db98dc9e17da0f04834a456f" } +- +-# Dependencies don't need debug info. You rarely step-debug into third-party +-# crates, but their DWARF dominates `target/debug` — roughly 50-70% of each +-# dependency rlib in this workspace is debug info. Dropping it for dependencies +-# only shrinks the debug build substantially and speeds linking. The "*" spec +-# matches all dependencies but NOT workspace members, so first-party crates keep +-# full debug info and stay fully debuggable; release builds are unaffected. + [profile.dev.package."*"] + debug = false diff --git a/crates/goose-cli/Cargo.toml b/crates/goose-cli/Cargo.toml -index 2f33e21..9290c5c 100644 +index e50ee6d..aaece4e 100644 --- a/crates/goose-cli/Cargo.toml +++ b/crates/goose-cli/Cargo.toml -@@ -66,10 +66,6 @@ sigstore-verify = { version = "0.8", default-features = false, optional = true } +@@ -66,10 +66,6 @@ sigstore-verify = { version = "0.9", default-features = false, optional = true } axum.workspace = true clap_complete_nushell = { version = "4", default-features = false } - + -[target.'cfg(target_os = "windows")'.dependencies] -anstream = { version = "1", default-features = false, features = ["wincon"] } -winapi = { workspace = true } @@ -63,14 +72,28 @@ index 2f33e21..9290c5c 100644 [features] default = [ "code-mode", +@@ -89,5 +85,4 @@ aws-providers = ["goose/aws-providers"] + cuda = ["goose/cuda", "local-inference"] + vulkan = ["goose/vulkan", "local-inference"] +-mlx = ["goose/mlx", "local-inference"] + telemetry = ["goose/telemetry"] + nostr = ["goose/nostr"] diff --git a/crates/goose-server/Cargo.toml b/crates/goose-server/Cargo.toml -index add298a..0fe99a5 100644 +index dd43047..20ce107 100644 --- a/crates/goose-server/Cargo.toml +++ b/crates/goose-server/Cargo.toml -@@ -91,9 +91,6 @@ aws-lc-rs = { version = "1.17", default-features = false, optional = true } +@@ -27,7 +27,6 @@ local-inference = ["goose/local-inference"] + aws-providers = ["goose/aws-providers"] + cuda = ["goose/cuda", "local-inference"] + vulkan = ["goose/vulkan", "local-inference"] +-mlx = ["goose/mlx", "local-inference"] + telemetry = ["goose/telemetry"] + nostr = ["goose/nostr"] + otel = ["goose/otel"] +@@ -94,9 +93,6 @@ aws-lc-rs = { version = "1.17", default-features = false, optional = true } openssl = { version = "0.10.66", default-features = false, optional = true } pem = { version = "3.0.2", default-features = false, features = ["std"] } - + -[target.'cfg(windows)'.dependencies] -winreg = { version = "0.56", default-features = false } - @@ -78,22 +101,31 @@ index add298a..0fe99a5 100644 name = "goosed" path = "src/main.rs" diff --git a/crates/goose/Cargo.toml b/crates/goose/Cargo.toml -index 47f172b..1ceee51 100644 +index 9dc486e..87f5a5c 100644 --- a/crates/goose/Cargo.toml +++ b/crates/goose/Cargo.toml -@@ -130,7 +130,7 @@ tokio-cron-scheduler = { version = "0.15", default-features = false } - urlencoding = { workspace = true } - v_htmlescape = { version = "0.17", default-features = false, features = ["std"] } - sqlx = { version = "0.8.5", default-features = false, features = [ -- "sqlite", -+ "sqlite-unbundled", - "chrono", - "json", - "macros", -@@ -218,17 +218,6 @@ image = { version = "0.24.9", default-features = false, features = ["png", "jpeg +@@ -41,7 +41,6 @@ aws-providers = [ + ] + cuda = ["local-inference", "candle-core/cuda", "candle-nn/cuda", "llama-cpp-2/cuda"] + vulkan = ["local-inference", "llama-cpp-2/vulkan"] +-mlx = ["local-inference", "dep:mlx-rs", "dep:mlx-lm", "dep:mlx-lm-utils"] + rustls-tls = [ + "dep:rustls", + "reqwest/rustls", +@@ -204,9 +203,6 @@ nostr = { version = "0.44", default-features = false, features = ["nip44", "std" + nostr-sdk = { version = "0.44", default-features = false, features = ["nip44"], optional = true } + rustls = { workspace = true, optional = true } + hf-hub = { version = "1.0.0-rc.1", default-features = false, optional = true } +-mlx-rs = { version = "0.25.3", default-features = false, features = ["accelerate", "metal", "safetensors"], optional = true } +-mlx-lm = { git = "https://github.com/jh-block/mlx-lm", optional = true } +-mlx-lm-utils = { git = "https://github.com/jh-block/mlx-lm", optional = true } + + pctx_code_mode = { version = "0.3", default-features = false, optional = true } + +@@ -220,17 +216,6 @@ image = { version = "0.24.9", default-features = false, features = ["png", "jpe subtle = { version = "2.5", default-features = false, features = ["std"] } gethostname = "1.1.0" - + -[target.'cfg(target_os = "windows")'.dependencies] -winapi = { workspace = true } -keyring = { workspace = true, features = ["windows-native"], optional = true } @@ -108,6 +140,6 @@ index 47f172b..1ceee51 100644 [target.'cfg(target_os = "linux")'.dependencies] keyring = { workspace = true, features = ["sync-secret-service"], optional = true } libc = { version = "0.2.182", default-features = false, features = ["std"] } --- -2.54.0 +-- +2.43.0 diff --git a/0003-Downgrade-pkcs8-to-0.10.2-for-native-tls-compat.patch b/0003-Downgrade-pkcs8-to-0.10.2-for-native-tls-compat.patch index 8e6068f..25ff930 100644 --- a/0003-Downgrade-pkcs8-to-0.10.2-for-native-tls-compat.patch +++ b/0003-Downgrade-pkcs8-to-0.10.2-for-native-tls-compat.patch @@ -1,25 +1,25 @@ -From 73f80f1b0bcac2bf94db0126f3115ad8b8e8c2b9 Mon Sep 17 00:00:00 2001 -From: Sam Doran -Date: Wed, 24 Jun 2026 15:17:32 -0400 +From 1a5f6a243eba2238dc64edd11021da9c11af6b3a Mon Sep 17 00:00:00 2001 +From: thepetk +Date: Tue, 21 Jul 2026 16:20:50 +0100 Subject: [PATCH] Downgrade pkcs8 to 0.10.2 for native-tls compatibility --- - crates/goose/Cargo.toml | 2 +- + crates/goose-providers/Cargo.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -diff --git a/crates/goose/Cargo.toml b/crates/goose/Cargo.toml -index 47f172b..04da822 100644 ---- a/crates/goose/Cargo.toml -+++ b/crates/goose/Cargo.toml -@@ -195,7 +195,7 @@ pastey = { version = "0.2", default-features = false } - shell-words = { workspace = true } +diff --git a/crates/goose-providers/Cargo.toml b/crates/goose-providers/Cargo.toml +index 7fd0180..19a60de 100644 +--- a/crates/goose-providers/Cargo.toml ++++ b/crates/goose-providers/Cargo.toml +@@ -52,7 +52,7 @@ rand = { workspace = true } + url = { workspace = true } pem = { version = "3.0.2", default-features = false, features = ["std"], optional = true } pkcs1 = { version = "0.7.5", default-features = false, features = ["pkcs8", "std"], optional = true } -pkcs8 = { version = "0.11.0", default-features = false, features = ["alloc", "std"], optional = true } +pkcs8 = { version = "0.10.2", default-features = false, features = ["alloc", "std"], optional = true } sec1 = { version = "0.7", default-features = false, features = ["der", "pkcs8", "std"], optional = true } - goose-acp-macros = { path = "../goose-acp-macros", default-features = false } - tower-http = { workspace = true, features = ["cors"] } + + [dev-dependencies] -- -2.54.0 +2.43.0 diff --git a/0004-aws-lc-rs-feature-flag.patch b/0004-aws-lc-rs-feature-flag.patch index 179e4fd..dba53fa 100644 --- a/0004-aws-lc-rs-feature-flag.patch +++ b/0004-aws-lc-rs-feature-flag.patch @@ -1,8 +1,18 @@ +From 632d0806d7d20a02cc8d82caeeb623ab1527976a Mon Sep 17 00:00:00 2001 +From: thepetk +Date: Tue, 21 Jul 2026 16:27:08 +0100 +Subject: [PATCH] aws-lc-rs feature flag + +--- + Cargo.lock | 2 ++ + crates/goose-server/Cargo.toml | 6 +++++- + 2 files changed, 7 insertions(+), 1 deletion(-) + diff --git a/Cargo.lock b/Cargo.lock -index bb1d3e7108..6f7d4c59ea 100644 +index 122aadd..df19383 100644 --- a/Cargo.lock +++ b/Cargo.lock -@@ -8156,6 +8156,7 @@ checksum = "57f6d249aad744e274e682777a50283a225a32705394ee6d5fcc01efa25e4055" +@@ -8716,6 +8716,7 @@ checksum = "57f6d249aad744e274e682777a50283a225a32705394ee6d5fcc01efa25e4055" dependencies = [ "aws-lc-rs", "pem", @@ -10,7 +20,7 @@ index bb1d3e7108..6f7d4c59ea 100644 "rustls-pki-types", "time", "x509-parser", -@@ -12938,6 +12939,7 @@ dependencies = [ +@@ -13766,6 +13767,7 @@ dependencies = [ "lazy_static", "nom 7.1.3", "oid-registry", @@ -19,18 +29,18 @@ index bb1d3e7108..6f7d4c59ea 100644 "thiserror 2.0.18", "time", diff --git a/crates/goose-server/Cargo.toml b/crates/goose-server/Cargo.toml -index add298a07d..3de662a50e 100644 +index c8127c3..a02e338 100644 --- a/crates/goose-server/Cargo.toml +++ b/crates/goose-server/Cargo.toml -@@ -38,6 +38,7 @@ rustls-tls = [ +@@ -35,6 +35,7 @@ rustls-tls = [ "axum-server/tls-rustls", "dep:rustls", "dep:aws-lc-rs", + "rcgen/aws_lc_rs", "goose/rustls-tls", "goose-mcp/rustls-tls", - ] -@@ -45,6 +46,9 @@ native-tls = [ + "goose-providers/rustls-tls", +@@ -43,6 +44,9 @@ native-tls = [ "reqwest/native-tls", "tokio-tungstenite/native-tls", "axum-server/tls-openssl", @@ -40,7 +50,7 @@ index add298a07d..3de662a50e 100644 "dep:openssl", "goose/native-tls", "goose-mcp/native-tls", -@@ -85,7 +89,7 @@ socket2 = { version = "0.6", default-features = false } +@@ -84,7 +88,7 @@ socket2 = { version = "0.6", default-features = false } fs2 = { workspace = true } rustls = { workspace = true, optional = true } uuid = { workspace = true } @@ -49,3 +59,6 @@ index add298a07d..3de662a50e 100644 axum-server = { version = "0.8", default-features = false } aws-lc-rs = { version = "1.17", default-features = false, optional = true } openssl = { version = "0.10.66", default-features = false, optional = true } +-- +2.43.0 + diff --git a/0020-Fix-sql-statement-from-session-manager.patch b/0020-Fix-sql-statement-from-session-manager.patch index c80af5e..49bff41 100644 --- a/0020-Fix-sql-statement-from-session-manager.patch +++ b/0020-Fix-sql-statement-from-session-manager.patch @@ -1,8 +1,17 @@ +From 082f1150ade989fcb28dcf241485e5c4e14b921f Mon Sep 17 00:00:00 2001 +From: thepetk +Date: Tue, 21 Jul 2026 16:28:27 +0100 +Subject: [PATCH] Fix SQL statement from session manager + +--- + crates/goose/src/session/session_manager.rs | 15 +++++++++++---- + 1 file changed, 11 insertions(+), 4 deletions(-) + diff --git a/crates/goose/src/session/session_manager.rs b/crates/goose/src/session/session_manager.rs -index 5c6559b..369d97a 100644 +index 1abdf14..312b656 100644 --- a/crates/goose/src/session/session_manager.rs +++ b/crates/goose/src/session/session_manager.rs -@@ -1084,7 +1084,7 @@ impl SessionStorage { +@@ -1289,7 +1289,7 @@ impl SessionStorage { let mut tx = pool.begin_with("BEGIN IMMEDIATE").await?; let today = chrono::Utc::now().format("%Y%m%d").to_string(); @@ -11,7 +20,7 @@ index 5c6559b..369d97a 100644 r#" INSERT INTO sessions (id, name, user_set_name, session_type, working_dir, extension_data, goose_mode) VALUES ( -@@ -1100,8 +1100,7 @@ impl SessionStorage { +@@ -1305,8 +1305,7 @@ impl SessionStorage { '{}', ? ) @@ -21,7 +30,7 @@ index 5c6559b..369d97a 100644 ) .bind(&today) .bind(&today) -@@ -1109,9 +1108,17 @@ impl SessionStorage { +@@ -1314,9 +1313,17 @@ impl SessionStorage { .bind(session_type.to_string()) .bind(&*working_dir.to_string_lossy()) .bind(goose_mode.to_string()) @@ -40,3 +49,6 @@ index 5c6559b..369d97a 100644 tx.commit().await?; #[cfg(feature = "telemetry")] crate::posthog::emit_session_started(); +-- +2.43.0 + diff --git a/0021-Update-snapshot-test-without-codemode-instructions.patch b/0021-Update-snapshot-test-without-codemode-instructions.patch index 0ceb21b..5bc4955 100644 --- a/0021-Update-snapshot-test-without-codemode-instructions.patch +++ b/0021-Update-snapshot-test-without-codemode-instructions.patch @@ -1,3 +1,16 @@ +From d43330014d7fe639874f2a450e7fbec8195aca51 Mon Sep 17 00:00:00 2001 +From: thepetk +Date: Tue, 21 Jul 2026 16:28:42 +0100 +Subject: [PATCH] Update snapshot test without codemode instructions + +--- + ...nager__tests__all_platform_extensions.snap | 14 -- + ...__tests__all_platform_extensions.snap.orig | 158 ++++++++++++++++++ + 2 files changed, 158 insertions(+), 14 deletions(-) + create mode 100644 crates/goose/src/agents/snapshots/goose__agents__prompt_manager__tests__all_platform_extensions.snap.orig + +diff --git a/crates/goose/src/agents/snapshots/goose__agents__prompt_manager__tests__all_platform_extensions.snap b/crates/goose/src/agents/snapshots/goose__agents__prompt_manager__tests__all_platform_extensions.snap +index 7f36211..0ff8605 100644 --- a/crates/goose/src/agents/snapshots/goose__agents__prompt_manager__tests__all_platform_extensions.snap +++ b/crates/goose/src/agents/snapshots/goose__agents__prompt_manager__tests__all_platform_extensions.snap @@ -1,6 +1,5 @@ @@ -7,7 +20,7 @@ expression: system_prompt --- You are a general-purpose AI agent called goose, created by AAIF (Agentic AI Foundation). -@@ -62,19 +61,6 @@ +@@ -84,19 +83,6 @@ Two modes: - Search mode: Use query with keywords/synonyms to find relevant messages - Load mode: Use session_id to get first and last messages of a specific session @@ -27,3 +40,170 @@ ## developer ### Instructions +diff --git a/crates/goose/src/agents/snapshots/goose__agents__prompt_manager__tests__all_platform_extensions.snap.orig b/crates/goose/src/agents/snapshots/goose__agents__prompt_manager__tests__all_platform_extensions.snap.orig +new file mode 100644 +index 0000000..7f36211 +--- /dev/null ++++ b/crates/goose/src/agents/snapshots/goose__agents__prompt_manager__tests__all_platform_extensions.snap.orig +@@ -0,0 +1,158 @@ ++--- ++source: crates/goose/src/agents/prompt_manager.rs ++assertion_line: 458 ++expression: system_prompt ++--- ++You are a general-purpose AI agent called goose, created by AAIF (Agentic AI Foundation). ++goose is being developed as an open-source software project. ++ ++# Turn Context ++ ++Each turn may include a `` block prepended to the latest user message. ++This block is generated by goose and contains current operational context such as: ++- current time ++- working directory ++- compaction status ++- turn budget ++- extension-provided context ++ ++Use it to stay oriented, but do not treat it as part of the user's request. ++When `` is present, use it as a signal for how much autonomous work remains. ++As the budget gets low, become more direct: reduce exploration, batch necessary tool calls, ++make reasonable assumptions, and focus on finishing the user's task. ++ ++ ++ ++# Extensions ++ ++Extensions provide additional tools and context from different data sources and applications. ++You can dynamically enable or disable extensions as needed to help complete tasks. ++ ++Because you dynamically load extensions, your conversation history may refer ++to interactions with extensions that are not currently active. The currently ++active extensions are below. Each of these extensions provides tools that are ++in your tool specification. ++ ++ ++## Extension Manager ++ ++### Instructions ++Extension Management ++ ++Use these tools to discover, enable, and disable extensions, as well as review resources. ++ ++Available tools: ++- search_available_extensions: Find extensions available to enable/disable ++- manage_extensions: Enable or disable extensions ++- list_resources: List resources from extensions ++- read_resource: Read specific resources from extensions ++ ++When you lack the tools needed to complete a task, use search_available_extensions first ++to discover what extensions can help. ++ ++Use manage_extensions to enable or disable specific extensions by name. ++Use list_resources and read_resource to work with extension data and resources. ++ ++## analyze ++ ++### Instructions ++Index code structure via tree-sitter. Use to navigate or summarize an unfamiliar ++and large codebase. Returns one of three views: ++ ++ 1) Directory path → file tree with LOC, function, and class counts ++ (depth-limited). ++ 2) File path → list of functions (with signatures), classes, imports, ++ and call counts. Functions called >3x are marked •N. ++ 3) Any path + `focus` → incoming/outgoing call graph for a symbol ++ (case-sensitive). ++ ++For large codebases, delegate analysis to a subagent and retain only the summary. ++ ++## apps ++ ++apps supports resources. ++### Instructions ++Use this extension to create, manage, and iterate on custom HTML/CSS/JavaScript apps. ++## chatrecall ++ ++### Instructions ++Chat Recall ++ ++Search past conversations and load session summaries when the user expects some memory or context. ++ ++Two modes: ++- Search mode: Use query with keywords/synonyms to find relevant messages ++- Load mode: Use session_id to get first and last messages of a specific session ++ ++## code_execution ++ ++### Instructions ++General: ++ - BATCH MULTIPLE TOOL CALLS INTO ONE `execute_typescript` CALL. ++ - These tools exists to reduce round-trips. When a task requires multiple tool calls: ++ - WRONG: Multiple `execute_typescript` calls, each with one tool ++ - RIGHT: One `execute_typescript` call with a script that calls all needed tools ++ - Only `return` and `console.log` data you need, tools could have very large responses. ++ - IMPORTANT: All tool calls are ASYNC. Use await for each call. ++WORKFLOW: ++ 1. Use the `list_functions` and `get_function_details` tools to discover tools signatures and input/output types. ++ 2. Write ONE script that calls ALL tools needed for the task and execute that script with `execute_typescript`, no need to import anything, all the namespaces returned by `list_functions` and `get_function_details` will be available globally. ++## developer ++ ++### Instructions ++Use the developer extension to build software and operate a terminal. ++ ++Make sure to use the tools *efficiently* - reading all the content you need in as few ++iterations as possible and then making the requested edits or running commands. You are ++responsible for managing your context window, and to minimize unnecessary turns which ++cost the user money. ++ ++For editing software, prefer the flow of using tree to understand the codebase structure ++and file sizes. When you need to search, prefer rg which correctly respects gitignored ++content. Then use cat or sed to gather the context you need, always reading before editing. ++Use write and edit to efficiently make changes. Test and verify as appropriate. ++ ++When running Python scripts or commands, always use `python3` instead of `python`. ++ ++## orchestrator ++ ++### Instructions ++Manage agent sessions: list, view, start, send messages, and interrupt agents. ++## skills ++ ++### Instructions ++ ++ ++You have these skills at your disposal, when it is clear they can help you solve a problem or you are asked to use them: ++• goose-doc-guide - Reference goose documentation to create, configure, or explain goose-specific features like recipes, extensions, sessions, and providers. You MUST fetch relevant goose docs before answering. You MUST NOT rely on training data or assumptions for any goose-specific fields, values, names, syntax, or commands. ++## summarize ++ ++ ++## summon ++ ++ ++## todo ++ ++### Instructions ++Your todo content is automatically available in your context. ++ ++Workflow: ++- Start: write initial checklist ++- During: update progress ++- End: verify all complete ++ ++Template: ++- [x] Requirement 1 ++- [ ] Task ++ - [ ] Sub-task ++- [ ] Requirement 2 ++- [ ] Another task ++ ++## tom ++ ++ ++ ++ ++# Response Guidelines ++ ++Use Markdown formatting for all responses. +-- +2.43.0 + diff --git a/0100-Downstream-only-never-use-pre-generated-object-files.patch b/0100-Downstream-only-never-use-pre-generated-object-files.patch index c19faaf..6334601 100644 --- a/0100-Downstream-only-never-use-pre-generated-object-files.patch +++ b/0100-Downstream-only-never-use-pre-generated-object-files.patch @@ -1,6 +1,17 @@ +From aa5da3de5ec4eee88d79019c9dde075bfdc1beb8 Mon Sep 17 00:00:00 2001 +From: thepetk +Date: Tue, 21 Jul 2026 16:49:41 +0100 +Subject: [PATCH] Downstream-only: never use pre-generated object files + +--- + vendor/ring-0.17.14/build.rs | 33 +++++++-------------------------- + 1 file changed, 7 insertions(+), 26 deletions(-) + +diff --git a/vendor/ring-0.17.14/build.rs b/vendor/ring-0.17.14/build.rs +index 9843ad8..46cf19d 100644 --- a/vendor/ring-0.17.14/build.rs +++ b/vendor/ring-0.17.14/build.rs -@@ -121,8 +121,6 @@ +@@ -122,8 +122,6 @@ const SHA512_ARMV8: &str = "crypto/fipsmodule/sha/asm/sha512-armv8.pl"; const RING_TEST_SRCS: &[&str] = &[("crypto/constant_time_test.c")]; @@ -9,7 +20,7 @@ fn cpp_flags(compiler: &cc::Tool) -> &'static [&'static str] { if !compiler.is_like_msvc() { static NON_MSVC_FLAGS: &[&str] = &[ -@@ -287,16 +285,7 @@ +@@ -288,16 +286,7 @@ fn main() { &core_name_and_version ); @@ -27,7 +38,7 @@ } fn ring_build_rs_main(c_root_dir: &Path, core_name_and_version: &str) { -@@ -344,9 +333,12 @@ +@@ -345,9 +334,12 @@ fn ring_build_rs_main(c_root_dir: &Path, core_name_and_version: &str) { // If `.git` doesn't exist then assume that this is a packaged build where // we want to optimize for minimizing the build tools required: No Perl, // no nasm, etc. @@ -43,7 +54,7 @@ generate_sources_and_preassemble( &out_dir, asm_target.into_iter(), -@@ -367,17 +359,6 @@ +@@ -368,17 +360,6 @@ fn ring_build_rs_main(c_root_dir: &Path, core_name_and_version: &str) { emit_rerun_if_changed() } @@ -61,3 +72,6 @@ fn generate_sources_and_preassemble<'a>( out_dir: &Path, asm_targets: impl Iterator, +-- +2.43.0 + diff --git a/changelog b/changelog index 04db43b..89983d2 100644 --- a/changelog +++ b/changelog @@ -1,3 +1,59 @@ +* Thu Jun 25 2026 thepetk - 1.39.0-1 +- Update to version 1.39.0 +- /status slash command in CLI for session inspection +- ACP method for managing recipes and session extensions +- Typed request/response for add/get session extensions in ACP +- Load session using ACP +- Elicitation method for ACP with improvements +- Elicitation decline and cancel actions propagation +- Recipe handling in new_session +- Use ACP to manage global config and session extensions +- Change working directory using ACP +- ACP cancel race condition fix +- Load global hints from ~/.agents/AGENTS.md +- Azure Entra ID bearer token auth via AZURE_OPENAI_AD_TOKEN +- Track cache tokens for accurate cost reporting +- Quarterly option for scheduler +- Option to disable automatic update downloads +- Accept string values for GOOSE_CONTEXT_LIMIT +- EmpirioLabs as a declarative OpenAI-compatible provider +- OrcaRouter as a declarative OpenAI-compatible provider +- Together AI declarative provider +- Add option for overriding API URL for Moonshot provider +- MCP extensions support in open plugins +- Peek mode for async background tasks in summon +- Context, working_dir, and metadata parameters for summon delegate tasks +- Move OpenAI provider and API client into goose-providers crate +- Delete embeddings support (unused) +- Accept JSON-encoded string for autovisualiser data parameter +- Send User-Agent on URL image fetches in developer/read_image +- Allow unlisted models in search +- Do not pass temperature to ChatGPT Codex provider +- Sanitize extension environment maps +- Refresh provider when session working directory changes +- Use refreshed gcloud token after reauth (retry Vertex AI on 401/403) +- Start a turn when /goal or /grind is set +- Dedupe duplicate tool-call ids within a turn +- Resolve bundled extensions from discovery +- Custom OpenAI provider dropping port when URL scheme is omitted +- Clear rejected OAuth credentials after refresh +- Keep extended thinking within the Anthropic output cap +- Preserve custom API path in OpenAI base_url derivation +- Repair PATH for plugin hook commands +- Fall back to default provider when resuming session with unavailable provider +- Read meta.n_ctx from /v1/models to fix context limit for local OpenAI servers +- Show resolved skill supporting file paths +- Record OpenAI-native cached_tokens in usage metering +- Detect image paths with spaces +- Ensure tool request timestamp precedes tool response timestamp +- Inherit login-shell PATH in spawned subagents +- Skip non-recipe project config files in summon +- Evict stale completed tasks to prevent unbounded memory growth in summon +- Warn on unmatched extension names in summon delegate +- Make context exceeded checker more precise +- Include agentInfo in ACP initialize response +- Check for responses API support in Databricks + * Wed Jun 17 2026 Sam Doran - 1.38.0-1 - Update to version 1.38.0 - Canonical thinking modes across providers diff --git a/goose.spec b/goose.spec index d7077b9..9c12430 100644 --- a/goose.spec +++ b/goose.spec @@ -32,7 +32,7 @@ %global downstream_features native-tls,otel,telemetry,system-keyring,disable-update Name: goose -Version: 1.38.0 +Version: 1.39.0 Release: %autorelease Summary: Extensible AI agent client URL: https://github.com/block/goose @@ -139,8 +139,8 @@ Conflicts: golang-github-pressly-goose # - https://lists.fedoraproject.org/archives/list/legal@lists.fedoraproject.org/thread/JDE6YNL42ZKVA5ZF4PEUGI5SV2PCSHIR/ # # For convenience, the items discussed in the legal ML thread are namely: -# - https://github.com/block/goose/tree/v1.38.0/crates/goose-mcp/src/computercontroller/tests/data -# - https://github.com/block/goose/tree/v1.38.0/crates/goose-cli/src/scenario_tests/recordings +# - https://github.com/block/goose/tree/v1.39.0/crates/goose-mcp/src/computercontroller/tests/data +# - https://github.com/block/goose/tree/v1.39.0/crates/goose-cli/src/scenario_tests/recordings # # Rust crates compiled into the executable contribute additional license terms. # To obtain the following list of licenses, build the package and note the diff --git a/sources b/sources index ac4b35f..f8e8450 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (goose-1.38.0.tar.gz) = ed2f8e2869f26a311d1addc7c7ed9a74a3e64b44b941305b5910311d0fcf052e115c54ebdc0116e82b671a66fc4a983702124daf18b220ebf4e41999d4a5fcc3 +SHA512 (goose-1.39.0.tar.gz) = 08bd38d24636e01b4d42b99c4adeca8beda74809626a612f1d4870c7d67def028c7b00ea63768603dfb2299c84c38f02109702f7f16901038ea2d7bdca5172b7