FreeBuilder v2.7.0 Release Notes

Release Date: 2020-11-13 // 12 months ago
  • 🚀 With this release, FreeBuilder can generate builders without the standard public methods build, buildPartial, clear and mergeFrom, allowing you to give them alternative names. (Note that doing so will disable enhanced support for nested builders for this type, as it needs to be able to call these methods.)

    public interface MyType { class Builder extends MyType\_Builder { public OtherDataType build() { // This signature is not compatible with the default build method.// FreeBuilder will instead declare a package-scoped \_buildImpl.... } public DataType buildMyType() { return \_buildImpl(); } } }
    

Previous changes from v2.6.2

  • 🚀 This release fixes a couple of bugs in the support for Guava's BiMap type introduced in v2.6.0:

    • 👻 The put methods no longer throw an exception if the key-value pair already exists in the bimap (only if the value exists and is associated with a different key).
    • When a check constraint is in place, setValue on the Map.Entry objects returned by the temporary bimap object passed into the mutate method now correctly return the old value.

    🛠 Thanks to @thespags for the fixes!