Skip to content

Tapioca does not properly attribute prepended methods #2072

Open
@egiurleo

Description

I haven't verified this yet, but @paracycle told me that if one gem defines a method, and another gem overrides that method via a prepend, the prepended method will be incorrectly written to both gem RBIs.

Example:

# in gem foo
class Foo
  def foo; end
end
# in gem bar
module Bar
  def foo; end
end

Foo.prepend(Bar)

Tapioca will write bar's foo method to foo's gem RBIs, which is fine if they have the same signature, but not great if the prepend changes the method signature.

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