Skip to content

Commit 06e95f7

Browse files
authored
Replace Spotless with Kotlinter and applying KtLint (#2419)
Task/Issue URL: https://app.asana.com/0/1174433894299346/1203115816821758 ### Description This PR replaces Spotless with Kotlinter to format code using Ktlint. Updated .editorconfig
1 parent 2acffdc commit 06e95f7

File tree

1,298 files changed

+8447
-8082
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,298 files changed

+8447
-8082
lines changed

.editorconfig

+2-2
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,8 @@ ij_kotlin_align_multiline_extends_list = false
1818
ij_kotlin_align_multiline_method_parentheses = false
1919
ij_kotlin_align_multiline_parameters = false
2020
ij_kotlin_align_multiline_parameters_in_calls = false
21-
ij_kotlin_allow_trailing_comma = false
22-
ij_kotlin_allow_trailing_comma_on_call_site = false
21+
ij_kotlin_allow_trailing_comma = true
22+
ij_kotlin_allow_trailing_comma_on_call_site = true
2323
ij_kotlin_assignment_wrap = normal
2424
ij_kotlin_blank_lines_after_class_header = 0
2525
ij_kotlin_blank_lines_around_block_when_branches = 0

.githooks/pre-commit

+1
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,6 @@
22
#!/bin/bash
33
echo "Running spotless check"
44
./gradlew spotlessApply
5+
./gradlew formatKotlin
56
git add `git diff --name-only --cached`
67
exit 0

.github/workflows/ci.yml

+4-4
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,8 @@ concurrency:
1818
cancel-in-progress: true
1919

2020
jobs:
21-
spotless:
22-
name: Spotless
21+
code_formatting:
22+
name: Code Formatting
2323
runs-on: ubuntu-latest
2424

2525
steps:
@@ -34,10 +34,10 @@ jobs:
3434
java-version: '11'
3535
distribution: 'adopt'
3636

37-
- name: Spotless
37+
- name: Run Code Formatting Checks
3838
uses: gradle/gradle-build-action@v2
3939
with:
40-
arguments: spotless
40+
arguments: code_format_checks
4141

4242
unit_tests:
4343
name: Unit tests

ad-click/ad-click-api/build.gradle

+1-1
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ plugins {
1919
id 'kotlin'
2020
}
2121

22-
apply from: "$rootProject.projectDir/spotless.gradle"
22+
apply from: "$rootProject.projectDir/code-formatting.gradle"
2323

2424
java {
2525
sourceCompatibility = JavaVersion.VERSION_1_8

ad-click/ad-click-impl/src/main/java/com/duckduckgo/adclick/impl/AdClickAttributionFeature.kt

+4-4
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ data class AdClickAttributionFeature(
2020
val state: String,
2121
val minSupportedVersion: Int?,
2222
val settings: AdClickAttributionSettings,
23-
val exceptions: List<AdClickAttributionException>
23+
val exceptions: List<AdClickAttributionException>,
2424
)
2525

2626
data class AdClickAttributionSettings(
@@ -29,17 +29,17 @@ data class AdClickAttributionSettings(
2929
val navigationExpiration: Long,
3030
val totalExpiration: Long,
3131
val heuristicDetection: String?,
32-
val domainDetection: String?
32+
val domainDetection: String?,
3333
)
3434

3535
data class AdClickAttributionLinkFormat(
3636
val url: String,
37-
val adDomainParameterName: String?
37+
val adDomainParameterName: String?,
3838
)
3939

4040
data class AdClickAttributionAllowlist(
4141
val blocklistEntry: String?,
42-
val host: String?
42+
val host: String?,
4343
)
4444

4545
data class AdClickAttributionException(val domain: String, val reason: String)

ad-click/ad-click-impl/src/main/java/com/duckduckgo/adclick/impl/AdClickAttributionPlugin.kt

+7-7
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ import javax.inject.Inject
3434
@ContributesMultibinding(AppScope::class)
3535
class AdClickAttributionPlugin @Inject constructor(
3636
private val adClickAttributionRepository: AdClickAttributionRepository,
37-
private val adClickFeatureTogglesRepository: AdClickFeatureToggleRepository
37+
private val adClickFeatureTogglesRepository: AdClickFeatureToggleRepository,
3838
) : PrivacyFeaturePlugin {
3939

4040
override fun store(featureName: String, jsonString: String): Boolean {
@@ -55,8 +55,8 @@ class AdClickAttributionPlugin @Inject constructor(
5555
linkFormats.add(
5656
AdClickAttributionLinkFormatEntity(
5757
url = it.url,
58-
adDomainParameterName = it.adDomainParameterName.orEmpty()
59-
)
58+
adDomainParameterName = it.adDomainParameterName.orEmpty(),
59+
),
6060
)
6161
}
6262

@@ -70,14 +70,14 @@ class AdClickAttributionPlugin @Inject constructor(
7070
expirations.add(
7171
AdClickAttributionExpirationEntity(
7272
navigationExpiration = it.navigationExpiration,
73-
totalExpiration = it.totalExpiration
74-
)
73+
totalExpiration = it.totalExpiration,
74+
),
7575
)
7676
detections.add(
7777
AdClickAttributionDetectionEntity(
7878
heuristicDetection = it.heuristicDetection.orEmpty(),
79-
domainDetection = it.domainDetection.orEmpty()
80-
)
79+
domainDetection = it.domainDetection.orEmpty(),
80+
),
8181
)
8282
}
8383

ad-click/ad-click-impl/src/main/java/com/duckduckgo/adclick/impl/AdClickFeatureTogglesPlugin.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ import javax.inject.Inject
2626
@ContributesMultibinding(AppScope::class)
2727
class AdClickFeatureTogglesPlugin @Inject constructor(
2828
private val adClickFeatureToggleRepository: AdClickFeatureToggleRepository,
29-
private val appBuildConfig: AppBuildConfig
29+
private val appBuildConfig: AppBuildConfig,
3030
) : FeatureTogglesPlugin {
3131
override fun isEnabled(featureName: String, defaultValue: Boolean): Boolean? {
3232
val adClickFeature = adClickFeatureValueOf(featureName) ?: return null

ad-click/ad-click-impl/src/main/java/com/duckduckgo/adclick/impl/DataRemovalAdClickWorker.kt

+4-4
Original file line numberDiff line numberDiff line change
@@ -31,10 +31,10 @@ import com.duckduckgo.anvil.annotations.ContributesWorker
3131
import com.duckduckgo.app.global.DispatcherProvider
3232
import com.duckduckgo.di.scopes.AppScope
3333
import com.squareup.anvil.annotations.ContributesMultibinding
34-
import kotlinx.coroutines.withContext
35-
import timber.log.Timber
3634
import java.util.concurrent.TimeUnit
3735
import javax.inject.Inject
36+
import kotlinx.coroutines.withContext
37+
import timber.log.Timber
3838

3939
@ContributesWorker(AppScope::class)
4040
class DataRemovalAdClickWorker(context: Context, workerParameters: WorkerParameters) :
@@ -57,10 +57,10 @@ class DataRemovalAdClickWorker(context: Context, workerParameters: WorkerParamet
5757

5858
@ContributesMultibinding(
5959
scope = AppScope::class,
60-
boundType = LifecycleObserver::class
60+
boundType = LifecycleObserver::class,
6161
)
6262
class DataRemovalAdClickWorkerScheduler @Inject constructor(
63-
private val workManager: WorkManager
63+
private val workManager: WorkManager,
6464
) : DefaultLifecycleObserver {
6565

6666
override fun onCreate(owner: LifecycleOwner) {

ad-click/ad-click-impl/src/main/java/com/duckduckgo/adclick/impl/DuckDuckGoAdClickData.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,8 @@ package com.duckduckgo.adclick.impl
1818

1919
import com.duckduckgo.di.scopes.AppScope
2020
import com.squareup.anvil.annotations.ContributesBinding
21-
import timber.log.Timber
2221
import javax.inject.Inject
22+
import timber.log.Timber
2323

2424
interface AdClickData {
2525

ad-click/ad-click-impl/src/main/java/com/duckduckgo/adclick/impl/DuckDuckGoAdClickManager.kt

+11-11
Original file line numberDiff line numberDiff line change
@@ -23,16 +23,16 @@ import com.duckduckgo.app.global.UriString
2323
import com.duckduckgo.di.scopes.AppScope
2424
import com.squareup.anvil.annotations.ContributesBinding
2525
import dagger.SingleInstanceIn
26+
import javax.inject.Inject
2627
import okhttp3.internal.publicsuffix.PublicSuffixDatabase
2728
import timber.log.Timber
28-
import javax.inject.Inject
2929

3030
@SingleInstanceIn(AppScope::class)
3131
@ContributesBinding(AppScope::class)
3232
class DuckDuckGoAdClickManager @Inject constructor(
3333
private val adClickData: AdClickData,
3434
private val adClickAttribution: AdClickAttribution,
35-
private val adClickPixels: AdClickPixels
35+
private val adClickPixels: AdClickPixels,
3636
) : AdClickManager {
3737

3838
private val publicSuffixDatabase = PublicSuffixDatabase()
@@ -147,8 +147,8 @@ class DuckDuckGoAdClickManager @Inject constructor(
147147
// navigation to another domain, add expiry
148148
adClickData.addExemption(
149149
exemption.copy(
150-
navigationExemptionDeadline = System.currentTimeMillis() + adClickAttribution.getNavigationExpirationMillis()
151-
)
150+
navigationExemptionDeadline = System.currentTimeMillis() + adClickAttribution.getNavigationExpirationMillis(),
151+
),
152152
)
153153
} else {
154154
// navigation back to an existing domain, remove expiry
@@ -188,8 +188,8 @@ class DuckDuckGoAdClickManager @Inject constructor(
188188
tabId,
189189
sourceTabExemption.copy(
190190
navigationExemptionDeadline = Exemption.NO_EXPIRY,
191-
adClickActivePixelFired = false
192-
)
191+
adClickActivePixelFired = false,
192+
),
193193
)
194194
adClickPixels.updateCountPixel(AdClickPixelName.AD_CLICK_PAGELOADS_WITH_AD_ATTRIBUTION)
195195
}
@@ -201,8 +201,8 @@ class DuckDuckGoAdClickManager @Inject constructor(
201201
sourceTabExemption.copy(
202202
hostTldPlusOne = sourceTabHostTldPLusOne,
203203
navigationExemptionDeadline = System.currentTimeMillis() + adClickAttribution.getNavigationExpirationMillis(),
204-
adClickActivePixelFired = false
205-
)
204+
adClickActivePixelFired = false,
205+
),
206206
)
207207
adClickPixels.updateCountPixel(AdClickPixelName.AD_CLICK_PAGELOADS_WITH_AD_ATTRIBUTION)
208208
}
@@ -214,14 +214,14 @@ class DuckDuckGoAdClickManager @Inject constructor(
214214
Exemption(
215215
hostTldPlusOne = savedAdDomain.ifEmpty { urlAdDomain },
216216
navigationExemptionDeadline = Exemption.NO_EXPIRY,
217-
exemptionDeadline = System.currentTimeMillis() + adClickAttribution.getTotalExpirationMillis()
218-
)
217+
exemptionDeadline = System.currentTimeMillis() + adClickAttribution.getTotalExpirationMillis(),
218+
),
219219
)
220220
adClickPixels.fireAdClickDetectedPixel(
221221
savedAdDomain = savedAdDomain,
222222
urlAdDomain = urlAdDomain,
223223
heuristicEnabled = adClickAttribution.isHeuristicDetectionEnabled(),
224-
domainEnabled = adClickAttribution.isDomainDetectionEnabled()
224+
domainEnabled = adClickAttribution.isDomainDetectionEnabled(),
225225
)
226226
adClickPixels.updateCountPixel(AdClickPixelName.AD_CLICK_PAGELOADS_WITH_AD_ATTRIBUTION)
227227
}

ad-click/ad-click-impl/src/main/java/com/duckduckgo/adclick/impl/Exemption.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ data class Exemption(
2020
val hostTldPlusOne: String,
2121
val navigationExemptionDeadline: Long,
2222
val exemptionDeadline: Long,
23-
val adClickActivePixelFired: Boolean = false
23+
val adClickActivePixelFired: Boolean = false,
2424
) {
2525
fun isExpired(): Boolean {
2626
val now = System.currentTimeMillis()

ad-click/ad-click-impl/src/main/java/com/duckduckgo/adclick/impl/RealAdClickAttribution.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ interface AdClickAttribution {
4040
@ContributesBinding(AppScope::class)
4141
class RealAdClickAttribution @Inject constructor(
4242
private val adClickAttributionRepository: AdClickAttributionRepository,
43-
private val featureToggle: FeatureToggle
43+
private val featureToggle: FeatureToggle,
4444
) : AdClickAttribution {
4545

4646
override fun isAllowed(url: String): Boolean {

ad-click/ad-click-impl/src/main/java/com/duckduckgo/adclick/impl/di/AdClickModule.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ class AdClickModule {
5050
fun provideAdClickAttributionRepository(
5151
database: AdClickDatabase,
5252
@AppCoroutineScope coroutineScope: CoroutineScope,
53-
dispatcherProvider: DispatcherProvider
53+
dispatcherProvider: DispatcherProvider,
5454
): AdClickAttributionRepository {
5555
return RealAdClickAttributionRepository(database, coroutineScope, dispatcherProvider)
5656
}

ad-click/ad-click-impl/src/main/java/com/duckduckgo/adclick/impl/pixels/AdClickDailyReportingWorker.kt

+4-4
Original file line numberDiff line numberDiff line change
@@ -30,10 +30,10 @@ import com.duckduckgo.anvil.annotations.ContributesWorker
3030
import com.duckduckgo.app.global.DispatcherProvider
3131
import com.duckduckgo.di.scopes.AppScope
3232
import com.squareup.anvil.annotations.ContributesMultibinding
33-
import kotlinx.coroutines.withContext
34-
import timber.log.Timber
3533
import java.util.concurrent.TimeUnit
3634
import javax.inject.Inject
35+
import kotlinx.coroutines.withContext
36+
import timber.log.Timber
3737

3838
@ContributesWorker(AppScope::class)
3939
class AdClickDailyReportingWorker(context: Context, workerParameters: WorkerParameters) :
@@ -55,10 +55,10 @@ class AdClickDailyReportingWorker(context: Context, workerParameters: WorkerPara
5555

5656
@ContributesMultibinding(
5757
scope = AppScope::class,
58-
boundType = LifecycleObserver::class
58+
boundType = LifecycleObserver::class,
5959
)
6060
class AdClickDailyReportingWorkerScheduler @Inject constructor(
61-
private val workManager: WorkManager
61+
private val workManager: WorkManager,
6262
) : DefaultLifecycleObserver {
6363

6464
override fun onCreate(owner: LifecycleOwner) {

ad-click/ad-click-impl/src/main/java/com/duckduckgo/adclick/impl/pixels/AdClickPixelName.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ import com.duckduckgo.app.statistics.pixels.Pixel
2121
enum class AdClickPixelName(override val pixelName: String) : Pixel.PixelName {
2222
AD_CLICK_DETECTED("m_ad_click_detected"),
2323
AD_CLICK_ACTIVE("m_ad_click_active"),
24-
AD_CLICK_PAGELOADS_WITH_AD_ATTRIBUTION("m_pageloads_with_ad_attribution")
24+
AD_CLICK_PAGELOADS_WITH_AD_ATTRIBUTION("m_pageloads_with_ad_attribution"),
2525
}
2626

2727
object AdClickPixelValues {

ad-click/ad-click-impl/src/main/java/com/duckduckgo/adclick/impl/pixels/AdClickPixels.kt

+2-2
Original file line numberDiff line numberDiff line change
@@ -24,9 +24,9 @@ import com.duckduckgo.adclick.impl.pixels.AdClickPixelParameters.AD_CLICK_PAGELO
2424
import com.duckduckgo.app.statistics.pixels.Pixel
2525
import com.duckduckgo.di.scopes.AppScope
2626
import com.squareup.anvil.annotations.ContributesBinding
27-
import org.threeten.bp.Instant
2827
import java.util.concurrent.TimeUnit
2928
import javax.inject.Inject
29+
import org.threeten.bp.Instant
3030

3131
interface AdClickPixels {
3232
fun fireAdClickActivePixel(exemption: Exemption?): Boolean
@@ -38,7 +38,7 @@ interface AdClickPixels {
3838
@ContributesBinding(AppScope::class)
3939
class RealAdClickPixels @Inject constructor(
4040
private val pixel: Pixel,
41-
private val context: Context
41+
private val context: Context,
4242
) : AdClickPixels {
4343

4444
private val preferences: SharedPreferences

ad-click/ad-click-impl/src/test/java/com/duckduckgo/adclick/impl/AdClickAttributionPluginTest.kt

+2-2
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ class AdClickAttributionPluginTest {
4545
fun before() {
4646
testee = AdClickAttributionPlugin(
4747
mockAdClickAttributionRepository,
48-
mockFeatureTogglesRepository
48+
mockFeatureTogglesRepository,
4949
)
5050
}
5151

@@ -94,7 +94,7 @@ class AdClickAttributionPluginTest {
9494
linkFormats = linkFormatCaptor.capture(),
9595
allowList = allowlistCaptor.capture(),
9696
expirations = expirationCaptor.capture(),
97-
detections = detectionsCaptor.capture()
97+
detections = detectionsCaptor.capture(),
9898
)
9999

100100
val linkFormatEntity = linkFormatCaptor.firstValue

0 commit comments

Comments
 (0)