Skip to content

gix-error conversion batch 1 (part 2)#2443

Open
Sebastian Thiel (Byron) wants to merge 1 commit intomainfrom
gix-error
Open

gix-error conversion batch 1 (part 2)#2443
Sebastian Thiel (Byron) wants to merge 1 commit intomainfrom
gix-error

Conversation

@Byron
Copy link
Member

@Byron Sebastian Thiel (Byron) commented Feb 22, 2026

Follow-up of #2423.

Tasks

  • thorough review for crate gix-fs

Crates done

  • TBD
  Batch 1 Migration Complete

  11 crates migrated from thiserror to gix-error, in 11 commits:
  ┌────────────────┬───────────────────────────────────────────────────────┬─────────────────────────────────────────────────────────────────────────┐
  │     Crate      │                 Error types replaced                  │                            Downstream fixes                             │
  ├────────────────┼───────────────────────────────────────────────────────┼─────────────────────────────────────────────────────────────────────────┤
  │ gix-bitmap     │ 1 (ewah::decode::Error)                               │ none                                                                    │
  ├────────────────┼───────────────────────────────────────────────────────┼─────────────────────────────────────────────────────────────────────────┤
  │ gix-quote      │ 1 (ansi_c::undo::Error)                               │ none                                                                    │
  ├────────────────┼───────────────────────────────────────────────────────┼─────────────────────────────────────────────────────────────────────────┤
  │ gix-mailmap    │ 1 (parse::Error)                                      │ none                                                                    │
  ├────────────────┼───────────────────────────────────────────────────────┼─────────────────────────────────────────────────────────────────────────┤
  │ gix-fs         │ 1 (to_normal_path_components::Error)                  │ none                                                                    │
  ├────────────────┼───────────────────────────────────────────────────────┼─────────────────────────────────────────────────────────────────────────┤
  │ gix-lock       │ 1 (acquire::Error)                                    │ gix-testtools                                                           │
  ├────────────────┼───────────────────────────────────────────────────────┼─────────────────────────────────────────────────────────────────────────┤
  │ gix-path       │ 2 (relative_path::Error, realpath::Error)             │ gix-ref                                                                 │
  ├────────────────┼───────────────────────────────────────────────────────┼─────────────────────────────────────────────────────────────────────────┤
  │ gix-packetline │ 3 (encode::Error, decode::Error, decode::band::Error) │ none                                                                    │
  ├────────────────┼───────────────────────────────────────────────────────┼─────────────────────────────────────────────────────────────────────────┤
  │ gix-attributes │ 2 (name::Error, parse::Error)                         │ gix-pathspec                                                            │
  ├────────────────┼───────────────────────────────────────────────────────┼─────────────────────────────────────────────────────────────────────────┤
  │ gix-url        │ 3 (parse::Error, UrlParseError, expand_path::Error)   │ gix-transport, gix                                                      │
  ├────────────────┼───────────────────────────────────────────────────────┼─────────────────────────────────────────────────────────────────────────┤
  │ gix-hash       │ 7 (all error types)                                   │ gix-object, gix-pack, gix-odb, gix-index, gix-status, gix-protocol, gix │
  ├────────────────┼───────────────────────────────────────────────────────┼─────────────────────────────────────────────────────────────────────────┤
  │ gix-features   │ 3 (DecompressError, CompressError, inflate::Error)    │ (included in gix-hash downstream)                                       │
  └────────────────┴───────────────────────────────────────────────────────┴─────────────────────────────────────────────────────────────────────────┘
  Verification: cargo check -p gix passes, all 21 test suites across the 11 crates pass with 0 failures.

Replace the thiserror-derived `to_normal_path_components::Error`
enum with `gix_error::Exn<gix_error::Message>`.

Co-Authored-By: Sebastian Thiel <sebastian.thiel@icloud.com>
Co-authored-by: chatgpt-codex-connector[bot] <199175422+chatgpt-codex-connector[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant