Wait a second. `5.3.1-test-2` is a release candidate for `5.4`. `5.3.1` is the current stable. Isn't this expected
```rb
[5] brew(main)> Version.new("5.3.1-test-2") > Version.new("5.3.1") && Version.new("5.3.1-test-2") < Version.new("5.4")
=> true
```