Skip to content

Releases: ShaishavGandhi/navigator

0.5.0

27 Sep 20:09
Compare
Choose a tag to compare

New and Breaking

  • Move to AndroidX packages. This is a breaking change so make sure you upgrade after moving to AndroidX in your app.

0.4.1

06 Sep 15:58
Compare
Choose a tag to compare

New

  • Reduced method count
  • Support starting activities directly from Fragment.
  • Added bunch of null annotations to better reflect compatibility with Kotlin.
  • Reflect annotations that you have declared on fields to be copied over to the generated code.

0.4.0

28 Aug 23:21
Compare
Choose a tag to compare

Breaking

  • Builder constructors are now private. You should instead fallback to using the static factory method provided with the generated code. For example: MainActivityBuilder.builder(args).

New

  • Added Kotlin extension for getting the builder class. If you have annotated fields in, let's say MainActivity, you can use the generated Kotlin extension mainActivityBuilder(args).setOptionalParam(arg).start(context).
  • Add KDoc for generated extension.

0.3.2

13 Jul 04:41
Compare
Choose a tag to compare

Fixes

  • Fix issue with object types like java.lang.Integer and java.lang.Long etc were being treated as serializable. #77

0.3.1

03 Jul 03:35
77924ec
Compare
Choose a tag to compare
  • New
    • Added static factory method for builders. Now you can do: YourActivityBuilder.builder() instead of new YourActivityBuilder(). The constructor will be possibly made private when we go up a version so that we can enforce the static factory method.

0.3.0

27 Jun 05:13
Compare
Choose a tag to compare
  • Breaking

    • Navigator has now been removed along with the bind and prepare* methods. It wasn't going to be scalable in a multi module setting where there was potential of clashes. You should instead use new YourActivityBuilder().addWhatever().start() to start your activity. If you're binding, you can use several different options. Consult the updated readme. See #68 for all details.
    • Changes with how you bind your variables when Activity/Fragment is created. Similar to the above point, it wasn't going to be scalable to have a single point of entry without using reflection. Consult the readme for updated methods. See #68
  • New

    • Kotlin extensions for binding. Navigator now generates extensions on your binding targets so you can simply call bind() from your Kotlin Activity/Fragment. You can also use the generated extension in Java by calling YourActivityNavigator.bind(this) where YourActivityNavigator is the generated extension. Consult readme for more.
    • Navigator now publicly makes available the keys that are used for binding. If you haven't given the key for an @Extra, Navigator now exposes the key as a public static field in case you want to do some custom binding with it. The fields are prefaced with EXTRA_* See #65

0.2.1

12 Jun 04:57
Compare
Choose a tag to compare
0.2.1 Pre-release
Pre-release
  • New
    • Fixed issue for multi module build which was having runtime crashes while fetching Navigator. See #62

0.2.0

11 Jun 01:55
0e0da4a
Compare
Choose a tag to compare
0.2.0 Pre-release
Pre-release
  • Breaking:

    • Package name change for generated code. See #57
  • New:

    • Add documentation to generated code. See #41
    • Add typed support for Parcelable, Serializable etc. See #51
    • Add @Optional to mark a primitive as optional in generating builder. See #44
    • Add ability to provide a custom key for your @Extra. See #46
    • New API for setAction(action) while builder ActivityBuilder
  • Fixes

    • Fix issue with Fragment code not being generated. #49
    • Fix issue with primitives causing exception. #40

Support Kotlin Null Types

29 May 00:06
fc0fae6
Compare
Choose a tag to compare
Pre-release
  • Added support for Kotlin null types. There's no need to add @Nullable annotation.
    @Extra var message: String? makes the extra optional.

Initial Release

22 May 18:27
736e286
Compare
Choose a tag to compare
Initial Release Pre-release
Pre-release
Merge pull request #28 from shaishavgandhi05/sg/v0.1.1

v0.1.1