Marco Perone
641e7d7008
add documentation for pure-callable ( #4329 )
2020-10-14 19:59:44 -04:00
Marco Perone
ece18cd9b5
provide documentation for ensureArrayIntOffsetsExist configuration option ( #4328 )
2020-10-14 19:59:28 -04:00
feek
8d2db4e673
feature: universal object crates ( #3948 )
...
* feature: universal object crates
* docs: document universal object crate config option
Co-authored-by: Matthew Brown <github@muglug.com>
2020-10-07 09:56:21 -04:00
Leighton Thomas
2b5b255ad1
Fix #3543 - add documentation for @psalm-type and @psalm-import-type ( #4291 )
2020-10-06 18:58:25 -04:00
Matt Brown
3d9676c45e
Update docs to match 4.x config flags
2020-10-05 10:11:46 -04:00
Matthew Brown
36374a19ed
Add vendor/bin
2020-10-03 10:30:05 -04:00
Matthew Brown
8ed34442d0
Update the managing section
...
cc @weirdan
2020-10-03 10:28:58 -04:00
Matthew Brown
fcc3df12de
Update the discovering plugins docs
2020-10-03 10:23:55 -04:00
Matthew Brown
4eb37fcb0b
Improve language
2020-10-03 01:45:58 -04:00
Matthew Brown
79c30c4a1a
Fix casing
2020-10-03 01:05:02 -04:00
Matt Brown
1839b3e701
Fix test
2020-10-02 21:01:55 -04:00
Matt Brown
30795281c6
Add config and docs for InvalidNamedArgument
2020-10-02 20:35:23 -04:00
Simon Podlipsky
f55e5ea9bb
Mention $XDG_CACHE_HOME in cache docs ( #4268 )
2020-10-02 15:08:47 -04:00
Matthew Brown
13fd6c5a9d
Add slightly better language
2020-10-02 15:07:55 -04:00
Bruno Ribarić
c23406fe36
Fix typo ( #4261 )
...
* Fix typo
* Remove word
Co-authored-by: Matthew Brown <github@muglug.com>
2020-09-30 17:48:49 -04:00
Matthew Brown
0fc59c4293
Add more accurate description of functionality
2020-09-30 16:12:18 -04:00
Claas Augner
3f8c91a64e
fix(docs): add missing issues to error levels ( #4171 )
2020-09-12 11:25:41 -04:00
Lexidor Digital
43d91665c6
[easy fix] Update example for @no-named-arguments ( #4170 )
...
The text mentions `@no-named-arguments`, but the example shows `@no-named-params`.
`@no-named-params` can not be found in the psalm source.
Updated example to `@no-named-arguments`.
[https://github.com/vimeo/psalm/search?q=no-named-params&unscoped_q=no-named-params ](search for no-named-params) 1 result (this example)
[https://github.com/vimeo/psalm/search?q=no-named-arguments&unscoped_q=no-named-arguments ](search for no-named-arguments) 2 results (this example and in CommentAnalyzer.php)
2020-09-11 23:36:10 -04:00
Adrien LUCAS
107f596f24
Document Xdebug usage ( #4164 )
...
* Document Xdebug usage
* Change to non-persistent approache
Co-authored-by: Bruce Weirdan <weirdan@gmail.com>
Co-authored-by: Bruce Weirdan <weirdan@gmail.com>
2020-09-11 23:35:37 -04:00
Brown
6d8641ac09
Fix documentation
2020-09-10 22:58:26 -04:00
Brown
6ffe471525
Make new InvalidLiteralArgument issue for strpos refs
...
Ref #4070
2020-09-10 22:54:32 -04:00
Brown
00ad09816f
Fix tests
2020-09-10 19:05:47 -04:00
Alfred Bez
d9d8d28c2e
Document cacheDirectory behaviour ( #4149 )
2020-09-07 10:53:51 -04:00
Hans-Helge Buerger
8203150a5f
Fix link to template annotations ( #4125 )
2020-09-04 16:26:52 -04:00
orklah
c6ea274180
Config reportInfo to speed up analysis for big projects ( #4095 )
2020-09-01 09:22:05 -04:00
Brown
940459787a
Catch unmatched matches
2020-08-31 22:59:47 -04:00
Alfred Bez
921b8e206c
InvalidClass is also reported if the casing in the namespace is wrong ( #4090 )
2020-08-31 10:05:03 -04:00
Brown
92239add4d
Add some backwards-incompatible changes for 4.x
2020-08-30 11:44:14 -04:00
Markus Staab
fc50dd3acb
Docs: added more string types ( #4080 )
2020-08-28 14:37:46 -04:00
Markus Staab
58141d44ed
Docs: added callable-array ( #4079 )
...
* Docs: added callable-array
* Update array_types.md
* Add non-empty-array
2020-08-28 14:37:28 -04:00
Markus Staab
bb1d257aff
docs: added positive integer ( #4078 )
...
* docs: added positive integer
* added to toc
2020-08-28 12:55:50 -04:00
Brown
10f7031080
Prevent use of $this
in pure functions
2020-08-23 18:37:46 -04:00
Matthew Brown
7e13ab9cc9
Fix docs
2020-08-23 13:03:25 -04:00
Michel Hunziker
3538fe1955
Add configuration attribute to find unused @psalm-suppress ( #4041 )
2020-08-22 10:01:26 -04:00
Olle
3630b4a2f9
Merge remote-tracking branch 'remotes/upstream/master'
2020-08-18 15:59:46 +00:00
Matthew Brown
f48a362fcd
Add reference to automatic fix
2020-08-17 11:58:30 -04:00
Brown
03ab279cc4
Add ParamNameMismatch fixing documentation
2020-08-17 11:57:27 -04:00
Bruce Weirdan
7adc25c421
Improve import errors ( #3997 )
...
* Better errors for invalid type imports
Fixes vimeo/psalm#3885
* Finishing touches
Docs, schema, CS
* Drop unused import
* Drop more unused imports
2020-08-16 22:53:53 -04:00
kesselb
669a843cb0
Fix wrong documentation for referenced variable ( #3990 )
2020-08-14 14:02:41 -04:00
Matthew Brown
72ecb57def
Improve names of things
2020-08-14 00:27:33 -04:00
Farhad Safarov
057d2cc678
ForbiddenCode configure docs ( #3989 )
2020-08-13 09:21:13 -04:00
Bruce Weirdan
d5055ea1d4
Removed obsolete documenation ( #3982 )
...
`allowCoercionFromStringToClassConst` was removed in 3.0 and never
worked since.
Refs vimeo/psalm#3976
2020-08-11 07:30:09 -04:00
Brown
6def99d653
Add ConstructorSignatureMismatch issue distinct from MethodSignatureMismatch
2020-08-10 12:26:25 -04:00
lhchavez
ab3016af6e
Fix File-related analysis plugin hooks ( #3970 )
...
This change does a few things:
* Renames `BeforeAnalyzeFileInterface` to `BeforeFileAnalysisInterface`.
* Adds a few more parameters to `BeforeFileAnalysisInterface`.
* Since the analysis was never called due to a bug, the above two
changes are safe to do.
* Fix the above-mentioned bug, and now adds the hooks to the config.
* Update the documentation about the File-related analysis plugin hooks.
* Add a test to ensure that this does not break again in the future.
Fixes : #3969
2020-08-10 10:49:53 -04:00
Matthew Brown
6085e42fc1
Detect mismatching param names effectively
2020-08-10 09:58:43 -04:00
Matthew Brown
855c62d256
Add more examples of added types
2020-08-09 08:36:20 -04:00
Tom Klingenberg
ea52b9d23a
Fix minor typos in docs ( #3956 )
...
While I was searching for some code, ran across these.
2020-08-08 08:09:41 -04:00
Brown
278addd93d
Fix strtolower calls and docs
2020-08-05 21:46:15 -04:00
Brown
c0b0036109
Fix #3934 - prevent unsafe use of new static
2020-08-05 19:39:27 -04:00
Chad Edwards
c5f71b669c
Update MissingReturnType.md ( #3942 )
...
* Update MissingReturnType.md
It would be useful if these pages included the fix.
* Update MissingReturnType.md
Co-authored-by: Matthew Brown <github@muglug.com>
2020-08-05 15:48:18 -04:00
Brown
ad1920c3a2
Fix #3910 - improve handling of fgetcsv
2020-07-30 14:21:55 -04:00
Barney Laurance
7ed5e32840
Update docs on @psalm-internal as @internal no-longer has to be used at same time ( #3911 )
...
See #42ad366dc8ccaf34
2020-07-30 14:09:14 -04:00
Brown
5635070ec6
Fix documentation
2020-07-30 12:11:28 -04:00
Brown
6949a34ded
Put RedundantIdentityWithTrue behind a flag cc @greg0ire
2020-07-30 10:25:59 -04:00
Matthew Brown
38f74815d6
Add MissingParamType documentation
2020-07-28 23:56:32 -04:00
Grégoire Paris
8fe1fbc085
Fix typo in filename ( #3902 )
2020-07-27 14:16:55 -04:00
Grégoire Paris
2f673fbbd7
Detect redundant identity with true ( #3893 )
...
Using === true on a known boolean results in the same boolean.
2020-07-25 17:27:45 -04:00
Jack Leigh
367d5947ae
Update MissingThrowsDocblock.md ( #3878 )
2020-07-24 09:33:50 -04:00
Barney Laurance
3bc91b9944
Fix multiple issues with @internal and @psalm-internal ( #3841 )
...
* Add passing tests for property fetch on an @internal class
I'm trying to work out why the equivilent InvalidCodeParse test is
failing for PsalmInternal
* Treat all properties of a psalm-internal class as psalm-internal
* Remove all $internal properties from storage - use psalm_internal instead
@internal can be represented as internal to the namespace root, avoiding
the need to check for both properties in storage later.
* Raise InternalClass issue when an internal class is used with e.g. instanceOf
* fix docs and tests
* Add return type declartion to code example in doc
* Don't allow class psalm-internal to overide a tighter method psalm-internal
* Break up long line
* Code style - move && from EOL to SOL
* Restore misplaced &&
* Fix code style
* Fix namespace fetching so it works
Co-authored-by: Matthew Brown <github@muglug.com>
2020-07-22 19:27:35 -04:00
Dave Shoreman
f596b17da6
[docs] property/method text on Configuration page ( #3863 )
...
* Fix order of @methods and @property descriptions
Documentation was added in #3748 for usePhpDocPropertiesWithoutMagicCall
but the descriptions were the wrong way round and somewhat confusing.
This merely switches the descriptions so they match up correctly.
* Minor text fixes
2020-07-22 08:43:02 -04:00
kesselb
a5660d799b
[DOC] Add option to supress a referenced but undefined global variable. ( #3861 )
2020-07-21 14:02:23 -04:00
Artem Goutsoul
dbc14209b2
Clarifying taint analysis usage documentation ( #3834 )
...
* Clarifying taint analysis usage documentation
* Fix typo
Co-authored-by: Matthew Brown <github@muglug.com>
2020-07-17 10:10:35 -04:00
Brown
c56e29b114
Fix example
2020-07-16 16:19:29 -04:00
Olle
4b98bf485e
Add doc for ifthisismismatch exception
2020-07-14 18:00:22 +00:00
Jon Ursenbach
6aca4c169e
feat: adding a runTaintAnalysis option into the config ( #3800 )
2020-07-10 13:22:03 -04:00
Bruce Weirdan
1abbcc4364
Added documentation for usePhpDocPropertiesWithoutMagicCall ( #3748 )
...
Fixes vimeo/psalm#3730
2020-07-04 17:20:45 -04:00
binarious
ff990e5f8f
docs(MoreSpecificImplementedParamType): less to more ( #3725 )
2020-07-01 09:01:58 -04:00
Brown
29eb83001f
Remove taint annotation as it could confuse
2020-06-22 12:45:41 -04:00
Brown
e2545790dc
Add reference to new command
2020-06-22 11:37:30 -04:00
Brown
07a38706f6
Fix #3610 - add security analysis documeentation
2020-06-22 00:18:15 -04:00
Brown
fbe3433edd
Use escape terminology
2020-06-21 11:43:08 -04:00
Brown
5e9dc9520e
Improve docs
2020-06-21 01:02:00 -04:00
Brown
dc83c2e2fc
Add annotation for taint sources
2020-06-21 00:58:56 -04:00
Brown
5bc657504d
Add more docs
2020-06-19 12:12:28 -04:00
Brown
67f7079c1a
More better docs
2020-06-19 11:57:34 -04:00
Brown
51202c75ea
Add taint docs
2020-06-19 11:56:12 -04:00
Andrei Petre
ce39bab966
Update InvalidExtendClass.md ( #3616 )
...
suggestion by @weirdan
2020-06-19 11:51:30 -04:00
Jeroen De Dauw
8d4df25b87
Document the new extraFiles config ( #3619 )
...
Follow up to 078b8b7b1a
2020-06-19 02:28:20 -04:00
Olle Härstedt
948be8243e
Add @method to docs ( #3595 )
...
* Add @method
* Fix links
2020-06-16 22:20:34 -04:00
Matthew Brown
aff2805794
Add annotations ref
2020-06-16 20:55:39 -04:00
Olle Härstedt
e1cc27f7a2
Add new config: sealAllMethods ( #3578 )
...
* Add new config: sealAllMethods
* Add some more tests
* Fix codesniffer issue with preg_quote
* Fix missing method in test
Co-authored-by: Olle <noemail>
2020-06-15 22:36:42 -04:00
Bruce Weirdan
e496aa406f
Documented using underscore to suppress unused(param/variable) issues ( #3580 )
...
Previously it was undocumented, as pointed out in vimeo/psalm#3574
2020-06-13 00:31:37 -04:00
Andrei Petre
3497ca07b6
Extending final class is prohibited #3037 ( #3576 )
2020-06-13 00:29:59 -04:00
Brown
8c2f1d7683
Fix capitalisation
2020-06-11 13:40:28 -04:00
wnbsmart
07c7c30ad6
Pass unused created variable ( #3560 )
2020-06-10 17:28:04 -04:00
Marco Perone
ca84712ece
add and correct links to how-psalm-works ( #3523 )
2020-06-04 15:32:18 -04:00
Ivan Kurnosov
08943ea409
Fix #3517 - Changed ignoreInternalFunctionFalseReturn default to true ( #3518 )
...
In config.xsd and the documentation
2020-06-03 22:29:09 -04:00
Joe Hoyle
1c3796d2a0
Add BeforeAnalyzeFileInterface to Plugin documentation ( #3413 )
...
This was missing for one reason or another.
2020-05-20 09:13:29 -04:00
Brown
3c5b4dec06
Add documentation for MixedClone
2020-05-18 17:20:57 -04:00
Evgeniy
04a576708c
Correct analyze clone expression ( #3382 )
...
* Correct analyze clone, add PossibleInvalidClone issue type
* Infer mixed type when possible incorrect clone
* Remove unused variable
2020-05-18 16:22:50 -04:00
Bruce Weirdan
4f7b51a462
Streamline plugins docs ( #3356 )
2020-05-14 07:47:55 -04:00
feek
a83a6cf3f7
doc --> dog ( #3330 )
2020-05-10 11:19:54 -04:00
Anton Ukhanev
5b35e022f6
Fix link ( #3304 )
...
This fixes link to PHPDoc's type syntax documentation. It appears that they have added an extra URL segment to represent the doc version.
2020-05-06 09:55:57 -04:00
Matthew Brown
fddab8919e
Remove dead link
...
Fixes #3301
2020-05-04 14:50:12 -04:00
flip111
d475a601f0
Update MissingPropertyType.md ( #3299 )
2020-05-04 14:49:19 -04:00
feek
c2a693a034
chore: < > ( #3261 )
2020-04-28 19:42:06 -04:00
orklah
8571746f8a
Add hook for plugins after FunctionLikeAnalysis ( #3258 )
2020-04-28 15:30:51 -04:00
Pierre Grimaud
e7990390a6
Fix typos ( #3255 )
2020-04-28 09:17:31 -04:00
Brown
c79d64f0c4
A little more unquoting
2020-04-27 23:17:10 -04:00
Brown
11e1adaa99
Fix some escaping
2020-04-27 23:13:43 -04:00
Brown
bb934a40d1
Fix quote pos
2020-04-27 23:12:04 -04:00
Brown
cf26ab0ea9
Use html entities
2020-04-27 23:11:05 -04:00
Brown
5c2fd5863b
Fix escaping
2020-04-27 23:08:43 -04:00
Brown
e73fe89c01
Fix quoting maybe
2020-04-27 23:01:30 -04:00
Matthew Brown
d3b814578c
Revert "chore: remove backticks because of escaping issue in docs ( #3242 )" ( #3251 )
...
This reverts commit 686c2d780d
.
2020-04-27 22:57:11 -04:00
feek
686c2d780d
chore: remove backticks because of escaping issue in docs ( #3242 )
2020-04-27 22:49:51 -04:00
Markus Staab
5c511ad95d
docs: mention cacheDirectory default value ( #3184 )
2020-04-19 08:04:41 -04:00
Valentin Udaltsov
29394552a2
Update MixedArgumentTypeCoercion.md ( #3129 )
2020-04-12 19:52:50 -04:00
Šimon Podlipský
2a7be233bb
Remove dead link ( #3112 )
...
* Remove dead link
* Fix typos
2020-04-09 08:14:43 -04:00
m0003r
28f740fddb
@psalm-trace is now a specific low-level issue, because plain debug print breaks structured output (after #3080 ) ( #3106 )
2020-04-08 21:03:05 -04:00
lhchavez
be87bb7300
Support intersection types for object-like arrays ( #3064 )
...
This change allows expressing the intersection of multiple object-like
arrays. The resulting type will contain the (merged via intersection)
properties of all the object-like arrays involved in the intersection.
This should allow to express the resulting type of an `array_merge()`
operation, which is tricky to do in the context of a templated type.
2020-04-08 09:35:53 -04:00
m0003r
11edb22c72
Implement @psalm-trace annotation, fixes #3079 ( #3080 )
2020-04-06 12:42:22 -04:00
Matthew Brown
6ac6c54a34
Fix defaults
2020-04-06 09:28:49 -04:00
Matthew Brown
a1be95dc19
remove dead link
2020-04-05 17:24:05 -04:00
Matthew Brown
ec7c8e5f59
Remove dead link
2020-04-05 17:23:23 -04:00
Matthew Brown
476b248a1e
Delete docblock_type_syntax.md
2020-04-02 09:41:12 -04:00
Matthew Brown
500b4eb13b
Add content from redundant page
2020-04-02 09:40:17 -04:00
Matthew Brown
194f02507d
Allow conditional types to reference class constants
2020-03-29 13:37:37 -04:00
Matthew Brown
9055c4a79b
Add documentation for conditional types
...
Fixes #3005
2020-03-29 11:14:03 -04:00
iggyvolz
94b246b987
Initial commit ( #3013 )
2020-03-24 18:32:57 -04:00
Matthew Brown
010b805397
Fix issue description
2020-03-23 23:55:51 -04:00
Matthew Brown
e8fbba5de2
Improve words
2020-03-23 23:54:48 -04:00
Matthew Brown
2043e857ba
Increase header weight
2020-03-22 18:42:19 -04:00
Matthew Brown
e5579332cd
Add explanation for MixedMethodCall
2020-03-21 17:33:37 -04:00
Matthew Brown
e6a0fe0973
Add a better description to PossiblyInvalidArgument
2020-03-21 15:33:40 -04:00
Markus Staab
4079b53b93
Fix typo ( #2999 )
2020-03-21 10:19:30 -04:00
Matthew Brown
e49a5dd55d
Add more docs
2020-03-21 10:13:11 -04:00
Matthew Brown
3f2615290d
Update docs once more
2020-03-21 09:48:35 -04:00
Matthew Brown
d22fe29a60
Switch around docs
2020-03-21 09:36:21 -04:00
Matthew Brown
476480ef41
Add opening <?php tags to all PHP snippets
2020-03-21 09:24:41 -04:00
Matthew Brown
f6ea701bdc
Add a couple more documented things
2020-03-21 00:39:00 -04:00
Matthew Brown
40bd743e49
Add a few more about type mismatches
2020-03-20 21:55:34 -04:00
Matthew Brown
33dc3a62be
Improve example code
2020-03-20 19:19:24 -04:00
Matthew Brown
84bfba04c8
Add opening PHP tags to examples
2020-03-20 19:13:56 -04:00
Matthew Brown
dd0898c4df
Add how to fix for PossiblyUndefinedArrayOffset
2020-03-20 15:20:54 -04:00
Matthew Brown
7afb4b4cd5
Add some more docs
2020-03-20 00:21:11 -04:00
Matthew Brown
cc77910338
Fix indentation
2020-03-19 16:37:17 -04:00
Matthew Brown
7ba0d27d6c
Fix formatting
2020-03-19 12:42:41 -04:00
Matthew Brown
f0f9b2d01b
Add suffix
2020-03-19 12:34:48 -04:00
Matthew Brown
2f62e2d9f5
Move issues to separate pages
2020-03-19 12:32:49 -04:00
Matthew Brown
c3e94b3e54
Separate formatting
...
Fixes #2988
2020-03-18 19:15:44 -04:00
Matthew Brown
b2574ad1a3
Add weird break
2020-03-18 19:14:04 -04:00
Matthew Brown
da456b62db
Add more whitespace
2020-03-18 19:12:02 -04:00
Claas Augner
a5f581e294
Fix #2984 - Document Generator type syntax ( #2986 )
2020-03-18 09:28:32 -04:00
yaegassy
6d4e809491
Add coc.nvim for language server document ( #2980 )
...
* Add coc.nvim for language server document
* Add psalm.xml.dist to coc.nvim's rootPatterns
2020-03-17 09:04:43 -04:00
Matthew Brown
7017fe3ca4
Fix indentation
2020-03-16 09:51:45 -04:00
Matthew Brown
96a1a0c04f
Remove cast from docblock example
2020-03-16 09:46:43 -04:00
Matthew Brown
6d8e8ba5e2
Add more suggestions
2020-03-16 09:42:17 -04:00
Matthew Brown
f22f5e38f1
Add a how to fix section for MixedAssignment
2020-03-16 09:30:51 -04:00
Alexey Kopytko
9e64670e42
Add hyperlink in templated_annotations.md ( #2976 )
2020-03-15 23:28:37 -04:00
Matthew Brown
0aca01faea
Improve fix to #2805
2020-03-14 01:09:12 -04:00
Maks Rafalko
b6873b0e72
ignoreInternalFunctionFalseReturn
default to false in XSD, but documentations says true
...
See 27598f508e/config.xsd (L46)
2020-03-12 09:12:23 -04:00
Matthew Brown
ef64e6e8eb
Improve abstract call handling
2020-03-11 10:36:39 -04:00
Matthew Brown
0d62fbdf98
Detect erroneous abstract static method calls
2020-03-11 10:18:40 -04:00
Philip Hofstetter
d315822bfa
make skipping of checks after invalid includes configurable
...
as suggested in the PR it's best to make the setting configurable.
In order not to break existing installations, we default to keeping the
old behaviour, but in a later version of psalm, we might change the
default.
2020-02-27 18:49:23 -05:00
Matthew Brown
106102d0a5
Add line break
2020-02-23 00:41:19 -05:00
Matthew Brown
a706f4d722
Fix #2242 - warn when using mutable dependencies
2020-02-22 10:04:46 -05:00
Brown
7d99a15072
Fix #2805 - forbid passing in mutable class to mutation-free context
2020-02-21 18:25:35 -05:00
Tarmo Leppänen
f51384e74e
Update dealing_with_code_issues.md
2020-02-20 13:47:13 -05:00
Matthew Brown
306ed07cfc
Update readme
2020-02-18 23:50:53 -05:00
Matthew Brown
2e4154d76e
Add better defaults and documentation
2020-02-18 20:30:37 -05:00
Matthew Brown
320f3ec863
Update level config name
2020-02-17 22:43:13 -05:00
Matthew Brown
a55686b6e4
Move to more appropriate location
2020-02-17 22:21:04 -05:00
Matthew Brown
2cb3d0f9f3
Fix error level docs
2020-02-17 22:19:28 -05:00
Matthew Brown
a2c2a55ae6
Update documentation
2020-02-17 22:06:28 -05:00
Matthew Brown
ced092874a
Make config generation smarter
2020-02-17 22:05:58 -05:00
Philip Hofstetter
395cf587d3
add plugin hook to be called after every function call
...
compared to AfterFunctionCallAnalysisInterface which gets only called
after a call to a function declared within the project, a plugin
implementing AfterEveryFunctionCallAnalysisInterface will get called for
every function call, including calls of PHP builtins.
On the other hand, this interface doesn't allow modification of the code
nor tweaking the return type, but it's still useful for accounting
purposes and for depreacting calls to PHP builtins
this fixes #2804
2020-02-13 09:10:24 -05:00
Bruce Weirdan
ae0b1a6acb
Fix #2802
...
/cc: @zmitic
2020-02-12 17:43:33 -05:00
Roland Franssen
a7355fa734
Update typing_in_psalm.md
2020-02-07 10:55:44 -05:00
Matthew Brown
b3f6b56f9c
Add support for @psalm-readonly-allow-private-mutation
2020-02-02 15:56:08 -05:00
Matthew Brown
93c613b5a3
Adjusted for actual implementation
2020-02-02 15:39:24 -05:00
Christian Kolb
fd6cdf61c7
Update naming to mutate
2020-02-02 15:39:24 -05:00
Christian Kolb
143756800f
Add documentation for new @psalm-private-set annotation
2020-02-02 15:39:24 -05:00
Philip Hofstetter
40497e4f4c
document phpVersion
setting
2020-01-30 08:48:53 -05:00
Matthew Brown
5c3ec7a531
Fix #2696 - make sure static property references are prevented in pure functions
2020-01-27 22:55:20 -05:00
Barney Laurance
4a4c0f1362
Clarify documentation of --diff and --diff-methods ( #2680 )
...
* Clarify documentation of --diff and --diff-methods
* Save Psalm cache in CircleCI
2020-01-25 10:50:11 -05:00
Brown
0f659d996d
Add documentation for new issue
2020-01-23 14:33:07 -05:00
HenkPoley
72b5b22474
Mention how to annotate psalm specific annotations ( #2648 )
...
* Mention how to annotate psalm specific annotations
Might be nice to mention how to annotate psalm specific annotations, without trampling over PhpDoc annotations.
* Fix key type
Co-authored-by: Matthew Brown <github@muglug.com>
2020-01-17 08:47:21 -05:00
Bruce Weirdan
17857163fc
Modular config files ( #2635 )
...
This change introduces an option to have the configuration split across
several files using standard XInclude tags. This may be useful for more
complex configs, or to include auto-generated parts into a manually
written config file.
2020-01-16 15:57:52 -05:00
Jacob Dreesen
26bf183430
Fix typos ( #2639 )
2020-01-16 08:36:18 -05:00
Pavel Batečko
87debfe954
Support suppressing all issues with @psalm-suppress all ( #2584 )
...
* Support suppressing all issues using @psalm-suppress all
* Document @psalm-suppress all
2020-01-12 10:38:32 -05:00
HenkPoley
d22b13262f
[For PhpStorm] How to find the global install of the language server under Windows ( #2582 )
...
* Handholding to find the global install of the language server under Windows
* Hint about a 'proper' timeout for things like Laravel
2020-01-10 08:47:01 -05:00
Brown
083fbc55e1
Add more specific UndefinedMagicMethod issue
2020-01-06 14:23:33 -05:00
Matthew Brown
4e85967184
Fix tests
2020-01-05 21:58:18 -05:00
Matthew Brown
daf6b6391d
Punctuation
2020-01-02 16:21:15 -05:00
LeSuisse
88c496121e
Add an example on how to use @psalm-immutable
annotation with an anonymous class ( #2544 )
...
Related to #2543
2020-01-02 14:09:11 -05:00
Markus Podar
270a99f57d
Add sample for optional keys in array shapes ( #2538 )
2020-01-01 13:53:32 -05:00
Ruud Kamphuis
ca31931a53
Explain bool assertions ( #2528 )
2019-12-29 09:22:09 -05:00
Matthew Brown
a2a2d8cd97
Delimit quotes
2019-12-21 14:15:02 +00:00
Grégoire Paris
cde7c80786
Spell "covariant" properly ( #2487 )
2019-12-19 17:49:51 +00:00
Matthew Brown
c2464ebb71
fix link
2019-12-19 10:41:15 +00:00
Matthew Brown
7b6061efe3
Add section on template covariance
2019-12-19 10:36:14 +00:00
Valentin Udaltsov
bb52c4ce75
Update callable_types.md ( #2482 )
...
Spread operator must be a suffix in callables
2019-12-19 00:28:04 +00:00
Matthew Brown
fb85b81908
Add note about using the Phar
2019-12-18 15:35:18 +00:00
Leo Cavalcante
1bc2bb6386
Update PhpStorm usage ( #2410 )
...
There is a new option that defaults to Artifact. It should be Executable.
Windows can't figure out that the PHP interpreter will run a shell script that then calls PHP (not sure if this even works on Unix)
And added a PHP bin dir example for Wins
2019-12-04 13:36:30 -05:00
Matthew Brown
6ce6ad4483
Add note about Shepherd
2019-12-03 09:53:37 -05:00
Brown
af5f83602e
Break out more specific possibly defined offset errors
2019-11-11 09:59:56 -05:00
Bruce Weirdan
79acbadfad
Added InvalidParent issue ( #2320 )
...
Refs vimeo/psalm#2304
2019-11-11 00:21:43 -05:00
ADmad
065653c58f
Fix param name in example ( #2317 )
2019-11-09 16:26:06 -05:00
Jáchym Toušek
f2c82fa212
Add support for Iterator<X> type ( #2285 )
...
* Add support for Iterator<X> type
* Fix tests
2019-10-30 18:00:27 +00:00
Matthew Brown
4ee037923a
add link to lists
2019-10-11 09:58:34 -04:00
Matthew Brown
f25fe29c73
Add documentation for lists
2019-10-11 09:56:46 -04:00
Matthew Brown
79f2f4197a
Fix typo
2019-09-26 16:20:42 -04:00
Brown
cf799d0926
Fix #2173 - remove @var annotations automatically
2019-09-26 15:08:05 -04:00
Matthew Brown
9c629414a7
Fix #2138 - complain when inheriting from immutable interfaces without annotation
2019-09-21 22:52:30 -04:00
Brown
c5ef2516b5
Fix #2150 - add detection for unnecessary @var annotations
...
And also remove them from codebase
2019-09-19 11:59:43 -04:00
Matthew Brown
9ad6c36d9b
Conditionally verify that array offsets exist ( #2147 )
...
* Check array offsets idea
* Clean up some issues
* Add a few light fixes
* Add docs
2019-09-18 14:21:06 -04:00
SignpostMarv
943705ce0e
load an xdebug stub when required, re: vimeo/psalm#2118 ( #2133 )
...
* load an xdebug stub when required, re: vimeo/psalm#2118
* correcting case sensitivity of XDebug to Xdebug
* only load the Xdebug stub when needed
2019-09-14 10:13:39 -04:00
Jacob Dreesen
34d98f9f42
Fix description of @psalm-external-mutation-free ( #2110 )
2019-09-09 14:52:30 -04:00
Brown
56c884845f
Static methods inside @psalm-immutable class should be permitted
...
Fixes #2109
2019-09-09 10:38:55 -04:00
Matthew Brown
f8b8f35c03
Add docs for @psalm-pure
2019-09-08 15:25:12 -04:00
Matthew Brown
5d08c47e4b
Add docs for immutable ideas
2019-09-08 15:21:30 -04:00
Matthew Brown
51e552665e
Fix #2061 - add config to allow suppression of string increment issues
2019-09-01 17:49:37 -04:00
Matthew Brown
dee2cf3281
Detect use of static inside pure function
2019-08-31 21:31:53 -04:00
Matthew Brown
6d07663d70
Annotate method getters more accurately
2019-08-30 16:40:32 -04:00
lhchavez
3e5f6b16b7
Add documentation for the <globals> project setting ( #2068 )
...
This change exposes the documentation for the <globals> project setting.
2019-08-25 23:47:39 -04:00
Markus Staab
51bf0b4001
document psalter --allow-backwards-incompatible-changes=false option ( #2056 )
2019-08-25 23:47:06 -04:00
Brown
95c61db513
Add a PossibleRawObjectIteration issue
2019-08-20 12:06:02 -04:00
Matthew Brown
2a5e0d8f39
Fix #1444 - track unused suppressions
2019-08-18 14:27:50 -04:00
lhchavez
c98c160907
Allow explicitly-annotated mixed assignments ( #2030 )
...
This change makes it possible to assign mixed expressions to variables
if an annotation is explicitly added to the variable. This allows the
use of `call_user_func` without needing to suppress issues.
Fixes : #1374
2019-08-17 11:22:43 -04:00
Matthew Brown
5c1b4d5a2a
Fix underscore
2019-08-16 22:28:31 -04:00
Matthew Brown
476f9ae353
Fix type links
2019-08-16 22:27:58 -04:00
Matthew Brown
88e8f105e0
Remove code from links
2019-08-16 22:24:11 -04:00
Matthew Brown
fafb7ee7e1
Remove thing that needn't be code
2019-08-16 22:21:17 -04:00
Matthew Brown
8228a0f9a5
Add more descriptive text for InvalidDocblockParamName
2019-08-15 10:52:24 -04:00
Brown
b5614d03f8
Add detection for unused function calls
2019-08-13 13:15:23 -04:00
Matthew Brown
89416c6f4f
AddWord
2019-08-13 09:24:50 -04:00
Matthew Brown
b53446e11d
Add documentation for findUnusedVariables and findUnusedCode
2019-08-13 09:24:20 -04:00
Matthew Brown
7c6b1581d3
Add warnings about uninitialised properties to mixed as well
2019-08-11 00:22:28 -04:00
Matthew Brown
85c9b6bb44
Add documentation for automatically removing UnusedVariable
2019-08-09 11:40:46 -04:00
Brown
04c12a36fe
Fix docs example for impurity
2019-08-07 15:39:51 -04:00
Matthew Brown
b2c0993cdc
Add framework for taint analysis to Psalm
...
Ref #611
2019-08-04 10:37:36 -04:00
Chad Burrus
7ded79bb27
typo fix : "you" -> "your" ( #1976 )
2019-07-30 13:22:26 -04:00
Matthew Brown
90854c4094
Fix broken behaviour when analysing interface test methods
2019-07-28 19:44:36 -04:00
Mikko Pesari
82e79aae20
Fix ignoreExceptions tags ( #1966 )
2019-07-24 07:50:40 -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
Barney Laurance
94f934627c
Work in progress - resolve directories from config file location ( #1904 )
...
* Add resolveFromConfigFile config option
Treats all paths as relative to the location of the config file, not
the current working directory of the process.
This commit just changes psalm, further commits will be needed to
apply the change to psalter and the LSP server.
* Copy asset xml files into project root for testing, delete during teardown
Needed since paths are now resolved relative to the position of the
file.
Not sure why I only saw a test failre for 1.xml - would have expected it
for all eight files.
* Fix following rebase
* Move psalm --init handly code above working directory setting code
If there's no psalm.xml yet we can't use the location of psalm.xml to
set our working directory
* Move Psalm version output code above working directory resolution
Working directory doesn't need to be known to output version constant
* Rely on new config file based working directory in end to end test
* Dont use rely on config dir for --alter - not currently working
* Fix code style error
* Add failing test for supporting config without `resolveFromConfigFile="true"`
* Don't treat config directory as a path to check
* Document resolveFromConfigFile setting
2019-07-06 12:21:39 -04:00
Tyson Andre
220513c5f2
Fix typos with codespell ( #1870 )
2019-06-28 13:59:09 -04:00
Brown
6a95aeb7e2
Fix 404
2019-06-27 17:35:24 -04:00
Brown
0d3f5af18c
Break out docblock_type_syntax.md into separate files
2019-06-27 17:00:26 -04:00
Dave Liddament
af1decf30c
Add missing links to documentation ( #1858 )
...
Not sure how index for docs are generated. The hope is this should fix #1857
2019-06-27 14:36:27 -04:00
Ivan
5bb28cc493
fix typo ( #1819 )
2019-06-20 09:05:22 -04:00
Matthew Brown
4823e35f8e
Add rename namespace command
2019-06-19 19:49:42 -04:00
Matthew Brown
f06cd85ad0
Fix link
2019-06-19 14:21:07 -04:00
Matthew Brown
51e31ba9c9
Add separate file for adding_assertions
2019-06-19 14:19:40 -04:00
Matthew Brown
95fc208ce3
Break out assertion syntax into separate file
2019-06-19 14:19:14 -04:00
Matthew Brown
d0e84f1b88
remove slash
2019-06-19 01:39:11 -04:00
Matthew Brown
9ad6e7c024
Remove a word
2019-06-19 01:24:14 -04:00
Matthew Brown
0cd8e71368
Fix formatting
2019-06-19 01:23:49 -04:00
Matthew Brown
a46dddde4b
Add newline
2019-06-19 01:21:29 -04:00
Matthew Brown
74a96a95d0
Add assertion syntax docs ( #1810 )
...
* Create assertion_syntax.md
* Add more
* Add more details
* Add link to assertions
2019-06-19 01:09:46 -04:00
Matthew Brown
5a64e97f0f
Fix #1793 - warn on deprecated function
2019-06-15 12:09:15 -04:00
mattdfloyd
6f6054f36d
Update refactoring.md
2019-06-14 13:07:58 -04:00
Matthew Brown
305c40839a
Remove phpdoc note
2019-06-09 18:05:28 -04:00
Matthew Brown
d4186e4530
Add PHPDoc note
2019-06-09 18:04:00 -04:00
Matthew Brown
7a14e87e78
Add line breaks
2019-06-09 17:45:41 -04:00
Matthew Brown
bbacba4acf
Improve atomic type intro
2019-06-09 17:41:06 -04:00
Matthew Brown
0443bfc41e
Add better preamble about atomic types
2019-06-09 17:37:29 -04:00
Matthew Brown
28b0895ffb
Push union type info to bottom
2019-06-09 17:35:38 -04:00
Matthew Brown
f898bb1f2c
Remove probably-confusing explanation of union types
2019-06-09 17:31:26 -04:00
Matthew Brown
30b1b0a65c
Indent other types
2019-06-09 17:20:13 -04:00
Matthew Brown
71a184312a
Improve punctuation
2019-06-09 15:48:08 -04:00
Matthew Brown
5d47dc5769
Add more obvious examples
2019-06-09 15:43:52 -04:00
Matthew Brown
c3d4acf6fe
Add link
2019-06-09 15:34:19 -04:00
Matthew Brown
61102998d1
Organise atomic type page better
2019-06-09 15:32:26 -04:00
Matthew Brown
bc49787d69
Add more information about class-string
2019-06-09 15:22:26 -04:00
Matthew Brown
9c18dfed43
Fix char
2019-06-09 15:20:15 -04:00
Matthew Brown
2fd24c4765
Fix underscores
2019-06-09 15:18:06 -04:00
Matthew Brown
344164816f
Break apart atomic type docs, adding listing
2019-06-09 15:16:55 -04:00
Matthew Brown
5592335a7c
Remove "
2019-06-09 09:16:43 -04:00
Matthew Brown
017ddd590a
Add better English
2019-06-09 01:41:31 -04:00
Matthew Brown
c6ffa7b55a
Change paths
2019-06-09 01:07:17 -04:00
Matthew Brown
a2f444f1b9
Fix link
2019-06-09 01:05:03 -04:00
Matthew Brown
7a1a728cee
Move docs into subfolders
2019-06-09 00:54:13 -04:00
Matthew Brown
8ff960af9e
Removed newline
2019-06-08 16:35:26 -04:00
Matthew Brown
21431caaca
Add preamble about templated types
2019-06-08 16:34:37 -04:00
Brown
b00d51b7db
Allow misplaced required params so Psalm still inspects the code
2019-06-07 09:25:12 -04:00
Matthew Brown
e486b25173
Fix typo
2019-06-04 08:50:50 -04:00
Matthew Brown
856180ac2a
Add MissingParamType fix documentation
2019-06-04 08:45:01 -04:00
Matthew Brown
8968488fe4
Fix coercion config
2019-05-31 19:59:47 -04:00
Matthew Brown
909f5cee08
Change version constraint
2019-05-29 23:50:24 -04:00
Barney Laurance
04ef20da1f
Add error message when psalter asked to work beyond its abilities; allow fixing all issues and output list of fixable issues ( #1687 )
...
* Oputput error message when asked to fix non-fixable issue
* Document ability to fix function PossiblyUndefinedGlobalVariable
* Add --issues=all option to fix all possible issues
* Add --list-supported-issues option to psalter
* Fix psalm issues
* Add newline to end of psalter help output
* Adjust messages output from psalter
* Use fwrite(STDERR, instead of die( for issue list related errors in psalter
* Restore missing exits in psalter
2019-05-27 10:05:15 -04:00
Matthew Brown
7601921ecf
Add a word
2019-05-21 23:06:50 -04:00
Matthew Brown
ee3dfba8ab
Add documentation for all 19 hooks
...
Fixes #1582
2019-05-16 14:32:44 -04:00
Matthew Brown
e75ee77938
Added default name
2019-05-16 14:17:40 -04:00
Barney Laurance
8f129f828b
Document intersection and no-return types in docblock syntax
...
Also removed spaces from union type example.
2019-05-15 19:16:15 -04:00
Brown
4a434d9a2f
Add separate issue for undefined classes in docblocks
2019-05-15 18:41:26 -04:00
Barney Laurance
7f4173efc5
Fix typo in docs
2019-05-14 19:30:39 -04:00
Barney Laurance
f4c754737f
psalm-internal: Prevent use of @psalm-internal without @internal
2019-05-14 18:54:16 -04:00
Barney Laurance
31ae10fb00
psalm-internal - document usage of @internal and @psalm-internal tags
2019-05-14 18:54:16 -04:00
Brown
30cbcb6c36
Add ImplementedParamTypeMismatch issue
...
Fixes #1633
2019-05-14 15:44:46 -04:00
Jonathan H. Wage
ecb7a6c069
Add support for absolute plugin paths.
2019-05-05 16:44:36 -04:00
Jonathan H. Wage
db227dab06
Fix link to Plugins that currently 404s
2019-05-02 17:49:34 -04:00
Brown
0e4c8ce482
Split apart TypeCoercion issues, allowing more granular issue filtering
2019-04-25 18:02:19 -04:00
Ryan McCue
91be079ca6
Link to human-readable package list
2019-04-21 08:42:35 -04:00
Matthew Brown
29b70442b1
Add documentation for unused method/property removal/
2019-04-20 17:54:17 -04:00
Dave Liddament
53e2a0e671
FIX remove extra space in markdown
2019-04-18 18:18:16 -04:00
bugreportuser
4a931770be
Added doc for onlyGlobalScope
2019-04-16 22:42:45 -04:00
Matthew Brown
b00aa848e4
Split up plugins guide
2019-04-14 15:21:41 -04:00
Matthew Brown
5374211fc1
Add link to how Psalm represents types
2019-04-14 15:13:47 -04:00
Matthew Brown
7eab5cf6df
Few small improvements
2019-04-14 15:12:16 -04:00
Matthew Brown
2a862040c1
Add more documentation
2019-04-14 15:12:16 -04:00
Robert Hickman
7b5e3c88e3
fix markdown error
2019-04-14 15:12:16 -04:00
Robert Hickman
a1cbf41a0e
fix markdown error
2019-04-14 15:12:16 -04:00
Robert Hickman
28ecccb364
added plugins type system documentation
2019-04-14 15:12:16 -04:00
Brown
af4d10cb63
Fix #1499 - use TraitMethodSignatureMismatch when dealing with trait methods
2019-03-29 14:09:06 -04:00
Matthew Brown
dd7596ea64
Update title
2019-03-29 00:06:40 -04:00
bugreportuser
976c2c5ef3
Add an error for throws in global scope
2019-03-24 23:03:37 -04:00
Tyson Andre
2e6a2f14ed
Fix typos in psalm with codespell's dictionary
2019-03-24 23:01:20 -04:00
Matthew Brown
9f7f7074ef
Add index to readme
2019-03-20 11:49:17 -04:00
Matthew Brown
41f0034185
Delete index.md
2019-03-20 11:48:20 -04:00
Matthew Brown
12b5d05a86
Update and rename introduction.md to README.md
2019-03-20 11:35:55 -04:00
Matthew Brown
b6d0f89d52
Fix typo
2019-03-19 22:40:27 -04:00
Matthew Brown
6f9945cc09
Change name
2019-03-19 22:39:42 -04:00
Matthew Brown
a8f9885021
Add introduction
2019-03-19 22:39:14 -04:00
Matthew Brown
60504f6c7b
Separate intro
2019-03-19 22:37:26 -04:00
Matthew Brown
41fe05277a
Add explanation of what Psalter does
2019-03-19 19:47:49 -04:00
Matthew Brown
d1f3a757aa
Put fixing on a new line
2019-03-19 18:38:11 -04:00
Matthew Brown
cf10e5b764
Improve index
2019-03-19 18:37:39 -04:00
Matthew Brown
86fecc3ecf
Add link for docblock type syntax
2019-03-19 17:12:35 -04:00
Matthew Brown
8201a2c65c
Add not to make clear you can use object-like arrays yourself
2019-03-19 15:29:28 -04:00
Matthew Brown
d55bd8ac65
Remove formatting that mkdocs doesn't recognise
2019-03-19 15:18:22 -04:00
Matthew Brown
336a79336f
Made indentation clearer maybe?
2019-03-19 15:12:08 -04:00
Matthew Brown
aaa1f17e52
Remove typing arrays
2019-03-19 14:08:58 -04:00
Matthew Brown
d13560f4ef
Add docblock type syntax reference
2019-03-19 13:55:55 -04:00
Matthew Brown
b8b6bf06d7
Add detailed breakdown of supported types
2019-03-19 13:54:36 -04:00
Matthew Brown
6748e5240c
Add follow on from installation
2019-03-19 12:08:22 -04:00
Matthew Brown
5f517f7055
Remove info
2019-03-19 12:02:49 -04:00
Matthew Brown
5d8e0b5036
Add s
2019-03-19 12:02:24 -04:00
Matthew Brown
5cf2cdbf76
Change version reqs
2019-03-19 12:02:12 -04:00
Matthew Brown
a62287ce61
Remove code
2019-03-19 11:54:08 -04:00
Matthew Brown
94ab35da97
Improve plugins page
2019-03-19 11:21:31 -04:00
Matthew Brown
472ab29d74
Add PossiblyInvalidCast for more refined checks
2019-03-17 17:10:51 -04:00
Brown
b3a59d2638
Fix #1435 - prevent classes extending interfaces
2019-03-07 11:16:40 -05:00
Brown
bd372e93af
Add config flags for findUnusedVariables and findUnusedCode
2019-03-05 15:45:09 -05:00
Matthew Brown
cdae79b9fe
Fix unnecessary params in Psalm codebase
2019-02-23 11:31:33 -05:00
Brown
3deea3980d
Add checks for unitialized properties
...
Fixes #1328
2019-02-13 13:32:19 -05:00
Jacob Dreesen
d4b318faf9
Fix XML node name in the docs
2019-02-12 17:47:02 -05:00
Jacob Dreesen
59ed1c5327
Fix typo
2019-02-12 17:46:26 -05:00
Bruce Weirdan
c310a2dd86
Update docs/templated_annotations.md
...
Co-Authored-By: SignpostMarv <me@signpostmarv.name>
2019-02-11 18:39:19 -05:00
SignpostMarv
c3f8285eed
adjusting header depth to reflect separate document
2019-02-11 18:39:19 -05:00
SignpostMarv
634c480dce
splitting templated docs as per discussion in #1323
2019-02-11 18:39:19 -05:00
SignpostMarv
04815f160e
stripping trailing whitespace
2019-02-11 18:39:19 -05:00
SignpostMarv
e0c610b75a
shifting link to sub-section as per discussion in #1323
2019-02-11 18:39:19 -05:00
SignpostMarv
cfa8844cec
updating link
2019-02-11 18:39:19 -05:00
SignpostMarv
c66802c2fa
creating sub-section for using psalm
...
creating sub-section for using psalm alongside entry for psalter
2019-02-11 12:08:29 -05:00
SignpostMarv
3986e34c3c
linking all docs in index for ease-of-discovery
...
further to my earlier tweet about searching for things in the psalm docs, just linking up a few of the unlinked docs.
2019-02-11 12:08:29 -05:00
Bruce Weirdan
1b20d9ab57
Added example of psalm --init run
...
Refs #1312
2019-02-10 20:40:16 -05:00
Matthew Brown
c58100e3af
Fix #1313 - don’t allow mixed function calls
2019-02-10 16:15:52 -05:00