Commit Graph

140 Commits

Author SHA1 Message Date
Ilian Ranguelov
00b480fcb0
apply PSR-4 to source 2020-04-03 20:26:50 +02:00
Bruce Weirdan
ebfae6c319
Merge pull request #60 from weirdan/fix-travis-lint-warnings
Fixed travis lint warnings
2020-04-02 00:20:23 +03:00
Bruce Weirdan
668554f84c
Merge pull request #50 from snapshotpl/patch-1
Assert functions are public and static
2020-04-02 00:03:06 +03:00
Bruce Weirdan
067bb8d149
Fixed travis lint warnings 2020-04-01 23:49:19 +03:00
Witold Wasiczko
aa0be36782
Assert functions are public and static 2020-04-01 20:11:28 +02:00
Bruce Weirdan
d3c96627cd
Cache effectively (#59)
* Cache composer cache, don't cache vendor

Instead of caching the vendor folder (which changes for every job, as
different levels of dependencies are installed) we now cache composer
cache folders (where it stores downloaded packages and cloned repos).
This should make caching much more effective, without introducing any
persistance issues (as metadata used for dependency resolution is not
cached).

* Allow vendor changes autodiscard

`ocramius/package-versions` changes the file it installs, so composer
may notice this (when the package is installed from source?) and refuse
upgrade/downgrade.
2020-04-01 13:08:24 +03:00
Bruce Weirdan
30b2242720
Merge pull request #58 from weirdan/fix-external-dataproviders-when-psalm-runs-on-a-single-file
Fix external dataproviders when psalm runs on a single file
2020-03-30 13:43:56 +03:00
Bruce Weirdan
ed3ea8bcc4
retry composer install 2020-03-30 07:10:02 +03:00
Bruce Weirdan
2d6f22f31a
Allow psalm deps downgrade 2020-03-30 06:16:37 +03:00
Bruce Weirdan
a7b8db9bf3
Cast more MethodIdentifiers 2020-03-30 06:06:56 +03:00
Bruce Weirdan
8c6e83095e
Cast method ids to string for compatibility with older Psalm 2020-03-30 05:28:04 +03:00
Bruce Weirdan
9074932d62
Make Psalm happy 2020-03-30 05:14:12 +03:00
Bruce Weirdan
8f98135364
Store external dataprovider references in afterClassLikeVisit
This fixes false-positive UndefinedClass issues when Psalm is run on a
single test file with cold cache.

Fixes psalm/psalm-plugin-phpunit#57
2020-03-30 04:50:31 +03:00
Bruce Weirdan
ab21faac5c
Fix unrelated test failure 2020-03-30 04:47:58 +03:00
Bruce Weirdan
c389fbd301
Bump weirdan/codeception-psalm-module 2020-03-30 04:40:37 +03:00
Matthew Brown
496c08f088
Add string cast 2020-02-14 21:43:43 -05:00
Matthew Brown
59dbe2ffb9
Merge pull request #52 from SignpostMarv/patch-3
phpunit 9 was released
2020-02-07 11:41:44 -05:00
SignpostMarv
23c57a0d8d
cache vendor directory
while psalm/phpunit-psalm-plugin#46 borrowed psalm's use of `composer clear cache` in psalm/phpunit-psalm-plugin@8250289, it didn't also include the vendor directory caching.
2020-02-07 13:45:06 +00:00
SignpostMarv
a54c65cb76
allow failures with vimeo/psalm:dev-master 2020-02-07 13:15:29 +00:00
SignpostMarv
e113531999
rolling back constraint
supporting newer versions of phpunit leads to an issue where if `Foo extends TestCase` and `TestCase::setUp()` does not explicitly return void, failure occurs.

see psalm/phpunit-psalm-plugin#53
2020-02-07 13:13:10 +00:00
SignpostMarv
4330aea865
updating codeception/base constraint
* codeception/phpunit-wrapper 7.x does not allow phpunit 8 to be installed
* codeception/base 2.5 does not allow codeception/phpunit-wrapper 8.x to be installed
2020-02-07 12:47:33 +00:00
SignpostMarv
bac311aa8b
isolate build failures from vimeo/psalm:dev-master
isolate build failures of `composer update` from `vimeo/psalm:dev-master`
2020-02-07 11:17:38 +00:00
SignpostMarv
7bf7bec20b
removing comment
psalm travis config features a non-nightly 7.4 entry as of 3.8.1
2020-02-07 10:55:13 +00:00
SignpostMarv
1b4b4c0f16
phpunit 9 was released
https://mobile.twitter.com/s_bergmann/status/1225698301208432642
2020-02-07 10:19:25 +00:00
Bruce Weirdan
8e2be0239b
Merge pull request #46 from SignpostMarv/travis/7.4-testing
travis 7.4 testing
2020-01-12 01:08:47 +02:00
SignpostMarv
8250289a2e clear composer cache before install, as per vimeo/psalm 2020-01-11 21:09:19 +00:00
SignpostMarv
94b0bbd618 let travis run builds on 7.4 2020-01-11 20:13:17 +00:00
Bruce Weirdan
021eb5a8c1
Merge pull request #45 from weirdan/external-data-providers
External data providers
2020-01-10 02:31:44 +02:00
Bruce Weirdan
4784273e7e
Added proxy method to fix deprecation warnings 2020-01-10 02:17:35 +02:00
Bruce Weirdan
fc18507f97
Added support for external providers
Fixes psalm/phpunit-psalm-plugin#44
2020-01-10 02:02:25 +02:00
Matthew Brown
a577f90951
Merge pull request #42 from SignpostMarv/patch-2
Amend unionizeIterables to support TList
2019-12-17 08:10:36 -05:00
SignpostMarv
0981c34759
Amend unionizeIterables to support TList
https://psalm.dev/docs/annotating_code/type_syntax/array_types/#lists

> A list type is of the form list<SomeType>, where SomeType is any permitted union type supported by Psalm.
> 
> * `list` is a subtype of `array<int, mixed>`
> * `list<Foo>` is a subtype of `array<int, Foo>`.
2019-12-17 10:06:51 +00:00
Bruce Weirdan
1dcd8ff771
Merge pull request #40 from weirdan/fix-38
Trim specials
2019-11-27 17:49:38 +02:00
Bruce Weirdan
64f821ca65
Trim specials
Fixes psalm/phpunit-psalm-plugin#38
2019-11-27 17:00:26 +02:00
Bruce Weirdan
a2603ac4ad
Merge pull request #39 from weirdan/fix-ci-failures
Fix CI failures
2019-11-27 16:57:15 +02:00
Bruce Weirdan
3c37434a0b
Updated tests 2019-11-17 05:40:42 +02:00
Bruce Weirdan
e0f6ed03ff
Bumped weirdan/codeception-psalm-module
This is needed to prevent installation of muglug/package-versions-56
2019-11-17 04:51:11 +02:00
Bruce Weirdan
17dfe19487
Dropped support for Psalm <3.6.2
It's not feasible to support variable order of union types in acceptance
tests.
2019-11-17 04:35:50 +02:00
Bruce Weirdan
0b04b84117
Replaced expressions in if with variables
Codesniffer has conflicting requirements on expression formatting in ifs
across its versions
2019-11-14 05:08:36 +02:00
Bruce Weirdan
0c2fd1e6fe
Fixed code style violations
The codesniffer standard must have become stricter
2019-11-14 04:34:10 +02:00
Matthew Brown
69aaf6be9f
Merge pull request #35 from weirdan/code-cleanup
Code cleanup
2019-07-10 17:05:07 -04:00
Matthew Brown
2215d64562
Merge pull request #37 from weirdan/dont-crash-on-invalid-docblock
Don't crash on invalid docblocks
2019-07-10 17:04:35 -04:00
Bruce Weirdan
ca1b7cdb07
Don't crash on invalid docblocks
Exception is simply suppressed because Psalm will re-analyze (and
properly report) invalid docblock without further assistance.

Refs psalm/phpunit-psalm-plugin#36
2019-07-10 22:26:24 +03:00
Bruce Weirdan
531c3d6f83
Code cleanup
- Dropped unused uses
- Dropped AfterClassLikeExistenceCheck hack in favor of
  AfterCodebasePopulated hook
- Clarified why we don't simply suppress Unused* issues
- Dropped multiple outdated polyfills
- Dropped ...$rest hack - no longer needed
2019-06-30 21:04:35 +03:00
Matthew Brown
336cfd5c62
Merge pull request #34 from weirdan/fix-cached-provider-usage-data
Bumped Psalm version
2019-06-30 12:17:30 -04:00
Bruce Weirdan
4f64be0b64
Bumped Psalm version
This fixes the problem with provider usage data being cached
See vimeo/psalm#1879
2019-06-30 19:02:03 +03:00
Matthew Brown
645be844dc
Merge pull request #33 from weirdan/fix-build-failures
Fix build failures
2019-06-29 21:33:47 -04:00
Bruce Weirdan
81aae541b2
Dropped debugging group 2019-06-30 04:26:30 +03:00
Bruce Weirdan
701db90270
Disabled 7.4 builds 2019-06-30 03:12:50 +03:00
Bruce Weirdan
c0f8a977c2
Fixed remaining failures
- Dropped unused var
- Added a workaround (dirty hack really) for changed type structure of
...$rest types
- Fixed missing errors (tests weren't using totallyTyped)
- Fixed problem with invariant ArrayObject
- Circumvented the problem with sticky method usage data (not really
fixed, but tests are passing now)
- Relaxed error message expectations
2019-06-30 02:55:36 +03:00