Hi José,
I just joined the group because I was planning to make this same proposal. I thought of it while working on this
PR for ExAudit to support
ecto ~> 3.4. I noticed that the implementation for
default_options/1 is defined as overridable and thought that maybe after these years you might have changed your mind on this proposal.
ExAudit supports audit of assocs in a very clever way, by relying on the children traversal already implemented in Ecto.Repo.Schema.
And by the way, why is are the opts passed to @callback implementations not passed to children? I noticed this while working on the mentioned PR. For example, I was trying something like Repo.insert(struct, audit: true) and noticed that the option was filtered in the function:
defp assoc_opts(_assocs, opts) do
Keyword.take(opts, [:timeout, :log, :telemetry_event, :prefix])
end
Stay safe and thanks for your contributions,
Regards,
Hisa