Bruce Weirdan
f5b71a3a5f
Infer mb_strtolower() result as string when encoding is specified
...
`mb_strtolower()` may return characters we generally consider uppercase
when it's given the encoding argument. This PR makes Psalm to err on the
side of caution and treat the return type as `string` rather than
`lowercase-string` in this case
Refs vimeo/psalm#6908
2021-11-14 03:57:10 +02:00
Aaron Piotrowski
1bb204db76
Fix detecting readonly promoted property visibility
2021-11-13 12:54:15 -06:00
Aaron Piotrowski
d06510833b
Fix detection of readonly on promoted properties
2021-11-13 12:37:08 -06:00
orklah
b35b9f92a6
Merge pull request #6895 from orklah/ignore-falsable
...
make ignore falsable/nullable dependent on the config
2021-11-13 11:37:57 +01:00
orklah
1464e8f91e
make ignore falsable/nullable dependent on the config
2021-11-13 11:37:22 +01:00
Ricardo Boss
4a58739e00
Fix typos in message about Attribute usage
2021-11-12 23:11:59 +01:00
Jonathan Vollebregt
f5d7f6c405
SimpleXMLIterator is not always truthy
...
Fixes #6865
2021-11-12 13:49:31 +01:00
orklah
2d0758ab10
Merge pull request #6899 from pilif/fix-6887
...
don't stop processing for class usage after raising an issue
2021-11-12 09:42:49 +01:00
Philip Hofstetter
ece2bccf76
don't stop processing for class usage after raising an issue
...
this fixes #6887
2021-11-12 09:24:39 +01:00
8d20a83ed9
Use a proper assertion
2021-11-11 12:42:16 +01:00
2bcbc2f86c
Small fix
2021-11-11 12:16:04 +01:00
575fd1c55a
Small fixes
2021-11-11 12:05:03 +01:00
9dd8533806
ImagickPixel::getColor return type provider
2021-11-11 11:54:30 +01:00
Bruce Weirdan
85f2083acb
Flag duplicate constants
...
Fixes vimeo/psalm#6882
Addresses p1 from vimeo/psalm#6471
2021-11-11 00:44:17 +02:00
Nadyita
6b08f1741b
Fix --enable-autocomplete=false
2021-11-10 18:04:47 +01:00
Philip Hofstetter
038df9cebe
detect unevaluated inline-html code after an rearly return
...
this is a followup after #6876
this fixes #6877
2021-11-10 13:11:50 +01:00
Philip Hofstetter
f407ac846a
do not treat __halt_compiler() as an expression being executed
...
this fixes #6875
2021-11-10 12:45:12 +01:00
orklah
a193ec4573
Merge pull request #6874 from orklah/fix-never-combination
...
fix never combination
2021-11-09 23:18:58 +01:00
orklah
830c898fec
Merge pull request #6872 from orklah/InvalidDocblockPromotedProperties
...
allow signature type for promoted property as well as property docblock
2021-11-09 23:17:43 +01:00
orklah
8d22676627
fix errors
2021-11-09 22:31:40 +01:00
orklah
21591b0f2a
fix errors
2021-11-09 21:14:55 +01:00
orklah
db05dfeb4c
fix never combination
2021-11-09 20:59:49 +01:00
orklah
d409c063f3
allow signature type for promoted property as well as property docblock (that will be used for param as well)
2021-11-09 19:38:18 +01:00
Thomas Bley
ca2fe166ee
Added option to forbid eval() in codebase #6855
2021-11-07 21:06:22 +01:00
Bruce Weirdan
756be3b80c
Merge pull request #6843 from weirdan/enums-as-attributes
2021-11-07 17:53:19 +02:00
Bruce Weirdan
17ef25acd8
Merge pull request #6845 from sasezaki/cs_SelfMemberReference
2021-11-07 17:41:45 +02:00
orklah
4e6cb75094
Merge pull request #6848 from orklah/taint-comments
...
Taint comments
2021-11-07 15:55:37 +01:00
orklah
3322801903
ignore comments after taint-sink
2021-11-07 10:17:25 +01:00
sasezaki
5a01c8d601
Added phpcs SelfMemberReference rule, and applied
2021-11-07 15:47:39 +09:00
Bruce Weirdan
68495be147
Forbid declaring enums as attributes
...
This is in line with current Psalm behavior. We forbid non-instantiable
classlikes as attributes, including abstract classes and classes with
non-public constructors.
Refs vimeo/psalm#6841
2021-11-07 01:47:11 +02:00
Bruce Weirdan
9210bbcdd4
Forbid enum instantiation
...
Fixes vimeo/psalm#6837
2021-11-07 00:14:37 +02:00
orklah
b08d39e567
Merge pull request #6834 from orklah/unused-in-assert
...
don't consider calls to methods with assertions as Unused
2021-11-06 22:05:34 +01:00
orklah
e28659eb6c
Merge pull request #6838 from orklah/value_and_name_enum
...
better understands value and name properties for enum
2021-11-06 22:05:04 +01:00
orklah
18677bb108
better understands value and name properties for enum
2021-11-06 21:49:42 +01:00
Bruce Weirdan
0f8ef45110
Forbid properties on enums
...
Fixes vimeo/psalm#6472
2021-11-06 21:57:49 +02:00
orklah
9c9669ea44
don't consider calls to methods with assertions as Unused
2021-11-06 19:54:17 +01:00
orklah
aca8e12bf9
Merge pull request #6830 from orklah/isContainedBy
...
Mixed contain every types and Never is contained in every type
2021-11-05 22:05:32 +01:00
orklah
f4dcea3e57
Merge pull request #6829 from orklah/isType
...
only return true in Union::is*Type* if there is a single type
2021-11-05 22:05:17 +01:00
orklah
de9ad68ad0
Mixed contain every types and Never is contained in every type
2021-11-05 21:25:23 +01:00
orklah
728175f82d
only return true in Union::is*Type* if there is a single type
2021-11-05 21:14:04 +01:00
orklah
ad57516765
create a temporary var for coalescing ternaries
2021-11-05 20:07:35 +01:00
orklah
b7834689e5
Merge pull request #6824 from orklah/session
...
Makes $_SESSION possibly undefined at the source
2021-11-05 20:07:24 +01:00
orklah
33aab6cc40
allow declaring functions and classLikes after a never-returning call
2021-11-05 18:09:40 +01:00
orklah
6e5f3db06c
makes $_SESSION possibly undefined
2021-11-04 22:45:46 +01:00
orklah
fffef80ec1
makes $_SESSION possibly undefined
2021-11-04 22:38:31 +01:00
orklah
915278e253
Merge pull request #6823 from orklah/variable_class
...
allow assertion to work on $var::class
2021-11-04 20:54:59 +01:00
orklah
834d831915
allow assertion to work on $var::class
2021-11-04 20:44:42 +01:00
orklah
5282e4728b
allow assertion to work on $var::class
2021-11-04 20:33:30 +01:00
orklah
cd74f665dc
Merge pull request #6813 from orklah/intTaint
...
don't register taints for numeric variables
2021-11-04 15:30:52 +01:00
orklah
e6dccaa07c
Merge pull request #6809 from orklah/binaryOpTaint
...
don't taint the result of most binary operations
2021-11-04 13:18:07 +01:00