Commit graph

439 commits

Author SHA1 Message Date
Vitalii Elenhaupt
b868d88a85
CyclomaticCompexity: report onle def name 2019-07-12 23:33:08 +03:00
Vitalii Elenhaupt
54706192d2
Default cmd args 2019-07-06 22:42:50 +03:00
Vitalii Elenhaupt
0c7811411e
Increment compatible Crystal version 2019-06-06 19:12:31 +03:00
Vitalii Elenhaupt
cb4c3a9d17
Version bump 0.10.0 2019-06-06 19:11:23 +03:00
Vitalii Elenhaupt
ffa5dc9b4c
Crystal 0.29 fixes (#109)
* Fixes vs crystal head

* Use crystal nightly

* Remove trailing ? from local variable

* Do not use ? in the lhs

ref https://github.com/crystal-lang/crystal/issues/6685#issuecomment-419758587

* Upgrade to crystal 0.29.0 (warnings free) (#108)

* Remove trailing ? from local variable (take 2)

* Fix Time.now deprecation warnings

* Remove Crystal nightly
2019-06-06 19:10:26 +03:00
Vitalii Elenhaupt
633a08f9c7
Create FUNDING.yml 2019-06-04 19:52:00 +03:00
Vitalii Elenhaupt
ed66054596
Bump v0.9.2 2019-06-03 18:28:08 +03:00
Vitalii Elenhaupt
037d1dde74
Performance/FirstLastAfterFilter: ignore .first/.last with args
closes #104
2019-06-03 18:25:48 +03:00
Vitalii Elenhaupt
9e2061cbf6
Add executables back 2019-05-19 20:46:40 +03:00
Vitalii Elenhaupt
a4da1972aa
Remove executables 2019-05-19 16:45:04 +03:00
Vitalii Elenhaupt
de587f500a
Rename Severity::Refactoring -> Severity::Convention
it preserves clang format
2019-05-11 21:17:49 +03:00
Vitalii Elenhaupt
94e1d4567a
Properly report performance rules in macros
closes #102
2019-05-05 18:05:08 +03:00
Vitalii Elenhaupt
2ddf26b8c3
Correct doc example 2019-04-29 16:27:12 +03:00
Vitalii Elenhaupt
ca5e894e0b
Rename Severity.from_name to Severity.parse 2019-04-26 18:15:36 +03:00
Vitalii Elenhaupt
af395a3c13
Do not report if disabled rules exist
closes #101
2019-04-25 08:47:37 +03:00
Vitalii Elenhaupt
4000ac7d4d
Refresh readme example 2019-04-14 19:37:03 +03:00
Vitalii Elenhaupt
42235c02be
Merge pull request #100 from veelenga/feat/severity
Severity
2019-04-14 19:35:55 +03:00
Vitalii Elenhaupt
f1fe34f8b9
Use Enum.parse 2019-04-14 19:31:50 +03:00
Vitalii Elenhaupt
117e100855
Add severity to formatters 2019-04-14 16:45:31 +03:00
Vitalii Elenhaupt
575fe07879
Change the level of failure in the runner 2019-04-14 15:57:48 +03:00
Vitalii Elenhaupt
f6a57f9272
Set default severities 2019-04-14 12:15:38 +03:00
Vitalii Elenhaupt
0be42f94db
Convertable severity 2019-04-13 21:16:59 +03:00
Vitalii Elenhaupt
c95ea297bd
Stop calculating cyclomatic complexity for methods which have Macro conditions (#99) 2019-03-31 20:27:20 +03:00
Vitalii Elenhaupt
a0da393429
Version bump v0.9.1 2019-03-23 19:26:35 +02:00
Vitalii Elenhaupt
a059ade305
Remove one-line methods
Unnecessary level of abstraction
2019-03-23 19:25:16 +02:00
Vitalii Elenhaupt
3a71b86193
Properly report literals (#96) 2019-03-23 19:20:32 +02:00
Vitalii Elenhaupt
43bb29d3fd
Link VSCode ext 2019-03-02 16:38:03 +02:00
Vitalii Elenhaupt
d2b36047ef
Correct variable name rule doc 2019-02-24 20:04:35 +02:00
Vitalii Elenhaupt
3dabfb8dec
Correct json formatter output example 2019-02-24 20:04:04 +02:00
Sijawusz Pur Rahnama
e8a68a80d5 Fix several misspellings (#94) 2019-02-23 07:06:28 +02:00
Hannes Käufler
e850bff60f Hk cyclomatic complexity (#92)
* Proof of concept for cyclomatic complexity

* Enable configurability of rule

* Use the same nodes to increment the complexity as rubocop

* Fix typo in test description

* Properly indent code and simplify macro

* Move metric into metrics

* Cover a violation supressed by increased threshold

* Extract visitor into its own file

* Document cyclomatic complexity rule and visitor

* Refactor specs to use a macro

* Indent code inside macro

* Replace array with tuple for string formatting.

`Tuple` is stack based, whereas `Array` is allocated on the heap increasing GC pressure.

* Fix formatting

* Enable cyclomatic complexity rule by default
2019-02-16 21:03:44 +02:00
Sijawusz Pur Rahnama
c4016bd28c Use ~> operator in README installation section (#89) 2019-02-04 18:52:09 +02:00
Vitalii Elenhaupt
d5402df7fe
Link vim ale integration 2019-01-29 12:52:31 +02:00
Vitalii Elenhaupt
f294bb6a68
Improve explain output 2019-01-13 22:14:25 +02:00
Vitalii Elenhaupt
3c5e3cdef4
Exclude globs as arguments
Examples:

  $ ameba path/to/shard/*.cr !path/to/shard/lib
  $ ameba . !lib
2019-01-13 10:48:46 +02:00
Vitalii Elenhaupt
5aa7ee4854
Version bump v0.9.0 2019-01-09 13:20:58 +02:00
Vitalii Elenhaupt
866af184f1
Redundant return (#87) 2018-12-30 09:04:59 +02:00
Vitalii Elenhaupt
c91da1aa08
Let ameba explain the issue at the specified location (#86) 2018-12-27 23:34:10 +02:00
Vitalii Elenhaupt
4e19571fb3
Correct VariableNames doc example 2018-12-26 10:57:06 +02:00
Vitalii Elenhaupt
32ac199162
Correct trailing blank line position 2018-12-24 00:44:15 +02:00
Vitalii Elenhaupt
1d96319506
Remove unneded argument 2018-12-15 22:16:40 +02:00
Vitalii Elenhaupt
60ce034f1b
UnusedArgument: fix crystal upgrade regression 2018-12-12 22:21:33 +02:00
Vitalii Elenhaupt
f671d6f857
Show affected code while using a default formatter 2018-12-12 21:45:00 +02:00
Vitalii Elenhaupt
148044f479
Add description to syntax special rule 2018-12-09 00:12:14 +02:00
Vitalii Elenhaupt
20938da89a
Dynamically load rule documentation 2018-12-08 22:52:32 +02:00
Vitalii Elenhaupt
f8dab3bc34
MethodNames: correct reported location/end_location 2018-11-25 00:56:21 +02:00
Vitalii Elenhaupt
e951c0772a
ConstantNames: correct reported end_location 2018-11-25 00:37:46 +02:00
Vitalii Elenhaupt
9885457227
Track issue.end_location properly 2018-11-24 19:38:13 +02:00
Vitalii Elenhaupt
ad2c6bad0e
Use utility method to check if node is a loop 2018-11-22 11:52:00 +02:00
V. Elenhaupt
0fd5890738
Extend UnreachableCode rule: handle control flow (#83) 2018-11-22 10:38:32 +02:00