1
0
mirror of https://github.com/danog/psalm.git synced 2024-11-30 04:39:00 +01:00
Commit Graph

814 Commits

Author SHA1 Message Date
Daniel Beardsley
5ff933f2a5
@property annotations: allow *not* implying @psalm-seal-properties
Add a setting that allows usage of `@property` to *augment* classes that
use __get() and __set(). Previously, using `@property` once would force
you to exhaustively list all possible properties. This didn't use to be
the case, but was changed in df33405635

This was really unexpected for our team and for a while we thought it
was a psalm bug until I found the above commit.

We are using `__get()` for ORM objects and we want to use `@property` to
explicitly document some of columns without being forced to document
every column.
2023-03-24 23:35:41 -07:00
Yannick Gottschalk
85a1c83591 Added to documentation and tests that api can be used instead of psalm-api 2023-03-20 13:34:44 +01:00
Yannick Gottschalk
a4895c3588 Added to documentation that psalm-api can be used on methods 2023-03-20 13:34:44 +01:00
Bruce Weirdan
98d96fbe9c
Forbid private final methods
Fixes vimeo/psalm#8374
2023-03-03 02:00:09 -04:00
Bruce Weirdan
eb63eddce1
Added a page explaining how to add a new issue type 2023-02-15 23:12:14 -04:00
Bruce Weirdan
e6aa63731d
Flag docblock parameters that have no counterparts in function signature
Fixes vimeo/psalm#3166
2023-02-15 22:04:26 -04:00
Bruce Weirdan
ee823619b8
Flag direct constructor calls
Fixes vimeo/psalm#2975
2023-02-15 20:14:00 -04:00
Bruce Weirdan
07dfb5f2aa
Update docs/running_psalm/issues/UnusedProperty.md
Co-authored-by: Theodore Brown <theodorejb@outlook.com>
2023-02-14 22:00:17 -04:00
Bruce Weirdan
38e15c9817
Added note on properties used in constructor only
Fixes vimeo/psalm#7955
2023-02-14 21:01:52 -04:00
Bruce Weirdan
085e8f6fb2
Forbid implementing some interfaces
- `Throwable` can only be implemented when classes extend one of
  `Exception` or `Error`
- `UnitEnum` and `BackedEnum` cannot be implemented by user-defined
  classes

Refs vimeo/psalm#7722
2023-02-12 02:48:50 -04:00
Bitwise Operators
9f07f5fe9a docs: Add entry to utility types mentioning using value-of<> with BackedEnum 2023-02-09 08:53:30 +01:00
Matthew Brown
d450b40da8
Remove some logic that didn't need to be there (#9209)
* Remove check to see what breaks

* Simplify following logic

* Add tests from @kkmuffme‘s branch

* Reduce scope of fix

* Clean up logic a little

* Add failing test

* Improvements

* Fix for non-Paradoxical Condition result
2023-02-03 21:08:16 -05:00
Bitwise Operators
a1ad738889 docs: Add information on pure-callables to documentation (see #9132) 2023-01-19 08:39:07 +01:00
Jack Worman
56f6dfecc8 Report unused baseline entries 2023-01-17 22:02:21 -05:00
Jack Worman
f9aa2d5ad3 Support constants in traits 2023-01-17 16:37:44 -05:00
maniaba
d9c66c93ca
Update ForbiddenCode.md 2023-01-13 11:21:34 +01:00
0f7eed0dca fixes 2022-12-30 21:51:27 +01:00
9b4857a606 Fix 2022-12-30 21:48:28 +01:00
2a7043a7fb Fix remaining markdown header 2022-12-30 21:46:54 +01:00
orklah
406946d4c4
Merge pull request #9031 from danog/misc_fixes
Misc fixes
2022-12-30 21:28:11 +01:00
9684be9d73 More markdown fixes 2022-12-30 21:02:59 +01:00
0b67844420 Improve variable naming and improve docs 2022-12-30 21:00:38 +01:00
orklah
dbcfe62c52
Merge pull request #8987 from jack-worman/Always_check_unused_methods_and_properties
Add @psalm-api annotation
2022-12-28 15:20:48 +01:00
Jack Worman
f9e9aad990 restrictReturnTypes configuration 2022-12-24 11:25:56 -06:00
Jack Worman
703a1e1698 @psalm-api 2022-12-23 16:13:46 -06:00
David Schwarz / Ringsdorf
3e1dd8d190
doc: FilterIterator added to list of built-in templates. 2022-12-17 07:02:07 +01:00
cca276768e
List refactoring v5 (#8820)
* Squash

* Remove BC break

* Suppress

* Possibly fix

* Fixes

* Fix test

* Trigger build

* Update psl

* Update psl

* Fixes

* Fixes

* Cleanup

* fix

* Fix build

* Do not consider never when getting the max count

* Add assertion

* Cleanup

* Fix

* Cleanup
2022-12-13 21:40:19 +01:00
Bruce Weirdan
19a1005bc3
Forbid most magic methods on enums
Fixes vimeo/psalm#8889

Additionally this fixes case-sensitivity of
MethodSignatureMustOmitReturnType issue

Fixes vimeo/psalm#8888
2022-12-12 03:03:20 -04:00
John Cornell
153f8224d1
Fixed typo 2022-12-08 14:42:56 -05:00
Barney Laurance
d6c7c86362 Remove unecassary subheadings in error levels documentation 2022-12-02 00:07:37 +00:00
Barney Laurance
cd18cdc554 Re-order list of errors in docs
I think it makes more sense to have the errors that almost always appear
(level 7 errors) next to the errors that always appear, instead of
the level 1, least likely to appear errors being next to the ones that
always appear.

This also makes the order more similar to that output by the new
--by-issue-level format report.

Some time it might be nice to see if there's a way to auto generate most
of this docs page from the actual issue class definitions, or have
a test that checks the list of issues for each level is accurate and
complete.
2022-12-02 00:04:43 +00:00
Payton Bice
02329227d8 Adds documentation for the forbiddenFunctions config option 2022-12-01 13:42:02 -05:00
sasezaki
de33d94802
Update installation.md - 5 requires PHP >= 7.4 2022-12-02 00:35:56 +09:00
Maciej Malarz
28188d113a
Remove unfinished sentence 2022-11-29 23:52:27 +01:00
orklah
763556745b improve docs and phrasing about NoValue 2022-11-24 20:56:49 +01:00
orklah
b3fadbc5c1 improve docs and phrasing about NoValue 2022-11-24 20:52:49 +01:00
orklah
4d358c4be9 improve docs and phrasing about NoValue 2022-11-24 20:49:34 +01:00
Matthew Brown
56bc854d8e
Remove value types navigation 2022-11-12 14:58:36 -05:00
Matthew Brown
86c0ec0d01
Remove utility types navigation 2022-11-12 14:58:13 -05:00
Matthew Brown
543d8ab83b
Remove unnecessary navigation 2022-11-12 14:57:28 -05:00
Matthew Brown
1af691c83f
Remove more unnecessary navigation section 2022-11-12 14:53:48 -05:00
Matthew Brown
2771864d27
Remove unnecessary &raquo; 2022-11-12 14:52:47 -05:00
98a5dc313d
Cleanup documentation (#8702)
* Cleanup documentation

* Cleanup

* Cleanup
2022-11-12 14:50:46 -05:00
Matthew Brown
a79255cc99
Remove strict- 2022-11-11 20:43:19 -05:00
Matthew Brown
256d9ac1a5
Remove strict-array from docs 2022-11-11 20:42:06 -05:00
Matthew Brown
8d36bdc3ed
Make array shapes strict by default (#8701)
* Make array shapes strict by default

* Fix PSL tests
2022-11-11 20:14:21 -05:00
Bruce Weirdan
0f528d05f7
Update docs/running_psalm/issues/InvalidEnumCaseValue.md 2022-11-10 20:26:37 -04:00
Bruce Weirdan
6effd1bd2d Flag invalid enum case value types
Fixes vimeo/psalm#8267
2022-11-10 19:55:18 -04:00
Thomas Landauer
c51d3665eb
Removing list
see https://github.com/vimeo/psalm/pull/8696#issuecomment-1310677110
2022-11-10 20:19:02 +01:00
Bruce Weirdan
4d53d26f00
Merge pull request #8689 from Nicelocal/fix_formatting 2022-11-10 13:21:37 -04:00