Switch infer_values_based_on to require_join_free_values in cond resolver
authorPeter Rabbitson <ribasushi@cpan.org>
Sat, 24 Sep 2016 13:08:53 +0000 (15:08 +0200)
committerPeter Rabbitson <ribasushi@cpan.org>
Tue, 27 Sep 2016 09:45:35 +0000 (11:45 +0200)
commit1bd54f3d4bc8428d602d2e28cb410b303bb242b7
treea0707b1504fe29689094ef4874cdd2ad97c2b6b5
parent86be9bcb90213db633791fcce074b7268765f615
Switch infer_values_based_on to require_join_free_values in cond resolver

This further simplifies the cognitive surface of the condition resolver API
just like 786c1cdd and a3ae79ed. During the sprint to add at least *some*
sanity to the codepath infer_values_based_on was introduced as a stopgap to
allow 83a6b244 to somehow proceed forward. Since then the amount of spots
where this logic is necessary steadily went down, bringing us to the current
place: there is just a single spot in the entire codebase that passes a
non-empty inferrence structure.

Given the entire codepath is rather baroque, the entire idea of inferrence is
pushed to new_related instead, leaving the API of the resolver itself even
simpler.

There are no known issues as a result, verified by re-running the entire test
plan for downstreams as described in 12e7015a.
lib/DBIx/Class/Relationship/Base.pm
lib/DBIx/Class/ResultSet.pm
lib/DBIx/Class/ResultSource.pm
lib/DBIx/Class/Row.pm