Commit Graph

306 Commits

Author SHA1 Message Date
Jan Jurzitza 142e284588 foreach missing body crash fix (#515) 2017-08-13 14:14:02 +02:00
Jan Jurzitza 34f893d29f Add a findDeclarationOf overload that takes a callback (#512)
* Add a findDeclarationOf overload that takes a callback
This makes getting the declarations when working with dscanner as a library much easier. Another possible improvement for the future could be directly passing File objects or an input range of Files

* Fix formatting of delegate in findDeclarationOf
2017-08-12 23:14:18 +02:00
Richard Andrew Cattermole 45563536d1 Merge pull request #510 from dlang-community/issue-452
fix #452 - false pos for naming style of a VariableDecl with the "enum" storage class
2017-08-12 01:05:10 +12:00
Jan Jurzitza 0d48f27873 Don't warn about unused identifers named `_` (#511)
Fix #490
2017-08-06 12:30:32 +02:00
Basile Burg 511cee29dc
fix #452 - false pos for namz style for VariableDecl with the "enum" storage class 2017-08-06 02:09:06 +02:00
Basile Burg 55ecfbe479 fix #370 - False positive for duplicate variable name check with structs (#509)
fix #370 - False positive for duplicate variable name check with structs
merged-on-behalf-of: Petar Kirov <ZombineDev@users.noreply.github.com>
2017-08-05 19:10:08 +02:00
Basile Burg e4b0ecc7cf final attrib checker - handle static (#508) 2017-08-04 16:57:16 +02:00
Mark Barbone e7ea632ea4 No longer uses deprecated string.removechars 2017-08-02 15:32:48 -04:00
Jan Jurzitza a916a64fb7 Fix #501 (#502) 2017-07-28 21:05:19 +02:00
Basile Burg 7b91483943 fix #312 - spurious warnings about non-const toString inside const block (#505) 2017-07-28 00:30:03 +02:00
Basile Burg ce6056d4bc fix #275 - cant run tests under windows (#504)
* fix #275 - cant run tests under windows

* fix typo
2017-07-27 16:01:02 +02:00
Basile Burg 7ee23b3d73 fix deprecations messages related to message function (#503)
* fix deprecations messages related to message function

* update dsymbol as a git submodule too
2017-07-27 12:16:52 +02:00
Sebastian Wilzbach 8304e8540c assert_without_msg: Check for std.exception.enforce 2017-07-08 10:20:05 +02:00
Sebastian Wilzbach 5ba4a7bffa Add check for asserts without an explantory message 2017-07-08 03:30:50 +02:00
Sebastian Wilzbach a85393612a Apply selective filtering for has_public_example as well 2017-06-30 04:40:20 +02:00
Sebastian Wilzbach 45ef861268 Fix #457 - Allow to apply checks only for specific modules (#460)
* Fix #457 - Allow to apply checks only for specific modules

* update inifiled to 1.0.2

* Compile dependencies separately, s.t. their unittests don't get executed
2017-06-30 04:31:07 +02:00
Basile Burg f89d356601 Fixes cases of false or non positive with the useless init check (#475)
* fix #474 fix #473 fix #476 - Cases of false and non positive with the useless init check

* do not warn on documented variables

* fix #477 - Custom type initialized to init should not trigger a warn

* allow struct.init when know struct has `@disable` ctor

* fix last false detection in phobos

* prevent check in the "compiles" trait

* - use canFind when filter.empty was negated
- FQN the struct names
- prevent a double query in the canBeInit AA
- import the whole also package
- there was not test on non-initilized variables

* fix, self-linting missed a case that was not yet fixed

* fix more undetected warns during self linting

* use a flag instead of a stack + apply skipTests

* convert spaces to tabs
2017-06-28 08:08:33 +02:00
Sebastian Wilzbach ba751105a2 Merge pull request #470 from dlang-community/has_public_example
Add has_public_example check
2017-06-28 02:22:35 +02:00
The Dlang Bot 38c4d2d0eb Merge pull request #466 from wilzbach/fix-unused_label
Fix AssertError on unknown label in unused_label
merged-on-behalf-of: Sebastian Wilzbach <sebi.wilzbach@gmail.com>
2017-06-27 22:24:26 +02:00
Sebastian Wilzbach 61d52156aa Run DScanner on itself (#479)
* Enable DScanner checking on Travis
* Fix linter warnings
* Set opequals_tohash_check to disabled
* Set could_be_immutable to 'disabled'
* Split expression back into multiple lines
* Set style to disabled
* Fix Makefile target
2017-06-25 15:05:03 +03:00
Sebastian Wilzbach e065d07573 Add has_public_example check
A check for public declaration without a documented unittest.
2017-06-25 09:30:44 +02:00
Sebastian Wilzbach 36397a579d Fix AssertError on unknown label in unused_label 2017-06-19 22:17:43 +02:00
Sebastian Wilzbach 6df62b7b4d Fix line_length checker for multiLine literals (#465) 2017-06-19 14:21:18 +02:00
Basile Burg db46595870
Revert "set more def bucket count to get better perfs on huge modules (#462)"
This reverts commit d8ee9a3e4b.
2017-06-18 03:08:22 +02:00
Basile Burg d8ee9a3e4b set more def bucket count to get better perfs on huge modules (#462) 2017-06-17 13:57:22 +02:00
Sebastian Wilzbach cf3d702720 Fix deprecations (#458)
* Properly import core.exception in analysis/helpers
* Remove the old std.string.removechars from useless_assert
2017-06-15 14:18:17 +03:00
Sebastian Wilzbach 764921634e Add check for redundant attributes (#441) 2017-06-15 11:15:58 +02:00
Sebastian Wilzbach 18a8b6b15e Merge pull request #455 from dlang-community/issue-454
fix #454 - Ddoc for unions are not detected
2017-06-15 00:16:45 +02:00
Sebastian Wilzbach 345f26465c Allow duplicate braces in allman style (#449) 2017-06-13 15:37:53 +02:00
Basile Burg 596135f596
fix 454 - Ddoc for unions are not detected 2017-06-13 08:45:21 +02:00
Sebastian Wilzbach 09205ddaf9 Add allman check (#446) 2017-06-12 13:33:23 +02:00
Sebastian Wilzbach dab25d5e31 Fix more problems in the sorted import checker (#445)
* Sorted imports: put ConditionalDeclaration and IfStatement in a separate scope

* Allow intermediate imports
2017-06-12 11:26:43 +02:00
Sebastian Wilzbach 6d34b149a9 Fix #422 - False negative: sorted imports with : (#444)
* Fix #422 - False negative: sorted imports with :

* Fix #422: Add another test
2017-06-12 10:29:20 +02:00
Sebastian Wilzbach 6fad779ec2 Fix #439 - Line length false positives in Phobos (#440) 2017-06-12 10:29:00 +02:00
Basile Burg 6e9e841a9a Add a check for useless initializers, close #285 (#429)
* Add a check for useless initializers, close #285

# Conflicts:
#	src/analysis/config.d

* remove duplicated oror condition

* remove useless protection

* also handle several case of assignation to init

* assign to init, forgot to test for ".init"

* update with new configuration initialization
2017-05-17 17:46:10 +02:00
Basile Burg 28945dec81 Merge pull request #428 from BBasile/issue-352
fix #352 - False positive: Parameter is never used, pointers
2017-05-17 14:50:02 +02:00
Basile Burg 40b183aed9 fix #431, Virtual call in ctor - problem with overloaded virtual methods (#432) 2017-05-12 15:25:58 +02:00
Basile Burg cd5dbd84e0
in storage class doesn't mean ref/assignable 2017-05-08 18:24:15 +02:00
Basile Burg 004847624b
fix #352 - False positive: Parameter is never used, pointers 2017-05-08 15:39:01 +02:00
Basile Burg 7a74a70e85
disable Phobos-specific checks by default, close #406 2017-05-08 01:30:29 +02:00
Basile Burg b615d3e299
implement a check for the virtual calls inside constructors, close #423 2017-04-16 03:58:10 +02:00
Hackerpilot 3c3fbe6725 Fix #416 2017-03-09 14:19:26 -08:00
Hackerpilot 43772fcc15 Fix #420. This is where a good weed joke would go if I had one. 2017-03-09 12:31:47 -08:00
Brian Schott eff9fb7571 Merge pull request #417 from sprinkle131313/master
Fix #403: Handle unsearchable file.
2017-03-07 14:36:53 -08:00
sprinkle131313 2dbda715b1 Fix #403: Handle unsearchable file. 2017-02-26 15:45:25 -05:00
Basile Burg 5bf8146944
fix #198 - Function casing warning on `extern(Windows)` 2017-02-24 12:06:24 +01:00
Brian Schott e8a8766c2f Merge pull request #407 from wilzbach/same-name-check-version
Same name check: differentiate between version blocks
2017-02-21 14:19:48 -08:00
Brian Schott f16b1e854a Merge pull request #390 from wilzbach/check-properly-documented-public-function
Add Ddoc check for properly documented public functions
2017-02-20 15:03:01 -08:00
Sebastian Wilzbach 4c74ac2bda Same name check: differentiate between version blocks 2017-02-20 14:56:19 +01:00
Sebastian Wilzbach 40b3f0d211 Handle doc parameters for templated functions better 2017-02-20 06:27:37 +01:00
Sebastian Wilzbach 4b0f61bb98 Missing return section: add test for auto functions 2017-02-20 05:43:58 +01:00
Sebastian Wilzbach 3103f58242 Address review 2017-02-20 05:42:04 +01:00
Sebastian Wilzbach 8c9f31289b Add Ddoc check for properly documented public functions (add libddoc) 2017-02-16 15:36:09 +01:00
LaurentTreguier 0726a9dcb8 Escape backslashes before quotes 2017-02-16 08:41:42 +01:00
Elronnd 868c8c46d3 Fix a typo in the css for the highlighter 2017-02-13 22:55:00 -07:00
Hackerpilot 87e42ae194 Update version number 2017-02-13 14:32:31 -08:00
Basile Burg d08c1e1eb5
fix #400 - TypeCtors, false positive for unmodified variable 2017-02-13 18:15:52 +01:00
Brian Schott 8a1dc98010 Merge pull request #396 from BBasile/issue-364
fix #364 - unused variables, detect enums used as template param or array dimension
2017-02-06 16:49:11 -08:00
Basile Burg 7686dd0ecc
prevent to check for final attribs inside templates
since they might be mixed or not, in structs or not
2017-02-04 02:38:20 +01:00
Basile Burg 0afddd2c4e
fix #364 - detect 2 cases where CT vars used in type of declaration 2017-01-19 10:32:06 +01:00
Basile Burg 2b8ba6ffca
fix sloppy test for private protection 2017-01-17 12:08:35 +01:00
Basile Burg 437b8e169d
improve error messages, fix mixed tbs/spaces, remove unused variable 2017-01-17 05:54:40 +01:00
Basile Burg fb2b2182e2
fix, unhanlded declarations caused wrong results 2017-01-16 20:46:01 +01:00
Basile Burg d9b6828205
fix false warning on top level struct/union 2017-01-16 17:07:14 +01:00
Basile Burg 9b97b7d929
add a checker for cases where final is a noop 2017-01-16 06:38:55 +01:00
Brian Schott 9a6b682859 Merge pull request #389 from wilzbach/explicitly_annotated_unittest
Add check for explictly annotated unittests
2017-01-03 15:02:16 -08:00
Brian Schott 6ce77ecaed Merge pull request #388 from wilzbach/local-imports-sortedness
Imports sortedness check: handle local imports in their separate scope
2017-01-03 14:59:42 -08:00
Brian Schott 7c9257ebe3 Merge pull request #381 from BBasile/issue-380
fix #380, templated enum seen as unused variable
2017-01-03 14:58:24 -08:00
Basile Burg 92037b5e7c
prevent possible segfault with instructions without params, like RDTSC 2016-12-24 19:55:33 +01:00
Basile Burg e5708325c1
apply Dscanner on the label ana module 2016-12-24 07:35:06 +01:00
Basile Burg e8c848352e
fix #392 - Usage of labels in asm blocks is not detected 2016-12-24 06:05:57 +01:00
Basile Burg 15b86bf159
fix #380, templated enum seen as unused variable 2016-12-21 21:16:42 +01:00
Sebastian Wilzbach 1c89a01f33 Address @BBasile's review 2016-12-16 00:52:17 +01:00
Sebastian Wilzbach 7f38c87f5d Add check for explictly annotated unittests 2016-12-15 17:34:06 +01:00
Sebastian Wilzbach 0e62267501 Imports sortedness check: handle local imports in their separate scope 2016-12-15 15:20:54 +01:00
Brian Schott c018b1ef57 Merge pull request #382 from wilzbach/import-sortedness
Add ImportSortedness checker
2016-12-12 15:01:24 -08:00
Brian Schott d5652002c4 Merge pull request #384 from WebFreak001/master
Allow stdin everywhere (fix #317)
2016-12-12 14:55:34 -08:00
WebFreak001 0aee4eaf40 Allow stdin everywhere fix #317 2016-12-12 21:52:36 +01:00
Basile Burg 55a6b2a758
prevent a case of false detection for auto functions 2016-12-11 00:42:47 +01:00
Sebastian Wilzbach be555a74b8 Add ImportSortedness checker 2016-12-10 20:22:40 +01:00
Brian Schott f283650c12 Merge pull request #379 from BBasile/autofunc-mixin-asserts
auto functions checker, fix several cases of false warnings
2016-12-05 16:17:46 -08:00
Basile Burg e041f6e5dd
fix, dont emit warn for body-less functions 2016-11-26 08:31:43 +01:00
Basile Burg cbeca3ba34
auto functions checker, check assert(false) and string literal mixin. 2016-11-26 06:59:40 +01:00
Hackerpilot bf3b942b9a Fix cast 2016-10-18 13:59:57 -07:00
Hackerpilot cb70ded2b2 Fix token dump output 2016-10-18 13:39:36 -07:00
Hackerpilot 7349e20b8a Fix #347 2016-10-12 19:31:05 -07:00
Hackerpilot 896d7da6f4 Update dsymbol and dparse 2016-10-12 19:28:51 -07:00
Basile Burg 734d47e9a2
add a check for the auto functions without return statement 2016-09-07 07:08:13 +02:00
Basile Burg f9bb76782c
fixup for #368, readme and source comment still stated the prev.behavior 2016-09-03 22:31:32 +02:00
Basile Burg f51a689a7d
add detection of undocumented enums and their members 2016-08-30 01:47:09 +02:00
Hackerpilot 5a790b4d41 Fix #368 2016-07-27 12:21:51 -07:00
Hackerpilot 40961297e7 Issue #365 2016-07-14 15:39:27 -07:00
Hackerpilot b9fa74ba7b Fix #360 2016-07-05 15:59:15 -07:00
Hackerpilot 0ccdfa2984 Update libdparse to improve handling of align attributes 2016-06-30 15:48:54 -07:00
Hackerpilot 18bfad3619 Update C++ linkage attribute handling 2016-06-30 14:50:48 -07:00
Hackerpilot e4426081dd Fix indentation 2016-06-30 14:50:28 -07:00
LaurentTreguier 7945792784 Correct small typo
It looks like there was a typo here...
2016-06-30 20:54:00 +02:00
Hackerpilot 5994c760a4 Fix #355 2016-06-10 18:27:59 -07:00
Hackerpilot d7ab1023a7 Fix #356 2016-06-10 15:28:50 -07:00
Ianis G. Vasilev 322a191d5d Added a mechanism for searching for dscanner.ini upwards through the file hierarchy 2016-05-20 01:45:23 +03:00