-
Notifications
You must be signed in to change notification settings - Fork 1.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Deprecate annotations and improve kotlin dsl configuration. Migrate to kotlin #813
Conversation
This PR has changed scope a bit, now includes migrating the full codebase to kotlin. The aim is to stay 100% compatible with java, but take advantage of kotlin language features where possible. |
I think as long as you don't use extension functions everywhere (like material-dialogs did https://github.com/afollestad/material-dialogs/issues/1848) it will be compatible yes - we're still java and we do a subclass so I'll test it you publish a pre-release somewhere I can make a gradle dep. We also do all our config via annotations so I might be a good test drive on any config change. Cheers @F43nd1r |
Technically extension functions can be accessed in java using the class generated for the defining file. It's ugly, but it works. I'm not relying on that though. There are a few extension functions providing convenience in kotlin dsl. All of them just define shortcuts.
Config using annotations will be deprecated or maybe even go away completely with this. For now, nothing should have changed for annotations.
I've attached an early build. Alpha release will follow when I've done some testing myself. |
# Conflicts: # acra-mail/src/main/java/org/acra/sender/EmailIntentSender.java
Closes #810
This makes kotlin a first-class citizen for acra. Maybe move documentation to kotlin as well?
Example configuration: