Commit graph

353 commits

Author SHA1 Message Date
Vitalii Elenhaupt
15bb8f5331 Detect shadowing outer local vars 2018-05-29 09:47:20 +03:00
Vitalii Elenhaupt
3887da1438 Redundant begin: do not report if there is an inner handler
fixes #56
2018-05-25 11:23:11 +03:00
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
319a90d5d7
Add version to shards.yml in usage
If the version is missed, shards utilite takes the latest
release which can break the build if the user is not ready
to upgrade
2018-05-14 16:28:46 +03:00
Vitalii Elenhaupt
2a4cc56865
Add a link to Roadmap 2018-05-13 22:00:08 +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
fafe264d40
Bump v0.6.0 2018-05-13 14:48:43 +03:00
Vitalii Elenhaupt
402a0c0dab
Unused argument name suggession 2018-05-13 14:13:57 +03:00
Eloy
0b54b10579 Add sublime linter plugin 2018-05-12 21:44:24 +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
9708b94587
Typo in readme 2018-05-09 13:33:16 +03:00
Vitalii Elenhaupt
fa7f5c5b28
Support Crystal <= 0.24.2 2018-05-09 12:53:01 +03:00
Vitalii Elenhaupt
58e6b42ea9
Improve usage info & remove useless stuff 2018-05-09 00:28:06 +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
b5ba14ea0c
Ignore dwarf file 2018-05-08 22:19:52 +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
Sijawusz Pur Rahnama
5647621393 Drop --no-debug flag when building 2018-04-13 20:55:35 +03:00
Vitalii Elenhaupt
d307f01bfa
Add a space delimiter to duplicated hash keys 2018-04-13 20:10:21 +03:00
Vitalii Elenhaupt
9cf5d05dc0
v0.5.1 2018-04-12 19:22:42 +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
Sijawusz Pur Rahnama
b225b17b5b Use shards build command 2018-04-11 15:31:20 +03:00
Sijawusz Pur Rahnama
956f2e4f49 Update README.md
Replace deprecated `crystal deps` command with `shards install`
2018-04-11 13:06:39 +03:00
Vitalii Elenhaupt
7a1cf29ea7
Revert 6d485d4edf 2018-03-18 19:51:33 +02:00
Vitalii Elenhaupt
6d485d4edf
Github Pages deployment is broken with dpl 1.9.0 2018-03-11 20:00:12 +02:00
Vitalii Elenhaupt
f4734a5467
Crystal 0.24.2 2018-03-11 19:55:43 +02:00
Vitalii Elenhaupt
c6d842c01d
Verbose deployement via travis 2018-03-08 19:20:44 +02:00
Vitalii Elenhaupt
2f837375ec New rule: rand zero 2018-03-08 18:59:20 +02:00
Vitalii Elenhaupt
672de9f86b
v0.5.0 2018-02-02 22:17:39 +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
bfe18f4a77
v0.4.2 2018-01-25 12:38:33 +02:00
Vitalii Elenhaupt
4c85ad7c75 Syntax rule running priorities 2018-01-25 12:37:25 +02:00