Barney Laurance
3bc3f1c273
Fix report name: Issue level, not issue severity
2022-12-01 22:11:29 +00:00
Barney Laurance
4fde49313e
Fix implicit constant visibility
2022-12-01 22:05:27 +00:00
Barney Laurance
aea1c5603d
Reduce function visibility
...
Co-authored-by: Bruce Weirdan <weirdan@gmail.com>
2022-12-01 22:03:19 +00:00
Barney Laurance
32881a3c65
Add comments
2022-12-01 22:02:09 +00:00
Barney Laurance
6bde0d3a68
Delete unused code
2022-12-01 22:02:08 +00:00
Barney Laurance
b70d3e228e
WIP: Add new option --output-format=by-issue-severity to sort issues by level and type
2022-12-01 22:02:08 +00:00
orklah
8e43460a1a
Merge pull request #8808 from p810/add-forbiddenFunctions-to-configuration-docs
...
Adds documentation for the `forbiddenFunctions` config option
2022-12-01 21:24:36 +01:00
orklah
433e272149
Merge pull request #8809 from danog/fix_8806
...
Fix #8806
2022-12-01 21:00:40 +01:00
796462961d
Fix
2022-12-01 20:18:07 +01:00
7f15d47c19
Add tests
2022-12-01 20:14:37 +01:00
3150ad2b27
Fix #8806
2022-12-01 20:12:20 +01:00
Payton Bice
02329227d8
Adds documentation for the forbiddenFunctions
config option
2022-12-01 13:42:02 -05:00
orklah
b4aa951caa
Merge pull request #8798 from orklah/min_count
...
fix sealed combination
2022-12-01 18:35:02 +01:00
orklah
aee4605041
Merge pull request #8624 from kkmuffme/check-never-return-more-strictly-v5
...
check "never" return type more strictly
2022-12-01 18:23:04 +01:00
Bruce Weirdan
c6551a61e7
Merge pull request #8805 from sasezaki/patch-1
2022-12-01 11:59:24 -04:00
sasezaki
de33d94802
Update installation.md - 5
requires PHP >= 7.4
2022-12-02 00:35:56 +09:00
kkmuffme
694b7d8975
check "never" return type more strictly
...
* require explicit "never" return type when function always exits, except if it only throws
* error if function does not exit, but return type explicitly contains "never"
* Fix: https://github.com/vimeo/psalm/issues/8175
* Fix: https://github.com/vimeo/psalm/issues/8178
2022-12-01 14:51:58 +01:00
orklah
2da4bf98d6
add test
2022-11-30 23:45:55 +01:00
orklah
3957eb753a
fix sealed array combination
2022-11-30 23:26:34 +01:00
orklah
bce4b55525
Merge pull request #8796 from orklah/reconcileFalse
...
handle true/false reconciliation consistently, fix #8795
2022-11-30 20:35:44 +01:00
orklah
ea4fe7422a
Merge pull request #8794 from danog/fix_8772
...
Ignore non-existing classes during initial scan of intersection types
2022-11-30 20:35:29 +01:00
orklah
40fa8282ee
CS fix
2022-11-30 20:18:09 +01:00
orklah
229f613b8e
handle true/false reconciliation consistently, fix #8795
2022-11-30 20:15:11 +01:00
9c35ed2eb7
Ignore non-existing classes during initial scan of intersection types
2022-11-30 17:33:58 +01:00
Bruce Weirdan
870f5817d2
Merge pull request #8789 from weirdan/defer-cache-directory-creation
...
Fixes https://github.com/vimeo/psalm/issues/4267
2022-11-30 10:52:17 -04:00
orklah
4e177bf0c9
Merge pull request #8790 from malarzm/patch-1
...
[Docs] Conditional types - remove unfinished sentence
2022-11-30 07:06:01 +01:00
Matthew Brown
7877570aaf
Remove CallMapTest.php from Psalm self-analysis
...
FIle has a very heavy include that doubles Psalm's time
2022-11-30 00:28:00 -05:00
Maciej Malarz
28188d113a
Remove unfinished sentence
2022-11-29 23:52:27 +01:00
Bruce Weirdan
6fd2ff14e7
Document BC break
2022-11-29 04:29:26 -04:00
Bruce Weirdan
6b3dd56850
Defer cache directory creation until it's needed
...
Honestly, this is a bit of a hack, as we let `Config` to generate the
cache directory name and then reset it to null from the cli entrypoint.
Yet it's easier than passing a no-cache flag through so many layers of
static calls.
`$this->cache_directory_initialized` flag is used to make sure we
attempt to create the directory only once.
Fixes vimeo/psalm#4267
2022-11-29 04:16:59 -04:00
Bruce Weirdan
6fff6dfc65
Merge pull request #8788 from weirdan/fix-xml-report-crashes-on-8.1
...
Fixes https://github.com/vimeo/psalm/issues/8321
2022-11-28 18:11:33 -04:00
Bruce Weirdan
874eb7d2ce
Fix crashes when XML report is used on PHP 8.1
...
Fixes vimeo/psalm#8321
2022-11-28 18:01:35 -04:00
Bruce Weirdan
9d597cf370
Merge pull request #8782 from weirdan/check-runtime-requirements
...
Fixes https://github.com/vimeo/psalm/issues/7560
2022-11-27 20:00:28 -04:00
Bruce Weirdan
94dac9f9e7
Merge pull request #8783 from weirdan/bump-slevomat-coding-standard
2022-11-27 16:35:54 -04:00
Bruce Weirdan
ed36f2c2e8
Bump slevomat/coding-standard
...
This prevents issues with incompatible `phpstan/phpdoc-parser`.
`slevomat/coding-standard:8.3` claimed compatibility with
`phpstan/phpdoc-parser:^1.6`, but it fails with a fatal error when
`phpstan/phpdoc-parser:1.14` is installed (apparently there was a BC
break in a minor version of `phpstan/phpdoc-parser`).
Since 8.4 slevomat/coding-standard adopted a more conservative
dependency strategy, and they don't allow new untested versions of
`phpstan/phpdoc-parser`.
8.4 still allows PHP 7.2, so we should have no problems due to 7.x
removal.
2022-11-27 16:16:52 -04:00
Bruce Weirdan
8fa35c2228
Variables should outlive namespaces ( #8779 )
...
Variables in PHP are not namespaced. In other words, namespaces share
the context with the file they are located in.
See https://3v4l.org/2qvrC
Fixes vimeo/psalm#8778
2022-11-27 10:45:40 -05:00
Bruce Weirdan
05b8e0eea6
Replace all references to static variables when moving class ( #8780 )
...
Previously `psalter` would only replace the first occurence of the
property access. Now it replaces all properties (by keeping the old name
unknown in the context).
2022-11-27 10:44:53 -05:00
Bruce Weirdan
03def00f27
Check runtime requirements
...
`vendor/autoload/check_platform.php` may be disabled by the user
`composer.json`, so we have to repeat the check for runtime
requirements.
Fixes vimeo/psalm#7560
2022-11-27 08:05:30 -04:00
Bruce Weirdan
24769a2089
Merge pull request #8777 from weirdan/move-mockery-to-require-dev
2022-11-27 05:20:22 -04:00
Bruce Weirdan
a8e0ff52df
Move mockery to require-dev too
2022-11-26 21:24:13 -04:00
Matthew Brown
1819a2d880
Add diagnostic message when shape fields are missing ( #8762 )
...
* Add a simple diagnostic for missing array shape fields
* Fix dumb mistakes
* Allow nested shape extra keys to prompt warning too
2022-11-26 11:26:36 -05:00
Bruce Weirdan
d1921b1abf
Merge pull request #8771 from weirdan/reenable-platform-check
...
Fixes https://github.com/vimeo/psalm/issues/7560
2022-11-26 04:09:57 -04:00
Bruce Weirdan
b8ca90c38e
Re-enable platform-check
...
This makes sure that we output sensible error (not very pretty, but
useful) when required extensions are missing.
Fixes vimeo/psalm#7560
2022-11-26 02:57:49 -04:00
Bruce Weirdan
074136c8ef
Merge pull request #8768 from orklah/composer-deps
2022-11-26 01:59:15 -04:00
Bruce Weirdan
d146411ae4
Merge pull request #8769 from weirdan/move-dev-plugins-to-require-dev
2022-11-26 01:57:03 -04:00
Bruce Weirdan
c3cc9062cb
Merge pull request #8770 from weirdan/upgrade-humbug-box
...
Fixes https://github.com/vimeo/psalm/issues/7606
Fixes https://github.com/vimeo/psalm/issues/5399
Fixes https://github.com/vimeo/psalm/issues/7314
2022-11-26 00:53:44 -04:00
Bruce Weirdan
5cbe241493
Disable parallel PHAR build
...
This is an attempt to fix CirleCI issue in this build:
https://app.circleci.com/pipelines/github/weirdan/psalm/666/workflows/33476cb1-d753-4e2d-b067-a5c92808d725/jobs/2457
2022-11-26 00:36:47 -04:00
Bruce Weirdan
ee34d15b4d
SA and CS fixes
2022-11-26 00:18:45 -04:00
Bruce Weirdan
683fe2f4c6
Bake version data into PHAR file
...
Compatibility between `ocramius/package-versions`,
`composer/package-versions-deprecated`, `composer-runtime-api` and
`humbug/box` (with `humbug/scoper` further complicating things)has been
always a problematic area. So instead of trying to keep up with all the
changes in all of those packages, we will now bake the version data (for
the packages we need) into the PHAR file itself.
Fixes vimeo/psalm#7606
Fixes vimeo/psalm#5399
2022-11-26 00:00:43 -04:00
Bruce Weirdan
369ba0635e
Update humbug/box
...
It updates humbug/scoper as well, so some changes to scoper
configuration are required.
`PSALM_VERSION` and `PHP_PARSER_VERSION` constants are made unscoped to
prevent various issues.
2022-11-25 23:58:41 -04:00