Andrey Bolonin
cb34810cdd
add php 7.4snapshot ( #1948 )
...
* add php 7.4snapshot
* Allow 7.4snapshot to fail
2019-07-19 08:20:54 -04:00
Tyson Andre
5d5a9c6eac
Remove redundant casts and unused use statements ( #1955 )
...
* Remove redundant casts
(not sure about older versions of php-parser)
* Remove unused use statements
2019-07-18 23:37:36 -04:00
Bruce Weirdan
e0a59ce117
Fixed PHP 7.4 related issues ( #1957 )
...
- s/fn/f/g (fn is a reserved keyword in 7.4)
- ReflectionType::__toString() warning (this method is deprecated in 7.4)
Note that some issues are caused by `phpspec/propecy` code and will be
fixed when phpspec/propecy#432 lands. Most were caused by
`ReflectionType::__toString()` usage in
`Psalm\Internal\Codebase\Reflection` though.
2019-07-18 23:36:39 -04:00
Matthew Brown
8d63d5dc4e
Add lookup for builtin functions
2019-07-18 23:30:44 -04:00
Matthew Brown
5583ae842e
Refactor signature selection a little
2019-07-18 23:08:54 -04:00
Matthew Brown
0e6bd79a09
Allow completion from functions to work without namespacing cc @iluuu1994
2019-07-18 21:50:59 -04:00
Matthew Brown
3df248eea2
Add concept of purity to functions and methods
2019-07-18 01:31:48 -04:00
Roland Franssen
e58660f38b
Add docs for optional ObjectLike ( #1942 )
...
* Add docs for optional ObjectLike
ref #634
* Update plugins_type_system.md
* Use better letters
2019-07-17 22:54:01 -04:00
Matthew Brown
74e1b521a5
Add support for completing builtin class names
...
Fixes #1863
2019-07-17 22:50:57 -04:00
Matthew Brown
ab50c6ce2e
Fix #1949 - check that aliased name doesn’t exist before transforming
2019-07-17 20:33:44 -04:00
Brown
59dd6393f5
Fix #1953 - support third arg for explode
2019-07-17 14:13:34 -04:00
Matthew Brown
210a0fc98d
Fix #1950 - improve class_parents return
2019-07-17 08:52:05 -04:00
Brown
eb1cd2ed46
Separate out error message producer
2019-07-16 15:34:02 -04:00
Brown
28fbafa207
Break out tests for algebra
2019-07-15 16:08:38 -04:00
Matthew Brown
0163f92bfa
Fix typo
2019-07-15 01:31:43 -04:00
Matthew Brown
18da84c713
Fix #1937 - allow proper reconciliation on templated values
2019-07-15 01:26:08 -04:00
Sergey Melesh
af875439e7
Inherit throws docblock from parent class by default ( #1947 )
2019-07-14 17:29:04 -04:00
SignpostMarv
96429ff94f
apply pretty formatting when there are no issues ( #1946 )
2019-07-13 13:44:15 -04:00
Sergey Melesh
ee1387473f
Fix throws docblock inheritance ( #1945 )
2019-07-13 10:10:51 -04:00
Brown
7f0dcae0b2
Always evaluate property calls on mixed methods
2019-07-12 14:39:06 -04:00
Brown
1208437b4c
Fix #1940 - allow proper evaluation of /a/b/../../
2019-07-12 14:28:21 -04:00
SignpostMarv
9ac78b5d10
add psalm config attribute re: #1804 ( #1936 )
...
* add psalm config attribute for controlling the default inclusion of php & php extension version info in the error baseline
* using method recommended by @bdsl in https://github.com/vimeo/psalm/pull/1936#discussion_r302727993
2019-07-12 10:31:12 -04:00
Brown
12eeb8b320
Fix #1935 - clear stub grandchildren
2019-07-11 18:23:02 -04:00
Brown
7d05568e22
Add skipped test for broken stubbing behaviour
...
Ref #1935
2019-07-11 12:51:43 -04:00
Brown
7268558aa7
Prevent unnecessary warnings
2019-07-11 11:07:39 -04:00
Brown
976d3bf787
Create cache directory if it doesn’t exist
2019-07-11 10:46:12 -04:00
Brown
73b1571bd7
Remove php version from default baseline generation
2019-07-11 10:41:44 -04:00
Brown
96ba4ad7d3
Fix #1925 - prevent LogicException when scanning files
2019-07-10 18:59:02 -04:00
Barney Laurance
ff6eae3d59
Show link to coverage & phar circle CI artifacts ( fixes #1919 ) ( #1928 )
...
* Show link to coverage
* Simplify outputing coverage report link
* Display link to PHAR download
2019-07-10 15:43:17 -04:00
Brown
9aa0fd022c
Fix potential coercion gotcha
2019-07-10 14:48:15 -04:00
Brown
8e149461f0
Remove unnecessary references to had_template
2019-07-10 14:03:13 -04:00
Brown
2cb7625515
Fix #1932 - coerce empty array passed as template param to general
2019-07-10 13:54:06 -04:00
Brown
e7aadee88f
Fix #1931 - narrow down property assignment
2019-07-10 13:49:11 -04:00
Brown
2c6854f403
Massage arg type after coerced param
...
Ref #1927
2019-07-10 12:12:51 -04:00
Matthew Brown
1ae9ea5fed
Use object instead of by-ref params
2019-07-10 01:35:57 -04:00
Tim van Dijen
d424cb3ccd
Change signature on setcookie / setrawcookie ( #1924 )
...
Version Description
7.3.0 An alternative signature supporting an options array has been added. This signature supports also setting of the SameSite cookie attribute.
2019-07-09 15:36:41 -04:00
Brown
884a03078b
Fix #1886 - derived types from templates in new calls should be coercable
2019-07-09 14:48:26 -04:00
Matthew Brown
aa0efcf026
Add PHPUnit static analysis tests to real project settings
2019-07-09 07:39:03 -04:00
Matthew Brown
6cbf499f14
Fix #1922 - ignore iterable/array when transforming assertions
2019-07-09 07:38:37 -04:00
Bruce Weirdan
173a40e769
Deprecated Psalm\isAbsolutPath in favor of Webmozart\PathUtil\Path::isAbsolute ( #1921 )
2019-07-07 21:20:12 -04:00
Bruce Weirdan
6a74cf96a1
Allow backslash after drive name ( #1917 )
...
* Allow backslash after drive name
Before, paths like `C:/path/to/something` were considered absolute, but
`C:\path/to/something` were not
Refs vimeo/psalm#1913
* Revert "Mark testPluginFilenameCanBeAbsolute incomplete on Windows (#1914 )"
This reverts commit 210ac39d00
.
2019-07-07 19:06:31 -04:00
Bruce Weirdan
0dfbf483cb
Upload test results to AppVeyor ( #1918 )
...
So that it shows up in `Tests` tab, not only `Console`
2019-07-07 19:05:34 -04:00
Barney Laurance
210ac39d00
Mark testPluginFilenameCanBeAbsolute incomplete on Windows ( #1914 )
2019-07-07 15:21:25 -04:00
Matthew Brown
5c4ac97546
Fix #1915 - allow @psalm-assert-if-true to operate on $this
2019-07-07 15:06:03 -04:00
Matthew Brown
820eba1151
Add test for null init
2019-07-07 14:01:33 -04:00
Matthew Brown
30ecde2272
Overwrite var when try exits
2019-07-07 14:00:49 -04:00
Matthew Brown
cd715a60fd
Fix #1909 - populate var scope if try always leaves
2019-07-07 13:52:43 -04:00
Matthew Brown
5f8d4edc73
Remove unused param
2019-07-07 09:39:21 -04:00
Matthew Brown
bceb4efde9
Fix #1911 - allow proper namespaces in union assertions
2019-07-07 09:14:23 -04:00
Barney Laurance
ea83068deb
Allow resolving directories from config file location (continued) ( #1910 )
...
* Extract function getPsalmHelpText() from psalm.php
* Extract initialiseConfig from psalm.php
* Add -c as valid short option for psalter and psalm-refactor
* Use initialiseConfig in psalter, psalm-refactor and psalm-language-server as well as psalm
* Rely on psalm --alter resolving directory from config file in test
* Remove erronous condition for config file path
This code was based on me wrongly thinking that the config file location
was seprated from the argument name with a space instead of an equals
sign
* Use config dir as current dir in psalm and psalm-refactor, as with psalter and psalm-language-server
* Remove redundant duplicated code
* Refactor: move calls to \Psalm\Config::setComposerClassLoader inside initialiseConfig
* PHPCS fix
* Extract function get_path_to_config from command scripts
* Refactor - extract functions from \Psalm\Config::loadFromXML
* Refactor - reduce verbosity of config loading code
* Allow running e2e tests on windows
* Fix testCompactReport on Windows
* convert line endings to make testCompactReport pass on Windows
2019-07-07 08:55:53 -04:00