Matt Nelson
10/23/2025, 12:02 AMpublic final class MyClass(something: Any) to public open class MyClass(something: Any), will that break backward compatibility?Andrew O'Hara
10/24/2025, 1:59 PMMatt Nelson
10/24/2025, 2:03 PMfinal class, and then Project A updates that dependency where it's now open class, but not sure.Matt Nelson
10/24/2025, 2:03 PMDan Rusu
10/25/2025, 4:26 PMMatt Nelson
10/25/2025, 4:31 PMequals and hashCode of the actual classes I'm looking at doing this to are already overridden and implemented in a way such that there would be no change in behavior there.Dan Rusu
10/25/2025, 4:39 PMDan Rusu
10/25/2025, 5:04 PMobj.class == expectedClass) so the behavior would change regardless of the implementation of your equals override.Matt Nelson
10/25/2025, 5:43 PMequals is implemented for lists. The implementation itself is stateless with an immutable configuration. Only the name(): String = "UTF-8" and components of the immutable configuration are compared for equality.
So A == B && B == A if both have the same configurations and return the same name()
> Also, note that my previous comment was referring to calling equals on the class, not on the object
Very good point; I did not consider that...