Skip to content

Needs decision: should Error inherit from Send? #23774

Closed
@aturon

Description

@aturon

The Error trait was recently changed, once again, to inherit from Send. This was done mostly because

  1. We suspect that many people will wind up using Box<Error>, especially once Error incorporated downcasting,
  2. We worried that, after setting up such APIs, people would end up wanting to send Box<Error> between threads and not be able to, and,
  3. We suspected that most errors would or could be made Send anyway.

However, there are some cases in important libraries like Iron that involve non-Send errors, at least at the moment.

We need to make a final decision here. Should we instead require people to know about and use Box<Error + Send> when they need it?

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions