Matthew Brown
b529fa4877
Move static method arrays into MethodStorage classes
2016-12-30 15:53:35 -05:00
Matthew Brown
23a414a2b3
Fix test failures
2016-12-30 13:14:17 -05:00
Matthew Brown
8b5e066ba6
Add case-sensitive function names
2016-12-30 13:09:00 -05:00
Matthew Brown
92fe58b97c
Shift storage from static arrays to dedicated ClassLikeStorage objects
2016-12-30 12:41:14 -05:00
Matthew Brown
21816723c7
Make config schema more relaxed about ordering and fix trait bugs
2016-12-30 01:51:29 -05:00
Matthew Brown
3e78405836
# This is a combination of 4 commits.
...
# The first commit's message is:
Make cofig schema more relaxed about ordering
# This is the 2nd commit message:
Add tests for awkward case
# This is the 3rd commit message:
Fix static calls to class methods within traits
# This is the 4th commit message:
Repopulate fewer arrays
2016-12-30 01:50:33 -05:00
Matthew Brown
2709198392
Merge pull request #29 from vimeo/config-nesting
...
re-Config-uration
2016-12-29 22:48:59 -05:00
Matthew Brown
90fee45a18
Add test to guarantee that config schema stays up-to-date
2016-12-29 22:31:52 -05:00
Matthew Brown
6236e34996
Make schema a little more lenient
2016-12-29 22:16:46 -05:00
Matthew Brown
e662c420b7
Add schema to verify new config format against
2016-12-29 22:11:10 -05:00
Matthew Brown
ca98efb630
Check specific reporting levels
2016-12-29 20:23:04 -05:00
Matthew Brown
685eaeb4fe
Reimagine XML schema, fixes #21
2016-12-29 20:10:06 -05:00
Matthew Brown
b79ce904d2
Fix #23 - allow exclusion in projectFiles
2016-12-29 18:33:03 -05:00
Matthew Brown
749735a3ec
Update config file API still further
2016-12-29 10:24:10 -05:00
Matthew Brown
ff466b7992
Change config API
2016-12-29 08:42:39 -05:00
Matthew Brown
641ffc09c9
Add NullOperand issue for easy ignoring
2016-12-29 00:32:12 -05:00
Matthew Brown
18e7c65430
Emit more InvalidOperand issues
2016-12-29 00:14:06 -05:00
Matthew Brown
a91fc2d3dc
Add pre-run step so all class declarations in a given file can be dealt with
2016-12-28 22:11:50 -05:00
Matthew Brown
b796b5c8ee
Allow trait methods to be overwritten
2016-12-28 21:40:03 -05:00
Matthew Brown
ed03104ca8
Fix overridden method interface checks
2016-12-28 21:37:24 -05:00
Matthew Brown
c1e1c0ae85
Check trait methods against interfaces
2016-12-28 20:33:26 -05:00
Matthew Brown
c5622f1ed1
Fix nullref
2016-12-28 19:58:32 -05:00
Matthew Brown
2bf515be5f
Check return types of functions in namespaces
2016-12-28 19:57:18 -05:00
Matthew Brown
b6455a2566
Improve how we disable clauses
2016-12-28 18:55:16 -05:00
Matthew Brown
63a75108f5
Evaluate more expressions up front
2016-12-28 17:04:03 -05:00
Matthew Brown
fa1da90fbe
Only warn about unimplemented interface methods for non-abstract classes
2016-12-28 16:46:30 -05:00
Matthew Brown
992e7ae256
Fix #1 - add in support for !==false-negating assertions in ifs
2016-12-28 16:39:05 -05:00
Matthew Brown
797875ba9a
Fix #10 - allow negated assignments
2016-12-28 16:29:50 -05:00
Matthew Brown
ea30af8a5a
Move assertion checks into separate file
2016-12-28 15:52:44 -05:00
Matthew Brown
48151d0190
Fix repeated assertion after unreconcilable clause
2016-12-28 14:53:49 -05:00
Matthew Brown
4919252260
Fix leaking ref in SwitchChecker
2016-12-28 14:38:16 -05:00
Matthew Brown
6972c45c14
Remove vars from parent clauses when they are reconciled with vars
2016-12-28 14:20:16 -05:00
Matthew Brown
4ee1a588ad
Merge pull request #28 from vimeo/clause-for-concern
...
Add support for type algebra
2016-12-28 13:28:41 -05:00
Matthew Brown
05834a0db3
Fix #13 by revamping how we treat type assertions in if statements and ternary expressions
2016-12-28 13:12:06 -05:00
Matthew Brown
6b0537440f
Register all classes & interfaces declared in file before check
2016-12-28 13:10:58 -05:00
Matthew Brown
324b7b4801
Support old-style namespaced constructors
2016-12-27 01:06:05 +00:00
Matthew Brown
dac54c41ab
Fix array_filter with no second arg usage
2016-12-26 14:40:32 +00:00
Matthew Brown
74727c9564
Prevent value from breaking outside of scope
2016-12-26 11:39:50 +00:00
Matthew Brown
b6eea4e812
Fix #20 - emit an issue when param is missing a type or param
2016-12-25 11:32:21 +00:00
Matthew Brown
8ad3ee4f53
Fix for fix
2016-12-25 01:35:13 +00:00
Matthew Brown
6a19aa63d2
Fix array_filter return type
2016-12-25 01:33:14 +00:00
Matthew Brown
513fcea101
Only assign type when not null
2016-12-25 01:12:26 +00:00
Matthew Brown
1fe0eee8e4
Add generic type coercion checks
2016-12-25 01:08:58 +00:00
Matthew Brown
5248c003cb
Merge pull request #27 from vimeo/strict-operands
...
Add operand typechecks
2016-12-24 18:36:07 +00:00
Matthew Brown
1007d1682c
Fix mixed operand issues
2016-12-24 18:29:11 +00:00
Matthew Brown
c51d8f5220
Implement MixedOperand and InvalidOperand issues
2016-12-24 18:29:11 +00:00
Matthew Brown
07c415d588
Add tests for upcoming functionality
2016-12-24 18:29:11 +00:00
Matthew Brown
c55870e26c
Allow generic TypeChecker::isContainedBy checks
2016-12-24 18:28:43 +00:00
Matthew Brown
35e3b17545
Add phpcs as a dev dep cc @erunion
2016-12-23 23:50:57 +00:00
Matthew Brown
dfa089f8df
Remove functionality that overlaps with phpcs FunctionCommentSniff
2016-12-23 22:48:36 +00:00