Este repositorio contiene una colección de verificaciones de pelusa de Android/Kotlin personalizadas que utilizamos en nuestras bases de código Android y Kotlin en Slack.
Si bien publicamos artefactos para Maven Central, algunos de los controles de peluchas solo pueden ser realmente relevantes para la base de código de Slack. Los desarrollamos al aire libre a la acción del conocimiento con la comunidad.
Agregue la dependencia a la configuración lintChecks . Nota Para los proyectos que no son de Android, debe aplicar el complemento de Gradle com.android.lint para usarlo.
dependencies {
lintChecks( " com.slack.lint:slack-lint-checks:<version> " )
} El paquete slack.lint.mocking contiene varios detectores y utilidades para detectar la burla de los tipos que no deben burlarse. Esto es similar a DoNotMockChecker de ErrorProy y actúa como una capa de aplicación de API y clases anotadas con @DoNotMock . Esto también detecta tipos comunes que nunca deben burlarse, como las clases data de Kotlin o las clases de autovaloramiento.
Para escribir un código más inclusivo, tenemos una herramienta InclusiveNamingChecker para verificar una lista configurable de nombres no inclusivos.
MoshiUsageDetector contiene una gran cantidad de verificaciones para errores de programador comunes al escribir clases para usar con Moshi y Moshix.
JavaOnlyDetector - Detecta el uso de API solo Java de Kotlin. Basado en la implementación inédita original en Uber/Lint-Checks.DaggerKotlinIssuesDetector : detecta algunos problemas conocidos cuando se usa Dagger en el código Kotlin.RetrofitUsageDetector : detecta algunos problemas comunes cuando se usa Retrofit.DenyListedApi : detecta el uso de API que simplemente no deberían usarse.MustUseNamedParams : se puede usar en funciones que siempre deben usar parámetros nombrados. Útil para API que tienen muchos parámetros y/o pueden cambiar su pedido y desea mantener los cambios compatibles con la fuente. Copyright 2021 Slack Technologies, LLC
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.