Brian J. Cardiff
3e099e9afc
Support upcoming Crystal 0.25.0
...
The changes are compatible with crystal 0.24.2
2018-05-23 13:29:27 +03:00
Vitalii Elenhaupt
1cea21b147
Do not report float numbers as large if fraction has less than 3 digits
2018-05-13 19:04:15 +03:00
Vitalii Elenhaupt
7a4fcec5ce
Prefer Tuple over Array to format a message to reduce GC
2018-05-13 14:59:30 +03:00
Vitalii Elenhaupt
402a0c0dab
Unused argument name suggession
2018-05-13 14:13:57 +03:00
Vitalii Elenhaupt
bf907ee98b
Rework variable references detection in macro
2018-05-12 20:08:24 +03:00
Vitalii Elenhaupt
efe67212b0
Support of Crystal::UnitializedVar
2018-05-12 18:29:31 +03:00
Vitalii Elenhaupt
415432713a
Prevent false positiveness cause by macro literals
...
https://github.com/crystal-lang/crystal/pull/6055#issuecomment-386376227
2018-05-12 17:37:54 +03:00
Vitalii Elenhaupt
6579c8f573
Ignore config if todo formatter is used
...
Fixes #53
2018-05-11 21:39:09 +03:00
Vitalii Elenhaupt
4546b90b54
Add JSON formatter
2018-05-11 21:28:30 +03:00
Vitalii Elenhaupt
fa7f5c5b28
Support Crystal <= 0.24.2
2018-05-09 12:53:01 +03:00
Vitalii Elenhaupt
1fc0c525bd
Do not report unneeded disable directive if directive is used one line above
2018-05-09 00:14:46 +03:00
Vitalii Elenhaupt
c7fc905413
Mark the internal visitor class as private
2018-05-08 22:23:01 +03:00
Vitalii Elenhaupt
eab5499f8e
Add a workaround for https://github.com/crystal-lang/crystal/pull/6032
2018-05-08 22:18:15 +03:00
V. Elenhaupt
c2aa526e21
Unused argument rule ( #52 )
...
* Unused argument rule
* IgnoreDefs, IgnoreBlocks, IgnoreProcs parameters
* Implicit reference by super keyworkd
* Handle macro arguments
2018-05-08 22:00:17 +03:00
Vitalii Elenhaupt
cc71511080
Use Var#special_var? to check if var is special
2018-05-04 16:25:44 +03:00
V. Elenhaupt
6475c2bb25
Variable scope & useless assignments ( #41 )
...
* AST::Visitor -> AST::NodeVisitor
* Scope & ScopeVisitor
* Useless assignment rule
* Instance vars and useless assignments
* Multiple assigns one by one
* Support outer scope
* Variable used in the useless assignment
* Support OpAssign & MultiAssign
* Captured by block
* Variable, Assignment, Reference & Refactoring
* Variable has references, Assignment can be referenced
* Branch entity
* Handle useless assignments in branches
* Handle assignments in a loop
* Handle branch equality
* Handle special var `$?` assignment
* Improve captured by block stuff
* Avoid assignments in property definitions
(UselessAssign rule reports an warning)
* Support MacroIf and MacroFor branches
* Handle assignments with shadowed vars in inner scopes
* Add method arguments as scope variables
* Handle case if branch is blank
* Top level scope
* Handle case when branch is nop?
2018-05-03 18:57:47 +03:00
V. Elenhaupt
60c1b86890
Constantize string error messages ( #50 )
2018-04-17 07:29:43 +03:00
Vitalii Elenhaupt
d307f01bfa
Add a space delimiter to duplicated hash keys
2018-04-13 20:10:21 +03:00
Hugo Abonizio
21a3850a65
Ignore alternative names starting with _
2018-04-12 19:20:41 +03:00
Hugo Abonizio
d6c6af883d
Ignores PredicateName if alternative isn't valid (e.g. is_404?)
2018-04-12 19:20:41 +03:00
Vitalii Elenhaupt
9e2ab9c002
Show hash duplicated keys in error message
...
closes #45
2018-04-12 19:18:33 +03:00
Vitalii Elenhaupt
2f837375ec
New rule: rand zero
2018-03-08 18:59:20 +02:00
Vitalii Elenhaupt
eda5960b0f
Check for unneeded directives when all other rules are done
2018-02-02 22:17:04 +02:00
Vitalii Elenhaupt
6fb483a2dd
Prevent disabling of UnneededDisableDirective rule
2018-02-02 22:17:04 +02:00
Vitalii Elenhaupt
8075c39aa9
Unneeded disable directive
2018-02-02 22:17:04 +02:00
Vitalii Elenhaupt
2382657e15
Add rule's name to flycheck formatter
2018-01-31 13:30:59 +02:00
Vitalii Elenhaupt
69cff77970
Add DisabledFormatter to trace disabled lines
2018-01-30 16:09:00 +02:00
Vitalii Elenhaupt
9f85b16e09
Add inline directives parsing and disabling
2018-01-30 16:09:00 +02:00
Vitalii Elenhaupt
55b66e7975
Use more natural way to define error with custom loc
2018-01-30 16:09:00 +02:00
Vitalii Elenhaupt
1d436fbb94
Allow to configure formatter via configuration file
...
closes #20
2018-01-25 16:53:08 +02:00
Vitalii Elenhaupt
4c85ad7c75
Syntax rule running priorities
2018-01-25 12:37:25 +02:00
Vitalii Elenhaupt
c9db63bf34
Syntax rule
2018-01-25 12:37:25 +02:00
Vitalii Elenhaupt
ca502754b6
Allow to inspect a directory
2018-01-24 14:02:18 +02:00
Vitalii Elenhaupt
51fa9f024b
Much simpler way to build todo yaml
...
https://stackoverflow.com/a/39906916/1586762
thx @asterite 🎉
2017-12-29 12:11:38 +02:00
Vitalii Elenhaupt
03ee9f3e38
Use shards version
...
refs:
* https://github.com/crystal-lang/crystal/pull/5428
* https://github.com/crystal-lang/shards/pull/148
2017-12-26 18:21:21 +02:00
Vitalii Elenhaupt
7e8703dda0
Crystal 0.24.1 support
2017-12-26 18:21:21 +02:00
Vitalii Elenhaupt
eca0d28692
Excluded relative path path
2017-12-18 13:06:19 +02:00
Vitalii Elenhaupt
b515faff87
Add cmd specs
2017-12-11 11:19:56 +02:00
Vitalii Elenhaupt
e1fa8677b0
Add flycheck formatter
...
refs #26
2017-12-11 11:19:56 +02:00
Vitalii Elenhaupt
202a73ae0e
v0.3.0
2017-12-06 17:00:44 +02:00
V. Elenhaupt
f12a224dad
New rule: shadowed exception ( #25 )
2017-12-06 16:59:10 +02:00
Vitalii Elenhaupt
96c1af4e35
New rule: useless condition in when
...
thanks to @hugoabonizio for suggesstion
2017-12-02 21:55:50 +02:00
Vitalii Elenhaupt
8bf5066d6a
Add Excluded property to the rule
2017-12-01 19:01:25 +02:00
Vitalii Elenhaupt
a1854c0aa3
TODO formatter
2017-12-01 19:01:25 +02:00
Vitalii Elenhaupt
bc552d0730
Generate config
...
closes #17
2017-12-01 19:01:25 +02:00
Vitalii Elenhaupt
db815a2e30
Fix error message
2017-12-01 00:03:05 +02:00
Luis Lavena
27384ed889
Recognize individual files to process from CLI ( #23 )
...
Recent refactor of code introduced a regression: provide individual
files to CLI resulted in all *.cr files being processed instead, so
given file was ignored.
This change restores the original behavior that allows more fine
grained execution.
2017-11-29 10:52:40 +02:00
Hugo Abonizio
b023ae0baa
Disallows while true
( #22 )
...
* Disallows `while true`
* Add syntax highlighting in documentation
* Replace `while true` occurrencies
* Add WhileTrue rule to config sample
2017-11-27 15:35:15 +02:00
Vitalii Elenhaupt
21abce63bd
Report only wrong predicate names
2017-11-23 19:58:59 +02:00
Vitalii Elenhaupt
dceafd26e5
Except & only cli flags
2017-11-23 19:49:45 +02:00