A rule we used for a while now is using the Thread annotation (e.g.: @UIThread, @WorkerThread, …) to ensure operations that should happen in a specific context didn't cross thread expectations.
Unfortunately we had a large number of @Suppress annotations and thread boundaries crossings in our code base.
This PR provides two things :
enhance the rule to detekt some known thread switching (e.g. using executors) to avoid the need of legitimate @Suppress annotations
What does this PR do?
A rule we used for a while now is using the Thread annotation (e.g.:
@UIThread
,@WorkerThread
, …) to ensure operations that should happen in a specific context didn't cross thread expectations.Unfortunately we had a large number of
@Suppress
annotations and thread boundaries crossings in our code base.This PR provides two things :
@Suppress
annotations