chore: introduce codex-common crate #843
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I started this PR because I wanted to share the
format_duration()
utility function incodex-rs/exec/src/event_processor.rs
with the TUI. The question was: where to put it?core
should have as few dependencies as possible, so moving it there would introduce a dependency onchrono
, which seemed undesirable.core
already had thiscli
feature to deal with a similar situation around sharing common utility functions, so I decided to:core
feature-freecommon
common
can have as many "special interest" features as it needs, each of which can declare their own depscli
andelapsed
In practice, this meant updating a number of
Cargo.toml
files, replacing this line:with these:
Moving
format_duration()
into its own file gave it some "breathing room" to add a unit test, so I had Codex generate some tests and new support for durations over 1 minute.