Skip to content

Releases: Serchinastico/Lin

v0.0.6 - Tylos

22 Mar 19:50
Compare
Choose a tag to compare

Update dependencies to fix all the integration issues people was having.

v0.0.5 - Woopsie

25 Jan 00:34
Compare
Choose a tag to compare

Add the latest rules that weren't added to the Lint registry 🙏

v0.0.4 - Testing

20 Jan 22:11
Compare
Choose a tag to compare

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

27 Dec 23:30
Compare
Choose a tag to compare

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

20 Dec 23:23
Compare
Choose a tag to compare

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) and atMost(n).
  • New detectors:
    • noMoreThanOneGsonInstance
    • noMoreThanOneDateInstance
    • noSetOnClickListenerCalls

v0.0.1 - Let's start!

11 Dec 19:39
2f1a291
Compare
Choose a tag to compare

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.