Releases: Serchinastico/Lin
Releases · Serchinastico/Lin
v0.0.6 - Tylos
Update dependencies to fix all the integration issues people was having.
v0.0.5 - Woopsie
Add the latest rules that weren't added to the Lint registry 🙏
v0.0.4 - Testing
Before starting to work on XML support for Lin we released a testing module for you to test your own detectors.
- New
lin.test
module with a DSL to make your detectors tests much simpler. - New detectors:
noFindViewByIdCalls
v0.0.3 - Jitpack
The most important thing we've addressed in this release is that you can now use Jitpack to use the project. Follow the instructions on the README to learn how to do it.
- Better error reporting. It now points to any of the rules that have activated the detector, in the future this should be configurable with some flag.
- Dependant rules! We now can store information on rules to use them on other rules. The problem we are trying to solve is to be able to write rules that detect that a type has a given name depending on other elements on the detector, e.g. Activity names and layout names or activity names and presenter names.
- New detectors:
onlyConstantsInTypeOrFile
wrongSyntheticViewReference
v0.0.2 - Completeness
With this release we changed the rules
module and it's now called detectors
to better match the official linting names. Besides that:
- We now have a complete DSL covering all the different elements we can read from the
org.jetbrains.uast.visitor.UastVisitor
interface. The DSL is not completely correct so if you make a mistake like writing the following rule:file { file { file { /* ... */ } } }
it won't match anything. We will work on correctness for the next release, making sure you can only build syntactically correct rule trees. - Quantifiers are here! You can now define how many times you want to find a rule to report your issue. The most common use case is when you don't want something to happen
moreThan(1)
times but there are many more:any
(default one),all
,none
,lessThan(n)
,moreThan(n)
,atLeast(n)
andatMost(n)
. - New detectors:
noMoreThanOneGsonInstance
noMoreThanOneDateInstance
noSetOnClickListenerCalls
v0.0.1 - Let's start!
First release of the multiple artifacts this project creates.
- The
dsl
module/artifact describes a simple DSL with close-to-zero expressivity (only contemplates some simple AST nodes) to create your own linting rules. It also exposes some extension functions for common functions. - The
rules
module/artifact has 4 highly-opinionated rules for Android development.