Adam Perry @ OpenAI
2704ecea9a
[codex] Remove async_trait from ToolExecutor ( #27304 )
...
## Why
We're now [discouraging use of
`async_trait`](https://github.com/openai/codex/pull/20242 ).
Removing use of `async_trait` from `ToolExecutor` yields a `codex_core`
debug test build speedup of ~78% (from 227.5s to 50.3s) on my machine.
Stacked on #27299 , this PR applies the trait change after the handler
bodies have been outlined.
## What
Changed `ToolExecutor::handle` to return an explicit boxed
`ToolExecutorFuture` instead of using `async_trait`.
Updated ToolExecutor implementors to return `Box::pin(...)`, reexported
the future alias through `codex-tools` and `codex-extension-api`, and
removed `codex-tools` direct `async-trait` dependency.
2026-06-10 10:26:53 -07:00
..
2026-06-10 08:47:16 -07:00
2026-04-21 10:22:36 -07:00
2026-04-07 00:32:41 +00:00
2026-06-10 12:54:21 +02:00
2026-06-05 14:17:30 -07:00
2026-06-08 19:23:35 -07:00
2026-06-08 13:55:15 -07:00
2026-06-09 01:23:16 -07:00
2026-06-03 10:41:41 -07:00
2026-06-10 08:47:16 -07:00
2026-06-10 08:47:16 -07:00
2026-06-08 14:21:28 +02:00
2026-06-10 10:26:53 -07:00
2026-06-09 15:10:17 -07:00
2026-03-24 18:10:53 -07:00
2026-06-04 15:08:52 -07:00
2026-06-04 15:08:52 -07:00
2026-04-07 21:20:22 +00:00
2026-05-11 16:33:44 -07:00
2026-05-08 12:36:02 -07:00
2026-05-18 09:57:54 -07:00
2026-06-05 10:25:57 +02:00
2026-06-10 08:47:16 -07:00
2026-06-10 08:47:16 -07:00
2026-06-10 08:33:21 -07:00
2026-06-09 19:51:54 +02:00
2026-06-08 13:55:15 -07:00
2026-03-12 08:16:36 -07:00
2026-04-01 23:06:24 -07:00
2026-06-10 08:47:16 -07:00
2026-06-10 08:47:16 -07:00
2026-05-11 19:51:51 -07:00
2026-06-10 08:47:16 -07:00
2026-06-10 12:54:21 +02:00
2026-06-02 13:18:59 -07:00
2026-06-10 08:33:21 -07:00
2026-03-12 00:35:21 -07:00
2026-06-03 18:36:10 +02:00
2026-06-05 14:17:30 -07:00
2026-05-15 15:04:04 -07:00
2026-04-26 15:10:53 -07:00
2026-04-26 15:10:53 -07:00
2026-06-05 11:20:52 -07:00
2026-06-05 11:20:52 -07:00
2026-06-05 11:20:52 -07:00
2026-06-03 10:41:41 -07:00
2026-06-03 10:41:41 -07:00
2026-05-13 11:31:27 +02:00
2026-06-08 21:32:46 -07:00
2026-06-10 04:41:06 +00:00
2026-04-28 13:03:28 +02:00
2026-04-28 19:43:44 -07:00
2026-06-05 14:17:30 -07:00
2026-05-13 11:15:25 -07:00
2026-06-09 22:44:16 +02:00
2026-05-26 20:59:47 -07:00
2026-06-10 08:33:21 -07:00
2026-06-10 08:33:21 -07:00
2026-05-28 10:24:03 -07:00
2026-06-10 04:41:06 +00:00
2026-06-10 12:54:21 +02:00
2026-05-19 11:24:09 +02:00
2026-03-25 11:05:35 -07:00
2026-04-02 23:00:02 -07:00
2026-04-09 10:53:06 -07:00
2026-05-20 17:10:37 -07:00
2026-06-02 13:18:59 -07:00
2026-04-24 17:49:29 -07:00
2026-05-11 11:32:40 -07:00
2026-06-02 12:10:14 +02:00
2026-05-26 10:34:43 +02:00
2026-05-19 12:55:34 -07:00
2026-06-09 00:38:35 +00:00
2026-04-23 10:17:09 -07:00
2026-05-20 16:03:51 -07:00
2026-06-09 17:54:32 -07:00
2026-06-01 18:45:07 +00:00
2026-05-26 11:01:18 +02:00
2026-04-01 23:06:24 -07:00
2026-06-01 23:33:42 +00:00
2026-05-19 11:03:47 -07:00
2026-05-07 11:33:47 +02:00
2026-05-15 10:58:50 -07:00
2026-05-15 10:58:50 -07:00
2026-04-20 22:39:17 -07:00
2026-04-03 00:33:34 -07:00
2026-06-10 08:47:16 -07:00
2026-05-04 11:46:03 -07:00
2026-06-04 22:36:25 -07:00
2026-03-27 19:00:44 -07:00
2026-06-04 22:36:25 -07:00
2026-06-03 15:38:30 +02:00
2026-06-03 10:41:41 -07:00
2026-05-04 11:46:03 -07:00
2026-06-10 14:31:09 +02:00
2026-06-04 09:39:20 -07:00
2026-05-26 20:59:47 -07:00
2026-06-10 14:31:09 +02:00
2026-06-09 22:44:16 +02:00
2026-05-27 15:49:08 +02:00
2026-05-27 15:49:08 +02:00
2026-06-05 17:31:22 +00:00
2026-06-05 17:31:22 +00:00
2026-06-02 12:46:14 -07:00
2026-06-02 12:46:14 -07:00
2026-06-05 11:27:10 -07:00
2026-06-05 11:27:10 -07:00
2026-04-20 22:39:17 -07:00
2026-04-20 22:39:17 -07:00
2026-05-14 16:54:59 -07:00
2026-05-14 16:54:59 -07:00
2026-05-28 15:26:55 -07:00
2026-05-28 15:26:55 -07:00
2026-05-22 12:13:52 +02:00
2026-05-29 11:01:44 -07:00