-
-
Notifications
You must be signed in to change notification settings - Fork 96
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
Initial Gradle setup #82
base: master
Are you sure you want to change the base?
Conversation
b6ee12c
to
a43a475
Compare
@henri-tremblay thoughts? 😬 |
I had no time yet.
…On Thu, 17 Dec 2020 at 18:00, Michael Bailey ***@***.***> wrote:
@henri-tremblay <https://github.com/henri-tremblay> thoughts? 😬
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#82 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAJJCM4DCNV22JY5OR33PCDSVKEQZANCNFSM4UGINUSA>
.
|
To build and run non-android tests: ./gradlew build To run the Android TCK test: ./gradlew connectedAndroidTest
To build and run non-android tests: ./gradlew build To run the Android TCK test: ./gradlew connectedAndroidTest
a43a475
to
fde7041
Compare
@henri-tremblay thoughts on this gradle build? Using gradle is the easiest way to be able to maintain/run Android compatibility tests. :) |
Yes... A bit sadly but yes you are right. I want to deploy one last version with Maven to prevent any delay and then I will put my head into it. |
|
||
plugins { | ||
// Support convention plugins written in Kotlin. Convention plugins are build scripts in 'src/main' that automatically become available as plugins in the main build. | ||
`kotlin-dsl` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why specify the Kotlin DSL and kts
extension if none of the features are being used? Can cut down some CI time removing it.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not sure I understand. This is needed for precompiled script functions which we are using.
Without the kotlin-dsl
plugin, it wouldn't create the org.objenesis.java-conventions.gradle.kts
plugin.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I had assumed the the default build.gradle
/groovy dsl would have sufficed for the definition of the plugin. From my experience the groovy dsl executes much faster on fresh systems (like a CI container) vs the kotlin dsl.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Kotlin DSL gives better completion in the IDE.
Kotlin DSL performance was improved in Gradle 6.8.
https://docs.gradle.org/6.8.3/release-notes.html#kotlin-dsl-performance
Also, if CI caching is turned on the difference will be negligible.
What is missing to merge this? |
To build and run non-android tests:
./gradlew build
To run the Android TCK test: (addresses #78)
./gradlew connectedAndroidTest
If you change minSdk to
21
and run./gradlew connectedAndroidTest
the build will fail. (see #79)https://github.com/yogurtearl/objenesis/blob/b6ee12c618897150d34651d28b6de479c8dcad7d/tck-android/build.gradle.kts#L29
With error: