1
0
mirror of https://github.com/danog/psalm.git synced 2024-12-04 18:48:03 +01:00
Commit Graph

10875 Commits

Author SHA1 Message Date
Matthew Brown
faaf7690f6
Remove mic-drop hack from if analysis (#7484)
* Remove mic-drop hack from if analysis

* Remove more special handling

* Remove some unnecessary ElseAnalyzer code

* Add back necessary code

* Fix return type of method never returning null

* Add a comment

* Simplify && handling

* Add comments to make stuff clearer

* Move if-specfic logic to more appropriate setting
2022-01-28 18:30:47 -05:00
orklah
048025b1d6
Merge pull request #7511 from orklah/literal-inequality
improve literal inequality with ranges and rework GreaterThan/LessThan assertions
2022-01-28 22:27:09 +01:00
orklah
66ccf93109 fix CS 2022-01-28 22:21:30 +01:00
orklah
3b73654db7 handle literal inequality with ints 2022-01-28 21:59:30 +01:00
orklah
4609bc4e25
Merge pull request #7471 from klimick/function-dynamic-storage-provider
Function dynamic storage provider
2022-01-28 18:46:26 +01:00
orklah
2966f1c9d4
Merge pull request #7107 from AndrolGenhald/feature/5482-load-extensions-based-on-composer-config
Enable extensions based on composer.json instead of those loaded at runtime (fixes #5482).
2022-01-28 18:45:52 +01:00
Bruce Weirdan
891479300e
Merge pull request #7506 from AndrolGenhald/bugfix/fix-side-effect-when-loading-config 2022-01-28 19:14:02 +02:00
AndrolGenhald
b473d812aa Fix side effect when loading config. 2022-01-28 09:26:58 -06:00
Bruce Weirdan
b9d9a494e1
Merge pull request #7504 from mal-tee/ssrf_getimagesize 2022-01-28 15:51:46 +02:00
adrew
5b78125d11 Add doc for DynamicFunctionStorageProviderInterface 2022-01-28 15:18:30 +03:00
adrew
70cea447c8 Fix CS 2022-01-28 15:18:30 +03:00
adrew
1a8367a273 Add some doc about DynamicFunctionStorageProvider 2022-01-28 15:18:30 +03:00
adrew
dd0e00e153 Renaming all occurrences of "function dynamic storage" to "dynamic function storage" 2022-01-28 15:18:30 +03:00
adrew
e5dae6a901 Prevent first-class-callable handling with FunctionDynamicStorageProvider 2022-01-28 15:18:30 +03:00
adrew
de2257ecd3 Make ArgTypeInferer constructor internal 2022-01-28 15:18:30 +03:00
adrew
46f695993b Make FunctionDynamicStorageProviderEvent final 2022-01-28 15:18:30 +03:00
adrew
693b295c01 Improve ArgTypeInferer 2022-01-28 15:18:30 +03:00
adrew
9b383a5a19 Try to create public api for new hook 2022-01-28 15:18:30 +03:00
adrew
3c22ecfa98 Remove args pre-analysis before run params provider hook 2022-01-28 15:18:30 +03:00
adrew
aefe971b90 Fix template creation in ArrayMapStorageProvider 2022-01-28 15:18:30 +03:00
adrew
89c6a70dda Simplify dynamic storage handling in FunctionCallAnalyzer 2022-01-28 15:18:30 +03:00
adrew
a4e56ae288 Fix method name 2022-01-28 15:18:30 +03:00
adrew
ce1cec5d3a Using FuncCall instead of list<Arg> in FunctionDynamicStorageProvider for more flexibility 2022-01-28 15:18:30 +03:00
adrew
e93c90bc89 Fix double run FunctionDynamicStorageProvider for already analysed function 2022-01-28 15:18:29 +03:00
adrew
ec9b2288cc Fix CS 2022-01-28 15:18:29 +03:00
adrew
3210aab278 Test for FunctionDynamicStorageProvider 2022-01-28 15:18:29 +03:00
adrew
438be03414 Ability to provide dynamically created function storage via plugin hook 2022-01-28 15:18:29 +03:00
mal-tee
ee990ebff6 InternalTaintSinkMap: Add getimagesize as SSRF sink 2022-01-28 12:29:26 +01:00
orklah
47a254547a
Merge pull request #7503 from AndrolGenhald/bugfix/fix-const-analyzer-failing-assert
Fix failing case for const analyzer.
2022-01-28 07:13:19 +01:00
AndrolGenhald
282518ce5f Fix failing case in ClassConstAnalyzer and add test. 2022-01-27 21:50:36 -06:00
AndrolGenhald
35353c6931 Re-add failing assert, enable assertions on CI. 2022-01-27 21:29:43 -06:00
Matthew Brown
1a6f968e15 Remove dodgy assertion cc @AndrolGenhald
This assertion broke tests when assertions were turned on
2022-01-27 20:58:35 -05:00
AndrolGenhald
d705d5e83a Add note about $load_xdebug_stub removal to UPGRADING.md. 2022-01-27 17:52:50 -06:00
AndrolGenhald
653d17ff81 Add stub for PDOException. 2022-01-27 17:05:48 -06:00
Patrick Remy
51cab704c4
fix: key-of/value-of handle nested template params 2022-01-28 00:04:21 +01:00
AndrolGenhald
5c01913456 Remove deprecated loadXdebugStub attribute. 2022-01-27 16:55:20 -06:00
AndrolGenhald
c2b44ff073 Fix copy/paste fail and other psalm/cs issues, reduce duplication of literals. 2022-01-27 16:31:09 -06:00
AndrolGenhald
5cd3b68ab3 Add documentation for enableExtensions and disableExtensions. 2022-01-27 16:31:09 -06:00
AndrolGenhald
8132b57881 Add XML config options to enable/disable PHP extensions. 2022-01-27 16:31:05 -06:00
AndrolGenhald
02cd7bbbba Add SoapHeader stub. 2022-01-27 16:30:14 -06:00
AndrolGenhald
4672e5a324 Disable all PHP extensions for CI except those required by psalm. 2022-01-27 16:30:14 -06:00
AndrolGenhald
63cd3f3b95 Add SoapFault stub. 2022-01-27 16:30:14 -06:00
AndrolGenhald
2fe4fc397c Enable extensions based on composer.json instead of those loaded at runtime (fixes #5482). 2022-01-27 16:30:14 -06:00
Patrick Remy
f87e429e58
fix: infer key-of/value-of type if still templated
Not in all cases the TemplateParam gets replaced before type checking,
in these cases, use the defined `as` type.
Refactor to extract key/value type of array union to method.
2022-01-27 22:39:50 +01:00
Patrick Remy
8cd5ccd076
feat: make value-of<T> capable for template types 2022-01-27 22:28:40 +01:00
Patrick Remy
dff8869685
style: remove unused use statement 2022-01-27 22:28:40 +01:00
Patrick Remy
ce1feb1ebf
style: remove unused variable declaration 2022-01-27 22:28:40 +01:00
Patrick Remy
8f0244aa7e
style: add use statement for array_push 2022-01-27 22:28:40 +01:00
Patrick Remy
ed87465f71
tests: correct 'SKIPPED' prefix for skipped test 2022-01-27 22:28:40 +01:00
Patrick Remy
1f28d025c3
feat: allow unions for key-of/value-of
Add tests for TValueOfArray.
2022-01-27 22:28:24 +01:00