Closed
Description
There appears to be some regression in trait resolution between beta and nightly. Our builds are failing on nightly with this error: https://travis-ci.org/diesel-rs/diesel/jobs/324077372#L1081
I haven't yet looked into what the exact cause is, but the same code is compiling successfully on stable and beta.
Metadata
Metadata
Assignees
Labels
Type
Projects
Relationships
Development
No branches or pull requests
Activity
sgrif commentedon Jan 3, 2018
This is now a regression from stable to beta
[-]Diesel's build is failing on nightly[/-][+]Diesel's build is failing on beta and nightly[/+]Allow beta to fail on travis
shssoichiro commentedon Jan 3, 2018
I have some time now, I can go through and do a bisect to find the cause.
sgrif commentedon Jan 3, 2018
@shssoichiro Thank you! <3 I'm sorry I haven't provided a more specific reproduction case
shssoichiro commentedon Jan 4, 2018
It looks like the regression originated in 8c59418. My first guess at what's happening is that the blanket
impl<T> SliceContains for T where T: PartialEq
is causing an infinite recursion in trying to resolve diesel'sInsertable
trait, although I haven't created a minimized reproduction.nikomatsakis commentedon Jan 4, 2018
Hmm. Any idea how those two traits are connected? That seems surprising.
nikomatsakis commentedon Jan 4, 2018
I'd like to dig a bit more into this and understand better what's going on.
sgrif commentedon Jan 4, 2018
I'm not sure how
SliceContains
could affect Diesel, but I agree that it's the only thing in that commit that looks like it could possibly cause any problems here.sgrif commentedon Jan 4, 2018
FWIW the impls it appears to be recursing through look like this:
67 remaining items