1
0
mirror of https://github.com/danog/psalm.git synced 2024-12-15 02:47:02 +01:00
Commit Graph

120 Commits

Author SHA1 Message Date
Bruce Weirdan
cbcc38aab8
Merge pull request #6339 from niconoe-/allow-object-on-array_walk 2021-08-31 23:45:10 +03:00
Bruce Weirdan
c4f0386aff
Merge pull request #6375 from ThomasLandauer/issue-6358 2021-08-30 04:42:37 +03:00
ThomasLandauer
fa3fd10058 Fixing null for openssl_x509_parse() in CallMap_80_delta.php too :-) 2021-08-29 12:35:28 +02:00
ThomasLandauer
630529740c Fixing null for openssl_x509_parse() 2021-08-29 12:33:19 +02:00
Bruce Weirdan
624246b996
Merge pull request #6376 from orklah/use-variable-in-backtick 2021-08-29 04:39:13 +03:00
orklah
27b6d5ad3b fix psalm errors 2021-08-29 00:39:36 +02:00
ThomasLandauer
2210003c98 Fixing openssl_x509_parse() and openssl_x509_read() Closes #6358 2021-08-29 00:04:04 +02:00
Pol Dellaiera
f0d54128b6 Update return type of getInnerIterator which is always returning an iterator. 2021-08-24 15:27:02 +02:00
Nicolas Giraud
6cff8b627f Update also historical classmap. 2021-08-19 13:03:47 +02:00
Nicolas Giraud
e254ebf5d5 Allow object type to be given to array_walk and array_walk_recursive. 2021-08-19 12:03:06 +02:00
Benjamin Morel
621c4dd8d1 Enforce class-string in is_subclass_of() 2021-08-17 23:14:11 +02:00
Vincent Langlet
4b84793b2f Add false back for mb_str_split 2021-08-17 18:45:02 +02:00
Vincent Langlet
1cdad83630 Remove false if length is positive int 2021-08-17 17:47:22 +02:00
Vincent Langlet
786d926d78 str split return non empty 2021-08-17 11:03:54 +02:00
Marc Ole Bulling
1818609f43 Fix for #6318 2021-08-16 19:23:10 +02:00
Bruce Weirdan
babfb6a637
Fix histories 2021-08-16 02:52:18 +03:00
Tyson Andre
ff72d2c92e Fix issues in php 8.0 delta
In a last minute change in php 8.0 after the feature freeze,
PhpToken::getAll was changed to tokenize

Also, https://www.php.net/manual/en/function.mb-get-info
has been around since php 4.2 - it's in psalm/dictionaries/CallMap.php
already with the same signature. Same for ReflectionNamedType::isBuiltin

Also, add signatures for getAttributes.

Also, use the same param names for fdiv that are found in reflection in
php 8.0 and 8.1 to support named arguments
2021-08-15 19:28:44 -04:00
Bruce Weirdan
cc1335022f
Fix SimpleXMLIterator historic and current signatures
Historically, `SimpleXMLIterator` had only implemented `Iterator` and
`RecursiveIterator` methods. This changed in 8.0, when iterator methods
were moved to `SimpleXMLElement`, and `SimpleXMLIterator` was made a
dummy class extending `SimpleXMLElement`.

Fixes vimeo/psalm#6305, in the sense that Psalm would no longer report
different errors depending on the runtime PHP version.
2021-08-16 00:04:59 +03:00
Valentin Udaltsov
a335535945
Added debug_backtrace return type to CallMap_historical 2021-08-13 01:45:41 +03:00
Valentin Udaltsov
8b60ebebcf Refined debug_backtrace return type 2021-08-09 10:43:33 +03:00
Maurício Meneghini Fauth
1bc71522fb
Fix wrong return type for imagejpeg GD function
Signed-off-by: Maurício Meneghini Fauth <mauricio@fauth.dev>
2021-08-08 14:57:17 -03:00
Bruce Weirdan
66056e391b
Restored some callmap types 2021-08-08 19:50:16 +03:00
Bruce Weirdan
66466cea60
Clarify delta 7.1 docblock 2021-08-08 18:55:19 +03:00
Bruce Weirdan
8c531fec4b
Tweaks
Changed the format of the historical callmap to be plain signature list,
as it isn't really a delta file and renamed the file to not be confused
with deltas.

Added a test to ensure entries in main callmap have history.
2021-08-08 18:43:42 +03:00
bjscharp
90a09a7a9a Remove outdated line about removal from delta docblocks 2021-08-08 15:42:28 +02:00
bjscharp
88f15f0526 Fix version error in delta docblocks 2021-08-08 15:40:26 +02:00
bjscharp
ada1a60a4c Corrected docblock in historic delta file 2021-08-08 11:04:15 +02:00
bjscharp
96056d329f Add simple test to verify outout of getCallMap method
Convert deltafile format to new style proposed by weirdan
Modify CallMapTest to use new format
Modify InternalCallMapHandler to use new format
Move assertions to base testcase
2021-08-08 10:39:54 +02:00
bjscharp
f39c462138 Add missing bcadd function to 8.0 delta file.
To prevent similar errors, add baseline file with signatures pre-7.1, to help verify delta files are correct.
Modify test to use this to detect missing 'old' entries
2021-08-05 23:21:41 +02:00
bjscharp
4997208ee7 Merge branch 'master' into callmap-delta-inconsistencies
# Conflicts:
#	dictionaries/CallMap_80_delta.php
2021-08-05 22:03:32 +02:00
bjscharp
ac5ea252ff Added test to detect problems and inconsistencies in CallMap files
- Fixed inconsistencies in callmap delta files (mainly 8.0)
- Added several missing changes in the bc_* functions
- Added several missing changes in the mb_* functions
- Added several missing changes in the xml_parser_* functions
- Fixed several issues with sodium_ functions
- Removed all but one of the date_* functions. All were marked as having lost the option to return false, despite this only being true for date_format
2021-08-05 19:07:31 +02:00
Mason McElvain
b2ba774cb9 Update CallMap with PHP 8 date() signature 2021-08-04 15:27:32 -07:00
Mason McElvain
81661395ce Add old date signature to CallMap_80_delta 2021-08-04 15:26:42 -07:00
Mason McElvain
4d2a5b1bfa Permit null timestamp to date() in PHP 8
PHP 8 allows the timestamp to be null, but version 7.4 doesn't.
Creates a mapping for date() to allow $timestamp to be null in PHP 8.
2021-08-04 15:07:45 -07:00
Bruce Weirdan
e34a0e39d6
s/limit/length/ 2021-08-01 16:35:09 +03:00
bjscharp
e779387b9a Added missing mb_str_split function from 7.4 2021-08-01 15:12:07 +02:00
Bruce Weirdan
f952f1b616
exec() may fail
Fixes vimeo/psalm#6195
2021-07-28 13:38:49 +03:00
Bruce Weirdan
7aa5564047
Merge pull request #6192 from orklah/array_replace_not_nullable
make array_replace and array_replace_recursive not nullable
2021-07-28 00:20:46 +03:00
orklah
d9df3211c5 make array_replace and array_replace_recursive not nullable 2021-07-27 23:02:41 +02:00
Vincent Langlet
47fa2724d7 Add false as return type of shell_exec
The doc is only talking about string|null, but
false is possible when the pipe can't be etablished
@see https://github.com/php/php-src/pull/7306#issuecomment-886489235
2021-07-26 11:08:20 +02:00
Bruce Weirdan
6eee971109
Detailed signature for fputcsv and friends
Fixes vimeo/psalm#5226
2021-07-21 00:42:36 +03:00
Bruce Weirdan
a29cbd3c95
More callmap fixes
* `writeDtdEntity()`/`xmlwriter_write_dtd_entity()` has optional params
* `xmlwriter_write_attribute_ns` has `$namespace` param as nullable, not
`$content`
* `xmlwriter_write_element()`/`xmlwriter_write_element_ns()` has
`$content` param as optional
2021-07-17 23:37:32 +03:00
Arnout Boks
08a80dd238
Fix main callmap should contain newest signatures
https://github.com/vimeo/psalm/pull/6099#discussion_r671556027
2021-07-17 22:29:56 +03:00
Arnout Boks
f90e366398
Fix incorrect signature for XMLWriter::writeAttributeNs()
https://github.com/vimeo/psalm/pull/6099#discussion_r670604872
2021-07-17 22:29:56 +03:00
Arnout Boks
f304408662
Fix incorrect signature for xmlwriter_start_dtd 2021-07-17 22:29:56 +03:00
Arnout Boks
184505733d
Correct callmap entries for XMLWriter
Checked and fixed the following, based on the current
documentation in the PHP manual:

* capitalization in method names
* parameter names
* parameter types (especially for nullable params)
* return types (especially for '|false'-types)
* differences between pre- and post-8.0.0-signatures

Fixes #6091
2021-07-17 22:29:52 +03:00
Matthew Brown
88c4e2468e
Support interface-string<Foo> as temporary alias of class-string<Foo> (#6106) 2021-07-16 18:38:39 -04:00
François Kooman
fc641de85c radius_send_request returns int|false
https://github.com/LawnGnome/php-radius/blob/master/radius.c#L533
2021-07-16 09:07:29 +02:00
Bruce Weirdan
83bf9b8ed9
Merge pull request #5608 from paxal/patch/preg_replace_callback
Allow to use string key for preg_replace_callback callable argument
2021-07-11 04:55:03 +03:00
Fran Moreno
decb397b8e
Add ReflectionProperty::getType() and hasType() 2021-07-10 13:05:57 +02:00