• S
    Avoid assigning duplicate values in QueryMethods · aca85f62
    sinsoku 提交于
    The ArgumentError occurs even though structures is compatible.
    Because some query methods keep duplicate values.
    
    For example, the behavior of `joins` method is as following:
    
    ```ruby
    relation = Post.joins(:author).joins(:author)
    relation.joins_values
    #=> [:author, :author]
    relation.or(Post.joins(:author))
    #=> ArgumentError: Relation passed to #or must be structurally compatible. Incompatible values: [:joins]
    ```
    
    This commit changes to not keep duplicate values.
    
    Fixes #38052
    aca85f62
query_methods.rb 45.8 KB