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
Improve release process and link shot-android module #98
Conversation
…d consume it from the sample projects
val androidDependencyVersion: String = "0.12.0" | ||
val androidDependencyGroup: String = "com.karumi" | ||
val androidDependencyName: String = "shot-android" | ||
val androidDependencyVersion: String = "4.0.1-SNAPSHOT" |
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.
What if......
we replace this version with "4.+" or directly any version so the user will be able to consume any artifact published without updating the gradle plugin? If we go for the "4.+" version we would be able to control breaking changes 😃
This would be awesome. Imagine we add a new feature to the interface....just by publishing the shot-android artifact, any user would be able to consume it without updating the whole plugin. The downside is....fixing a bug would also be a breaking change 🤔 What do you think guys?
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 am not completely sure about this. Even if we limit the range to only minor version I would be concerned that if there is a mistake in a release, users might get bugs/errors without making any change.
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.
We can keep it as is for the first release and we'll see how the project evolves 😃
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.
POM_NAME
has typo in shot/gradle.properties
which I think is information that would get published so should be fixed before merging
apart from that 👍
Added method for search all views with a filter and using it for remove cursor in EditText
Co-Authored-By: Jorge Rodriguez <grtylos@gmail.com>
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.
👍
…rate-new-shot-android-module
This activity will be used to test that shot-android disable cursor on edittext before make the screenshot.
Disable cursor on every EditText
📌 References
🎩 What is the goal?
Second PR needed to implement the feature described in the issue linked. This time we've configured the release plugin to include the new module we created in the previous PR and also simplified its configuration. Last but not least, we've updated the
shot-consumer
andshot-consumer-flavors
as an example of how the new feature will be used.How is it being implemented?
To implement this feature we've created a unified and custom release script named
release.gradle
where we configure the plugin we were already used to publish the project artifacts to maven central or a local repository depending on the version configuration. Snapshots will be configured locally and the rest of the versions will be uploaded to the maven central repository.Last but not least we've updated the consumers code using the new test runner we created and also the new
ScreenshotTest
interface we created in the past.Disclaimer: I did not update the documentation in this PR because I prefer to review the API usage first and then write the documentation. Additionally, I'm planning to add the rest of the features before publishing any new release and I'd like to review the documentation in a completely different PR so we can focus on the most relevant documentation details at once.
How can it be tested?
🤖 I've updated the CI configuration to be able to check if everything is working as expected 😃