| raw e-mail | index | archive | help
diff --git a/misc/codex/Makefile b/misc/codex/Makefile index 8a4d9d2cb14d..f458a1ae8428 100644 --- a/misc/codex/Makefile +++ b/misc/codex/Makefile @@ -1,6 +1,6 @@ PORTNAME= codex DISTVERSIONPREFIX= rust-v -DISTVERSION= 0.58.0 +DISTVERSION= 0.63.0 CATEGORIES= misc devel MAINTAINER= tagattie@FreeBSD.org @@ -11,7 +11,8 @@ WWW= https://openai.com/codex \ LICENSE= APACHE20 LICENSE_FILE= ${WRKSRC}/LICENSE -LIB_DEPENDS= libonig.so:devel/oniguruma +LIB_DEPENDS= libdbus-1.so:devel/dbus \ + libonig.so:devel/oniguruma RUN_DEPENDS= bash:shells/bash \ rg:textproc/ripgrep TEST_DEPENDS= bash:shells/bash @@ -25,7 +26,7 @@ CARGO_CARGOTOML= ${BUILD_WRKSRC}/Cargo.toml CARGO_CARGOLOCK= ${BUILD_WRKSRC}/Cargo.lock CARGO_BUILD_ARGS= --bin ${PORTNAME} CARGO_INSTALL_PATH= codex-rs -CARGO_TEST_ARGS= --all-features +CARGO_TEST_ARGS= --all-features --no-fail-fast CARGO_ENV= OPENSSL_NO_VENDOR=1 BUILD_WRKSRC= ${WRKSRC}/codex-rs @@ -54,10 +55,7 @@ post-patch: ${BUILD_WRKSRC}/core/src/tools/handlers/shell.rs \ ${BUILD_WRKSRC}/core/src/tools/handlers/unified_exec.rs \ ${BUILD_WRKSRC}/core/src/tools/spec.rs \ - ${BUILD_WRKSRC}/core/src/unified_exec/mod.rs \ - ${BUILD_WRKSRC}/core/tests/suite/approvals.rs \ ${BUILD_WRKSRC}/core/tests/suite/exec.rs \ - ${BUILD_WRKSRC}/core/tests/suite/shell_serialization.rs \ ${BUILD_WRKSRC}/core/tests/suite/unified_exec.rs \ ${BUILD_WRKSRC}/core/tests/suite/user_notification.rs \ ${BUILD_WRKSRC}/tui/src/exec_command.rs diff --git a/misc/codex/Makefile.crates b/misc/codex/Makefile.crates index 7299c072b18c..99d087e3dd7a 100644 --- a/misc/codex/Makefile.crates +++ b/misc/codex/Makefile.crates @@ -68,6 +68,7 @@ CARGO_CRATES= Inflector-0.11.4 \ cfg-if-1.0.1 \ cfg_aliases-0.1.1 \ cfg_aliases-0.2.1 \ + chardetng-0.1.17 \ chrono-0.4.42 \ chunked_transfer-1.5.0 \ cipher-0.4.4 \ @@ -160,7 +161,6 @@ CARGO_CRATES= Inflector-0.11.4 \ event-listener-strategy-0.5.4 \ eventsource-stream-0.2.3 \ eyre-0.6.12 \ - fancy-regex-0.13.0 \ fastrand-2.3.0 \ fax-0.2.6 \ fax_derive-0.2.0 \ @@ -416,7 +416,6 @@ CARGO_CRATES= Inflector-0.11.4 \ rmcp-0.8.5 \ rmcp-macros-0.8.5 \ rustc-demangle-0.1.25 \ - rustc-hash-1.1.0 \ rustc-hash-2.1.1 \ rustc_version-0.4.1 \ rustix-0.38.44 \ @@ -517,6 +516,9 @@ CARGO_CRATES= Inflector-0.11.4 \ termcolor-1.4.1 \ terminal_size-0.4.2 \ termtree-0.5.1 \ + test-case-3.3.1 \ + test-case-core-3.3.1 \ + test-case-macros-3.3.1 \ test-log-0.2.18 \ test-log-macros-0.2.18 \ textwrap-0.11.0 \ @@ -527,7 +529,6 @@ CARGO_CRATES= Inflector-0.11.4 \ thiserror-impl-2.0.17 \ thread_local-1.1.9 \ tiff-0.10.3 \ - tiktoken-rs-0.7.0 \ time-0.3.44 \ time-core-0.1.6 \ time-macros-0.2.24 \ diff --git a/misc/codex/distinfo b/misc/codex/distinfo index ac16a17d780a..409ec075b4a9 100644 --- a/misc/codex/distinfo +++ b/misc/codex/distinfo @@ -1,4 +1,4 @@ -TIMESTAMP = 1763082346 +TIMESTAMP = 1764057844 SHA256 (rust/crates/Inflector-0.11.4.crate) = fe438c63458706e03479442743baae6c88256498e6431708f6dfc520a26515d3 SIZE (rust/crates/Inflector-0.11.4.crate) = 17438 SHA256 (rust/crates/addr2line-0.24.2.crate) = dfbe277e56a376000877090da837660b4427aad530e3028d44e0bffe4f89a1c1 @@ -139,6 +139,8 @@ SHA256 (rust/crates/cfg_aliases-0.1.1.crate) = fd16c4719339c4530435d38e511904438 SIZE (rust/crates/cfg_aliases-0.1.1.crate) = 6009 SHA256 (rust/crates/cfg_aliases-0.2.1.crate) = 613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724 SIZE (rust/crates/cfg_aliases-0.2.1.crate) = 6355 +SHA256 (rust/crates/chardetng-0.1.17.crate) = 14b8f0b65b7b08ae3c8187e8d77174de20cb6777864c6b832d8ad365999cf1ea +SIZE (rust/crates/chardetng-0.1.17.crate) = 56362 SHA256 (rust/crates/chrono-0.4.42.crate) = 145052bdd345b87320e369255277e3fb5152762ad123a901ef5c262dd38fe8d2 SIZE (rust/crates/chrono-0.4.42.crate) = 238174 SHA256 (rust/crates/chunked_transfer-1.5.0.crate) = 6e4de3bc4ea267985becf712dc6d9eed8b04c953b3fcfb339ebc87acd9804901 @@ -323,8 +325,6 @@ SHA256 (rust/crates/eventsource-stream-0.2.3.crate) = 74fef4569247a5f429d9156b9d SIZE (rust/crates/eventsource-stream-0.2.3.crate) = 15033 SHA256 (rust/crates/eyre-0.6.12.crate) = 7cd915d99f24784cdc19fd37ef22b97e3ff0ae756c7e492e9fbfe897d61e2aec SIZE (rust/crates/eyre-0.6.12.crate) = 45330 -SHA256 (rust/crates/fancy-regex-0.13.0.crate) = 531e46835a22af56d1e3b66f04844bed63158bc094a628bec1d321d9b4c44bf2 -SIZE (rust/crates/fancy-regex-0.13.0.crate) = 85930 SHA256 (rust/crates/fastrand-2.3.0.crate) = 37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be SIZE (rust/crates/fastrand-2.3.0.crate) = 15076 SHA256 (rust/crates/fax-0.2.6.crate) = f05de7d48f37cd6730705cbca900770cab77a89f413d23e100ad7fad7795a0ab @@ -835,8 +835,6 @@ SHA256 (rust/crates/rmcp-macros-0.8.5.crate) = 01263441d3f8635c628e33856c468b96e SIZE (rust/crates/rmcp-macros-0.8.5.crate) = 13454 SHA256 (rust/crates/rustc-demangle-0.1.25.crate) = 989e6739f80c4ad5b13e0fd7fe89531180375b18520cc8c82080e4dc4035b84f SIZE (rust/crates/rustc-demangle-0.1.25.crate) = 29590 -SHA256 (rust/crates/rustc-hash-1.1.0.crate) = 08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2 -SIZE (rust/crates/rustc-hash-1.1.0.crate) = 9331 SHA256 (rust/crates/rustc-hash-2.1.1.crate) = 357703d41365b4b27c590e3ed91eabb1b663f07c4c084095e60cbed4362dff0d SIZE (rust/crates/rustc-hash-2.1.1.crate) = 14154 SHA256 (rust/crates/rustc_version-0.4.1.crate) = cfcb3a22ef46e85b45de6ee7e79d063319ebb6594faafcf1c225ea92ab6e9b92 @@ -1037,6 +1035,12 @@ SHA256 (rust/crates/terminal_size-0.4.2.crate) = 45c6481c4829e4cc63825e62c49186a SIZE (rust/crates/terminal_size-0.4.2.crate) = 9976 SHA256 (rust/crates/termtree-0.5.1.crate) = 8f50febec83f5ee1df3015341d8bd429f2d1cc62bcba7ea2076759d315084683 SIZE (rust/crates/termtree-0.5.1.crate) = 8498 +SHA256 (rust/crates/test-case-3.3.1.crate) = eb2550dd13afcd286853192af8601920d959b14c401fcece38071d53bf0768a8 +SIZE (rust/crates/test-case-3.3.1.crate) = 8797 +SHA256 (rust/crates/test-case-core-3.3.1.crate) = adcb7fd841cd518e279be3d5a3eb0636409487998a4aff22f3de87b81e88384f +SIZE (rust/crates/test-case-core-3.3.1.crate) = 14327 +SHA256 (rust/crates/test-case-macros-3.3.1.crate) = 5c89e72a01ed4c579669add59014b9a524d609c0c88c6a585ce37485879f6ffb +SIZE (rust/crates/test-case-macros-3.3.1.crate) = 4961 SHA256 (rust/crates/test-log-0.2.18.crate) = 1e33b98a582ea0be1168eba097538ee8dd4bbe0f2b01b22ac92ea30054e5be7b SIZE (rust/crates/test-log-0.2.18.crate) = 16138 SHA256 (rust/crates/test-log-macros-0.2.18.crate) = 451b374529930d7601b1eef8d32bc79ae870b6079b069401709c2a8bf9e75f36 @@ -1057,8 +1061,6 @@ SHA256 (rust/crates/thread_local-1.1.9.crate) = f60246a4944f24f6e018aa17cdeffb78 SIZE (rust/crates/thread_local-1.1.9.crate) = 19315 SHA256 (rust/crates/tiff-0.10.3.crate) = af9605de7fee8d9551863fd692cce7637f548dbd9db9180fcc07ccc6d26c336f SIZE (rust/crates/tiff-0.10.3.crate) = 1444592 -SHA256 (rust/crates/tiktoken-rs-0.7.0.crate) = 25563eeba904d770acf527e8b370fe9a5547bacd20ff84a0b6c3bc41288e5625 -SIZE (rust/crates/tiktoken-rs-0.7.0.crate) = 3792064 SHA256 (rust/crates/time-0.3.44.crate) = 91e7d9e3bb61134e77bde20dd4825b97c010155709965fedf0f49bb138e52a9d SIZE (rust/crates/time-0.3.44.crate) = 143200 SHA256 (rust/crates/time-core-0.1.6.crate) = 40868e7c1d2f0b8d73e4a8c7f0ff63af4f6d19be117e90bd73eb1d62cf831c6b @@ -1415,5 +1417,5 @@ SHA256 (nornagon-ratatui-9b2ad1298408c45918ee9f8241a6f95498cdbed2_GH0.tar.gz) = SIZE (nornagon-ratatui-9b2ad1298408c45918ee9f8241a6f95498cdbed2_GH0.tar.gz) = 566574 SHA256 (nornagon-crossterm-87db8bfa6dc99427fd3b071681b07fc31c6ce995_GH0.tar.gz) = b49ac342e6b5d9c015f5384690c2a61d6f31c0c3c34aaf1cc22be4956122294c SIZE (nornagon-crossterm-87db8bfa6dc99427fd3b071681b07fc31c6ce995_GH0.tar.gz) = 129254 -SHA256 (openai-codex-rust-v0.58.0_GH0.tar.gz) = 903f0cec30f81234f09796e83260b560436c2341085dc417640e3fd96af9bfb2 -SIZE (openai-codex-rust-v0.58.0_GH0.tar.gz) = 27952941 +SHA256 (openai-codex-rust-v0.63.0_GH0.tar.gz) = 895787648e47829a6797c2ba94c38658d7babad96c3fc111c63cba5c7d34bab8 +SIZE (openai-codex-rust-v0.63.0_GH0.tar.gz) = 27829732 diff --git a/misc/codex/files/patch-codex-rs_core_Cargo.toml b/misc/codex/files/patch-codex-rs_core_Cargo.toml deleted file mode 100644 index 2cf9853774d1..000000000000 --- a/misc/codex/files/patch-codex-rs_core_Cargo.toml +++ /dev/null @@ -1,13 +0,0 @@ ---- codex-rs/core/Cargo.toml.orig 2025-11-13 17:39:01 UTC -+++ codex-rs/core/Cargo.toml -@@ -43,8 +43,9 @@ keyring = { workspace = true, features = [ - keyring = { workspace = true, features = [ - "apple-native", - "crypto-rust", -- "linux-native-async-persistent", -+ "linux-native", - "windows-native", -+ "async-secret-service", - ] } - libc = { workspace = true } - mcp-types = { workspace = true } diff --git a/misc/codex/files/patch-codex-rs_core_tests_suite_shell__serialization.rs b/misc/codex/files/patch-codex-rs_core_tests_suite_shell__serialization.rs deleted file mode 100644 index 9ec48d377f72..000000000000 --- a/misc/codex/files/patch-codex-rs_core_tests_suite_shell__serialization.rs +++ /dev/null @@ -1,12 +0,0 @@ ---- codex-rs/core/tests/suite/shell_serialization.rs.orig 2025-11-04 20:00:53 UTC -+++ codex-rs/core/tests/suite/shell_serialization.rs -@@ -398,6 +398,9 @@ async fn shell_output_for_freeform_tool_records_durati - #[cfg(target_os = "linux")] - let sleep_cmd = vec!["/bin/bash", "-c", "sleep 1"]; - -+ #[cfg(target_os = "freebsd")] -+ let sleep_cmd = vec!["/bin/bash", "-c", "sleep 1"]; -+ - #[cfg(target_os = "macos")] - let sleep_cmd = vec!["/bin/bash", "-c", "sleep 1"]; - diff --git a/misc/codex/files/patch-codex-rs_exec_tests_suite_mod.rs b/misc/codex/files/patch-codex-rs_exec_tests_suite_mod.rs index dc82a744793b..156e4a3c7ad8 100644 --- a/misc/codex/files/patch-codex-rs_exec_tests_suite_mod.rs +++ b/misc/codex/files/patch-codex-rs_exec_tests_suite_mod.rs @@ -1,6 +1,6 @@ ---- codex-rs/exec/tests/suite/mod.rs.orig 2025-10-25 21:16:34 UTC +--- codex-rs/exec/tests/suite/mod.rs.orig 2025-11-21 18:00:38 UTC +++ codex-rs/exec/tests/suite/mod.rs -@@ -4,5 +4,6 @@ mod resume; +@@ -5,5 +5,6 @@ mod resume; mod originator; mod output_schema; mod resume; diff --git a/misc/codex/files/patch-codex-rs_keyring-store_Cargo.toml b/misc/codex/files/patch-codex-rs_keyring-store_Cargo.toml deleted file mode 100644 index 73145a2243ad..000000000000 --- a/misc/codex/files/patch-codex-rs_keyring-store_Cargo.toml +++ /dev/null @@ -1,12 +0,0 @@ ---- codex-rs/keyring-store/Cargo.toml.orig 2025-10-31 00:56:28 UTC -+++ codex-rs/keyring-store/Cargo.toml -@@ -10,7 +10,8 @@ keyring = { workspace = true, features = [ - keyring = { workspace = true, features = [ - "apple-native", - "crypto-rust", -- "linux-native-async-persistent", -+ "linux-native", - "windows-native", -+ "async-secret-service", - ] } - tracing = { workspace = true } diff --git a/misc/codex/files/patch-codex-rs_process-hardening_Cargo.toml b/misc/codex/files/patch-codex-rs_process-hardening_Cargo.toml deleted file mode 100644 index d10fb15bb2a6..000000000000 --- a/misc/codex/files/patch-codex-rs_process-hardening_Cargo.toml +++ /dev/null @@ -1,9 +0,0 @@ ---- codex-rs/process-hardening/Cargo.toml.orig 2025-10-06 07:49:12 UTC -+++ codex-rs/process-hardening/Cargo.toml -@@ -19,3 +19,6 @@ libc = { workspace = true } - - [target.'cfg(target_os = "macos")'.dependencies] - libc = { workspace = true } -+ -+[target.'cfg(target_os = "freebsd")'.dependencies] -+libc = { workspace = true } diff --git a/misc/codex/files/patch-codex-rs_process-hardening_src_lib.rs b/misc/codex/files/patch-codex-rs_process-hardening_src_lib.rs deleted file mode 100644 index 6805a52575ea..000000000000 --- a/misc/codex/files/patch-codex-rs_process-hardening_src_lib.rs +++ /dev/null @@ -1,70 +0,0 @@ ---- codex-rs/process-hardening/src/lib.rs.orig 2025-10-03 16:43:33 UTC -+++ codex-rs/process-hardening/src/lib.rs -@@ -10,6 +10,9 @@ pub fn pre_main_hardening() { - #[cfg(target_os = "macos")] - pre_main_hardening_macos(); - -+ #[cfg(target_os = "freebsd")] -+ pre_main_hardening_freebsd(); -+ - #[cfg(windows)] - pre_main_hardening_windows(); - } -@@ -20,9 +23,12 @@ const PTRACE_DENY_ATTACH_FAILED_EXIT_CODE: i32 = 6; - #[cfg(target_os = "macos")] - const PTRACE_DENY_ATTACH_FAILED_EXIT_CODE: i32 = 6; - --#[cfg(any(target_os = "linux", target_os = "android", target_os = "macos"))] -+#[cfg(any(target_os = "linux", target_os = "android", target_os = "macos", target_os = "freebsd"))] - const SET_RLIMIT_CORE_FAILED_EXIT_CODE: i32 = 7; - -+#[cfg(target_os = "freebsd")] -+const PROCCTL_PROC_TRACE_CTL_FAILED_EXIT_CODE: i32 = 8; -+ - #[cfg(any(target_os = "linux", target_os = "android"))] - pub(crate) fn pre_main_hardening_linux() { - // Disable ptrace attach / mark process non-dumpable. -@@ -85,6 +91,43 @@ pub(crate) fn pre_main_hardening_macos() { - .collect(); - - for key in dyld_keys { -+ unsafe { -+ std::env::remove_var(key); -+ } -+ } -+} -+ -+#[cfg(target_os = "freebsd")] -+pub(crate) fn pre_main_hardening_freebsd() { -+ // Prevent debuggers from attaching to this process -+ let mut arg = libc::PROC_TRACE_CTL_DISABLE_EXEC; -+ let ret_code = unsafe { -+ libc::procctl(libc::P_PID, 0, libc::PROC_TRACE_CTL, &mut arg as *mut _ as *mut libc::c_void) -+ }; -+ if ret_code == -1 { -+ eprintln!( -+ "ERROR: procctl(PROC_TRACE_CTL) failed: {}", -+ std::io::Error::last_os_error() -+ ); -+ std::process::exit(PROCCTL_PROC_TRACE_CTL_FAILED_EXIT_CODE); -+ } -+ -+ // Set the core file size limit to 0 to prevent core dumps. -+ set_core_file_size_limit_to_zero(); -+ -+ // Remove all LD_ environment variables, which can be used to subvert -+ // library loading. -+ let ld_keys: Vec<String> = std::env::vars() -+ .filter_map(|(key, _)| { -+ if key.starts_with("LD_") { -+ Some(key) -+ } else { -+ None -+ } -+ }) -+ .collect(); -+ -+ for key in ld_keys { - unsafe { - std::env::remove_var(key); - } diff --git a/misc/codex/files/patch-codex-rs_rmcp-client_Cargo.toml b/misc/codex/files/patch-codex-rs_rmcp-client_Cargo.toml deleted file mode 100644 index 4008647d9da1..000000000000 --- a/misc/codex/files/patch-codex-rs_rmcp-client_Cargo.toml +++ /dev/null @@ -1,13 +0,0 @@ ---- codex-rs/rmcp-client/Cargo.toml.orig 2025-10-31 00:56:28 UTC -+++ codex-rs/rmcp-client/Cargo.toml -@@ -19,8 +19,9 @@ keyring = { workspace = true, features = [ - keyring = { workspace = true, features = [ - "apple-native", - "crypto-rust", -- "linux-native-async-persistent", -+ "linux-native", - "windows-native", -+ "async-secret-service", - ] } - mcp-types = { path = "../mcp-types" } - oauth2 = "5"
